28 |
# |
# |
29 |
from wxPython.wx import * |
from wxPython.wx import * |
30 |
|
|
31 |
## from gnue.forms import VERSION |
from wxPython.wx import * |
32 |
## from gnue.forms.GFForm import * |
from gnue.common import events |
|
## from gnue.forms.uidrivers._base.UIdriver import * |
|
33 |
|
|
|
## from gnue.forms.uidrivers.wx.GFwxApp import * |
|
|
## from gnue.forms.uidrivers.wx.UIWXSplashScreen import * |
|
34 |
from gnue.forms.uidrivers.wx.widgets._base import UIHelper |
from gnue.forms.uidrivers.wx.widgets._base import UIHelper |
35 |
## from gnue.common import * |
from gnue.forms.uidrivers.wx.common import _eventObjTowxWindow |
36 |
|
from gnue.forms.uidrivers.wx.common import _setDefaultEventHandlers |
37 |
|
|
38 |
|
|
39 |
# |
# |
45 |
class UIScrollBar(UIHelper): |
class UIScrollBar(UIHelper): |
46 |
def _createWidget(self, event, spacer): |
def _createWidget(self, event, spacer): |
47 |
object = event.object |
object = event.object |
48 |
newWidget =wxScrollBar(event.container,-1, |
newWidget = self._widget = wxScrollBar(event.container,-1, |
49 |
wxPoint(object.Char__x*event.widgetWidth,(object.Char__y+spacer)*event.widgetHeight), |
wxPoint(object.Char__x*event.widgetWidth,(object.Char__y+spacer)*event.widgetHeight), |
50 |
wxSize(object.Char__width*event.widgetWidth,object.Char__height*event.widgetHeight), |
wxSize(object.Char__width*event.widgetWidth,object.Char__height*event.widgetHeight), |
51 |
wxSB_VERTICAL) |
wxSB_VERTICAL) |
52 |
|
|
53 |
|
if event.initialize: |
54 |
|
self._eventHandler = event.eventHandler |
55 |
|
EVT_COMMAND_SCROLL(newWidget, newWidget.GetId(), self.scrollbarHandler) |
56 |
|
_setDefaultEventHandlers(newWidget, event.eventHandler, event.initialize,self._uiDriver) |
57 |
|
|
58 |
|
object._block.registerScrollbar(self) |
59 |
|
self._rows = object._block._rows |
60 |
|
|
61 |
return newWidget |
return newWidget |
62 |
|
|
63 |
|
def scrollbarHandler(self, event): |
64 |
|
object = _eventObjTowxWindow(event) |
65 |
|
id = object.GetId() |
66 |
|
|
67 |
|
value = object.GetThumbPosition() |
68 |
|
recno = int(value)+1 |
69 |
|
|
70 |
|
gfObject = self._uiDriver._IdToGFObj[id] |
71 |
|
action = events.Event('requestRECORDNUMBER',object=gfObject, |
72 |
|
data=recno, |
73 |
|
_form=gfObject._form) |
74 |
|
self._eventHandler(action) |
75 |
|
|
76 |
|
def adjustScrollbar(self, pos, range): |
77 |
|
# position, thumbSize, range, pageSize, refresh = TRUE |
78 |
|
self._widget.SetScrollbar(pos, 1, range, self._rows-1) |
79 |
|
|
80 |
configuration = { |
configuration = { |
81 |
'baseClass' : UIScrollBar, |
'baseClass' : UIScrollBar, |
82 |
'provides' : 'GFScrollBar', |
'provides' : 'GFScrollBar', |