• Status Unconfirmed
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Application
  • Assigned To No-one
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version Development
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Koda
Opened by Chris Haslam - 02.01.2011

FS#154 - TAUpdown: Problems in AutoIt affect Koda

  • GUICtrlSetLimit() sets max and min but not increment. Perhaps a _GuiCtrlSetLimit(max, min, incr) could be written. Then Koda could set a (new) Increment property. It is needed if UDS_ARROWKEYS is to work. You may have some influence over Jon to add to GUICtrlSetLimit().
  • If no style is specified, Updown is placed to the right of the Input, but $GUI_SS_DEFAULT_UPDOWN alone puts the UpDown to the left of the Input. This is because UpDownConstants.au3 has
    Global Const $GUI_SS_DEFAULT_UPDOWN = $UDS_ALIGNLEFT

    To me, $GUI_SS_DEFAULT_* are equivalent to -1. AutoIt Help says that -1 means $UDS_ALIGNRIGHT. Right is where you expect to see an UpDown. So Koda should use $UDS_ALIGNRIGHT until AutoIt fixes $GUI_SS_DEFAULT_UPDOWN.


Admin
Admin commented on 03.01.2011 09:55

I googled MSDN and not found where UDS_ARROWKEYS requires "increment". Moreover, this term even not used anywhere with Updown. So, this is clearly language-dependend.

In Autoit I think this can be easily done with updown events.

Anyway, you can try

http://www.autoitscript.com/trac/autoit

If (unlikely, becuase it can be done other way) it will be added, I'm add increment in Koda.

So Koda should use $UDS_ALIGNRIGHT until AutoIt fixes $GUI_SS_DEFAULT_UPDOWN.

Hm, better to fix it in first place of course. It's not so simple make such kind of exceptions.

Chris Haslam commented on 03.01.2011 21:14

I see that http://msdn.microsoft.com/en-us/library/bb759880%28v=VS.85%29.aspx says that CreateUpDownControl

is obsolete because it can't handle 32-bit range and position. So I wonder how AutoIt implemented GUICtrlCreateUpDown(). It is in commctrl32.dll (so I would think it would be 32 bit). It takes a pos parameter. There are two setpos messages: UDM_SETPOS (16 bit) and UDM_SETPOS32 (32 bit). Strange! Is Microsoft internally confused? What is the 32-bit equivalent to CreateUpDownControl()?

autoitscript.com seems to be down at the moment. I will try later.

I agree that too many exceptions can sink the ship!

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing