[ROOT] Fw: Thanks Valery: Qt-Root works great so far on Win2k but not on WinNT - great breakthrough - (few minor glitches)

From: Valeri Fine (fine@bnl.gov)
Date: Fri Jan 25 2002 - 22:17:35 MET


----- Original Message ----- 
From: Valeri Fine 
To: roottalk@pcroot.cern.ch 
Sent: Friday, January 25, 2002 12:57 PM
Subject: Fw: Thanks Valery: Qt-Root works great so far on Win2k but not on WinNT - great breakthrough - (few minor glitches)


Hello Peter,

By some reason I see neither you original message on ROOTTALK nor my reply.

I wondering if the size of your original message was too large (because of 
the pictures you attached).

May be you should re-submit yours and provide the pictures in form 
of Web links rather the attachments

                 Best regards, Valeri

----- Original Message ----- 
From: Valeri Fine 
To: Peter Lipa 
Cc: roottalk@pcroot.cern.ch 
Sent: Friday, January 25, 2002 10:54 AM
Subject: Re: Thanks Valery: Qt-Root works great so far on Win2k but not on WinNT - great breakthrough - (few minor glitches)


Hello Peter,

  Thank you very much for your valuable evaluation.

  I'd like to take this opportunity to thank other people who sent my their
  feedbacks (total there were about 150 downloading of the evalaution version 
  Qt-Root)

  As I understood there are hidden dependency in the "evaluation" version
  of the environment this code works in.
  I am afraid this this due the static linking. So libQt.DLL holds not 
  only Qt lib staff but  some MSVC++ staff also. 
  I am afraid TrollTech did it with purpose to prevent the redistribution 
  of the evaluation version of Qt. Alas it is only option I can exercise right
  now myself.
  In fact even your "bad news" is a good one. It sounds there is no big 
  problem in very my piece of code rather there are some problems with setting 
  the proper environment.

  Thanks the feedback I got I have divided the Qt implementation on TWO separate DLLs.

  One of them contains TVirtualX staff only and this will be useful just people want
  to provide an implementation of ROOT TG class family.

  Another DLL libQtGui.dll with the implementation of the major ROOT components 
  in form of native Qt Widget. This DLL should help people those who enjoy Qt high 
  quality service and want integrate ROOT into their own Qt-based applications. 
  I suppose there will be the separate "child" QWidgets with NO border and NO 
  decoration, provided via standard TGUIFactory ROOT class:

   "ROOT Canvas"
   "Browser Tree view Box"
   "Browser Icon View box"
   "ROOT Context Menu"
   "Root TObject dialog box"
   "ROOT status bar"
   "ROOT tool bar"
   'ROOT inspector" etc.

   This should allow people those who are comfortable with Qt to build there own complex 
   widgets and apply there own GUI design. However I would like people let me some time 
   to design things properly (especially signals /slots of the new coming Qt widgets) 
   Any suggestions are valuable and are appreciated. I am novice in Qt word so I need some 
   time to learn this wonderful tool.

   On other hand this should help to trace the origin
   of the problems more precisely

   What about the "vertical lines" I believe I know the reason and can fix this.

   I'll check other problems you reported. 
   
   Coming back to the source code.


   I'll let you know when my code is ready to try so we can make sure the problems 
   gone with the re-compilation under the regular Qt version.


  Howver Qt implementation does need some minor corrections of the base ROOT 
  code (see attachment).
  As I had said they have no direct connection with very Qt implementation and are 
  useful for ANY TVirtualX class implementation also (for GDK for example)
  They should (:-) provide no impact to the existent ROOT as well.
  However the last claim should be tested.   May be ROOT community can help here.
  Please, try apply this correction to your version of ROOT and let ROOT team know 
  whether this causes any kind of problem.

   I believe redistributing the separate branch if the  ROOT code may lead 
   to some mess  and I would like to avoid this.

  Thank you so much, 
                     My best regards, Valeri


----- Original Message ----- 
From: Peter Lipa 
To: fine@bnl.gov ; thane@neuralynx.com 
Cc: roottalk@pcroot.cern.ch 
Sent: Friday, January 25, 2002 2:22 AM
Subject: Thanks Valery: Qt-Root works great so far on Win2k but not on WinNT - great breakthrough - (few minor glitches)


Dear Valery,
I send this also to roottalk so other people can see (and appreciate) the great progress you made!

After our phone conversation I experimented more and this is the status so far:

The bad news first:
I never got your Qt distribution to work on my NT4/SP6 box. I removed ALL other root installations
and checked the registry for any root-dll references (which were none). I rebooted, reinstalled YOUR
Qt-root version and still get the bomb with null pointer exeption when I try to run any of the demos
or the 
TF1 foo("foo","sin(x)/x",-10,10); 
foo.Draw();
 example.

However, I can bring up the Browser and the Inspector ( e.g.  with foo.Inspect() ) and miraculously
those work fine (with the nice new sort feature). More amazingly, in the Browser I can go to the root memory
folder where the TF1 foo object is (when I created it before on the cmd line without trying to Draw() it), 
and when I double click it the c1 canvas with the correct image draws perfectly fine with menus and all!
That is very strange. It works when I draw through the browser but NOT from the cmd line! That means that
the correct Qt libs must be there otherwise TBrowser,TInspector and TCanvas, TF1 wouldn't be able to draw
anything .... 

I have to say that I have still Qt3.01 installed on that machine (and hesitate to uninstall it since
the installer recompiles the whole distribution and that takes 1-2hrs on that 500MHz machine...). Also 
the 'nonQt' option (set QTDIR=) works just fine without any crashes. So the problem must be in
the Qt part...

Better news next:
Thane told me that on HIS machine (running Win2k, Qt3.00 installed and a root v3.02.06 aside
of your root-Qt distribution) things worked much better. 
He was able to run MOST (but not all) of the demos as well as that TF1 foo example above.
But he had crashes when he tried to Save As... a canvas, or Copy to clipboard did not work either.
So on his machine it worked much better but not as perfect as on your development machine.

Best news last:
Now I also installed your Qt-root on my home machine (Win2k, Qt2.3-free installed and root v3.01.05 aside your
Qt-root) and there things run "almost perfect" (probably just the same as on your development box):
I can run ALL demos, 
print directly to the printer (without .ps and ghostscript steps)
save as jpeg etc..
copy to clipboard and into MSWord and from word into Outlook express (below).
Also TBrowser, TInspector etc work fine (and much prettier than the old windows versions!).

THIS IS FANTASTIC!!

After how many years (?) of dealing with eps files and ghostscript on windows we FINALLY have a copy/paste 
graphics solution, nicer browsers etc...!!

I do NOT understand the reasons why we have different results on different machines. You said you linked
Qt libs statically so the other Qt dll's on the same machine should never be referenced (and how could it run
perfectly on my home machine with the old Qt2.3 libs which are definitely incompatible with Qt3.0x)

On my home machine  I noticed a few glitches so far:
In my TF1 foo example above, the zoom on the x-axis works fine, but strangely NOT on the y-axis!

In the hsimple demo and most TH1 drawings we have one or several vertical lines in the middle of 
the histogram: (the figure below was just copied/pasted to/from clipboard  - no fiddling around with ps tools any more!!!):



In the graph demo the Ytitle does not rotate:

I could play with the GraphicsEditor and most things work as expected. Had some difficulties with
the polyline drawing. When I tried to delete the polyline object with the rightclickmenu->Delete
the TOption dialog box came up and froze the machine (even CTRL-Alt-Del didn't work - was forced to
a reboot). That doesn't happen often with win2k (haven't had system freeze crashes in several weeks if not months!).

In any case, the "working" version on my home Win2k machine is HUGE progress in the root-windows world.
I am convinced that THIS is the right approach to the root-windows future. I(we) just have to figure out
what the problem is with the other machines/configurations. Maybe we wait till your souce is available so we 
can look at the crashes in the debugger ....

Thanks so much, Valery!
This is very very much appreciated...

All the best 
peter (Lipa)





This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:40 MET