I have committed a ttk::spinbox with support in all the core themes except for Aqua. Someone with a Mac needs to add the button elements for that theme and check it all looks ok.
A couple of large yaks need to be shaved before this can work right on OSX.
The most immediate one is The Scrollbar Problem Redux: the Aqua Appearance Manager wants to draw the spinbox arrows as a unit (DrawThemeButton(..., kThemeIncDecButton, ...)), not as individual up- and down- arrow parts like in Windows. This is an impedance mismatch with the Ttk theme engine and the ttk::spinbox bindings, which really want to see the *uparrow and *downarrow parts as separate elements.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
OSX spinbutton implementation committed to Tile CVS; forward-ported changes to Tk (but have not yet committed).
It looks OK on OSX, but the interaction is incorrect: the spinbuttons don't give the correct 'pressed' feedback. (This part will take a bit more work to fix.)
Also moved most of the spinbox "business logic" out of the C code into Tcl binding scripts, fixing a couple bugs in process (see ChangeLog for details).
Pat -- please review; if it looks OK I'll commit the revised version to Tk CVS.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
A couple of large yaks need to be shaved before this can work right on OSX.
The most immediate one is The Scrollbar Problem Redux: the Aqua Appearance Manager wants to draw the spinbox arrows as a unit (DrawThemeButton(..., kThemeIncDecButton, ...)), not as individual up- and down- arrow parts like in Windows. This is an impedance mismatch with the Ttk theme engine and the ttk::spinbox bindings, which really want to see the *uparrow and *downarrow parts as separate elements.
OSX spinbutton implementation committed to Tile CVS; forward-ported changes to Tk (but have not yet committed).
It looks OK on OSX, but the interaction is incorrect: the spinbuttons don't give the correct 'pressed' feedback. (This part will take a bit more work to fix.)
Also moved most of the spinbox "business logic" out of the C code into Tcl binding scripts, fixing a couple bugs in process (see ChangeLog for details).
Pat -- please review; if it looks OK I'll commit the revised version to Tk CVS.
Patch committed to Tk.
Spinbox looks right, but still feels wrong -- still no 'pressed' feedback for the up- and down-arrow parts of the spinbutton.