Valeri,
I tried canvas "Save As" with root v3.05/4 win32 binaries from cern.
I get the same problem, even when I "Save As"'ed to another folder
on the same drive. Again, the problem does NOT occur with qt version
from bnl. HEre's my output:
c:\analysis01>root
the current keyboard layout is 437
*******************************************
* *
* W E L C O M E to R O O T *
* *
* Version 3.05/04 21 April 2003 *
* *
* You are welcome to visit our Web site *
* http://root.cern.ch *
* *
*******************************************
Compiled for win32.
CINT/ROOT C/C++ Interpreter version 5.15.83, Apr 6 2003
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] TF1 *f = new TF1("f","sin(x)/x",0.,10.)
root [1] gSystem->pwd()
(const char* 0xb84f34)"c:\\analysis01"
root [2] .!cd
c:\analysis01
root [3] f->Draw()
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
root [4] C++ Macro file: C:\test\test.cpp has been generated
root [4] gSystem->pwd()
(const char* 0xb84f34)"c:\\analysis01"
root [5] .!cd
C:\test <----- !!!
root [6]
> -----Original Message-----
> From: Faine, Valeri [mailto:fine@bnl.gov]
> Sent: Wednesday, May 07, 2003 8:17 PM
> To: 'Ed Oltman'; 'Roottalk@Pcroot. Cern. Ch'
> Subject: RE: [ROOT] "Save the selected Canvas/Pad as" --> changes
> default directory
>
>
> Hello Ed,
>
> >
> > Valarie,
> > Yes, I am sure I'm using the win32 flavour - binaries from cern -
> 3.05/3
>
> I can not image how WIN32 can do that.
>
> > I did donwload the qt version from bnl and was unable to reproduce
> the
> > goofy
> > behavior. Is it Qt? or is it 3.05/4 vs. 3.05/3?
>
> The "SaveAs" should not change the current directory.
> Can you say what the type of your "X:" drive is?
> Can you reproduce things using the same drive ("c:\")?
>
> Can you make sure you did not mix the DLLs from the different ROO
> versions?
>
>
> Thank you
> Valeri
>
> >
> >
> >
> > ++++++++++++++++++++3.05/3 from cern: +++++++++++++++++++++++++
> >
> > c:\root>root
> > the current keyboard layout is 437
> > *******************************************
> > * *
> > * W E L C O M E to R O O T *
> > * *
> > * Version 3.05/03 11 March 2003 *
> > * *
> > * You are welcome to visit our Web site *
> > * http://root.cern.ch *
> > * *
> > *******************************************
> >
> > Compiled for win32.
> >
> > CINT/ROOT C/C++ Interpreter version 5.15.78, Mar 3 2003
> > Type ? for help. Commands must be C++ statements.
> > Enclose multiple statements between { }.
> > root [0] TF1 *f = new TF1("f","sin(x)/x",0.,10.)
> > root [1] f->Draw()
> > <TCanvas::MakeDefCanvas>: created default TCanvas with name c1
> > root [2] gSystem->pwd()
> > (const char* 0xb6a9f4)"C:\\root"
> > root [3] .!cd
> > C:\root
> > root [4] C++ Macro file: X:\test.C has been generated
> > gSystem->pwd()
> > (const char* 0xb6a9f4)"C:\\root"
> > root [5] .!cd
> > X:\ <<---- What the...?
> >
> >
> > ++++++++++++++++++++3.05/4 from bnl: +++++++++++++++++++++++++
> >
> > C:\root>root
> > *******************************************
> > * *
> > * W E L C O M E to R O O T *
> > * *
> > * Version 3.05/04 29 April 2003 *
> > * *
> > * You are welcome to visit our Web site *
> > * http://root.cern.ch *
> > * *
> > *******************************************
> >
> > Compiled for win32.
> >
> > CINT/ROOT C/C++ Interpreter version 5.15.83, Apr 6 2003
> > Type ? for help. Commands must be C++ statements.
> > Enclose multiple statements between { }.
> >
> > Welcome to the ROOT tutorials
> >
> >
> > Type ".x demos.C" to get a toolbar from which to execute the demos
> >
> > Type ".x demoshelp.C" to see the help window
> >
> >
> >
> > Type ".x xform.CC" to see the combined Qt/Root demo
> >
> >
> >
> > Type ".x RootShower.CC" to see the RootShower complex exmaplen
> > root [0] TF1 *f = new TF1("f","sin(x)/x",0.,10.)
> > root [1] f->Draw()
> > <TCanvas::MakeDefCanvas>: created default TCanvas with name c1
> > root [2] gSystem->pwd()
> > (const char* 0xb85eec)"C:\\root"
> > root [3] .!cd
> > C:\root
> > root [4] Save 0:<.C> file as "X:/test.C" . C++ macro (*.cpp,*.cxx,*.C)
> > C++ Macro file: X:/test.C has been generated
> >
> > root [4] gSystem->pwd()
> > (const char* 0xb85eec)"C:\\root"
> > root [5] .!cd
> > C:\root
> >
> > > -----Original Message-----
> > > From: Faine, Valeri [mailto:fine@bnl.gov]
> > > Sent: Wednesday, May 07, 2003 5:10 PM
> > > To: 'Ed Oltman'; 'Roottalk@Pcroot. Cern. Ch'
> > > Subject: RE: [ROOT] "Save the selected Canvas/Pad as" --> changes
> > > default directory
> > >
> > >
> > > Hello Ed,
> > > I can not reproduce your problem.
> > > On other hand I pretty sure "Save As" doesn't change
> > > the working directory.
> > > Are you sure you are working with "win32" flavor?
> > > Can you reproduce your problem with version http://root.bnl.gov
> ?-)
> > >
> > > Valeri
> > >
> > >
> > > > -----Original Message-----
> > > > From: Ed Oltman [mailto:eoltman@imago.com]
> > > > Sent: Wednesday, May 07, 2003 4:26 PM
> > > > To: Faine, Valeri; 'Roottalk@Pcroot. Cern. Ch'
> > > > Subject: RE: [ROOT] "Save the selected Canvas/Pad as" --> changes
> > > default
> > > > directory
> > > >
> > > > Valeri,
> > > >
> > > > Oops! my apologies! I did use gSystem->pwd() and it displayed
> the
> > > > original
> > > > directory prior to the canvas's "save as". I should get into the
> > > habit of
> > > > cut/paste. Here's my interaction:
> > > >
> > > >
> > > > root [1] gSystem->pwd()
> > > > (const char* 0xb6a784)"c:\\analysis01"
> > > > root [2] .!cd
> > > > c:\analysis01
> > > > [ At this point I "Save As" the canvas to x:\test.c]
> > > > root [3] C++ Macro file: X:\test.C has been generated
> > > >
> > > > root [3] gSystem->pwd()
> > > > (const char* 0xb6a784)"c:\\analysis01"
> > > > root [4] .!cd
> > > > X:\
> > > >
> > > >
> > > > This does not make sense!
> > > >
> > > > Ed
> > > >
> > > > > -----Original Message-----
> > > > > From: Faine, Valeri [mailto:fine@bnl.gov]
> > > > > Sent: Wednesday, May 07, 2003 3:16 PM
> > > > > To: 'Ed Oltman'; 'Roottalk@Pcroot. Cern. Ch'
> > > > > Subject: RE: [ROOT] "Save the selected Canvas/Pad as" -->
> changes
> > > > > default directory
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > >
> > > > > > Hello,
> > > > > >
> > > > > > I am using win32 root v3.05/3 on win2k. When I save a canvas
> > > using
> > > > > that
> > > > > > window's "File->Save As" menu item, the root's (file system)
> > > directory
> > > > > > changes:
> > > > > >
> > > > > > .!cd displays the directory that the canvas was saved in
> > > > > >
> > > > > > however,
> > > > > >
> > > > > > gSystem->cd() displays the original directory prior to the
> > > Canvas's
> > > > > "Save
> > > > > > As"
> > > > > >
> > > > > > I suspect this is not the intended behavior (e.g. "Save As"
> > > changes
> > > > > the
> > > > > > default directory), but if it is, should'nt gSystem->cd()
> reflect
> > > this
> > > > > > change?
> > > > > >
> > > > >
> > > > > Hello Ed,
> > > > >
> > > > > To get the current working directory one should use the methods
> > > > >
> > > > > TSystem::pwd();
> > > > >
> > > > > What about cd() I found no method TSystem::cd() at all.
> > > > >
> > > > > There is TSystem::cd(const char *path).
> > > > > What you suggest means the method should return its own input
> > > parameter.
> > > > > That is not very useful. The method cd returns the replaced
> > > directory,
> > > > > i.e. one we have changed with the "path".
> > > > >
> > > > > Valeri
> > > > >
> > > > >
> > > > > Home
> > > > > It seems to me this is the "Correct" behavior of cd method:
> > > > >
> > > > > Bool_t cd(const char *path) { return ChangeDirectory(path); }
> > > > >
> > > > > Because TWinNTSystem::ChangeDirectoiry() return the previous
> > > directory
> > > > > There is no means to return the inout parameters.
> > > > >
> > > > > Rhe proper method to get the current working directory is
> > > > > TSystem::HomeDirectory()
> > > > > > Thanks,
> > > > > > Ed Oltman
> > > > > >
> > > > >
> > > > >
> > > > >
> > >
> > >
> > >
>
>
>
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:11 MET