Author Topic: plot file - save as dialog - in current directory  (Read 2516 times)

0 Members and 1 Guest are viewing this topic.

lamarn

  • Swamp Rat
  • Posts: 636
plot file - save as dialog - in current directory
« on: February 17, 2012, 05:00:05 AM »
I have a routine that sets all the initial directories to the directory that the drwaing is opened.
Somehow i cannot make it work for the plot file directory.
I want to make default that the plot file save screen comes up with the current directory in which the DWG is opened.
Could use some help, anyone that has a workaround or code to get this done?

Thanks
Hans


Code: [Select]

(defun updatepaths ()


(if (not *rjp-commandreactors*)
  (setq *rjp-commandreactors* (vlr-command-reactor nil '((:vlr-commandwillstart . strtcmd))))
)

(defun strtcmd (calling-reactor strtcmdinfo / dp hkcu key regpath)
  (if (and (= (getvar 'dwgtitled) 1)
           (wcmatch (car strtcmdinfo) "*XREF,XATTACH,*SHEET*,ETRANSMIT,OPEN")
      )
    (progn (setq dp   (getvar 'dwgprefix)
                 hkcu (strcat "HKEY_CURRENT_USER\\" (vlax-product-key))
                 key  (strcat hkcu "\\Profiles\\" (getvar 'cprofile) "\\Dialogs\\") ; PLOT FILE DIRECTORY ?!!!!!!!!!!!!!!!!!!!!
           )
           (setq regpath (strcat key "XattachFileDialog"))
           (vl-registry-write regpath "InitialDirectory" dp)
           (setq regpath (strcat key "XrefFileDialog"))
           (vl-registry-write regpath "InitialDirectory" dp)
           (setq regpath (strcat key "Sheet Set Wizard")) ;sheet sets
           (vl-registry-write regpath "BrowseForLayoutsPath" dp)
           (setq regpath (strcat key "Sheet Set Wizard"))
           (vl-registry-write regpath "SheetSetCreatePath" dp) ; etransmit
           (setq regpath (strcat key "eTransAddFile"))
           (vl-registry-write regpath "InitialDirectory" dp)
           (setq regpath (strcat key "SSMNavigator"))
           (vl-registry-write regpath "OpenSheetSetPath" dp)
           (setq regpath (strcat key "SSMNavigator"))
           (vl-registry-write regpath "ImportLayoutsAsSheetsPath" dp) ; import layouts
           (setq regpath (strcat key "OpenSaveAnavDialogs"))
           (vl-registry-write regpath "InitialDirectory" dp) ;open/save dir
           (setq regpath (strcat key "AcDxSaveDxDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;DXE data extraction

           (setq regpath (strcat key "AcSmNav:OpenSheetSet"))
           (vl-registry-write regpath "InitialDirectory" dp) ;Sheetset

           (setq regpath (strcat key "BrowseforDrawingFileBlkDlg"))
           (vl-registry-write regpath "InitialDirectory" dp) ;blocks to write

           (setq regpath (strcat key "BrowseforPlotFilePlotDlg"))
           (vl-registry-write regpath "InitialDirectory" dp) ;pdf plot (?!)
   (vl-registry-write regpath "(Default)" dp)   ;pdf plot (?!)
           (vl-registry-write regpath "FileNameMRU0" dp) ;pdf plot (?!)

           (setq regpath (strcat key "BrowseropenDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "DWFNavDlg"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "DWGopenDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "eTransAddFile"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "Export Data"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "IMAGEopenDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "Import File"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "LayerStatesFileDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "OpenSaveAnavDialogs"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "OUTPUTFOLDERDLG"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?
     
           (setq regpath (strcat key "ProfileExportFileDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "AcLaytransFindFile"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "XrefFileDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "WhoHas"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "XattachFileDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Specify Zip File"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Select template"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Select Script File"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Select Page Setup From File"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Select a file"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Save Drawing As"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "PSETUPNavDlg"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "ProfileImportFileDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "BrowseforDrawingFileBlkDlg"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "BrowseforPlotFilePlotDlg"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Create Mass and Area Properties File"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "DWGopenDialog"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

      (setq regpath (strcat key "Select Script File"))
           (vl-registry-write regpath "InitialDirectory" dp) ;?

(vla-put-defaultplottofilepath
  (vla-get-output (vla-get-preferences (vlax-get-acad-object)))
  (getvar 'dwgprefix)
)

     
      )
  )
  (princ)
)

)

Design is something you should do with both hands. My 2d hand , my 3d hand ..

ronjonp

  • Needs a day job
  • Posts: 7529
Re: plot file - save as dialog - in current directory
« Reply #1 on: February 17, 2012, 09:35:38 AM »
You might need to add (wcmatch (car strtcmdinfo) "*XREF,XATTACH,*SHEET*,ETRANSMIT,OPEN,PLOT") to the reactor list. I'll see if I can find the key you're looking for.

This should do it:  :-)

Code: [Select]
(vla-put-defaultplottofilepath
  (vla-get-output (vla-get-preferences (vlax-get-acad-object)))
  (getvar 'dwgprefix)
)

 :oops: Looks like that is already included in the snippet above. Guess I should have read a bit more :-P.

Could probably shorten this code up a bit using
Code - Auto/Visual Lisp: [Select]
and some conditionals.
« Last Edit: February 17, 2012, 09:46:34 AM by ronjonp »

Windows 11 x64 - AutoCAD /C3D 2023

Custom Build PC