108 lines
4.5 KiB
Plaintext
108 lines
4.5 KiB
Plaintext
more flexible sizing determination
|
|
spaced shouldn't be a private global
|
|
textfield should have a method that allows control over the preferred number of characters, for sizing purposes
|
|
|
|
Multiline text fields and standalone labels
|
|
|
|
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]
|
|
// probably not a good idea
|
|
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)
|
|
OpenTextFieldAt(): more platform-specific finished editing options; escape key for cancelling too?
|
|
bounds checking in Select()
|
|
DPI()
|
|
|
|
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, SimpleGrid, 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
|
|
Combobox/Listbox
|
|
Select() for selecting a row, like in Table
|
|
|
|
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
|
|
- Area isn't transparent
|
|
- hard: has to be excluded from scrolling
|
|
- tab order is backwards
|
|
- extra space on first column of all Tables on real Windows
|
|
- fine-tune Table checkbox behavior (especially with regards to selection)
|
|
- open dialog, resize small window, hscroll size area, double click file -> stack points in no man's land (yay attached threads?)
|
|
- uitask pointer bug again?
|
|
- tabbing on an empty group infinite loops (same bug as with tabs)
|
|
- groupbox line behind groupbox text
|
|
- scrolling edit controls in Areas back into view don't cause redraw
|
|
- need to figure out the WM_MOUSELEAVE tango (see mergeback/table_mouseleave_windows.c)
|
|
- tell wine that WM_CTLCOLOR*** doesn't get sent early ?????
|
|
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
|
|
- will need to install 14.04 somewhere for this
|
|
mac os x
|
|
- http://stackoverflow.com/questions/25558728/how-can-i-be-notified-when-a-control-becomes-key-i-want-t-o-have-my-custom-warn/25562783?noredirect=1#comment39949908_25562783
|
|
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
|
|
all
|
|
- make spaced settable somehow
|
|
- rename Selected to Selection?
|