Alex,
That sounds good. However, aren't your current changes what should be called
the "console" UI and the old user interface should stay as the "TUI"?
And
they could be user selectable through the .ini file?
Or are you getting rid of the current user interface completely, instead of
writing an additional one? If so, I suggest writing an additional one so
that those of us that prefer the old user interface can still use it.
Something like this:
tui.c has all the original UI stuff in it.
cui.c has your new "console" UI.
ui.c (or ui.h) has a single function that calls (or is #define'd) to
GraphicsTable->DrawBox which points to either the tui.c or cui.c equivalent.
What do you think?
-Brian
-----Original Message-----
From: ros-general-bounces(a)reactos.org
[mailto:ros-general-bounces@reactos.org] On Behalf Of Alex Ionescu
Sent: Saturday, November 19, 2005 5:39 PM
To: ReactOS General List
Subject: Re: [ros-general] Re: Freeldr UI modifications
Hi,
When I say remove all the "GUI Stuff" I meant the abstraction layer, not
the "video and graphics capabilities". One more time, I simply want a
box to be drawn by TuiDrawBox, instead of UiDrawBox, which will then
read the current graphics mode, and then call TuiDrawBox. It's a useless
abstraction at this point.
However, I gave it a bit more thought, and if I replace this by a vtable
system much like the Mach functions, then I believe we shoudl both be
happy. It would get rid of ui.c, gui.h, ui.h and gui.c, leaving only
tui.c. However, the calls themselves won't be TuiDrawBox, but UiDrawBox,
where this will be defined to something like GraphicsTable->DrawBox,
which will be initialized on startup. That way, the useless source files
go away, because it's not necessary to define the Gui functions anymore.
The speed impact will go away too, since we don't be checking the
graphics mode each time, and if someone wants to implement a 3rd graphic
mode (ie: console mode), they won't have to edit 50 UI functions to add
another "if/else" case. How does that sound?
Best regards,
Alex Ionescu
_______________________________________________
ros-general mailing list
ros-general(a)reactos.org
http://www.reactos.org/mailman/listinfo/ros-general