90 lines
3.5 KiB
Plaintext
90 lines
3.5 KiB
Plaintext
Group
|
|
Mac OS X: NSBox
|
|
container_darwin.m: figure out if our setFrameSize: thing applies to resizing the groupbox as well
|
|
|
|
Control
|
|
Enable()
|
|
Disable()
|
|
|
|
Table
|
|
refresh only selected rows of view to avoid flicker (especially on Windows)
|
|
add functions for header manipulation
|
|
|
|
Tab
|
|
// [TODO if each tab of your Tab is going to have the same content Controls, then use LikeTab instead, to conserve resources]
|
|
Delete()
|
|
// Delete removes the given tab.
|
|
// It panics if index is out of range.
|
|
// After Delete(), the effect of accessing the Control of the deleted tab or any of its children is undefned. [TODO reword?]
|
|
investigate close buttons (especially for LikeTab)
|
|
LikeArea is probably going to have to be a custom control
|
|
|
|
Area
|
|
keyboard scrolling
|
|
OpenTextAreaAt() to allow editing of text blocks from within Areas (only after I add TextArea; it will use TextAreas themselves, rather than providing its own)
|
|
|
|
Tree
|
|
Mac OS X: make sure newScrollView() has the correct parameters for Table and Tree (and that Area has the appropriate ones from both)
|
|
|
|
TextArea
|
|
Mac OS X: be sure to call disableAutocorrect()
|
|
|
|
Mac OS X
|
|
label alignment
|
|
// in the other case, the most correct thing would be for Label to be aligned to the alignment rect, but I can't get this working, and it looks fine as it is anyway
|
|
other controls
|
|
same rules? checkboxes seem damning...
|
|
ok in general
|
|
spacing applies to alignment rects
|
|
will conflict with Stack/Grid precalculation
|
|
unless we resize the control and move it around to suit
|
|
Tabs seem to have differnt margin rules
|
|
need to check padding rules within Tabs
|
|
text alignment (think labels and checkboxes) may be a perpetual problem though
|
|
activateIgnoringOtherApps: and command line programs: evaluate just how much it will matter
|
|
http://stackoverflow.com/a/25318870/3408572
|
|
use the undocumented _CFRunLoopSetCurrent() API to drop the stupid "must run on the man thread" restriction
|
|
|
|
TextField
|
|
figure out numerics because you CAN paste into numeric boxes on Windows and GTK+ has no built-in number validator as far as I know
|
|
will likely just use Invalid()
|
|
|
|
Stack, Grid
|
|
method calls should trigger re-layout of windows
|
|
default buttons
|
|
figure out how they interact with Areas (especially on GTK+, where GtkEntry somehow has special handling for this)
|
|
|
|
in general
|
|
new moving stack and future moving heap make package ui a pain in general
|
|
issue 8310: watch for changes
|
|
|
|
dialog boxes
|
|
find out if Stop has an effect before a dialog box function returns
|
|
our solution for common dialogs is rather heavyweight and doesn't work for user-created dialogs
|
|
foreign events are a problem
|
|
|
|
so I don't forget, some TODOs:
|
|
windows
|
|
- backgrounds are not transparent
|
|
- tab order is backwards
|
|
- flicker ahoy
|
|
- not all controls are transparent
|
|
- extra space on first column of all Tables on real Windows
|
|
- labels draw over themselves
|
|
- fine-tune Table checkbox behavior (especially with regards to selection)
|
|
gtk+
|
|
- Area: figure out how Enter is processed in Entry
|
|
https://git.gnome.org/browse/gtk+/tree/gtk/gtkwindow.c#n1229
|
|
- Table: figure out how to allow empty selection by clicking in an empty area
|
|
- After applying the AreaHandler.Key() change, -small crashes in 3.10/distribution but not 3.14/jhbuild
|
|
gtk+, windows
|
|
- Area: keyboard scrolling
|
|
gtk+, mac os x
|
|
- figure out how dialogs and Areas work together
|
|
- once that is done, document the behavior of Areas
|
|
mac os x
|
|
- test beep in TextField.Invalid()
|
|
all
|
|
- make spaced settable somehow
|
|
- rename Selected to Selection?
|