Re: root ideas

Valery Fine (Valeri.Faine@cern.ch)
Mon, 3 Mar 1997 09:14:37 +0100


On 2 Mar 97 at 12:13, Ole Streicher wrote:

>
> Yes, this I also dicovered. But I didn't find anything like "Edit
> text" there. The only I found is "add text" which adds more text and
> "Set name" which does something completely different (it makes a new
> object with a new name).
>
Ohh! It is a fundamental problem for ROOT (and OO) to be solved! You
can realize that one CAN NOT SEE and "EDIT" the current value of any
current data-member (text and numerical) and change it via menu. Via
our popup menu one can see the class member-functions (no DATA) and
call it. The edit boxes of all menus are built from the list of the
parameters of those. Apparently "List of the parameters" is not
aware about the current state of the class data-members and present
it and let the user to change it too.

In fact it is not problem of ROOT (try "TObject::Inspect()"
function for instance) but the direct access to the class
data-member breaks the OO idea and can not be allowed.

> This is really nice, because it makes programming of real
> applications much easier. So, if I understood you right, there is
> simply no methd in the TPaveText classes to change a text?
>
No way to retrieve the current state of the TPaveText (and any
other object) and bring it into the menu.

Of course we are making the exceptions (see our FitPanel, DrawPanel
and so on). But ROOT Panels are the special things. it can not be
built "by automatic" from the user's include file so far. May be
we'll need the TextPanel too.

> One problem I see with this is: The class interface reflect the
> prgrammers view to the objects, while the menus should reflect the
> users point of view, which may lead to confusion (I e.g. dont
> understand why "Set name" creates a new object).
>

Ok, but this user's point of view must be DESCRIBED/defined
somehow. I think one of the way to solve is to build some sort of
View_of_Object ROOT C++ classes to reflect the particular point of
view of some user or group of users. It is assumed to be several
different views of one and the same "base" class. But it is just a
dream only at the moment.

>
> Yes, but this needs a local root installation which is probably not
> the case at a random computer. A www browers is installed anywhere
> one has network access.
>

Why not? And which WWW browser did you mean ? NetScape v.2.0 or
4.0, with Java or with no Java. May be you meant MS Internet Explorer
But again with ActiveX controls and a "pure" v.2.0.

If Java interpreter (virtual Java machine) can be a part of the WWW
client why C++ interpreter can not ?

>
> Yes, I know it. I was asking only if there is the *possibility* to
> do it. I like the Root idea very much.
>

*possibility* ? I know no thing one CAN NOT implement "in theory"
in his dream.
Yes sure the *possibility* does exist. The only question whether it
will be released, when and by whom?

With my best regards,
Valery
=================================================================
Dr. Valery Fine Telex : 911621 dubna su
-----------
LCTA/Joint Inst.for NuclearRes Phone : +7 09621 6 40 80
141980 Dubna, Moscow region Fax : +7 09621 6 51 45
Russia mailto:fine@main1.jinr.dubna.su
mailto:fine@vxcern.cern.ch
Dr. Valeri Faine
------------ Phone: +41 22 767 6468
CERN FAX : +41 22 782 2601
CH-1211 Geneva, 23 mailto:fine@vxcern.cern.ch
Switzerland http://nicewww.cern.ch/~fine