X-Git-Url: http://git.maemo.org/git/?p=gonvert;a=blobdiff_plain;f=src%2Fgonvert_glade.py;h=96ac6e2d937610e5226847352be7212616f1bb2d;hp=674bea4644cd3d3efe9e705d5f25069dd6a1453b;hb=518cac83c700993c563f70735701bdf30c25a0c1;hpb=32797f0e4ff6b724bafbb968065e37d011d5787c diff --git a/src/gonvert_glade.py b/src/gonvert_glade.py index 674bea4..96ac6e2 100755 --- a/src/gonvert_glade.py +++ b/src/gonvert_glade.py @@ -1,6 +1,8 @@ #!/usr/bin/env python # -*- coding: UTF8 -*- +from __future__ import with_statement + import os import math import pickle @@ -86,6 +88,7 @@ class Gonvert(object): self._value_sort_direction = False self._units_sort_direction = False self._isFullScreen = False + self._clipboard = gtk.clipboard_get() self._find_result = [] # empty find result list self._findIndex = 0 # default to find result number zero @@ -333,6 +336,17 @@ class Gonvert(object): windowDatPath = "/".join((constants._data_path_, "window.dat")) pickle.dump(window_settings, open(windowDatPath, 'w')) + def _refresh_columns(self): + self._unitsView.remove_column(self._unitNameColumn) + self._unitsView.remove_column(self._unitIntegerColumn) + self._unitsView.remove_column(self._unitFractionalColumn) + self._unitsView.remove_column(self._unitSymbolColumn) + + self._unitsView.append_column(self._unitNameColumn) + self._unitsView.append_column(self._unitIntegerColumn) + self._unitsView.append_column(self._unitFractionalColumn) + self._unitsView.append_column(self._unitSymbolColumn) + def _clear_find(self): # switch to "new find" state self._find_result = [] @@ -461,8 +475,9 @@ class Gonvert(object): self._sortedUnitModel.sort_column_changed() if FORCE_HILDON_LIKE: - charWidth = int(nameLength * 0.75) - charWidth = min(charWidth, 20) + maxCatCharWidth = int(nameLength * 0.75) + maxCharWidth = int(len("nibble | hexit | quadbit") * 0.75) + charWidth = min(maxCatCharWidth, maxCharWidth) self._unitsNameRenderer.set_property("width-chars", charWidth) self._select_default_unit() @@ -545,6 +560,11 @@ class Gonvert(object): self._find_previous() elif event.keyval == gtk.keysyms.n and event.get_state() & gtk.gdk.CONTROL_MASK: self._find_next() + elif event.keyval == ord("l") and event.get_state() & gtk.gdk.CONTROL_MASK: + with open(constants._user_logpath_, "r") as f: + logLines = f.xreadlines() + log = "".join(logLines) + self._clipboard.set_text(str(log)) except Exception, e: _moduleLogger.exception("_on_key_press") @@ -710,6 +730,7 @@ class Gonvert(object): self._previousUnitValue.set_text(str(func.from_base(base, arg, ))) self._sortedUnitModel.sort_column_changed() + self._refresh_columns() except Exception: _moduleLogger.exception("_on_unit_value_changed") @@ -742,6 +763,7 @@ class Gonvert(object): self._unitValue.set_text(str(func.from_base(base, arg, ))) self._sortedUnitModel.sort_column_changed() + self._refresh_columns() except Exception: _moduleLogger.exception("_on_previous_unit_value_changed")