andlabs-ui/future

131 lines
5.1 KiB
Plaintext
Raw Normal View History

mac os x sizing is now completely broken
- need to catch window initial sizes
- need to catch tab changes
2014-10-24 16:11:13 -05:00
- can't just resize every tab to the current tab size; that'll just cause weirdness
- rect should be based on the alignment rect, not the frame rect
2014-10-24 15:39:36 -05:00
mac os x
Table, Textbox
refuse first responder
Table still works because it's entirely mouse based
Textbox does not work at all
2014-10-16 13:22:54 -05:00
new control stuff
Tab, Group
- should host Controls directly?
- should have sharedWndProc()
- Tab needs Margined
2014-10-16 13:22:54 -05:00
2014-10-11 09:01:15 -05:00
more flexible sizing determination
2014-10-17 12:25:37 -05:00
Tab needs a SetMargined(n), Margined(n)
so will Popover
2014-10-11 09:01:15 -05:00
textfield should have a method that allows control over the preferred number of characters, for sizing purposes
Multiline text fields and standalone labels
Group
2014-08-08 19:14:25 -05:00
Mac OS X: NSBox
container_darwin.m: figure out if our setFrameSize: thing applies to resizing the groupbox as well
2014-08-22 09:36:42 -05:00
2014-08-08 19:14:25 -05:00
Control
Enable()
Disable()
2014-08-22 09:36:42 -05:00
2014-08-08 19:14:25 -05:00
Table
2014-08-22 09:36:42 -05:00
refresh only selected rows of view to avoid flicker (especially on Windows)
2014-08-12 11:33:44 -05:00
add functions for header manipulation
2014-10-17 12:25:37 -05:00
background color
row titles
2014-08-22 09:36:42 -05:00
Tab
// [TODO if each tab of your Tab is going to have the same content Controls, then use LikeTab instead, to conserve resources]
2014-10-11 09:01:15 -05:00
// 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)
2014-08-22 09:36:42 -05:00
LikeArea is probably going to have to be a custom control
Area
keyboard scrolling
2014-08-23 19:40:57 -05:00
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)
2014-08-29 16:53:50 -05:00
OpenTextFieldAt(): more platform-specific finished editing options; escape key for cancelling too?
2014-08-30 10:07:53 -05:00
bounds checking in Select()
2014-10-13 11:49:00 -05:00
DPI()
2014-08-22 09:36:42 -05:00
Tree
2014-08-22 09:36:42 -05:00
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()
2014-08-22 09:36:42 -05:00
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
2014-08-22 09:36:42 -05:00
text alignment (think labels and checkboxes) may be a perpetual problem though
2014-08-14 18:45:33 -05:00
activateIgnoringOtherApps: and command line programs: evaluate just how much it will matter
http://stackoverflow.com/a/25318870/3408572
2014-08-22 09:36:42 -05:00
use the undocumented _CFRunLoopSetCurrent() API to drop the stupid "must run on the man thread" restriction
2014-08-12 11:33:44 -05:00
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
2014-08-22 09:36:42 -05:00
will likely just use Invalid()
Stack, SimpleGrid, Grid
2014-08-12 18:55:56 -05:00
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)
2014-08-22 09:36:42 -05:00
in general
new moving stack and future moving heap make package ui a pain in general
2014-08-22 09:36:42 -05:00
issue 8310: watch for changes
2014-10-11 11:20:59 -05:00
Combobox/Listbox
Select() for selecting a row, like in Table
2014-08-22 09:36:42 -05:00
dialog boxes
find out if Stop has an effect before a dialog box function returns
2014-08-22 09:36:42 -05:00
our solution for common dialogs is rather heavyweight and doesn't work for user-created dialogs
foreign events are a problem
2014-10-17 12:25:37 -05:00
do what raymond chen suggested
2014-08-08 19:16:42 -05:00
so I don't forget, some TODOs:
windows
2014-08-28 10:35:31 -05:00
- Area isn't transparent
- hard: has to be excluded from scrolling
- tab order is backwards
2014-08-17 22:02:40 -05:00
- extra space on first column of all Tables on real Windows
- fine-tune Table checkbox behavior (especially with regards to selection)
2014-08-26 12:05:32 -05:00
- open dialog, resize small window, hscroll size area, double click file -> stack points in no man's land (yay attached threads?)
2014-08-26 14:54:25 -05:00
- uitask pointer bug again?
2014-08-28 10:21:59 -05:00
- groupbox line behind groupbox text
2014-08-28 14:21:35 -05:00
- 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)
2014-10-17 12:25:37 -05:00
- won't be an issue once I rewrite Table completely
- tell wine that WM_CTLCOLOR*** doesn't get sent early ?????
2014-10-17 12:25:37 -05:00
- don't let empty Tabs be tab stops
gtk+
2014-08-15 17:59:42 -05:00
- Area: figure out how Enter is processed in Entry
2014-08-15 18:17:30 -05:00
https://git.gnome.org/browse/gtk+/tree/gtk/gtkwindow.c#n1229
2014-08-20 20:32:59 -05:00
- Table: figure out how to allow empty selection by clicking in an empty area
2014-08-21 08:00:28 -05:00
- 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
2014-08-29 22:36:18 -05:00
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
2014-08-21 08:00:28 -05:00
gtk+, windows
- Area: keyboard scrolling
2014-08-15 19:08:14 -05:00
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?