orca r3436 - in trunk: . src/orca
- From: richb svn gnome org
- To: svn-commits-list gnome org
- Subject: orca r3436 - in trunk: . src/orca
- Date: Tue, 8 Jan 2008 21:54:15 +0000 (GMT)
Author: richb
Date: Tue Jan 8 21:54:15 2008
New Revision: 3436
URL: http://svn.gnome.org/viewvc/orca?rev=3436&view=rev
Log:
* src/orca/orca-setup.glade:
src/orca/orca_gui_prefs.py:
Fixed bug #463867 - Source display and Target display should
self-populate in Orca Prefs dialog.
(Tag-team effort with Joanie - thanks!)
Modified:
trunk/ChangeLog
trunk/src/orca/orca-setup.glade
trunk/src/orca/orca_gui_prefs.py
Modified: trunk/src/orca/orca-setup.glade
==============================================================================
--- trunk/src/orca/orca-setup.glade (original)
+++ trunk/src/orca/orca-setup.glade Tue Jan 8 21:54:15 2008
@@ -1252,8 +1252,8 @@
<property name="wrap">False</property>
<property name="adjustment">10 1 9999 1 10 10</property>
<accessibility>
- <atkrelation target="speakProgressBarLabel" type="labelled-by"/>
<atkrelation target="speakProgressBarUnitsLabel" type="labelled-by"/>
+ <atkrelation target="speakProgressBarLabel" type="labelled-by"/>
</accessibility>
<signal name="value_changed" handler="speakProgressBarValueChanged" last_modification_time="Thu, 14 Jun 2007 15:09:00 GMT"/>
</widget>
@@ -3366,8 +3366,8 @@
<property name="wrap">False</property>
<property name="adjustment">1 24 256 1 10 10</property>
<accessibility>
- <atkrelation target="magCursorSizeUnitsLabel" type="labelled-by"/>
<atkrelation target="magCursorSizeLabel" type="labelled-by"/>
+ <atkrelation target="magCursorSizeUnitsLabel" type="labelled-by"/>
</accessibility>
<signal name="value_changed" handler="magCursorSizeValueChanged" last_modification_time="Wed, 03 May 2006 15:31:48 GMT"/>
</widget>
@@ -3719,8 +3719,8 @@
<property name="wrap">False</property>
<property name="adjustment">1 1 256 1 10 10</property>
<accessibility>
- <atkrelation target="magCrossHairSizeUnitsLabel" type="labelled-by"/>
<atkrelation target="magCrossHairSizeLabel" type="labelled-by"/>
+ <atkrelation target="magCrossHairSizeUnitsLabel" type="labelled-by"/>
</accessibility>
<signal name="value_changed" handler="magCrossHairSizeValueChanged" last_modification_time="Wed, 03 May 2006 15:39:23 GMT"/>
</widget>
@@ -4157,8 +4157,8 @@
<property name="wrap">False</property>
<property name="adjustment">0 0 100 1 10 10</property>
<accessibility>
- <atkrelation target="magEdgeMarginLabel" type="labelled-by"/>
<atkrelation target="magEdgeMarginUnitsLabel" type="labelled-by"/>
+ <atkrelation target="magEdgeMarginLabel" type="labelled-by"/>
</accessibility>
<signal name="value_changed" handler="magEdgeMarginValueChanged" last_modification_time="Thu, 06 Dec 2007 22:57:50 GMT"/>
</widget>
@@ -6065,15 +6065,15 @@
<property name="column_spacing">20</property>
<child>
- <widget class="GtkHBox" id="hbox51">
+ <widget class="GtkHBox" id="hbox52">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">3</property>
<child>
- <widget class="GtkLabel" id="magSourceDisplayLabel">
+ <widget class="GtkLabel" id="magTargetDisplayLabel">
<property name="visible">True</property>
- <property name="label" translatable="yes">S_ource display:</property>
+ <property name="label" translatable="yes">Target displa_y:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -6083,13 +6083,13 @@
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
- <property name="mnemonic_widget">magSourceDisplayEntry</property>
+ <property name="mnemonic_widget">magTargetDisplayEntry</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
<accessibility>
- <atkrelation target="magSourceDisplayEntry" type="label-for"/>
+ <atkrelation target="magTargetDisplayEntry" type="label-for"/>
</accessibility>
</widget>
<packing>
@@ -6100,46 +6100,45 @@
</child>
<child>
- <widget class="GtkEntry" id="magSourceDisplayEntry">
+ <widget class="GtkComboBoxEntry" id="magTargetDisplayEntry">
+ <property name="width_request">89</property>
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="editable">True</property>
- <property name="visibility">True</property>
- <property name="max_length">0</property>
- <property name="text"></property>
+ <property name="add_tearoffs">False</property>
<property name="has_frame">True</property>
- <property name="invisible_char">*</property>
- <property name="activates_default">False</property>
+ <property name="focus_on_click">True</property>
<accessibility>
- <atkrelation target="magSourceDisplayLabel" type="labelled-by"/>
+ <atkrelation target="magTargetDisplayLabel" type="labelled-by"/>
</accessibility>
- <signal name="changed" handler="magSourceDisplayChanged" last_modification_time="Tue, 19 Sep 2006 19:53:43 GMT"/>
+ <signal name="changed" handler="magTargetDisplayChanged" last_modification_time="Wed, 02 Jan 2008 21:16:20 GMT"/>
</widget>
<packing>
<property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="pack_type">GTK_PACK_END</property>
</packing>
</child>
</widget>
<packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
<property name="top_attach">0</property>
<property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox52">
+ <widget class="GtkHBox" id="hbox51">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">3</property>
<child>
- <widget class="GtkLabel" id="magTargetDisplayLabel">
+ <widget class="GtkLabel" id="magSourceDisplayLabel">
<property name="visible">True</property>
- <property name="label" translatable="yes">Target displa_y:</property>
+ <property name="label" translatable="yes">S_ource display:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -6149,13 +6148,13 @@
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
- <property name="mnemonic_widget">magTargetDisplayEntry</property>
+ <property name="mnemonic_widget">magSourceDisplayEntry</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
<accessibility>
- <atkrelation target="magTargetDisplayEntry" type="label-for"/>
+ <atkrelation target="magSourceDisplayEntry" type="label-for"/>
</accessibility>
</widget>
<packing>
@@ -6166,33 +6165,31 @@
</child>
<child>
- <widget class="GtkEntry" id="magTargetDisplayEntry">
+ <widget class="GtkComboBoxEntry" id="magSourceDisplayEntry">
+ <property name="width_request">89</property>
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="editable">True</property>
- <property name="visibility">True</property>
- <property name="max_length">0</property>
- <property name="text"></property>
+ <property name="add_tearoffs">False</property>
<property name="has_frame">True</property>
- <property name="invisible_char">*</property>
- <property name="activates_default">False</property>
+ <property name="focus_on_click">True</property>
<accessibility>
- <atkrelation target="magTargetDisplayLabel" type="labelled-by"/>
+ <atkrelation target="magSourceDisplayLabel" type="labelled-by"/>
</accessibility>
- <signal name="changed" handler="magTargetDisplayChanged" last_modification_time="Tue, 19 Sep 2006 19:54:09 GMT"/>
+ <signal name="changed" handler="magSourceDisplayChanged" last_modification_time="Wed, 02 Jan 2008 21:16:33 GMT"/>
</widget>
<packing>
<property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="pack_type">GTK_PACK_END</property>
</packing>
</child>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
<property name="top_attach">0</property>
<property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
Modified: trunk/src/orca/orca_gui_prefs.py
==============================================================================
--- trunk/src/orca/orca_gui_prefs.py (original)
+++ trunk/src/orca/orca_gui_prefs.py Tue Jan 8 21:54:15 2008
@@ -1262,8 +1262,8 @@
display = gtk.gdk.display_get_default()
nScreens = display.get_n_screens()
targetScreen = display.get_default_screen()
- targetDisplay = \
- orca_state.advancedMag.get_widget("magTargetDisplayEntry").get_text()
+ targetDisplay = orca_state.advancedMag.get_widget(\
+ "magTargetDisplayEntry").get_active_text()
if targetDisplay:
t = targetDisplay.split(".")
try:
@@ -1289,9 +1289,11 @@
0, targetHeight,
1,
targetHeight / 16, targetHeight)
- self.get_widget("magZoomerTopSpinButton").set_adjustment(adjustment)
+
+ spinButton = orca_state.orcaOS.get_widget("magZoomerTopSpinButton")
+ spinButton.set_adjustment(adjustment)
if topPosition > targetHeight:
- self.get_widget("magZoomerTopSpinButton").update()
+ spinButton.update()
# Get the zoomer placement left preference and set the left spin
# button value accordingly. Set the left spin button "max size" to
@@ -1304,9 +1306,11 @@
0, targetWidth,
1,
targetWidth / 16, targetWidth)
- self.get_widget("magZoomerLeftSpinButton").set_adjustment(adjustment)
+
+ spinButton = orca_state.orcaOS.get_widget("magZoomerLeftSpinButton")
+ spinButton.set_adjustment(adjustment)
if leftPosition > targetWidth:
- self.get_widget("magZoomerLeftSpinButton").update()
+ spinButton.update()
# Get the zoomer placement right preference and set the right spin
# button value accordingly. Set the right spin button "max size" to
@@ -1319,9 +1323,11 @@
0, targetWidth,
1,
targetWidth / 16, targetWidth)
- self.get_widget("magZoomerRightSpinButton").set_adjustment(adjustment)
+
+ spinButton = orca_state.orcaOS.get_widget("magZoomerRightSpinButton")
+ spinButton.set_adjustment(adjustment)
if rightPosition > targetWidth:
- self.get_widget("magZoomerRightSpinButton").update()
+ spinButton.update()
# Get the zoomer placement bottom preference and set the bottom
# spin button value accordingly. Set the bottom spin button "max size"
@@ -1334,9 +1340,11 @@
0, targetHeight,
1,
targetHeight / 16, targetHeight)
- self.get_widget("magZoomerBottomSpinButton").set_adjustment(adjustment)
+
+ spinButton = orca_state.orcaOS.get_widget("magZoomerBottomSpinButton")
+ spinButton.set_adjustment(adjustment)
if bottomPosition > targetHeight:
- self.get_widget("magZoomerBottomSpinButton").update()
+ spinButton.update()
def _initGUIState(self):
"""Adjust the settings of the various components on the
@@ -1547,8 +1555,8 @@
display = gtk.gdk.display_get_default()
nScreens = display.get_n_screens()
sourceScreen = display.get_default_screen()
- sourceDisplay = \
- orca_state.advancedMag.get_widget("magSourceDisplayEntry").get_text()
+ sourceDisplay = orca_state.advancedMag.get_widget(\
+ "magSourceDisplayEntry").get_active_text()
if sourceDisplay:
s = sourceDisplay.split(".")
try:
@@ -1733,7 +1741,7 @@
self.enableLiveUpdating = liveUpdating
- def getComboBoxIndex(self, combobox, searchStr):
+ def getComboBoxIndex(self, combobox, searchStr, col=0):
""" For each of the entries in the given combo box, look for searchStr.
Return the index of the entry if searchStr is found.
@@ -1748,7 +1756,7 @@
model = combobox.get_model()
myiter = model.get_iter_first()
for i in range(0, len(model)):
- name = model.get_value(myiter, 0)
+ name = model.get_value(myiter, col)
if name == searchStr:
return i
myiter = model.iter_next(myiter)
@@ -1804,6 +1812,12 @@
model = gtk.ListStore(int, str)
combobox.set_model(model)
+ # Force the display comboboxes to be left aligned.
+ #
+ if isinstance(combobox, gtk.ComboBoxEntry):
+ size = combobox.size_request()
+ cell.set_fixed_size(size[0] - 29, -1)
+
return model
def _setKeyEchoItems(self):
@@ -3705,6 +3719,8 @@
# To make pylint happy.
#
self.savedSettings = None
+ self.sourceDisplayModel = None
+ self.targetDisplayModel = None
def init(self):
"""Initialize the magnification Advanced Settings dialog GUI.
@@ -3712,6 +3728,12 @@
to match.
"""
+ if not self.sourceDisplayModel:
+ self.sourceDisplayModel = \
+ self._initComboBox(self.get_widget("magSourceDisplayEntry"))
+ if not self.targetDisplayModel:
+ self.targetDisplayModel = \
+ self._initComboBox(self.get_widget("magTargetDisplayEntry"))
self._initGUIState()
def _initGUIState(self):
@@ -3750,11 +3772,34 @@
# Get the magnification source and target displays.
#
+ display = gtk.gdk.display_get_default()
+ nScreens = display.get_n_screens()
+ sourceScreen = display.get_default_screen()
+
+ self.sourceDisplayModel.clear()
+ self.targetDisplayModel.clear()
+ for screenNo in range(0, nScreens):
+ screenName = ":0." + str(screenNo)
+ self.sourceDisplayModel.append((screenNo, screenName))
+ self.targetDisplayModel.append((screenNo, screenName))
+
sourceDisplay = prefs["magSourceDisplay"]
- self.get_widget("magSourceDisplayEntry").set_text(sourceDisplay)
+ sourceComboBox = self.get_widget("magSourceDisplayEntry")
+ index = self.getComboBoxIndex(sourceComboBox, sourceDisplay, 1)
+ model = sourceComboBox.get_model()
+ displayIter = model.get_iter(index)
+ if displayIter:
+ value = model.get_value(displayIter, 1)
+ sourceComboBox.get_child().set_text(value)
targetDisplay = prefs["magTargetDisplay"]
- self.get_widget("magTargetDisplayEntry").set_text(targetDisplay)
+ targetComboBox = self.get_widget("magTargetDisplayEntry")
+ index = self.getComboBoxIndex(targetComboBox, targetDisplay, 1)
+ model = targetComboBox.get_model()
+ displayIter = model.get_iter(index)
+ if displayIter:
+ value = model.get_value(displayIter, 1)
+ targetComboBox.get_child().set_text(value)
self.enableLiveUpdating = liveUpdating
self.updateRGBBrightness()
@@ -4156,7 +4201,21 @@
- widget: the component that generated the signal.
"""
- self.prefsDict["magSourceDisplay"] = widget.get_text()
+ model = widget.get_model()
+ displayIter = widget.get_active_iter()
+ if displayIter:
+ value = model.get_value(displayIter, 1)
+ widget.get_child().set_text(value)
+ else:
+ value = widget.get_child().get_text()
+ index = self.getComboBoxIndex(widget, value, 1)
+ firstIter = model.get_iter_first()
+ if firstIter:
+ firstValue = model.get_value(firstIter, 1)
+ if index or (value == firstValue):
+ widget.set_active(index)
+
+ self.prefsDict["magSourceDisplay"] = value
def magTargetDisplayChanged(self, widget):
"""Signal handler for the "changed" signal for the
@@ -4169,8 +4228,23 @@
- widget: the component that generated the signal.
"""
- self.prefsDict["magTargetDisplay"] = widget.get_text()
- self._setZoomerSpinButtons()
+ model = widget.get_model()
+ displayIter = widget.get_active_iter()
+ if displayIter:
+ value = model.get_value(displayIter, 1)
+ widget.get_child().set_text(value)
+ else:
+ value = widget.get_child().get_text()
+ index = self.getComboBoxIndex(widget, value, 1)
+ firstIter = model.get_iter_first()
+ if firstIter:
+ firstValue = model.get_value(firstIter, 1)
+ if index or (value == firstValue):
+ widget.set_active(index)
+
+ self.prefsDict["magTargetDisplay"] = value
+ if orca_state.orcaOS:
+ self._setZoomerSpinButtons()
def restoreAdvancedSettings(self):
"""Restores the previously saved values of the settings on the
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]