Re: [ROOT] Progress of port of ROOT native GUI to Windows...

From: Valeri Fine (fine@bnl.gov)
Date: Fri May 18 2001 - 03:47:05 MEST


Hello, Rene

> Hi Valery,
> 
> We have been discussing your points many times in the past, so I do not
> pretend to change your views on the subject.

  I don't know why do you think I should change my view since my view
  doesn't contradict yours.

  ROOT does need the solid Win32 implementation of all methods TVirtualX
  class and solid suppport for Windows user as well. I understand the person you 
  mentioned is going to work it out soon.

  However I do not share your  expectation the  support of ROOT for Windows
  users will become more simple just these methods will be in place.

>  The main point for us is to reduce the maintenance effort and at the same time
> improve the quality of the User Interface.
> You implemented the Windows specific classes in 96/97. Being an NT expert,
> you choose to implement the graphics and the GUI by using a Windows special
> solution.

  I do not now what do you call "Windows special solution"

  I did what we did agree to do that time, namely WIN32 implementation 
  of TBrowserImp and TVirtualX abstract classes. This is to say at some point 
  the code must  access the API provided by the host operating system.
  I do not see  there is something  one call "Windows special".

  I did this because that time there was no GUI class library idea.
 
> However, the experience has demonstrated that the maintenance of these
> classes was getting more and more difficult. 

  Yes sure. There was no argument on that.
  
> On the other hand, the fact that we had two different solutions 
> for Unix and Windows has been a very
> serious obstacle to improvements in the graphics and the GUI.

   I fully agree.
 
> At the Root workshop at CERN in February 2000, Bertrand Bellenot was volunteer
> to investigate the porting of the Unix GUI under Windows. In the past few
> months (despite various incidents like floods and explosions) Bertrand
> has made remarkable progress. Bertrand has spent recently one week with us
> to discuss several technical issues and again made new progress.
> Bertrand is doing this job on a good will base. 

   I beilive his contribution is welcome by 

> He is working for a private company.

   I realized that.
 
> I believe that it will be a big progress the day when we can demonstrate
> a common GUI/graphics system between all systems. The field of GUIs is evolving
> all the time. 

    Sure.

> However, we notice that most teams implementing large systems
> that must run across many platforms have opted for the same solution.
> They implement their own GUI or use portable GUIs. This is true for all
> Java based applications and also for Qt based applications.
> An application like Root has a basic GUI with several higher level classes
> on top of it. These high level classes represent a lot of work and this work
> is independent if you choose to use Microsoft software, Qt or something else.

  I am fully agree and my concern was very those "higher level" classes.
  It is a separate issue and has no direct connection with TVirualX class
  implementation.

  Qt is extremely interesting project.
  Myself is very keen to know does Qt usee WIN32 Common Controls or they draw 
  Qt staff   pixel-by pixel like ROOT does.

  Have anybody the good reference on this issue ?
 
> We prefer to concentrate our work on these high level classes to provide
> optimal solutions for data access and data analysis. 

  Yes you not should waste your time debugging the "icon" drawing 
  and "color / font" selections dialogs.

> We also know by
> experience that the vast majority of users prefer to have a portable and 
> identical user interface on all systems. The end user does not want
> to spend his/her time in installing 20 different systems. He/she just want
> to do his work.

  I think one has to separate things to avoid confusions. There is an identical 
  GUI API and there is an identical GUI. I am voting for  the identical
  GUI API  first of all,  leaving the user  the freedom to choose (and develop)  
  GUI
 
> I do not care if the Root GUI is or not Microsoft compliant. 

> When we decided to invest in the new GUI, the idea was to offer a GUI with a look and
> feel common to many people. 

  At this point you concluded that  Microsoft "feel" is a good choice didn't you ?-)

> We have the source, we can control its evolution.
> In fact most people who know Windows are surprised to see a Windows-like GUI
> under Unix and not yet available on Windows.

  It has very simple explanation, ROOT team had not find the way to invite 
  somebody to take over of this branch. I hope this has been solved.

> About abstract interfaces, I am surprised by your point. That is precisely
> what has been happening. The same abstract interface TVirtualX for the basic
> graphics and the GUI. A common interface and as much software as possible
> between all systems. I do not say that this cannot be improved.

  I did say the TVirtualX was extremely useful, why did you surprise 
  with that ? I did say with GUI class ROOT team did refuse "ROOT design"
  in favor of "one's design" on the next level of the class hierarchy.

> If somebody wants to implement an optional Qt interface (I mean do the work
> and not just ask us to do the work), 

   It is not me for sure. I did not ask Qt.  However  the current GUI abstract layer 
   makes Qt  (Java, Win32)  interfaces possible on the level of the pixel drawing 
   and  the mouse coordinate tracking.  It is simple to implement but  does not 
   promise any big improvement to justify such job.

> About multi language support, yes, it would be nice to support multiple
> languages. Frankly, it is not our priority for the time being. There is
> nothing in the system that could prevent a future implementation.

   Myself did not touch this issue at all.

           With my best regards

                                                       Valeri

> 
> Rene Brun
> 
> Valeri Fine wrote:
> > 
> > Hello, Fons
> > 
> > > >   the "Inspector" currently looks just like the one in the X11 version.
> > 
> > You mean like this:
> > 
> >     http://www.star.bnl.gov/~fine/NewRootWin32Inpector.gif
> > 
> > rather like that:
> > 
> >     http://www.star.bnl.gov/~fine/OldRootWin32Inpector.gif
> > 
> > > > However, the goal of the exercise is of course to redesign all currently
> > > > primitive attribute panels and inspector windows to use the new ROOT
> > GUI.
> > > > Which then will work the same on X and Win32 (like the new TreeViewer,
> > > > which currently only works on X11).
> > 
> >  It is trivial just  paint any kind of things under Windows. The main
> > problem
> >  one has to solve is the second thread to manage widgets.
> >  Without second thread ROOT application will freeze the entire screen just
> >  one implements some more / less  time-consuming  calculation.
> >  There is no such  problem under UNIX since the "second thread" is provided
> >  by X-server, that WIN32 applications lack of.
> > 
> > The question is how one can  benefit from  native Windows features
> > delivered with each MS OS's  those Microsoft  invested huge amount
> > of money in.
> > 
> >  On another hand I think it is not good in long term to leave Windows user
> > with
> >  obsolete Windows 95 look-and-feel.
> > 
> >  It looked cool yesterday  (on UNIX system) but it will look ugly tomorrow.
> > 
> >  I  just want to remind to claim some application is "Windows look-and-feel"
> >  it must satisfy some basic things:
> > 
> >     http://msdn.microsoft.com/certification/description.asp
> > 
> >     http://msdn.microsoft.com/certification/download.asp#english
> > 
> >     http://msdn.microsoft.com/certification/
> > 
> >  Would  ROOT team introduce something like TVirtulBrowser
> >  TVirtualDialog , TVirtualMenu (all can be derived from one and
> >   the same class of course like TVirtualControl )
> >   This would open door to contribute with different kind of implementations
> >   X11, Win32, MFC, Java, Qt etc etc with no user code changing.
> >   Of course this assumes ROOT team provides some "default" implementation
> >   as well.   That was proved to very successful  for TCanvas / TVirtualX.
> > 
> >   Did I overlook things ?
> > 
> > > > Since pure Win32 is being used I don't see any particular problems in
> > > > integrating specific windows features like ActiveROOT or the interface
> > > > to OpenInventor.
> > 
> >    Did you  claim they still work (I mean ActiveROOT and OpenGL viewer) ?
> > 
> > > Betrand will not be in charge of Windows support, but I gues he will be
> > > answering questions and fix bugs related to his work
> > 
> >    Hopely, so far we see no his say on roottalk
> > 
> >    I went:
> > 
> >             http://root.cern.ch/root/Search.phtml
> > 
> >   and type "Search: Bellenot"  in there
> > 
> >       Cheers,
> >                                     Valeri
> > 
> > > >
> > > > Cheers, Fons.
> > > >
> > > > Valeri Fine wrote:
> > > > >
> > > > > Hello, Fons
> > > > >
> > > > > Can you show how "Inpector" and "Open viewer" windows
> > > > > look like with new ROOT
> > > > >
> > > > > Can you say whether it is comaptible with ActiveROOT.
> > > > > Does this means Betrand Bellenot  is the person in charge
> > > > > to provide the Windows 9x/NT/2k support as well.
> > > > >
> > > > >                                                 Cheers, Valeri
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "Fons Rademakers" <Fons.Rademakers@cern.ch>
> > > > > To: "Nick van Eijndhoven" <Nick@phys.uu.nl>
> > > > > Cc: "ROOT Mailing List" <roottalk@pcroot.cern.ch>
> > > > > Sent: Tuesday, May 15, 2001 6:03 AM
> > > > > Subject: Re: [ROOT] Progress of port of ROOT native GUI to Windows...
> > > > >
> > > > > > Hi Nick,
> > > > > >
> > > > > >    when we will release it only the new GUI will be available,
> > however,
> > > > > > since nothing except the lowlevel graphics has been changed (below
> > the
> > > > > > pad and canvas), there should be no changes in the graphics. Anyway
> > you
> > > > > > can always run an old version next to a new version.
> > > > > >
> > > > > > Cheers, Fons.
> > > > > >
> > > > > >
> > > > > > Nick van Eijndhoven wrote:
> > > > > > >
> > > > > > > Dear Fons and Bertrand,
> > > > > > > CONGRATULATIONS !
> > > > > > > This indeed looks good. As soon as a first (pre)release is
> > available
> > > > > > > please let me know so that I can start trying things out.
> > > > > > > >From your mail I understand that no additional libs are needed,
> > just
> > > > > the
> > > > > > > standard WIN32 API. Does this mean that in the pre-release one can
> > > > > > > have available both the ROOT GUI and the win graphics as they are
> > now ?
> > > > > > > If that is the case it would be very convenient to compare the two
> > > > > > > running various analysis/test programs under windows.
> > > > > > >
> > > > > > >                                                  Cheers,
> > > > > > >                                                   Nick.
> > > > > > >
> > > > > > > --
> > > > > > > Dr. Nick van Eijndhoven mailto:nick@phys.uu.nl
> > > > > http://www.phys.uu.nl/~nick
> > > > > >
> > > > >
> > > --------------------------------------------------------------------------
> > > > > > > Org.:    Utrecht University/Nikhef, Department of Subatomic
> > Physics
> > > > > > > Address: P.O. Box 80.000, NL-3508 TA Utrecht, The Netherlands
> > > > > > > Phone:   +31-30-2532331(direct) +31-30-2531492(secr.)  Fax:
> > > > > +31-30-2518689
> > > > > > > NIKHEF:  +31-20-5922028(direct) +31-20-5922000(secr.)  Fax:
> > > > > +31-20-5925155
> > > > > > > CERN:    +41-22-7679751(direct) +41-22-7675857(secr.)  Fax:
> > > > > +41-22-7679480
> > > > > > > Offices: Buys Ballot lab. 710 (Utrecht)   H350 (Nikhef)   B23
> > 1-020
> > > > > (CERN)
> > > > > >
> > > > >
> > > --------------------------------------------------------------------------
> > > > > > >
> > > > > > > Fons Rademakers wrote:
> > > > > > > >
> > > > > > > > Dear ROOTers,
> > > > > > > >
> > > > > > > >   at the ROOT 2000 Workshop Betrand Bellenot volunteered to
> > attempt to
> > > > > port
> > > > > > > > the ROOT native GUI to Windows. After some false starts he is
> > now,
> > > > > since a
> > > > > > > > few months, on the right track and progressing at a good pace.
> > The
> > > > > screenshots
> > > > > > > > at
> > > > > > > >
> > > > > > > > http://root.cern.ch/root/win32progress/Win32GUI.html
> > > > > > > >
> > > > > > > > give a good idea of the current status. The port uses the low
> > level
> > > > > Win32
> > > > > > > > graphics API and does not make use of any X11 compatibily
> > library and
> > > > > does
> > > > > > > > not require an X server. As you can see the look on Windows is
> > exactly
> > > > > the
> > > > > > > > same as on Unix and MacOS X. Once this work is finished, the
> > ROOT GUI
> > > > > classes
> > > > > > > > can be used as a truely cross-platform GUI framework.
> > > > > > > >
> > > > > > > > Cheers, Fons.
> > > > > > > >
> > > > > > > > --
> > > > > > > > Org:    CERN, European Laboratory for Particle Physics.
> > > > > > > > Mail:   1211 Geneve 23, Switzerland
> > > > > > > > E-Mail: Fons.Rademakers@cern.ch              Phone: +41 22
> > 7679248
> > > > > > > > WWW:    http://root.cern.ch/~rdm/            Fax:   +41 22
> > 7677910
> > > > > >
> > > > > > --
> > > > > > Org:    CERN, European Laboratory for Particle Physics.
> > > > > > Mail:   1211 Geneve 23, Switzerland
> > > > > > E-Mail: Fons.Rademakers@cern.ch              Phone: +41 22 7679248
> > > > > > WWW:    http://root.cern.ch/~rdm/            Fax:   +41 22 7677910
> > > > > >
> > >
> 



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:45 MET