On Fri, Jul 12, 2002 at 09:28:56AM +0200, Juergen Vigna wrote:

> I don't understand really what problems you have with this?
> Why do you need two different objects?

Mainly because commingling (oooh yeah) two different purposes into the
one buffer is really bad UI

> Isn't it possible to
> do this internal to the Minibuffer-Object?

No. What do I return for isEditingMode() ? Yes AND no ?

> Why should the core
> care to change between a StatusBar and a Minibuffer.

The core doesn't know about /either/ of these things in my design. It
just has a LyXView::statusMessage(string), and it us up tothe frontend
to do what it likes.

> What real
> problem do you have to make this internal to the object?

Just look at the methods I have to implement and the code in
MiniBuffer.C ! e.g. MiniBuffer::message()

Rather I would turn it round and ask: what is your problem with my
changes ?

> You just have to define a Input object and a display object and
> change between them when needed. That shouldn't be that big of
> a problem (just show/hide calls to the objects which have the same
> size/position).

I don't think you understand: they are two entirely separate UI objects,
both visible at once.

> IMO that for the core it should be just one object
> to not complicate the stuff to much

What is copmlicated about the 3 or 4 methods I have outlined ? It
couldn't get much simpler :

        showMessage(string)
        showMessagePush(string)
        vector<string> showCompletions(string prefix)
        string showShortcuts(string cmd)
        void dispatch(string cmd)

is what the core implements. The frontend may now do as it chooses.

> and for the frontend it should
> be really easy to implement this as such.

My design is /far/ simpler to implement.

> But obviously you are the qt expert

Well I don't know zip about Qt, but that's not really relevant anyway.
This is a sane design regardless of toolkit IMHO. Why do you prefer to
conflate two entirely separate concepts into one set of code ? It seems
to me that it's only because xforms has happened to do the same
previously.

regards
john

-- 
"I hope you will find the courage to keep on living 
 despite the existence of this feature."
        - Richard Stallman

Reply via email to