X-Git-Url: http://git.maemo.org/git/?p=gonvert;a=blobdiff_plain;f=src%2Fgonvert_qt.py;h=02b64c9a7daecc2db929b467d25b788f52d6c450;hp=170e50042e2641f808ded0fb49272357c83a38bd;hb=7ce14e11ba4308e96c32e48b2bb61258f898ceba;hpb=d80b8bd05ea3c926917dafa58a0d1a19fd233233 diff --git a/src/gonvert_qt.py b/src/gonvert_qt.py index 170e500..02b64c9 100755 --- a/src/gonvert_qt.py +++ b/src/gonvert_qt.py @@ -160,7 +160,6 @@ class Gonvert(object): self._mainWindow.select_category(self._recent[-1][0]) def request_category(self): - if self._condensedAction.isChecked(): if self._catWindow is not None: self._catWindow.hide() @@ -1609,7 +1608,7 @@ class UnitWindow(object): viewHeader.setStretchLastSection(False) # Trying to make things faster by locking in the initial size of the immutable columns - nameSize = min(viewHeader.sectionSize(UnitData.NAME_COLUMN), 150) + nameSize = min(viewHeader.sectionSize(UnitData.NAME_COLUMN), 300) viewHeader.setResizeMode(UnitData.NAME_COLUMN, QtGui.QHeaderView.Fixed) viewHeader.resizeSection(UnitData.NAME_COLUMN, nameSize) unitSize = min(viewHeader.sectionSize(UnitData.UNIT_COLUMN), 150) @@ -1758,11 +1757,21 @@ class UnitWindow(object): if self._favoritesWindow is not None: yield self._favoritesWindow + def _select_unit(self, index): + unit = self._unitsModel.get_unit(index) + self._selectedUnitName.setText(unit.name) + self._selectedUnitValue.setText(str(unit.value)) + self._selectedUnitSymbol.setText(unit.unit) + + self._selectedIndex = index + self._app.add_recent(self._categoryName, self._unitsModel.get_unit(index).name) + def _update_favorites(self, force = False): if self._app.showFavoritesAction.isChecked(): unitNames = list(self._unitsModel.get_unit_names()) + hiddenUnits = self._app.get_hidden_units(self._categoryName) for i, unitName in enumerate(unitNames): - if unitName in self._app.get_hidden_units(self._categoryName): + if unitName in hiddenUnits: self._unitsView.setRowHidden(i, self._unitsView.rootIndex(), True) else: self._unitsView.setRowHidden(i, self._unitsView.rootIndex(), False) @@ -1775,8 +1784,9 @@ class UnitWindow(object): def _on_show_favorites(self, checked = True): if checked: unitNames = list(self._unitsModel.get_unit_names()) + hiddenUnits = self._app.get_hidden_units(self._categoryName) for i, unitName in enumerate(unitNames): - if unitName in self._app.get_hidden_units(self._categoryName): + if unitName in hiddenUnits: self._unitsView.setRowHidden(i, self._unitsView.rootIndex(), True) else: for i in xrange(len(self._unitsModel)): @@ -1801,11 +1811,33 @@ class UnitWindow(object): @misc_utils.log_exception(_moduleLogger) def _on_previous_unit(self, checked = True): - self._select_unit(self._selectedIndex - 1) + index = self._selectedIndex - 1 + unitData = self._unitsModel.get_unit(index) + unitName = unitData.name + + if self._app.showFavoritesAction.isChecked(): + hiddenUnits = self._app.get_hidden_units(self._categoryName) + while unitName in hiddenUnits: + index -= 1 + unitData = self._unitsModel.get_unit(index) + unitName = unitData.name + + self.select_unit(unitName) @misc_utils.log_exception(_moduleLogger) def _on_next_unit(self, checked = True): - self._select_unit(self._selectedIndex + 1) + index = self._selectedIndex + 1 + unitData = self._unitsModel.get_unit(index) + unitName = unitData.name + + if self._app.showFavoritesAction.isChecked(): + hiddenUnits = self._app.get_hidden_units(self._categoryName) + while unitName in hiddenUnits: + index += 1 + unitData = self._unitsModel.get_unit(index) + unitName = unitData.name + + self.select_unit(unitName) @misc_utils.log_exception(_moduleLogger) def _on_close_window(self, checked = True): @@ -1839,15 +1871,6 @@ class UnitWindow(object): if orderChanged: self._update_favorites() - def _select_unit(self, index): - unit = self._unitsModel.get_unit(index) - self._selectedUnitName.setText(unit.name) - self._selectedUnitValue.setText(str(unit.value)) - self._selectedUnitSymbol.setText(unit.unit) - - self._selectedIndex = index - self._app.add_recent(self._categoryName, self._unitsModel.get_unit(index).name) - def run_gonvert(): app = QtGui.QApplication([])