[Tip] Otk Open Tool Kit

Hier können Sie auf Deutsch diskutieren. Bedenken Sie, dass Sie in den englischen Foren mehr Nutzer ansprechen.

Moderators: frik85, EmuandCo, Dr. Fred

Post Reply
Blackcrack
Posts: 1808
Joined: Tue Dec 20, 2005 12:55 pm
Contact:

[Tip] Otk Open Tool Kit

Post by Blackcrack »

[ external image ]

Otk - Open Tool Kit


Otk is a portable widget library for making graphical user interfaces (GUI's) for application programs. It emphasizes simplicity without eliminating capability. Open graphics Tool Kit supports neutrally: Linux, Unix, Microsoft Windows, and Mac OSX. It is based on OpenGL, and C. Otk provides the following basic widgets:
  • * Panel - The "container" widget.
    * Text Label - Text labels.
    * Button - Buttons with labels and call-backs to user functions.
    * Text Form Box - Accept text with function call-back. Also scrollable editor window.
    * Pull-down Menu - Display hierarchical menu-lists with user function call-backs on mouse release.
    * Slider Control - Slider control with call-back.
    * Sub-windows - Detachable self-managed windows.
    * Many other widgets ...
    * Gadgets - High level widgets.
A simple GUI-Builder is being developed for Otk.

Although initially intended for use with C programs, Otk can be accessed from, or extended to, other languages. Otk addresses several issues with previous graphics toolkits, such as X-Windows, X-Motif, MFC, Tcl/TK, Gtk, Awt, Swing, Glow, FLTK, etc..

Otk deviates from previous graphics environments in several important ways.
  • * Based on OpenGL - Well supported on most platforms. Clients tend to have the right support files. Easily builds on all platforms. Uses graphics card acceleration when available. Common look and feel. Contains internal default font with arbitrary scale, boldness and slant. Additional fonts can be added.
  • * API designed from application programmer's viewpoint - Simplified interface. Sensible defaults. Most common functions require one line. But flexibility is not limited because defaults can be modified.
  • * Minimal library files - Link to-, or include-, one file.
  • * Direct window-size % relative layout - Specify positions and sizes as percentage of container window. Resizing is automatic and proportional. Traditional pixel-coordinate or framework modes can also be supported.
  • * Colors can be expressed directly as r,g,b values. (No indirect color index tables.)
Example:

A quick test of a graphic environment's simplicity is to look at what it takes to do the simple helloworld example. Here is the Otk version of helloworld.c for comparison to other graphics toolkits.

#include "otk_lib/otk_lib.c"
main( int argc, char **argv )
{
OtkInitWindow( 350, 140, argc, argv );
OtkMakeButton( OtkOuterWindow, 10.0, 10.0, 80.0, 80.0, "Hello World !", 0, 0 );
OtkMainLoop();
}

Coordinate System:

To simplify window design, all coordinates are expressed in percentages of the container window or widget. The upper left is 0.0%, the lower right is 100.0%. This enables automatic resizing without additional code in each application. (Alternatives would be to specify coordinates in pixels or other arbitrary coordinate systems such as points, cm, or inches. You are always free to convert any such coordinates into percent window size.) Background/foreground eclipsing is handled automatically by the underlying OpenGL functions. The Otk calls manage their own hierarchy and depth.

Window Hierarchy:

The outermost container window (the first window itself) is called, OtkOuterWindow. All subsequent windows are children (or children-of-children, etc.) of the OtkOuterWindow.

and manny more ->Otk
Speedator
Posts: 136
Joined: Sat Jun 17, 2006 4:42 pm

Re: [Tip] Otk Open Tool Kit

Post by Speedator »

Was hat das konkret mit ReactOS zu tun?
hefner
Posts: 240
Joined: Fri Dec 16, 2005 11:49 am

Re: [Tip] Otk Open Tool Kit

Post by hefner »

Keine ahnung , backy hat nur wieder etwas gefunden , was er für wichtig erachtet ...

Die frage ob es überhaupt sinnig ist opengl gui-libs, anstatt der GDI für die ROS entwicklung zu nutzen stellt er sich wiedermal nicht.
DangerGround
Website Coordinator
Posts: 261
Joined: Mon Mar 20, 2006 1:48 am
Location: Ilmenau, Germany
Contact:

Re: [Tip] Otk Open Tool Kit

Post by DangerGround »

Was soll der Kram hier, es ist ein deutsches Unterforum. Bitte denk vorher nach bevor du wieder Sachen postest die keinerlei Relevanz haben.
z180
Posts: 197
Joined: Sat Mar 10, 2007 7:58 pm

Re: [Tip] Otk Open Tool Kit

Post by z180 »

Ihr könnt ja mal testen ob das was er euch gepostet hat,überhaupt läuft.
Es ist das selbe wie mit den übertragbaren multimedia bibliotheken,
wenn die SDL DLL läuft dann laufen auch programme wie dosbox.ZSNES und die andere allegro software läuft nicht in reactos
weil die alleg??.dll reactos aufhängt laut bug #1112.
Ich glaube das ein open GL toolkit sehr langsam auf ReactOS läuft,
zumindest auf meinem Testsystem weil mir die 3D beschleunigungstreiber fehlen und die hardware langsam ist.
Blackcrack
Posts: 1808
Joined: Tue Dec 20, 2005 12:55 pm
Contact:

Re: [Tip] Otk Open Tool Kit

Post by Blackcrack »

Hy,

was das mit Reactos zu tun hat, ganz einfach, wenn man ne GL-Karte drin hat und dann nen
GL treiber am rennen hat, wird mit diesem Toolkit die ausgabe recht beschleunigt,
weil das ganze auf der GraKa gerändert wird per GL. Daher hab ich gedacht,
vielleicht gibt es Typen, die zuerst denken, dann vielleicht das gute daran sehen
und weniger rumkotzen, bevor se denken.. oder wenigsten sich bedanken für die
news und wenn denen gegen den kramm geht, dann wenigstens die.. ne, währe zu hart...
den mund halten, wenn se nichts positives oder konstruktives zu sgaen haben..
ich hab mir wenigstens dabei was gedacht und u.U. konstrucktives bei gesteuert,
auf der, wenn jamand interresse hätte ne Gui neben dem Reactos-Explorer darauf
bauen könnte, weil das ganze unterstützt C und GL smit dann auch einen geränderten Desktop..
Wenn man das System mit ner GL karte nutzen möchte und dann vielleicht gleich n
bisschen eleganteren Deskt hat der vielleiiicchhtt u.U. ein bisschen schneller rennt,
weil das eben auf der Graka und dessen GPU rennt.
Z180, danke, Du hast dir wenigstens Gedanken gemacht.. find ich echt oky, ....
wie gesagt, wenn später das mit gl-Treibern und der richtigen Graka rennt,
denk ich mal daß man da echt was rausholen könnte..Natürlich nicht als Standart,
sondern als Erweiterung bez. Ersatz wenn man mit GL ab geht.. oder ne
GL-Unterstützende Karte hat... somit währe dann manchesauch mit
diesem Toolkit möglich, was jetzt ohne direckte gl-unterstützung
denn zwar schnell rennt auf P1er oder P2er kisten aber eben denn
genauso "langsam " auch auf dualcore rennt, weil es eben keinen
direckten GL-Port hat.. dieses Toolkit kann das und unterstützt das :)

grüße
Blacky
Speedator
Posts: 136
Joined: Sat Jun 17, 2006 4:42 pm

Re: [Tip] Otk Open Tool Kit

Post by Speedator »

Ich will nicht meckern oder so, war eine ernstgemeinte Frage.
Es ist eine von vielen Toolkits mit dem man Programme entwickeln kann, ok.
Also ganz ernst :
Wieso hast du speziell dieses Toolkit hier erwähnt?
Und ganz konkret:
Was meinst du könnte man damit für Vorteile für ReactOS selbst herausholen?
Das wird mir aus dem letzten Post auch noch nicht wirklich klar. Was meinst du konkret mit dem ReactOS-Explorer?

Also ruhig Blut Brauner. Alles wird gut. ;)

Und auch wenn die anderen mal was nicht so positives dazu sagen, hat das nicht immer was destruktives. In diesem Forum geht es ja um ReactOS und nicht um ein Sammelsurium.
Ich könnte wahrscheinlich auch täglich 30 neue Artikel zu solchen Sachen schreiben, wenn ich es versuchen wollte. Aber solange das nichts konkret mit ReactOS zu tun hat, lasse ich es lieber.
Aber solange du das ganz konkret auf ein Ziel beziehst ist doch alles in Ordnung. Also nimm dir ein wenig Zeit das klar auszuformulieren und hier kehrt wieder Friede, Freude, Eierkuchen ein ;)
Blackcrack
Posts: 1808
Joined: Tue Dec 20, 2005 12:55 pm
Contact:

Re: [Tip] Otk Open Tool Kit

Post by Blackcrack »

*smiiileee* jjaaahhheeeeeiiiiiiiibbrrrhhbbrrhhh......bbrrhhbrrhh......*breitgrinz*

Hy Speedy,
das hab ich in den news vom Prolinux gesehen, mir angeguggt und mir gedacht, hey, das währ doch was geniales und wenn die das direckt auf den body von reactos draufschneidern würden und das auf GL rennt, dürfte das nachher, da ja experimente laufen daß die graficengine in den przessor mit reingelegt wird, auch grad laufen, das vielleicht nachher einen mächtigen Hammer als Systemschnelligkeitsschub auch per GL-CPU/GPU bedeuten einerseits werden die verarbeiteten Sachen, direckt im CPU durchgerechnet und die Gui wird dann in der GPU angezeigt, schneller geht's ja wohl nich.. und wenn das dann mit Multicore CPU's gerechnet wird die einen grafik-kern drin haben.. oweia... kommt selbst MS nicht mit.. da der CPU nachher frei währe für andere Rechnungen und sich nicht mit unter auch mit der
Gui rum schlagen muß....

Vorteile für Reactos, Grafisch mehr Leistung, weil eben direckt per GL die Gui gerändert wird..
somit dann die CPU frei bleibt für System Aufgaben bez. Programm aufgaben..

Somit währe ein Schnelligkeitsgewinn des Systems, durch eine sagen wir mal
z.B. Nvidia 8400GT oder ner ATI Graka die GL unterstützt ganz klar gegeben.

So und nun her mit dem Eierkuchen...*miamschleck*

liebe Grüße
Blacky
TiKu
Posts: 157
Joined: Wed Jan 05, 2005 9:09 pm
Location: Unterföhring, Germany
Contact:

Re: [Tip] Otk Open Tool Kit

Post by TiKu »

Auch GDI wird (zumindest teilweise) direkt von der Grafikkarte übernommen, d. h. auch eine GDI-Oberfläche ist hardwarebeschleunigt.
Blackcrack
Posts: 1808
Joined: Tue Dec 20, 2005 12:55 pm
Contact:

Re: [Tip] Otk Open Tool Kit

Post by Blackcrack »

Hy :)
TiKu wrote:Auch GDI wird (zumindest teilweise) direkt von der Grafikkarte übernommen, d. h. auch eine GDI-Oberfläche ist hardwarebeschleunigt.
humm, aber nicht so als wenn sie direckt gerändert wird über gl, wobei dann bei gl div. wigets oder
wie das heist noch zusätzlich leichter ein zu binden währe.. oder seh ich das falsch ?
(ala Vista oder besser oder ein 3D hintergrund alla Google Earth oder virtueller Hintergrund in 3D)

liebe grüße
Blacky
Speedator
Posts: 136
Joined: Sat Jun 17, 2006 4:42 pm

Re: [Tip] Otk Open Tool Kit

Post by Speedator »

Bedenke mal, dass es vielleicht auf OS-Ebene, vielleicht doch besser ist direkt mit OpenGL zu arbeiten.
Im übrigen geht es ReactOS ja primär auch um die Ähnlichkeit zu Windows.
Allgemein ist das eher ein Toolkit für Anwendungsprogramme.
z180
Posts: 197
Joined: Sat Mar 10, 2007 7:58 pm

Re: [Tip] Otk Open Tool Kit

Post by z180 »

Wo ihr gerade über GL sprecht, was ja besser für nicht-Spiele in 3D geeignet ist als DX.
Hat jemand von euch mal die OpenGL testprogramme unter ReactOS ausprobiert?
z. b. glxgears oder teapot.
Radhad
Posts: 605
Joined: Wed Apr 12, 2006 5:09 pm
Contact:

Re: [Tip] Otk Open Tool Kit

Post by Radhad »

Wenn ich mir das jetzige Stadium von ReactOS anschaue, graut es mir aktuell vor OpenGL Widgets, denn die werden über SW OpenGL verarbeitet - somit sinkt die performance aktuell ganz gewaltigt. Das wird erst interessant, wenn man Grafikkartentreiber installieren kann.
Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests