Fixed Listbox and LineEdit borders on Windows. Also more TODOs.

This commit is contained in:
Pietro Gagliardi 2014-04-02 19:57:49 -04:00
parent 77b5afe824
commit 4ac5290771
2 changed files with 14 additions and 9 deletions

View File

@ -74,9 +74,11 @@ var classTypes = [nctypes]*classData{
}, },
c_lineedit: &classData{ c_lineedit: &classData{
name: "EDIT", name: "EDIT",
style: _ES_AUTOHSCROLL | _WS_BORDER | controlstyle, // WS_EX_CLIENTEDGE without WS_BORDER will apply visual styles
xstyle: 0 | controlxstyle, // thanks to MindChild in irc.efnet.net/#winprog
altStyle: _ES_PASSWORD | _ES_AUTOHSCROLL | _WS_BORDER | controlstyle, style: _ES_AUTOHSCROLL | controlstyle,
xstyle: _WS_EX_CLIENTEDGE | controlxstyle,
altStyle: _ES_PASSWORD | _ES_AUTOHSCROLL | controlstyle,
}, },
c_label: &classData{ c_label: &classData{
name: "STATIC", name: "STATIC",
@ -86,11 +88,11 @@ var classTypes = [nctypes]*classData{
c_listbox: &classData{ c_listbox: &classData{
name: "LISTBOX", name: "LISTBOX",
// TODO also _WS_HSCROLL? // TODO also _WS_HSCROLL?
// we don't use _LBS_STANDARD because it sorts // we don't use _LBS_STANDARD because it sorts (and has WS_BORDER; see above)
// _LBS_NOINTEGRALHEIGHT gives us exactly the size we want // _LBS_NOINTEGRALHEIGHT gives us exactly the size we want
style: _LBS_NOTIFY | _WS_BORDER | _LBS_NOINTEGRALHEIGHT | _WS_VSCROLL | controlstyle, style: _LBS_NOTIFY | _LBS_NOINTEGRALHEIGHT | _WS_VSCROLL | controlstyle,
xstyle: 0 | controlxstyle, xstyle: _WS_EX_CLIENTEDGE | controlxstyle,
altStyle: _LBS_EXTENDEDSEL | _LBS_NOTIFY | _LBS_NOINTEGRALHEIGHT | _WS_BORDER | _WS_VSCROLL | controlstyle, altStyle: _LBS_EXTENDEDSEL | _LBS_NOTIFY | _LBS_NOINTEGRALHEIGHT | _WS_VSCROLL | controlstyle,
appendMsg: _LB_ADDSTRING, appendMsg: _LB_ADDSTRING,
insertBeforeMsg: _LB_INSERTSTRING, insertBeforeMsg: _LB_INSERTSTRING,
deleteMsg: _LB_DELETESTRING, deleteMsg: _LB_DELETESTRING,

View File

@ -5,8 +5,7 @@ so I don't forget:
- character-limited entry fields, numeric entry fields, multiline entry fields - character-limited entry fields, numeric entry fields, multiline entry fields
- possible rename of LineEdit? - possible rename of LineEdit?
- especially for password fields - NewPasswordEntry()? - especially for password fields - NewPasswordEntry()?
- [all platforms] Listbox should have a border style - [all platforms except Windows] Listbox should have a border style
- [Windows] a different border on LineEdits and Listboxes
- padding and spacing in Stack - padding and spacing in Stack
- allow Combobox to have initial settings - allow Combobox to have initial settings
- Combobox and Listbox insertions and deletions should allow bulk (...string) - Combobox and Listbox insertions and deletions should allow bulk (...string)
@ -40,6 +39,7 @@ important things:
- LineEdit heights on Windows seem too big; either that or LineEdit, Button, and Label text is not vertically centered properly - LineEdit heights on Windows seem too big; either that or LineEdit, Button, and Label text is not vertically centered properly
- are Checkboxes too small? - are Checkboxes too small?
- Cocoa has similar margining issues (like Comboboxes having margins) - Cocoa has similar margining issues (like Comboboxes having margins)
- on Windows 7 controls seem to use a slightly larger font than what the UI guidelines want? there really should have been a system call for this, Microsoft...
- sometimes the size of the drop-down part of a Combobox becomes 0 or 1 or some other impossibly small value on Windows - sometimes the size of the drop-down part of a Combobox becomes 0 or 1 or some other impossibly small value on Windows
- make gcc (Unix)/clang (Mac OS X) pedantic about warnings/errors; also -Werror - make gcc (Unix)/clang (Mac OS X) pedantic about warnings/errors; also -Werror
- make sure scrollbars in Listbox work identically on all platforms (specifically the existence and autohiding of both horizontal and vertical scrollbars) - make sure scrollbars in Listbox work identically on all platforms (specifically the existence and autohiding of both horizontal and vertical scrollbars)
@ -84,6 +84,7 @@ super ultra important things:
- see update 18 March 2014 in README - see update 18 March 2014 in README
- resizing seems to be completely and totally broken in the Wayland backend - resizing seems to be completely and totally broken in the Wayland backend
- redrawing Areas on Windows seems to be flaky - redrawing Areas on Windows seems to be flaky
- redrawing everything after a resize on Windows seems to be flaky
- make sure the first and last rows and columns of an Area are being drawn on Windows - make sure the first and last rows and columns of an Area are being drawn on Windows
- clicking on Areas in GTK+ don't bring keyboard focus to them? - clicking on Areas in GTK+ don't bring keyboard focus to them?
- make sure GTK+ keyboard events on numpad off don't switch between controls - make sure GTK+ keyboard events on numpad off don't switch between controls
@ -93,6 +94,8 @@ super ultra important things:
- despite us explicitly clearing the clip area on Windows, Area still doesn't seem to draw alpha bits correctly... it appears as if we are drawing over the existing image each time - despite us explicitly clearing the clip area on Windows, Area still doesn't seem to draw alpha bits correctly... it appears as if we are drawing over the existing image each time
- on Windows, Shift+(num pad key) triggers the shifted key code when num lock is off; will need to reorder key code tests on all platforms to fix this - on Windows, Shift+(num pad key) triggers the shifted key code when num lock is off; will need to reorder key code tests on all platforms to fix this
- pressing global keycodes (including kwin's zoom in/out) when running the keyboard test in wine causes the Area to lose keyboard focus; this doesn't happen on the GTK+ version (fix the Windows version to behave like the GTK+ version) - pressing global keycodes (including kwin's zoom in/out) when running the keyboard test in wine causes the Area to lose keyboard focus; this doesn't happen on the GTK+ version (fix the Windows version to behave like the GTK+ version)
- GTK+ indefinite progress bar animation is too fast; HIG doesn't list a preferred speed?
- Message boxes are not application-modal on some platforms
important things: important things:
- make specific wording in documentation consistent (make/create, etc.) - make specific wording in documentation consistent (make/create, etc.)