aboutsummaryrefslogtreecommitdiff
path: root/toxy/notes.txt
blob: 10401a554999b119ed016cdf31edbfff537c3cff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
TODO for toxy
  * widget
    . push long message handlers if defined, instead of short
    . widgetcontainer: woc and wiw-list
    . better megawidgets
    . editor: handle semicolons (need to revisit resolution rules)
    . editor: break editorhook into separate properties, add them in single mode
    . find a way for "package require" to work out-of-the-box on windows
  * tow: canvas-wide and type-on-canvas-wide broadcasting
  * plustot:
    . do not evaluate if fresh, unless explicitly forced to (are side-effects
      to be modal, requested with a flag, or triggered with a message?)
    . creation time evaluation

DONE for toxy

alpha18
  * plustot:
    . adjusted to the new, stubified +bob handling
    . +selectors registered as creation selectors, so that, e.g. "+in" is
      a valid input form for "plustot +in" ("+tot +in" remains valid too)
    . "save" callback changes every "+tot" selector to "plustot",
      and every "+selector" to "plustot +selector"
    . customized appearance:
      - creation selector omitted if equals "plustot" or "+tot"
      - text, border and i/o outline is brown, border is thicker,
	inlets and outlets are lightgrey inside and taller
    . mouse click interpreted as the message 'bang'
    . accepting commands without arguments (beware: this is yet to be debugged)

alpha17
  * widget:
    . first sketch of an editor widget (bpf), introducing a basic set of rules:
      - instance data kept in its own namespace
      - gui sends '_data' (replaces '_value') requests to pd, specifying one
	of the standard submessages: add, delete, set, get
      - pd uses the new special handler for replying: @data
      (for the time being, there is only an idle loop between the two sides)
    . maintaining a scriptlet collection, which mirrors type and instance
      handler properties (including specials: @vis, @new, @free and @data)
    . lookup in the mirror for faster and more robust handling of messages 
    . '@ini' section and 'ini' message removed, after being unified as the
      @vis special handler (use 'set @vis' message form for passing options)
    . all special handlers support short definitions (inside #. comments)
      and long definitions (tagged with #@ comments), however only short
      ones may be overriden by instance definitions
    . long message handlers are stored, but not used yet
    . .wid file header may include requirements (base widget definitions)
    . fixed: patch's directory handling in 'redefine'

alpha16
  * widget:
    . editor for options, handlers and arguments made more or less functional
    . better 'redefine' (although still only external types may be redefined)
  * tow:
    . fixed handling of gop-ed targets and missing windows
    . new messages: 'retarget', 'pwd'
  * tot:
    . scriptlet editor improved a little bit (still unfinished)

alpha15
  * fixes for megawidgets
    . setting sub-item bindings in ::toxy::subwidget
      (to be called explicitly from type initializer)
    . handling widget's state through virtual events
    . getting implicit geometry (needed for Frame widgets)
    . automatically rebinding focus for Canvas widgets

alpha14
  * 'redefine' message to widget
  * version control, using package provide (both in tcl and parsed from pd)
  * "> master" section removed:  master initializer defined directly
    by proc ::toxy::master
  * better kb: chords (shift-click), latch (control-click), dragging

alpha13
  * @new and @free handlers, defined in #@ new and  #@ free sections,
    invoked by widget object creation and destruction
  * optional sections #@ ini (aka #@ vis) appended to initializer (which still
    defines in default section too -- old .wid files do not need updating)
  * .#args parameter of message handlers, replaced (during scriptlet
    evaluation) by all arguments of an invoking message