Changeset 649 for trunk/software
- Timestamp:
- 02/01/10 19:51:33 (2 years ago)
- Location:
- trunk/software/rb/gui
- Files:
-
- 2 modified
Legend:
- Unmodified
- Added
- Removed
-
trunk/software/rb/gui/logs.py
r601 r649 1 # Copyright (C) 2009 Thomas W. Most1 # Copyright (C) 2009-2010 Thomas W. Most 2 2 # 3 3 # This program is free software: you can redistribute it and/or modify … … 62 62 self.display_prefixes = ('',) # List of component prefixes to display 63 63 self.hide_prefixes = () # Tuple of prefixes to disallow 64 # Whether the scrollbar was at the bottom of the window before an item 65 # was added to the view. 66 self.at_bottom = True 64 67 65 68 # Widgets … … 67 70 self.level_combo = builder.get_object('logs_level_combo') 68 71 self.filter_combo = builder.get_object('logs_filter_combo') 72 self.vscroll_adjustment = builder.get_object('logs_vscroll_adjustment') 69 73 70 74 # Data model … … 98 102 self.level_combo.connect("changed", self.level_changed_cb) 99 103 self.filter_combo.connect("changed", self.filter_changed_cb) 104 self.vscroll_adjustment.connect("changed", self.vscroll_adjustment_changed_cb) 100 105 101 106 logger.info("Completed loading logging GUI") … … 126 131 @gobject.idle_add 127 132 def update_gui(): 133 page_size = self.vscroll_adjustment.page_size 134 value = self.vscroll_adjustment.value 135 self.at_bottom = int(value + page_size) >= int(self.vscroll_adjustment.upper) 128 136 self.record_store.append(row) 129 137 return False … … 156 164 self.hide_prefixes = tuple(b[1:] for b in bits if b.startswith('!')) 157 165 self.record_filter.refilter() 166 167 def vscroll_adjustment_changed_cb(self, adj): 168 if self.at_bottom: 169 self.vscroll_adjustment.set_value(self.vscroll_adjustment.upper) 158 170 -
trunk/software/rb/gui/main.gtk
r622 r649 769 769 </child> 770 770 <child> 771 <object class="GtkScrolledWindow" id=" scrolledwindow1">771 <object class="GtkScrolledWindow" id="logs_scroll"> 772 772 <property name="visible">True</property> 773 773 <property name="can_focus">True</property> 774 <property name="vadjustment">logs_vscroll_adjustment</property> 774 775 <property name="hscrollbar_policy">automatic</property> 775 <property name="vscrollbar_policy">automatic</property>776 776 <child> 777 777 <object class="GtkTreeView" id="logs_treeview"> … … 883 883 <object class="GtkSizeGroup" id="sensors_1stcol_sizegroup"> 884 884 <widgets> 885 <widget name="ms_orient_label"/> 886 <widget name="ms_ang_vel_label"/> 887 <widget name="ms_accel_label"/> 888 <widget name="gps_lat_lon_label"/> 885 889 <widget name="gps_speed_label"/> 886 <widget name="gps_lat_lon_label"/>887 <widget name="ms_accel_label"/>888 <widget name="ms_ang_vel_label"/>889 <widget name="ms_orient_label"/>890 890 </widgets> 891 891 </object> 892 892 <object class="GtkSizeGroup" id="ms_data_sizegroup"> 893 893 <widgets> 894 <widget name="ms_orient_1"/> 895 <widget name="ms_orient_0"/> 896 <widget name="ms_orient_2"/> 897 <widget name="ms_ang_vel_0"/> 898 <widget name="ms_ang_vel_1"/> 899 <widget name="ms_ang_vel_2"/> 900 <widget name="ms_accel_0"/> 901 <widget name="ms_accel_1"/> 894 902 <widget name="ms_accel_2"/> 895 <widget name="ms_accel_1"/>896 <widget name="ms_accel_0"/>897 <widget name="ms_ang_vel_2"/>898 <widget name="ms_ang_vel_1"/>899 <widget name="ms_ang_vel_0"/>900 <widget name="ms_orient_2"/>901 <widget name="ms_orient_0"/>902 <widget name="ms_orient_1"/>903 903 </widgets> 904 904 </object> 905 <object class="GtkAdjustment" id="logs_vscroll_adjustment"> 906 <property name="upper">100</property> 907 <property name="step_increment">1</property> 908 <property name="page_increment">10</property> 909 <property name="page_size">10</property> 910 </object> 905 911 </interface>

