Cleaned up the future plans.

This commit is contained in:
Pietro Gagliardi 2014-08-22 10:36:42 -04:00
parent ec58f2ac1c
commit 7ad1a9852e
1 changed files with 20 additions and 9 deletions

View File

@ -1,14 +1,15 @@
Group Group
Mac OS X: NSBox Mac OS X: NSBox
container_darwin.m: figure out if our setFrameSize: thing applies to resizing the groupbox as well container_darwin.m: figure out if our setFrameSize: thing applies to resizing the groupbox as well
Control Control
Enable() Enable()
Disable() Disable()
Table Table
figure out if we can safely refresh view during Unlock() regardless of calling goroutine refresh only selected rows of view to avoid flicker (especially on Windows)
refresh only selected columns of view to avoid flicker (especially on Windows)
document header behavior in general comment
add functions for header manipulation add functions for header manipulation
Tab Tab
// [TODO if each tab of your Tab is going to have the same content Controls, then use LikeTab instead, to conserve resources] // [TODO if each tab of your Tab is going to have the same content Controls, then use LikeTab instead, to conserve resources]
Delete() Delete()
@ -16,13 +17,18 @@ Tab
// It panics if index is out of range. // 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?] // 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) investigate close buttons (especially for LikeTab)
LikeArea is probably going to have to be a custom control
Area Area
keyboard scrolling keyboard scrolling
OpenTextFieldAt() and OpenTextAreaAt() to allow editing of text from within Areas OpenTextFieldAt() and OpenTextAreaAt() to allow editing of text from within Areas
Tree Tree
Mac OS X: make sure newScrollView() has the correct parameters for Table and Tree (and that Area has the appropriate ones from both + its own no border) Mac OS X: make sure newScrollView() has the correct parameters for Table and Tree (and that Area has the appropriate ones from both)
TextArea TextArea
Mac OS X: be sure to call disableAutocorrect() Mac OS X: be sure to call disableAutocorrect()
Mac OS X Mac OS X
label alignment 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 // 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
@ -34,21 +40,28 @@ Mac OS X
unless we resize the control and move it around to suit unless we resize the control and move it around to suit
Tabs seem to have differnt margin rules Tabs seem to have differnt margin rules
need to check padding rules within Tabs 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 activateIgnoringOtherApps: and command line programs: evaluate just how much it will matter
http://stackoverflow.com/a/25318870/3408572 http://stackoverflow.com/a/25318870/3408572
use the undocumented _CFRunLoopSetCurrent() API to drop the stupid "must run on the man thread" restriction
TextField TextField
text alignment (think labels and checkboxes) may be a perpetual problem though
add events (figure out which of the following are appropriate: changed, enter pressed)
provide some facility to mark invalid values
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 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 Stack, Grid
method calls should trigger re-layout of windows method calls should trigger re-layout of windows
default buttons default buttons
figure out how they interact with Areas (especially on GTK+, where GtkEntry somehow has special handling for this) figure out how they interact with Areas (especially on GTK+, where GtkEntry somehow has special handling for this)
in general in general
new moving stack and future moving heap make package ui a pain in general new moving stack and future moving heap make package ui a pain in general
issue 8310: watch for changes
dialog boxes dialog boxes
find out if Stop has an effect before a dialog box function returns 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: so I don't forget, some TODOs:
windows windows
@ -57,8 +70,6 @@ windows
- flicker ahoy - flicker ahoy
- not all controls are transparent - not all controls are transparent
- extra space on first column of all Tables on real Windows - extra space on first column of all Tables on real Windows
- OpenFile() not modal
- OpenFile() won't stop Do()
- labels draw over themselves - labels draw over themselves
- fine-tune Table checkbox behavior (especially with regards to selection) - fine-tune Table checkbox behavior (especially with regards to selection)
gtk+ gtk+