Forráskód Böngészése

wxNviz: north arrow size -- textCtrl instead of spinCtrl (need floats)

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@47168 15284696-431f-4ddb-bdfa-cd5b030d7da7
Anna Petrášová 14 éve
szülő
commit
92d9a4a816

+ 5 - 1
gui/wxpython/gui_modules/nviz_mapdisp.py

@@ -141,7 +141,11 @@ class GLWindow(MapWindow, glcanvas.GLCanvas):
         self.nvizDefault = NvizDefault()
         self.nvizDefault = NvizDefault()
         self.light = copy.deepcopy(UserSettings.Get(group = 'nviz', key = 'light')) # copy
         self.light = copy.deepcopy(UserSettings.Get(group = 'nviz', key = 'light')) # copy
         self.decoration = self.nvizDefault.SetDecorDefaultProp()
         self.decoration = self.nvizDefault.SetDecorDefaultProp()
-        self.decoration['arrow']['size'] = round(self._display.GetLongDim() / 8., -2)
+        arwSize = self._display.GetLongDim()/8.
+        coef = 0.01
+        if arwSize < 1:
+            coef = 100.
+        self.decoration['arrow']['size'] = int(arwSize * coef)/coef
         
         
         self.Bind(wx.EVT_ERASE_BACKGROUND, self.OnEraseBackground)
         self.Bind(wx.EVT_ERASE_BACKGROUND, self.OnEraseBackground)
         self.Bind(wx.EVT_SIZE,             self.OnSize)
         self.Bind(wx.EVT_SIZE,             self.OnSize)

+ 5 - 5
gui/wxpython/gui_modules/nviz_tools.py

@@ -1724,11 +1724,11 @@ class NvizToolWindow(FN.FlatNotebook):
         gridSizer.Add(item = wx.StaticText(parent = panel, id = wx.ID_ANY,
         gridSizer.Add(item = wx.StaticText(parent = panel, id = wx.ID_ANY,
                                            label = _("Arrow size (in map units):")),
                                            label = _("Arrow size (in map units):")),
                       pos = (0,0), span = (1, 2), flag = wx.ALIGN_CENTER_VERTICAL)
                       pos = (0,0), span = (1, 2), flag = wx.ALIGN_CENTER_VERTICAL)
-        sizeSpin = wx.SpinCtrl(parent = panel, id = wx.ID_ANY, size = (65, -1),
-                               min = 0, max = 1e6, initial = 1000)
-        gridSizer.Add(sizeSpin, pos = (0, 2))
-        self.win['decoration']['arrow']['size'] = sizeSpin.GetId()
-        sizeSpin.Bind(wx.EVT_SPINCTRL, self.OnArrowProp)
+        sizeCtrl = NumTextCtrl(parent = panel, id = wx.ID_ANY, size = (65, -1), style = wx.TE_PROCESS_ENTER)
+        gridSizer.Add(sizeCtrl, pos = (0, 2))
+        self.win['decoration']['arrow']['size'] = sizeCtrl.GetId()
+        sizeCtrl.Bind(wx.EVT_TEXT_ENTER, self.OnArrowProp)
+        sizeCtrl.Bind(wx.EVT_KILL_FOCUS, self.OnArrowProp)
         
         
         # color
         # color
         gridSizer.Add(item = wx.StaticText(parent = panel, id = wx.ID_ANY,
         gridSizer.Add(item = wx.StaticText(parent = panel, id = wx.ID_ANY,