Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > gui

Reply
 
 
Gernot Frisch
Guest
Posts: n/a
 
      09-13-2004
> Actually what you are looking for, are standardised graphics
> libraries. One great example is OpenGL which takes advantage of
> modern GPUs on modern PCs.
>
> Quake is written in OpenGL.
>
>
> http://www.opengl.org


Not really. OpenGL is a graphics library for rendering _inside_ a
window. What I wish to have is a standart _for_ the window. It's
really nive to have to write a program only once for OpenGL. But then
you need platform specific stuff for the creation of the window,
keyboard input, mouse events...
Really a standard gui would be great. Because C++ standard will live
forever you would have a library you can rely on. What about using one
of these geek-gui-libs when the author will die? The company get's
bankrupt? What about a new OS they don't want to support?
In std::C++ the OS programmers would have (and happily will) provide
the std libs for the gui.
Sorry, I don't understand why you don't agree with me? I would if I
knew you were working for a company that is keen on getting a monopol
situation in operating systems, but otherwise I can't see any reason
not to have the desire for a std gui command set...


 
Reply With Quote
 
 
 
 
Ioannis Vranos
Guest
Posts: n/a
 
      09-13-2004
Gernot Frisch wrote:


> Not really. OpenGL is a graphics library for rendering _inside_ a
> window. What I wish to have is a standart _for_ the window. It's
> really nive to have to write a program only once for OpenGL. But then
> you need platform specific stuff for the creation of the window,
> keyboard input, mouse events...
> Really a standard gui would be great. Because C++ standard will live
> forever you would have a library you can rely on. What about using one
> of these geek-gui-libs when the author will die? The company get's
> bankrupt? What about a new OS they don't want to support?
> In std::C++ the OS programmers would have (and happily will) provide
> the std libs for the gui.
> Sorry, I don't understand why you don't agree with me? I would if I
> knew you were working for a company that is keen on getting a monopol
> situation in operating systems, but otherwise I can't see any reason
> not to have the desire for a std gui command set...



Because the most efficient way of things (and part of C++ success), is
that specialisation produces the best results.


You use the general purpose language which is very good on that, and
"plug" in a local efficient API for doing system specific stuff.


For example if you want efficient 3D graphics you may use OpenGL.

If I want Windows applications I "plug" in .NET. If I want simple 2D
graphics on that, I "plug" in also GDI+ API.


Even if C++ provided some minimal GUI API I bet all various system
programmers would use the more efficient ones provided by their systems.


If C++ were to provide a full GUI API, a full Database API etc, then its
applications would suffer from efficiency, and would not take advantage
of all facilities provided by every platform.



--
Ioannis Vranos

http://www23.brinkster.com/noicys
 
Reply With Quote
 
 
 
 
Howard
Guest
Posts: n/a
 
      09-13-2004

"Gernot Frisch" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
>
> "Ioannis Vranos" <(E-Mail Removed)> schrieb im Newsbeitrag
> news:ci3tbc$2k57$(E-Mail Removed)...
> > Gernot Frisch wrote:

>
> maybe you can alter it, so the text mode console can be used as a
> "graphical window". So, you get window size = 80x40 and font-size is
> 1x1?


1x1? That's pretty small. Just one pixel wide and one tall. So, pretty
much the screen (assuming one exists at all) would be just "on" or "off"
pixels. Doesn't give you much of an alphabet to work with, does it?

-Howard


 
Reply With Quote
 
Karl Heinz Buchegger
Guest
Posts: n/a
 
      09-13-2004
Howard wrote:
>
> "Gernot Frisch" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
> >
> > "Ioannis Vranos" <(E-Mail Removed)> schrieb im Newsbeitrag
> > news:ci3tbc$2k57$(E-Mail Removed)...
> > > Gernot Frisch wrote:

> >
> > maybe you can alter it, so the text mode console can be used as a
> > "graphical window". So, you get window size = 80x40 and font-size is
> > 1x1?

>
> 1x1? That's pretty small. Just one pixel wide and one tall.


Depends on your definition of 'pixel' in this case.
After the all the whole screen has only 80x40 'pixels'. But each
'pixel' can take various shapes


--
Karl Heinz Buchegger
http://www.velocityreviews.com/forums/(E-Mail Removed)
 
Reply With Quote
 
Howard
Guest
Posts: n/a
 
      09-13-2004

"Jerald" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...

> ...Let's be realistic. All computers
> have graphics nowdays.
> Gerald


Only if you define a "computer" as a processor that *does* have a screen.
I've got a lot of hardware here that has no graphical output, and yet I
write programs for it.

I do agree that some kind of standard would be "nice", but who's going to
define it, and what kind of output would it define? Same question regarding
inputs...what would it define? Mice? (Two-button, three-button,
scrolling?) Joysticks? (DIscrete or continuous?) Numeric keypads?
Chinese keyboards? Then there's the operating system model to
consider...the Carbon Events model on Mac OS X is hardly compatible with
polling schemes, or even the Windows event handler model. I for one suggest
we leave such platform-specific stuff to those writing code *for* those
specific platforms, and keep C++ itself "pure" as much as possible.

-Howard




 
Reply With Quote
 
Phlip
Guest
Posts: n/a
 
      09-13-2004
Gernot Frisch wrote:

> there's a lot of different GUI libraries for x-platform programming
> out there. We have a standard set of C/C++ functions for console
> programs. Why isnt't there any such interface for window containers,
> yet? Imagine a very simple window creation/handling set in std C++,
> that would be platoform independent one day. You can build all this
> GTK/Qt/MFC stuff around if you wish to, but there would be a
> x-platform library for GUI programming.
> <blink, blink>
> Why does std C++ not try to invent this? Very, very simple functions
> would do (create window, text out, line drawing, mouse pointer state)


Because very simple functions would be "jack of all trades, master of none".

A stream is a one-dimensional interface. Bytes come out, and a program
spools them and interprets them. The mechanisms are so simple that a
language can cover all their permutations in only a handful of functions.

A GUI is a two-dimensional interface that animates in time. It is orders of
magnitude more complex. All GUIs interface with both their users and their
source code using a bunch of simplifying assumptions. HTML, for example,
simplifies by assuming only text and graphics in output, only <form> and
<input> tags for input, and all other IO offloads into platform-specific
alternative GUI libraries.

Win32 simplifies by assuming windows, buttons, and menus. If you want,
instead, bungie cords and parachutes, you must again add a library that
provides them, and this must, again, make simplifying assumptions about the
graphics driver layer.

There is no way to cover the full complexities of all possible permutations
of GUIs under the enforced legitimacy of an international standard. Each
time a programmer needed to something in some way this hypothetical GUI did
not cover, they once again must go back to platform-specific code.

--
Phlip
http://industrialxp.org/community/bi...UserInterfaces



 
Reply With Quote
 
Jerald
Guest
Posts: n/a
 
      09-14-2004
Ioannis Vranos wrote:


> How that would be applied to embedded systems without GUIs?
>


Well, with the same logic how can <stdio.h> be applied
on systems without a screen?
(for example an LCD clock, a toaster, a temperature
micro controller, etc)

Now. That's why K&R didn't make printf part of the C programming
language. It's a function of standard libraries and the
user including <stdio.h> expects that the program will
run on a system with a screen.

I seriously agree that C++ and C do need <stdgui.h>.
It is very important for their future.

Moreover, java which is supposed to be a language
for embeded targets (cell phones for example), has
menus and gui stuff. So? Let's be realistic. All computers
have graphics nowdays. Instead of wasting time with
STL (which is a library of some data types the programmer
can create for their own), spend the energy *defining*
the functions/classes interface of an <stdgui.h> header file.
Avoid templates if possible.

Gerald
 
Reply With Quote
 
Ioannis Vranos
Guest
Posts: n/a
 
      09-14-2004
Jerald wrote:

> If C#, Java, etc are gaining users that's only because they
> have standard gui libraries while in C++ there are dozens
> of different guis for each platform. An stdgui would really
> ''boost'' C++ IMHO



C# has no GUI library. It uses the GUI library of the CLI machine used
(the same GUI library with the rest languages).

I do not know Java, but I am sure the GUI belongs to the VM used too.
Although that VM is tied together with the language and all-together are
called Java.



--
Ioannis Vranos

http://www23.brinkster.com/noicys
 
Reply With Quote
 
Phlip
Guest
Posts: n/a
 
      09-14-2004
Ioannis Vranos wrote:

> I do not know Java, but I am sure the GUI belongs to the VM used too.
> Although that VM is tied together with the language and all-together are
> called Java.


Oh, yeah - I almost forgot.

Java's first "standard, cross-platform" GUI, AWT, failed. It brought a
clumsy architecture, and everyone suffered with it.

Then their second one, Swing, took off. But, like everyone said, it's still
not _standard_, and I suspect there are several flavors of it.

--
Phlip
http://industrialxp.org/community/bi...UserInterfaces




 
Reply With Quote
 
Gernot Frisch
Guest
Posts: n/a
 
      09-14-2004
> Java's first "standard, cross-platform" GUI, AWT, failed. It brought
> a
> clumsy architecture, and everyone suffered with it.


AWT would be a good starting point. If only it had template support
and extesibility. The gréat thing was the layout technique, which
allowed you to make guis without a visual designer, but soucr code.
Just like html's <table> command.


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Baseline GUI Architecture (was: Baseline GUI Prototype?) Stefan Ram Java 3 11-20-2011 02:18 AM
PyGTK GUI update without signals from GUI Andrew Lapidas Python 0 04-12-2008 11:07 PM
GUI - GUI value passing paul.foreman Java 5 10-25-2004 08:06 AM
GUI and non-GUI data Hal Fulton Ruby 1 08-05-2004 08:42 PM
[PY GUI] interest function in python GUI(wxpython,pyqt) program.wxpython,pyqt ulysses Python 4 10-22-2003 03:28 PM



Advertisments