[PD-cvs] SF.net SVN: pure-data:[10719] branches/pd-devel/0.41.4
eighthave at users.sourceforge.net
eighthave at users.sourceforge.net
Mon Feb 2 20:17:30 CET 2009
Revision: 10719
http://pure-data.svn.sourceforge.net/pure-data/?rev=10719&view=rev
Author: eighthave
Date: 2009-02-02 19:17:30 +0000 (Mon, 02 Feb 2009)
Log Message:
-----------
updated TODO and sketched out some comments and panel code
Modified Paths:
--------------
branches/pd-devel/0.41.4/devel_doc/TODO
branches/pd-devel/0.41.4/src/gatom.tcl
branches/pd-devel/0.41.4/src/pd_menucommands.tcl
Modified: branches/pd-devel/0.41.4/devel_doc/TODO
===================================================================
--- branches/pd-devel/0.41.4/devel_doc/TODO 2009-02-02 19:13:22 UTC (rev 10718)
+++ branches/pd-devel/0.41.4/devel_doc/TODO 2009-02-02 19:17:30 UTC (rev 10719)
@@ -4,9 +4,16 @@
[ ] performance testing to make sure the Tcl networking is up to snuff
[ ] overall naming/organization scheme for variables, functions, and packages
[ ] implement checking to see if another Pd is already running follwoing this code example: http://tcl.tk/man/tcl8.4/TkCmd/send.htm
-[ ] search path for startup.tcl and load, this is a file for GUI customizations
+[ ] search path for startup.tcl and load, this is a file for GUI
+customizations
+[ ] create pd_panels.tcl with the code for creating the various panels, or
+maybe it should be like font_panel.tcl, find_panel.tcl, etc.
+[ ] make pd_menucommands only have the commands that are called form the
+menus, the meat of the code should go into more approriate places
+[ ] make pdtk_* procs just serve as message passing, since that is what they
+are doing. the real world should be more cleanly laid out by functionality.
+For example, the font panel should be created by Tk, then the
-
gui logic
---------
[ ] figure out Undo/Redo/Cut/Copy/Paste state changes for menus
@@ -14,11 +21,18 @@
[ ] 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
+[ ] made "performance mode" on menu which disables closing of toplevel
+ windows, probably using binding/unbinding to toplevel classes
+[ ] if pd_*dir for panels no longer exists, step down one level at a time
+ until a still-existing directory is found.
+[ ] add DIO error option to the Media menu
+[ ] add "edit" option to canvas popup to edit the text on GUI objects
+[ ] use "system" colors to use colors from the OS's preferences
panels
------
-[ ] find panel
+[ ] add findagain support to find panel
+[ ] make text entry in find/sendmessage panels a popup menu with the history
[ ] send message panel
[ ] restructure Pd window for cleaner UI and code
[ ] font panel
@@ -30,22 +44,12 @@
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 pdtk_canvas_getscroll to mytoplevel and bind <Configure> to a -class
-
+using toplevel classes
+----------------------
- 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
@@ -66,3 +70,16 @@
[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.
+
+================
+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 pdtk_canvas_getscroll to mytoplevel and bind <Configure> to a -class
+[ ] use gnocl for GNOME feel
+[ ] fix X11 copy/paste custom code (i.e. not [clipboard get] http://wiki.tcl.tk/1217
Modified: branches/pd-devel/0.41.4/src/gatom.tcl
===================================================================
--- branches/pd-devel/0.41.4/src/gatom.tcl 2009-02-02 19:13:22 UTC (rev 10718)
+++ branches/pd-devel/0.41.4/src/gatom.tcl 2009-02-02 19:17:30 UTC (rev 10719)
@@ -7,7 +7,8 @@
namespace export pdtk_gatom_dialog
}
-# the radiobutton widget requires this to be global
+# hashtable for communicating the position of the radiobuttons (Tk's
+# radiobutton widget requires this to be global)
global gatomlabel_position
############ pdtk_gatom_dialog -- run a gatom dialog #########
Modified: branches/pd-devel/0.41.4/src/pd_menucommands.tcl
===================================================================
--- branches/pd-devel/0.41.4/src/pd_menucommands.tcl 2009-02-02 19:13:22 UTC (rev 10718)
+++ branches/pd-devel/0.41.4/src/pd_menucommands.tcl 2009-02-02 19:17:30 UTC (rev 10719)
@@ -44,6 +44,15 @@
}
}
+
+proc ::pd_menucommands::menu_showpanel {panelname mytoplevel} {
+ if {[winfo exists .$panelname]} {
+ wm deiconify .$panelname
+ raise .$panelname
+ } else {
+ ::${panelname}::create_panel $mytoplevel
+ }
+}
# ------------------------------------------------------------------------------
# send message panel
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