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