|
From: <sir...@us...> - 2003-03-03 15:37:43
|
Update of /cvsroot/btplusplus/BT++/src/TabTrans
In directory sc8-pr-cvs1:/tmp/cvs-serv20564/src/TabTrans
Modified Files:
Grid.py
Log Message:
- Reimplemented grid move up/down. Now also handels moving of selections of multiple items.
- Added images for move up/down.
- Implemented resizing grid columns.
- Fixed error with offscreen bitmap allocation(for grid).
- Sizes and/or positions of the main window (DlgMain) and the grids columns are now saved.
Index: Grid.py
===================================================================
RCS file: /cvsroot/btplusplus/BT++/src/TabTrans/Grid.py,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** Grid.py 2 Mar 2003 16:36:28 -0000 1.9
--- Grid.py 3 Mar 2003 15:37:05 -0000 1.10
***************
*** 15,18 ****
--- 15,26 ----
}
+ LabelResize = {
+ 'Over': false,
+ 'Active': false,
+ 'Num': -1,
+ 'Start': -1,
+ 'PosX': -1
+ }
+
def __init__(self, parent):
wxScrolledWindow.__init__(self, parent, -1, wxPoint(0,0), wxSize(786,335), style = wxSIMPLE_BORDER | wxCLIP_CHILDREN | wxNO_FULL_REPAINT_ON_RESIZE)
***************
*** 26,36 ****
#self.SetDefaultRowSize(22, false)
! self.Table.SetColSize(0, 230)
! self.Table.SetColSize(1, 80)
! self.Table.SetColSize(2, 80)
! self.Table.SetColSize(3, 70)
! self.Table.SetColSize(4, 120)
! self.Table.SetColSize(5, 70)
! self.Table.SetColSize(6, 90)
self.SetScrollRate( 5, 5 )
--- 34,40 ----
#self.SetDefaultRowSize(22, false)
! for col in range(self.Table.GetNumberCols()):
! size = Config.Get('GUI', 'GridCol%i' % col)
! self.Table.SetColSize(col, size)
self.SetScrollRate( 5, 5 )
***************
*** 40,45 ****
# Menu creation
! self.Menu = wxMenu( '' )
! self.Menu.Sel = -1
self.itemCancel = wxMenuItem( self.Menu, 1, 'Cancel' )
self.itemResume = wxMenuItem( self.Menu, 2, 'Resume' )
--- 44,48 ----
# Menu creation
! self.Menu = wxMenu('')
self.itemCancel = wxMenuItem( self.Menu, 1, 'Cancel' )
self.itemResume = wxMenuItem( self.Menu, 2, 'Resume' )
***************
*** 50,54 ****
self.itemCancel.SetBitmap( GetBitmap('Menu_Cancel') )
self.itemResume.SetBitmap( GetBitmap('Menu_Resume') )
! self.itemPause .SetBitmaps( GetBitmap('Menu_Pause') )
self.Menu.AppendItem( self.itemCancel )
--- 53,59 ----
self.itemCancel.SetBitmap( GetBitmap('Menu_Cancel') )
self.itemResume.SetBitmap( GetBitmap('Menu_Resume') )
! self.itemPause .SetBitmap( GetBitmap('Menu_Pause') )
! self.itemUp .SetBitmap( GetBitmap('Menu_MoveUp') )
! self.itemDown .SetBitmap( GetBitmap('Menu_MoveDown') )
self.Menu.AppendItem( self.itemCancel )
***************
*** 70,74 ****
--- 75,82 ----
EVT_LEFT_DOWN( self, self.OnMouseLeftDown )
+ EVT_LEFT_UP( self, self.OnMouseLeftUp )
EVT_RIGHT_DOWN( self, self.OnMouseRightDown )
+
+ EVT_MOTION( self, self.OnMouseMove )
self.DrawTools = {
***************
*** 91,94 ****
--- 99,103 ----
'LabelOutlineC3': wxPen( wxColor( 64, 64, 64) ),
'LabelFill': wxBrush( wxColor(212,208,200), wxSOLID ),
+ 'LabelSizeCursor': wxStockCursor( wxCURSOR_SIZEWE ),
'ArrowBitmap': GetBitmap('Grid_Arrow')
***************
*** 113,121 ****
###########################################################################################################
-
- #def MoveRow(self, evt):
- #self.Table.Move(evt.GetMoveRow(), evt.GetBeforeRow())
-
- ###########################################################################################################
###########################################################################################################
--- 122,125 ----
***************
*** 151,167 ****
loaders = self.GetLoaders(self.Selection['Set'])
for l in loaders:
! file.StartDownload()
###########################################################################################################
def Menu_Up(self, evt):
! sel = self.GetGridCursorRow()
! self.Table.Manager.Move( sel, sel - 1)
###########################################################################################################
def Menu_Down(self, evt):
! sel = self.GetGridCursorRow()
! self.Table.Manager.Move( sel, sel + 1)
###########################################################################################################
--- 155,186 ----
loaders = self.GetLoaders(self.Selection['Set'])
for l in loaders:
! l.StartDownload()
###########################################################################################################
def Menu_Up(self, evt):
! self.Selection['Set'].sort()
! new = []
!
! for i in self.Selection['Set']:
! self.Table.Manager.Move(i, i - 1)
! new.append(i - 1)
!
! self.Selection['Set'] = new
! self.Refresh()
###########################################################################################################
def Menu_Down(self, evt):
! self.Selection['Set'].sort()
! self.Selection['Set'].reverse()
! new = []
!
! for i in self.Selection['Set']:
! self.Table.Manager.Move(i, i + 1)
! new.append(i + 1)
!
! self.Selection['Set'] = new
! self.Refresh()
###########################################################################################################
***************
*** 206,211 ****
self.itemPause .Enable( pause )
self.itemResume .Enable( resume )
! self.itemUp .Enable( false )
! self.itemDown .Enable( false )
self.PopupMenu( self.Menu, evt.GetPosition() )
--- 225,230 ----
self.itemPause .Enable( pause )
self.itemResume .Enable( resume )
! self.itemUp .Enable( mup )
! self.itemDown .Enable( mdown )
self.PopupMenu( self.Menu, evt.GetPosition() )
***************
*** 214,218 ****
--- 233,268 ----
###########################################################################################################
+ def OnMouseMove(self, evt):
+ if self.LabelResize['Active'] == true:
+ self.LabelResize['PosX'] = evt.GetX()
+ self.Refresh()
+ return
+
+ self.SetCursor( wxNullCursor )
+ self.LabelResize['Over'] = false
+
+ if evt.GetY() > self.Table.GetColLabelSize():
+ return
+
+ x = evt.GetX() - self.Table.GetRowLabelSize()
+
+ for col in range(self.Table.GetNumberCols()):
+ x = x - self.Table.GetColSize(col)
+
+ if x <= 0:
+ break
+
+ if x in [-2, -1, 0, 1, 2]:
+ self.LabelResize['Over'] = true
+ self.LabelResize['Num'] = col
+ self.SetCursor( self.DrawTools['LabelSizeCursor'] )
+
+ ###########################################################################################################
+
def OnMouseLeftDown(self, evt):
+ if self.LabelResize['Over'] == true:
+ self.LabelResize['Active'] = true
+ self.LabelResize['Start'] = evt.GetX()
+
x = evt.GetX()
y = evt.GetY()
***************
*** 227,230 ****
--- 277,298 ----
self.Selection['Set'].append( row )
+ self.Refresh()
+
+ def OnMouseLeftUp(self, evt):
+ if self.LabelResize['Active'] == false:
+ return
+
+ col = self.LabelResize['Num']
+ value = self.LabelResize['Start'] - evt.GetX()
+
+ self.Table.SetColSize( col,
+ self.Table.GetColSize(col) - value )
+
+ self.LabelResize['Active'] = false
+ self.LabelResize['Num'] = -1
+ self.LabelResize['Sart'] = -1
+
+ self.Refresh()
+ self.OnSize(None)
###########################################################################################################
***************
*** 264,268 ****
return -1
-
return InRow
--- 332,335 ----
***************
*** 270,294 ****
###########################################################################################################
- #def OnSelectedRange(self, evt):
- #if evt.Selecting():
- # adding to the list...
- #for index in range( evt.GetTopRow(), evt.GetBottomRow()+1):
- #if index not in self.currentSelection:
- #self.currentSelection.append( index )
- #else:
- # removal from list
- #for index in range( evt.GetTopRow(), evt.GetBottomRow()+1):
- #while index in self.currentSelection:
- #self.currentSelection.remove( index )
-
- #evt.Skip()
-
- #def OnSelectedCell(self, evt):
- #self.currentSelection = [ evt.GetRow() ]
- #evt.Skip()
-
- ###########################################################################################################
- ###########################################################################################################
-
#def SetFullSize(self):
--- 337,340 ----
***************
*** 302,306 ****
try:
! dc = self.BufferDC
dc.BeginDrawing()
--- 348,354 ----
try:
! dc = self.BufferDC
! w,h = dc.GetSizeTuple()
!
dc.BeginDrawing()
***************
*** 325,334 ****
dc.EndDrawing()
! w, h = dc.GetSizeTuple()
!
ondc = wxPaintDC(self)
self.PrepareDC(ondc)
ondc.BeginDrawing()
ondc.Blit(0, 0, w, h, dc, 0, 0 )
ondc.EndDrawing()
except:
--- 373,390 ----
dc.EndDrawing()
!
! # Copy onto onscreen DC
ondc = wxPaintDC(self)
self.PrepareDC(ondc)
ondc.BeginDrawing()
ondc.Blit(0, 0, w, h, dc, 0, 0 )
+
+ # Draw resize line
+ if self.LabelResize['Active'] == true:
+ x = self.LabelResize['PosX']
+
+ ondc.SetPen( self.DrawTools['HighlightOutline'] )
+ ondc.DrawLine( x + 1, 0, x + 1, h )
+
ondc.EndDrawing()
except:
***************
*** 493,497 ****
def OnSize(self, evt):
cols = range(self.Table.GetNumberCols())
! rows = range(self.Table.GetNumberCols())
width = self.Table.GetRowLabelSize()
--- 549,553 ----
def OnSize(self, evt):
cols = range(self.Table.GetNumberCols())
! rows = range(self.Table.GetNumberRows())
width = self.Table.GetRowLabelSize()
***************
*** 514,523 ****
###########################################################################################################
- def OnColSize(self, evt):
- pass
- #self.Table.ResetView()
- #self.AdjustScrollbars()
-
def Destroy(self, evt = wxCloseEvent()):
self.Table.Destroy()
self.Updater.Shutdown()
--- 570,579 ----
###########################################################################################################
def Destroy(self, evt = wxCloseEvent()):
+ for col in range(self.Table.GetNumberCols()):
+ Config.Set('GUI', 'GridCol%i' % col, self.Table.GetColSize(col))
+
+ Config.Save()
+
self.Table.Destroy()
self.Updater.Shutdown()
|