[PD-cvs] SF.net SVN: pure-data:[10633] branches/pd-devel/0.41.4/devel_doc

eighthave at users.sourceforge.net eighthave at users.sourceforge.net
Sun Jan 25 07:43:15 CET 2009


Revision: 10633
          http://pure-data.svn.sourceforge.net/pure-data/?rev=10633&view=rev
Author:   eighthave
Date:     2009-01-25 06:43:15 +0000 (Sun, 25 Jan 2009)

Log Message:
-----------
updated with lots of ideas from dev work

Modified Paths:
--------------
    branches/pd-devel/0.41.4/devel_doc/TODO

Added Paths:
-----------
    branches/pd-devel/0.41.4/devel_doc/ChangeLog.txt

Added: branches/pd-devel/0.41.4/devel_doc/ChangeLog.txt
===================================================================
--- branches/pd-devel/0.41.4/devel_doc/ChangeLog.txt	                        (rev 0)
+++ branches/pd-devel/0.41.4/devel_doc/ChangeLog.txt	2009-01-25 06:43:15 UTC (rev 10633)
@@ -0,0 +1,14 @@
+
+- pure Tcl GUI.  The C build system now has zero Tcl dependencies.
+
+- Pd can now handle filenames that include ,;" characters in them.  The
+	only caveat is that SaveAs doesn't work with names with " in it.
+
+- unlike the earlier 'pd' command in Tcl, 'pdsend' handles the semi-colon	
+
+- exception handling on commands being sent from pd->pd-gui, so we should see
+  fewer Tcl exception windows
+
+- The File->Open panel can open multiple files at once
+
+- arbitary fonts now fit into the fixed box sizes

Modified: branches/pd-devel/0.41.4/devel_doc/TODO
===================================================================
--- branches/pd-devel/0.41.4/devel_doc/TODO	2009-01-25 06:42:32 UTC (rev 10632)
+++ branches/pd-devel/0.41.4/devel_doc/TODO	2009-01-25 06:43:15 UTC (rev 10633)
@@ -12,14 +12,56 @@
 [ ] figure out parent window/window list for Window menu
 [ ] canvas scrollbar logic
 [ ] flash menu when accelerator hits (i.e. flash Edit when Ctrl-E)
+[ ] make File->New default dir the dir of the current top window (pdsend_map)
+[ ] use gnocl for GNOME feel
 
-
 panels
 ------
 [ ] find panel
 [ ] send message panel
 [ ] restructure Pd window for cleaner UI and code
+[ ] font panel
 [ ] unified preference panel with tabs (like standard on GNOME, Mac OS X, Win)
 [ ] help browser
 [ ] wm attributes -topmost for panels like Find, message
 [ ] MacWindowStyle for panels: http://wiki.tcl.tk/13428
+[ ] Open/Save panel dirs with separate dirs for openpanel and savepanel
+  	http://lists.puredata.info/pipermail/pd-list/2008-05/062630.html
+
+
+
+post-GUI rewrite
+================
+
+These are things to address once the initial Tcl-only GUI rewrite is complete.
+
+[ ] streamline pdsend_key and the C side of things, using %N
+[ ] implement [wm attributes -titlepath] on Mac OS X and change pdsend_map
+[ ] move sys_font setting from 'pd' to 'pd-gui', probably in pdtk_pd_startup
+
+- switch to using toplevel classes instead of creating the bindings each time
+  bind MyCanvas
+  bind MyToplevel
+
+
+[2:07pm] ijchain: <patthoyts> If you bind to the classname of the toplevel you;ll only get the Map event from that toplevel.
+[2:07pm] ijchain: <patthoyts> eg: bind Dialog <Map> {puts "map %W"} ; toplevel .t -class Dialog; pack [canvas .t.c]; wm withdraw .t; wm deiconify .t
+[2:08pm] ijchain: <patthoyts> will only show a Map from .t
+[2:09pm] hans_: patthoyts: hmm, I am getting two messages, one from the toplevel, one from the canvas
+[2:09pm] hans_: here's the code where the bind happens:
+[2:09pm] hans_: http://pure-data.svn.sourceforge.net/viewvc/pure-data/branches/pd-devel/0.41.4/src/pd_bindings.tcl?revision=10615&view=markup
+[2:09pm] hans_: line 155
+[2:09pm] ijchain: <patthoyts> yes. Because you bound to the window name.
+[2:09pm] ijchain: <patthoyts> read what I wrote. bind to the classname of the toplevel.
+[2:10pm] hans_: ok, let me try that
+[2:10pm] hans_: thanks
+[2:10pm] ijchain: <patthoyts> If you dont want to change the bindings, in the function itself you could test the class using [winfo class %W]
+[2:10pm] hans_: is there a preferred approach?
+[2:10pm] hans_: I could do either
+[2:11pm] ijchain: <patthoyts> I'd bind to the class if I was writing it from scratch.
+[2:11pm] hans_: ok, sounds good, I am rewriting an app from scratch, so I am trying to use the cleanest Tcl style
+[2:12pm] ijchain: <patthoyts> For instance, looking at your code, you have to run through the bindings each time you make a toplevel.
+[2:12pm] ijchain: <patthoyts> Instead you can do the binding to the class name once in the initialization for the application.
+[2:13pm] ijchain: <patthoyts> Then any toplevel created with that class will automatically get the correct bindings.
+[2:14pm] ijchain: <patthoyts> If you look at the code in tk/library/*.tcl where the widget bindings are all setup you can see thats how its done for Tk's own stuff. Mostly anyway.
+[2:15pm] hans_: thanks, very helpfuil!


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Pd-cvs mailing list