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

From: Rene Brun (Rene.Brun@cern.ch)
Date: Wed May 16 2001 - 16:12:32 MEST


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.

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. You did a remarkable job in a short amount of time.

However, the experience has demonstrated that the maintenance of these
classes was getting more and more difficult. 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.

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. He is working for a private
company.

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. 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.

We prefer to concentrate our work on these high level classes to provide
optimal solutions for data access and data analysis. 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 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. 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.

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.
If somebody wants to implement an optional Qt interface (I mean do the work
and not just ask us to do the work), we can discuss extensions or changes
to our current abstract interface.

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.

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 : Fri Jun 08 2001 - 11:51:25 MEST