[PD-cvs] SF.net SVN: pure-data:[10643] branches/pd-extended/0.41/pd/src/u_main.tk
eighthave at users.sourceforge.net
eighthave at users.sourceforge.net
Mon Jan 26 05:02:19 CET 2009
Revision: 10643
http://pure-data.svn.sourceforge.net/pure-data/?rev=10643&view=rev
Author: eighthave
Date: 2009-01-26 04:02:19 +0000 (Mon, 26 Jan 2009)
Log Message:
-----------
- added -- to regsubs to make them more fault tolerant
- added -nocase to file extension regexps to get extensions with non-lower case
- for the open/save panels, test if the dir exists, otherwise using $HOME,
in case the dir has been moved or renamed since the last open/save
Modified Paths:
--------------
branches/pd-extended/0.41/pd/src/u_main.tk
Modified: branches/pd-extended/0.41/pd/src/u_main.tk
===================================================================
--- branches/pd-extended/0.41/pd/src/u_main.tk 2009-01-26 01:03:40 UTC (rev 10642)
+++ branches/pd-extended/0.41/pd/src/u_main.tk 2009-01-26 04:02:19 UTC (rev 10643)
@@ -493,6 +493,7 @@
proc menu_new {} {
global untitled_number
global untitled_directory
+ if { ! [file isdirectory $untitled_directory]} {set untitled_directory $::env(HOME)}
pd [concat pd filename Untitled-$untitled_number \
[pdtk_enquote $untitled_directory] \;]
pd {
@@ -506,6 +507,7 @@
proc menu_open {} {
global pd_opendir filetypes
+ if { ! [file isdirectory $pd_opendir]} {set pd_opendir $::env(HOME)}
set files [tk_getOpenFile -defaultextension .pd \
-multiple true \
-filetypes $filetypes -initialdir $pd_opendir]
@@ -518,11 +520,11 @@
proc open_file {filename} {
global pd_opendir
- set directory [string range $filename 0 [expr [string last / $filename] - 1]]
- set pd_opendir $directory
- set basename [string range $filename [expr [string last / $filename] + 1] end]
+ set directory [file dirname $filename]
+ set basename [file tail $filename]
if {[regexp -nocase -- "\.(pd|pat|mxt)$" $filename]} {
pd "pd open [pdtk_enquote $basename] [pdtk_enquote $directory] ;"
+ set pd_opendir $directory
}
}
@@ -652,7 +654,7 @@
proc menu_openpdpedia {} {
set top_window [lindex [wm stackorder .] end]
set window_title [wm title $top_window]
- set helpfile [regsub {(.*)-help.*} $window_title {\1}]
+ set helpfile [regsub -- {(.*)-help.*} $window_title {\1}]
if {$helpfile eq $window_title} {
menu_openhtml "http://wiki.puredata.info/"
} else {
@@ -665,9 +667,9 @@
set dirname $pd_guidir/$subdir
- if {[regexp ".*\.(txt|c)$" $basename]} {
+ if {[regexp -nocase -- ".*\.(txt|c)$" $basename]} {
menu_opentext $dirname/$basename
- } elseif {[regexp ".*\.html?$" $basename]} {
+ } elseif {[regexp -nocase -- ".*\.html?$" $basename]} {
menu_openhtml $dirname/$basename
} else {
pd [concat pd open [pdtk_enquote $basename] \
@@ -2218,6 +2220,7 @@
proc pdtk_canvas_saveas {name initfile initdir} {
global pd_nt filetypes untitled_directory
+ if { ! [file isdirectory $initdir]} {set initdir $::env(HOME)}
set filename [tk_getSaveFile -initialfile $initfile -initialdir $initdir \
-defaultextension .pd -filetypes $filetypes]
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