TimeCtrl in wx3

I noticed a bit of odd behaviour when upgrading to wxPython 3.0.1.1
with the wx.lib.masked.TimeCtrl.

Namely 3 things,
- Using colon / tab to change the selection did weird things - to
recreate type '11:' in the timectrl __name__ __main__ demo then begin
typing again.
- Clicking or moving the cursor to a different field, then
incrementing with the spin control or arrow keys incremented where the
cursor used to be
- 24hr format was always being used for me, despite passing False to
the constructor.

I took a look at the issues and created patches for the 3 bugs which
I've attached.

Whats the normal process of getting these reviewed / applied? Should I
make a ticket on wxwidgets tracker?

Thanks!

Paul

maskededit.patch (1.27 KB)

timectrl.patch (1.73 KB)

Hi Paul,

I noticed a bit of odd behaviour when upgrading to wxPython 3.0.1.1
with the wx.lib.masked.TimeCtrl.

Namely 3 things,
- Using colon / tab to change the selection did weird things - to
recreate type '11:' in the timectrl __name__ __main__ demo then begin
typing again.
- Clicking or moving the cursor to a different field, then
incrementing with the spin control or arrow keys incremented where the
cursor used to be
- 24hr format was always being used for me, despite passing False to
the constructor.

I took a look at the issues and created patches for the 3 bugs which
I've attached.

Whats the normal process of getting these reviewed / applied? Should I
make a ticket on wxwidgets tracker?

For wxPython classic I would create a ticket on http://trac.wxwidgets.org/ post the above with the ticket number to the wxPython-dev list.

For wxPython phoenix I would just create PR's (Pull Request) on Pull requests · RobinD42/Phoenix · GitHub and give the above details on the PR.

Werner

···

On 9/22/2014 17:39, Paul Wiseman wrote:

Thanks Werner,

I guess I'm using classic? (wx.version() says classic)

···

On 22 September 2014 16:52, Werner <wernerfbd@gmx.ch> wrote:

Hi Paul,

On 9/22/2014 17:39, Paul Wiseman wrote:

I noticed a bit of odd behaviour when upgrading to wxPython 3.0.1.1
with the wx.lib.masked.TimeCtrl.

Namely 3 things,
- Using colon / tab to change the selection did weird things - to
recreate type '11:' in the timectrl __name__ __main__ demo then begin
typing again.
- Clicking or moving the cursor to a different field, then
incrementing with the spin control or arrow keys incremented where the
cursor used to be
- 24hr format was always being used for me, despite passing False to
the constructor.

I took a look at the issues and created patches for the 3 bugs which
I've attached.

Whats the normal process of getting these reviewed / applied? Should I
make a ticket on wxwidgets tracker?

For wxPython classic I would create a ticket on http://trac.wxwidgets.org/
post the above with the ticket number to the wxPython-dev list.

For wxPython phoenix I would just create PR's (Pull Request) on
Pull requests · RobinD42/Phoenix · GitHub and give the above details on the
PR.

Werner

--
You received this message because you are subscribed to the Google Groups
"wxPython-users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to wxpython-users+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hi Paul,

Thanks Werner,

I guess I'm using classic? (wx.version() says classic)

Wasn't aware that 'classic' is shown, if you had phoenix it would be something like this:

import wxversion
wxversion.select('3.0-phoenix', True)
import wx
wx.version()
'3.0.2.dev77483 msw (phoenix)'

Phoenix is not officially released, and there are only snapshots available for it.

If you want to to try it and test and provided patches:) you have the documentation here:

http://wxpython.org/Phoenix/docs/html/main.html

and you can install it with pip:

pip install -U --pre -f Index of /Phoenix/snapshot-builds wxPython_Phoenix

Werner

···

On 9/22/2014 17:55, Paul Wiseman wrote:

Hi Paul,

Thanks Werner,

I guess I'm using classic? (wx.version() says classic)

Wasn't aware that 'classic' is shown, if you had phoenix it would be
something like this:

import wxversion
wxversion.select('3.0-phoenix', True)
import wx
wx.version()
'3.0.2.dev77483 msw (phoenix)'

Phoenix is not officially released, and there are only snapshots available
for it.

Ah thanks I didn't realise that somehow, I just thought 3.x was phoenix.

If you want to to try it and test and provided patches:) you have the
documentation here:

Redirecting...

and you can install it with pip:

pip install -U --pre -f Index of /Phoenix/snapshot-builds
wxPython_Phoenix

I'll look at patching phoenix and creating some pull requests.

I posted the wxwidgets tracker link to wxPython-dev list but it
doesn't appear to have shown up? I've never posted there before so
maybe I don't have permissions?

···

On 22 September 2014 17:10, Werner <wernerfbd@gmx.ch> wrote:

On 9/22/2014 17:55, Paul Wiseman wrote:

Werner

--
You received this message because you are subscribed to the Google Groups
"wxPython-users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to wxpython-users+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hi Paul,

...

I posted the wxwidgets tracker link to wxPython-dev list but it
doesn't appear to have shown up? I've never posted there before so
maybe I don't have permissions?

I do see it. How did you post it, if from a mail client with you gmail account I think you will not get it to your mail client.

Werner

···

On 9/22/2014 18:21, Paul Wiseman wrote:

I see it, probably first-time posts are queued for manual approval to reduce/prevent spam.

···

On Monday, September 22, 2014 10:43:07 AM UTC-7, werner wrote:

Hi Paul,

On 9/22/2014 18:21, Paul Wiseman wrote:

I posted the wxwidgets tracker link to wxPython-dev list but it

doesn’t appear to have shown up? I’ve never posted there before so

maybe I don’t have permissions?

I do see it. How did you post it, if from a mail client with you gmail
account I think you will not get it to your mail client.

Nathan McCorkle wrote:

I see it, probably first-time posts are queued for manual approval to
reduce/prevent spam.

That's correct.

···

--
Robin Dunn
Software Craftsman

Thanks for this. I wasn't even aware that it is so easy to test out
Phoenix without building it myself :slight_smile:

I've updated an application I develop for Phoenix compatibility now and
was very pleased that it didn't require many changes (although I'm using
a compatibility layer that re-implements some removed/renamed functions
because I need compatibility with wxPython 2.8.x and 3.x classic).

The only problem I ran into with Phoenix has to do with
wx.lib.delayedresult, i.e. sometimes I am getting a traceback like the
following (this is under Windows 7 x64, Python 2.7.6 win32, Phoenix
3.0.2.dev77756):

Exception in thread Thread-4:
Traceback (most recent call last):
  File "C:\Python27\Lib\threading.py", line 810, in __bootstrap_inner
    self.run()
  File "C:\Python27\Lib\threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "C:\Python27\lib\site-packages\wx\lib\delayedresult.py", line
276, in wrapper
    sender.sendResult(result)
  File "C:\Python27\lib\site-packages\wx\lib\delayedresult.py", line
112, in sendResult
    delayedResult = DelayedResult(result, jobID=self.__jobID)
AttributeError: SenderCallAfter instance has no attribute '_Sender__jobID'

I'd love to post a minimal example that demonstrates the issue, but so
far I'm having a hard time tracking it down (it seems to not be
reproducible at will).

Anyone else had a similar problem?

···

Am 22.09.2014 um 18:10 schrieb Werner:

pip install -U --pre -f Index of /Phoenix/snapshot-builds

--
Florian Höch