summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--redo/area_unix.go1
-rw-r--r--redo/basicctrls.go2
-rw-r--r--redo/doc.go11
-rw-r--r--redo/future4
-rw-r--r--redo/uitask.go6
5 files changed, 17 insertions, 7 deletions
diff --git a/redo/area_unix.go b/redo/area_unix.go
index 3c2a62e..94cda2e 100644
--- a/redo/area_unix.go
+++ b/redo/area_unix.go
@@ -383,7 +383,6 @@ var modonlykeys = map[C.guint]Modifiers{
//export our_area_focus_callback
func our_area_focus_callback(widget *C.GtkWidget, direction C.GtkDirectionType, data C.gpointer) C.gboolean {
- // TODO figure out how this callback affects keyboard scrolling
if C.gtk_widget_is_focus(widget) == C.FALSE {
// this event indicates entering focus; always allow it
return continueEventChain
diff --git a/redo/basicctrls.go b/redo/basicctrls.go
index 5c5364d..d20b9b0 100644
--- a/redo/basicctrls.go
+++ b/redo/basicctrls.go
@@ -80,7 +80,7 @@ func NewTab() Tab {
// Label shows one line of text; any text that does not fit is truncated.
// A Label can either have smart vertical alignment relative to the control to its right or just be vertically aligned to the top (standalone).
// The effect of placing a non-standalone Label in any context other than to the immediate left of a Control is undefined.
-// Both types of labels currently are left-aligned (TODO).
+// Both types of labels are left-aligned. [FUTURE PLANS: For platform-specific horizontal alignment rules, use a Form.]
type Label interface {
Control
diff --git a/redo/doc.go b/redo/doc.go
new file mode 100644
index 0000000..d204f64
--- /dev/null
+++ b/redo/doc.go
@@ -0,0 +1,11 @@
+// 14 august 2014
+
+/*
+[this is being written]
+
+notes:
+- default behavior of event handlers is to do nothing
+- default behavior of event handlers that return bool is to do nothing but return false
+- passing nil to an event handler set function restores default behavior
+*/
+package ui
diff --git a/redo/future b/redo/future
index 536e8d0..727720b 100644
--- a/redo/future
+++ b/redo/future
@@ -22,6 +22,8 @@ Tab
investigate close buttons (especially for LikeTab)
Area
Repaint(rect image.Rectangle)
+ keyboard scrolling
+ GTK+ port: our_area_focus_callback() has something to do with it
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)
TextArea
@@ -41,6 +43,8 @@ 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
+dialog boxes
+ find out if Stop has an effect before a dialog box function returns
so I don't forget, some TODOs:
windows
diff --git a/redo/uitask.go b/redo/uitask.go
index 64366c8..12bd0f3 100644
--- a/redo/uitask.go
+++ b/redo/uitask.go
@@ -44,8 +44,7 @@ func Do(f func()) {
// Stop informs package ui that it should stop.
// Stop then returns immediately.
// Some time after this request is received, Go() will return without performing any final cleanup.
-// Stop will not have an effect until any event handlers or dialog boxes presently active return.
-// (TODO make sure this is the case for dialog boxes)
+// Stop will not have an effect until any event handlers return.
func Stop() {
// can't send this directly across issuer
go func() {
@@ -65,9 +64,6 @@ type event struct {
lock sync.Mutex
}
-// do should never be nil
-// TODO when writing doc.go, document that setting nil to an event handler ignores the event; if it returns a boolean value, false is returned
-
func newEvent() *event {
return &event{
do: func() bool {