[GRASS-dev] [GRASS GIS] #1239: wxGUI command layer broken and unusable

GRASS GIS trac at osgeo.org
Tue Dec 14 04:06:36 EST 2010


#1239: wxGUI command layer broken and unusable
-------------------------+--------------------------------------------------
 Reporter:  garu         |       Owner:  grass-dev@…              
     Type:  defect       |      Status:  new                      
 Priority:  major        |   Milestone:  6.4.1                    
Component:  wxGUI        |     Version:  6.4.0                    
 Keywords:               |    Platform:  MSWindows XP             
      Cpu:  Unspecified  |  
-------------------------+--------------------------------------------------
 (Grass Gis 6.4.0 embedded into Qgis 1.6.0)
 The command layer support of wxGUI is completely broken and unusable.

 (I'm new to Grass and i don't know Python so forgive me if what i'm saying
 when talking about python code is not completely exact)

 1) When creating a command layer the
 {{{
 wxgui_utils.AddLayer
 }}}
 creates the text box with
 {{{
 pos=wx.DefaultPosition, size=(self.GetSize()[0]-100,25)
 }}}
 but with an height of 25 and
 {{{
 wx.TE_DONTWRAP
 }}}
 the text box is completely filled with the horizontal scroll bar and
 there's no room to enter the command. To have the room where to enter the
 command the height should be at least 40.

 2) Even when setting the height to 40 if the entered command exceeds the
 horizontal visible space, the horizontal scroll bar has no effect. To
 scroll you have to put the caret into the text box and scroll back and
 forth using the arrow keys.

 3) When dragging the command layer, in the
 {{{
 RecreateItem
 }}}
 the line
 {{{
 elif self.GetPyData(dragItem)[0]['type'] == 'command':
 }}}
 will never take control because for command layers the previous
 {{{
 if self.GetPyData(dragItem)[0]['ctrl']:
 }}}
 will always be true and the dropped control will be painted without the
 text box.

 4) Besides even if the above elif could execute, the command layer text
 box would be painted with
 {{{
 pos=wx.DefaultPosition, size=(250,25)
 }}}
 that in any case is incorrect.

 5) Since when the text box is initially created, the visible width is set
 relative to  the width of the Layer Manager panel, one would expect that
 resizing the width of the Layer Manager panel would also resize
 accordingly the visible part of the text box, but this does not happen.

 BTW, from a basic overview it looks like the layertree.py in the trunk
 suffers the same problems.

-- 
Ticket URL: <http://trac.osgeo.org/grass/ticket/1239>
GRASS GIS <http://grass.osgeo.org>



More information about the grass-dev mailing list