Revision: 44720
          http://brlcad.svn.sourceforge.net/brlcad/?rev=44720&view=rev
Author:   starseeker
Date:     2011-06-02 03:38:09 +0000 (Thu, 02 Jun 2011)

Log Message:
-----------
Apply patch 3309109 from Brandon Hinesley - use tk dialog for File->New in mged.

Modified Paths:
--------------
    brlcad/trunk/src/tclscripts/mged/mged.tcl

Modified: brlcad/trunk/src/tclscripts/mged/mged.tcl
===================================================================
--- brlcad/trunk/src/tclscripts/mged/mged.tcl   2011-06-01 18:45:15 UTC (rev 
44719)
+++ brlcad/trunk/src/tclscripts/mged/mged.tcl   2011-06-02 03:38:09 UTC (rev 
44720)
@@ -187,38 +187,24 @@
     global mged_gui
     global ::tk::Priv
 
-    set ret [cad_input_dialog .$id.new $mged_gui($id,screen)\
-                "New MGED Database" \
-                "Enter new database filename:" ia_filename 
"${mged_gui(databaseDir)}/" \
-                0 {{ summary "Enter a new database name. Note - a database
-must not exist by this name."}}\
-                OK Cancel]
+    set ftypes {{{MGED Database} {.g}} {{All Files} *}}
+    set filename [tk_getSaveFile -parent .$id \
+                                 -filetypes $ftypes \
+                                 -initialdir $mged_gui(databaseDir) \
+                                 -title "Create a New Database"]
 
-    if {$ia_filename != "" && $ret == 0} {
-       # save the directory
-       if [file isdirectory $ia_filename] {
-           # the split followed by the join removes extra /'s
-           set mged_gui(databaseDir) [eval file join [file split $ia_filename]]
-           cad_dialog $::tk::Priv(cad_dialog) $mged_gui($id,screen) "Not a 
database." \
-               "$ia_filename is a directory!" info 0 OK
-           return
-       } else {
-           set mged_gui(databaseDir) [file dirname $ia_filename]
-       }
+    if {$filename != ""} {
+        # save the current directory for subsequent file saves
+        set mged_gui(databaseDir) [file dirname $filename]
 
-       if [file exists $ia_filename] {
-           cad_dialog $::tk::Priv(cad_dialog) $mged_gui($id,screen) "Existing 
Database" \
-               "$ia_filename already exists" info 0 OK
-       } else {
-           set ret [catch {opendb $ia_filename y} msg]
-           if {$ret} {
-               cad_dialog $::tk::Priv(cad_dialog) $mged_gui($id,screen) 
"Error" \
-                   $msg info 0 OK
-           } else {
-               cad_dialog $::tk::Priv(cad_dialog) $mged_gui($id,screen) "File 
created" \
-                   $msg info 0 OK
-           }
-       }
+        file delete $filename
+        if [catch {opendb $filename y} msg] {
+            cad_dialog $::tk::Priv(cad_dialog) $mged_gui($id,screen) \
+            "Error" $msg info 0 OK
+        } else {
+            cad_dialog $::tk::Priv(cad_dialog) $mged_gui($id,screen) \
+            "File created" $msg info 0 OK
+        }
     }
 }
 


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

------------------------------------------------------------------------------
Simplify data backup and recovery for your virtual environment with vRanger. 
Installation's a snap, and flexible recovery options mean your data is safe,
secure and there when you need it. Data protection magic?
Nope - It's vRanger. Get your free trial download today. 
http://p.sf.net/sfu/quest-sfdev2dev
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to