Author: reinhard
Date: 2010-11-12 10:23:07 -0600 (Fri, 12 Nov 2010)
New Revision: 10235

Modified:
   trunk/gnue-forms/
   trunk/gnue-forms/src/GFParser.py
   trunk/gnue-forms/src/uidrivers/wx/widgets/button.py
Log:
Allow grid_link for buttons, too, just like for entries.



Property changes on: trunk/gnue-forms
___________________________________________________________________
Name: bzr:revision-info
   - timestamp: 2010-11-12 16:40:24.926000118 +0100
committer: Reinhard Müller <reinhard.muel...@bytewise.at>
properties: 
        branch-nick: forms

   + timestamp: 2010-11-12 16:59:54.292999983 +0100
committer: Reinhard Müller <reinhard.muel...@bytewise.at>
properties: 
        branch-nick: forms

Name: bzr:file-ids
   - src/GFObjects/GFEntry.py   
1...@3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:src%2FGFObjects%2FGFEntry.py
src/GFObjects/GFImage.py        
3...@3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:src%2FGFObjects%2FGFImage.py
src/GFObjects/GFTabStop.py      
3...@3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:src%2FGFObjects%2FGFTabStop.py
src/uidrivers/wx/widgets/entry.py       
10...@3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:src%2Fuidrivers%2Fwx%2Fwidgets%2Fentry.py
src/uidrivers/wx/widgets/image.py       
10...@3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:src%2Fuidrivers%2Fwx%2Fwidgets%2Fimage.py

   + src/GFParser.py    
1...@3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:src%2FGFParser.py
src/uidrivers/wx/widgets/button.py      
10...@3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:src%2Fuidrivers%2Fwx%2Fwidgets%2Fbutton.py

Name: bzr:revision-id:v4
   - 3116 reinhard.muel...@bytewise.at-20100426083500-vtmq0qvd7htz02zx
3117 reinhard.muel...@bytewise.at-20100512151744-2jx8tmtop30kl5n0
3118 reinhard.muel...@bytewise.at-20100705094014-ks9yv7b8gs6ychrb
3119 reinhard.muel...@bytewise.at-20100706085143-hyxadj30ayg28jpx
3120 reinhard.muel...@bytewise.at-20100706140804-sn3npws1ykm81ubx
3121 reinhard.muel...@bytewise.at-20100909134008-5p7jq048nkutldse
3122 reinhard.muel...@bytewise.at-20100923144753-e8hthxho7n5mwg9z
3123 reinhard.muel...@bytewise.at-20100929193018-7r3injoy8g28fwm6
3124 reinhard.muel...@bytewise.at-20100930073631-ilf6smgjt6mfvkpz
3125 reinhard.muel...@bytewise.at-20101011191957-yaj9rkqbervc91ac
3126 reinhard.muel...@bytewise.at-20101020084039-jmfxjbctt6vc2usd
3127 reinhard.muel...@bytewise.at-20101020124425-0dpprxsmanmaenty
3128 reinhard.muel...@bytewise.at-20101020124541-zppkmzww1lnsk8x4
3129 reinhard.muel...@bytewise.at-20101020141905-vjg7r3wihnm7mxam
3130 reinhard.muel...@bytewise.at-20101020143045-pf9ywx1s3hdqbsh7
3131 reinhard.muel...@bytewise.at-20101020143328-ctfmr3fpp5quq1eo
3132 reinhard.muel...@bytewise.at-20101020152139-rlllh9m2qn45atcz
3133 reinhard.muel...@bytewise.at-20101020163022-tgnjcv18nzrc5sfw
3134 reinhard.muel...@bytewise.at-20101020165411-krluvclyw61ef9zp
3135 reinhard.muel...@bytewise.at-20101020185529-pmdkwkm59c1h630f
3136 reinhard.muel...@bytewise.at-20101020195954-1kd9avbmzkrzwzbt
3137 reinhard.muel...@bytewise.at-20101020202048-8q84nx5a54ifxkla
3138 reinhard.muel...@bytewise.at-20101027211256-o7pi879h2x1ceri2
3139 reinhard.muel...@bytewise.at-20101028135833-wftnu2r1cocknxyf
3140 reinhard.muel...@bytewise.at-20101028144709-dbamfa759xoeh127
3141 reinhard.muel...@bytewise.at-20101028145355-uhqftv7n1bcvuz8l
3142 reinhard.muel...@bytewise.at-20101028151042-ueeqwlufysjbke01
3143 reinhard.muel...@bytewise.at-20101028153459-522p7574jw2e11jj
3144 reinhard.muel...@bytewise.at-20101028164956-gua27xm7ad12a218
3145 reinhard.muel...@bytewise.at-20101028181046-hxaehghl84zx9ye0
3146 reinhard.muel...@bytewise.at-20101028194606-598w1lqua0te1m7j
3147 reinhard.muel...@bytewise.at-20101028205855-5k1f08wfdgofenjd
3148 reinhard.muel...@bytewise.at-20101102154340-basdvi9wrxzbx4va
3149 reinhard.muel...@bytewise.at-20101102155520-bbh74pv3qjur1epo
3150 reinhard.muel...@bytewise.at-20101112154024-57tv8mf0wbiycuw1

   + 3116 reinhard.muel...@bytewise.at-20100426083500-vtmq0qvd7htz02zx
3117 reinhard.muel...@bytewise.at-20100512151744-2jx8tmtop30kl5n0
3118 reinhard.muel...@bytewise.at-20100705094014-ks9yv7b8gs6ychrb
3119 reinhard.muel...@bytewise.at-20100706085143-hyxadj30ayg28jpx
3120 reinhard.muel...@bytewise.at-20100706140804-sn3npws1ykm81ubx
3121 reinhard.muel...@bytewise.at-20100909134008-5p7jq048nkutldse
3122 reinhard.muel...@bytewise.at-20100923144753-e8hthxho7n5mwg9z
3123 reinhard.muel...@bytewise.at-20100929193018-7r3injoy8g28fwm6
3124 reinhard.muel...@bytewise.at-20100930073631-ilf6smgjt6mfvkpz
3125 reinhard.muel...@bytewise.at-20101011191957-yaj9rkqbervc91ac
3126 reinhard.muel...@bytewise.at-20101020084039-jmfxjbctt6vc2usd
3127 reinhard.muel...@bytewise.at-20101020124425-0dpprxsmanmaenty
3128 reinhard.muel...@bytewise.at-20101020124541-zppkmzww1lnsk8x4
3129 reinhard.muel...@bytewise.at-20101020141905-vjg7r3wihnm7mxam
3130 reinhard.muel...@bytewise.at-20101020143045-pf9ywx1s3hdqbsh7
3131 reinhard.muel...@bytewise.at-20101020143328-ctfmr3fpp5quq1eo
3132 reinhard.muel...@bytewise.at-20101020152139-rlllh9m2qn45atcz
3133 reinhard.muel...@bytewise.at-20101020163022-tgnjcv18nzrc5sfw
3134 reinhard.muel...@bytewise.at-20101020165411-krluvclyw61ef9zp
3135 reinhard.muel...@bytewise.at-20101020185529-pmdkwkm59c1h630f
3136 reinhard.muel...@bytewise.at-20101020195954-1kd9avbmzkrzwzbt
3137 reinhard.muel...@bytewise.at-20101020202048-8q84nx5a54ifxkla
3138 reinhard.muel...@bytewise.at-20101027211256-o7pi879h2x1ceri2
3139 reinhard.muel...@bytewise.at-20101028135833-wftnu2r1cocknxyf
3140 reinhard.muel...@bytewise.at-20101028144709-dbamfa759xoeh127
3141 reinhard.muel...@bytewise.at-20101028145355-uhqftv7n1bcvuz8l
3142 reinhard.muel...@bytewise.at-20101028151042-ueeqwlufysjbke01
3143 reinhard.muel...@bytewise.at-20101028153459-522p7574jw2e11jj
3144 reinhard.muel...@bytewise.at-20101028164956-gua27xm7ad12a218
3145 reinhard.muel...@bytewise.at-20101028181046-hxaehghl84zx9ye0
3146 reinhard.muel...@bytewise.at-20101028194606-598w1lqua0te1m7j
3147 reinhard.muel...@bytewise.at-20101028205855-5k1f08wfdgofenjd
3148 reinhard.muel...@bytewise.at-20101102154340-basdvi9wrxzbx4va
3149 reinhard.muel...@bytewise.at-20101102155520-bbh74pv3qjur1epo
3150 reinhard.muel...@bytewise.at-20101112154024-57tv8mf0wbiycuw1
3151 reinhard.muel...@bytewise.at-20101112155954-ky2g6irsodlzg6yy

Name: bzr:text-parents
   - src/GFObjects/GFEntry.py   
svn-v3-single1-dHJ1bmsvZ251ZS1mb3Jtcw..:3a364389-8fce-0310-8f11-cc363fde16c7:trunk%2Fgnue-forms:10149
src/GFObjects/GFImage.py        
reinhard.muel...@bytewise.at-20101020124541-zppkmzww1lnsk8x4
src/GFObjects/GFTabStop.py      
reinhard.muel...@bytewise.at-20101028181046-hxaehghl84zx9ye0
src/uidrivers/wx/widgets/entry.py       
reinhard.muel...@bytewise.at-20101027211256-o7pi879h2x1ceri2
src/uidrivers/wx/widgets/image.py       
reinhard.muel...@bytewise.at-20101020165411-krluvclyw61ef9zp

   + src/GFParser.py    
reinhard.muel...@bytewise.at-20101020185529-pmdkwkm59c1h630f
src/uidrivers/wx/widgets/button.py      
reinhard.muel...@bytewise.at-20101027211256-o7pi879h2x1ceri2


Modified: trunk/gnue-forms/src/GFParser.py
===================================================================
--- trunk/gnue-forms/src/GFParser.py    2010-11-12 15:49:37 UTC (rev 10234)
+++ trunk/gnue-forms/src/GFParser.py    2010-11-12 16:23:07 UTC (rev 10235)
@@ -1066,7 +1066,14 @@
                'Description': 'The text that should appear on the button' },
             'action': {
                'Typecast': GTypecast.name,
-               'Description': 'Action to be executed when the button is 
fired'}},
+               'Description': 'Action to be executed when the button is 
fired'},
+            'grid_link': {
+               'Typecast': GTypecast.name,
+               'Label': _('Grid Link'),
+               'Description': "If a button is linked to a grid, the user will "
+                        "be able to use the cursor up/down and page up/down "
+                        "keys to move around in the grid while the focus "
+                        "actually is in this button."}},
          'Positionable': True,
          'ParentTags': ('page','vbox','hbox','box','gridline'),
          'Label': u_('Button'),

Modified: trunk/gnue-forms/src/uidrivers/wx/widgets/button.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/wx/widgets/button.py 2010-11-12 15:49:37 UTC 
(rev 10234)
+++ trunk/gnue-forms/src/uidrivers/wx/widgets/button.py 2010-11-12 16:23:07 UTC 
(rev 10235)
@@ -78,8 +78,9 @@
 
         return self.widget
 
-
     # -------------------------------------------------------------------------
+    # Event handlers
+    # -------------------------------------------------------------------------
 
     def __on_char (self, event):
 
@@ -88,15 +89,24 @@
         if keycode in [wx.WXK_SPACE, wx.WXK_RETURN]:
             self._gfObject._event_fire()
 
-        else:
-            # For all other keys ask the keymapper if he could do something
-            # usefull
+        # Handle cursor up/down and page up/down.
+        if not (event.ShiftDown() or event.CmdDown() or event.AltDown()):
+            if keycode == wx.WXK_UP:
+                self._gfObject._event_line_up()
+            elif keycode == wx.WXK_DOWN:
+                self._gfObject._event_line_down()
+            elif keycode in (wx.WXK_PRIOR, wx.WXK_PAGEUP):
+                self._gfObject._event_page_up()
+            elif keycode in (wx.WXK_NEXT, wx.WXK_PAGEDOWN):
+                self._gfObject._event_page_down()
+
+        command = None
+
+        if keycode == wx.WXK_TAB:
             (command, args) = GFKeyMapper.KeyMapper.getEvent(keycode,
                     event.ShiftDown(), event.CmdDown(), event.AltDown())
-
             if command:
                 self._request(command, triggerName=args)
-
             else:
                 event.Skip()
 
@@ -117,7 +127,6 @@
         else:
             event.Skip()
 
-
     # -------------------------------------------------------------------------
 
     def __on_button (self, event):
@@ -127,7 +136,6 @@
             self._gfObject._event_set_focus(widget)
         self._gfObject._event_fire()
 
-
     # -------------------------------------------------------------------------
 
     def __on_set_focus (self, event):


_______________________________________________
commit-gnue mailing list
commit-gnue@gnu.org
http://lists.gnu.org/mailman/listinfo/commit-gnue

Reply via email to