Desktop: Difference between revisions
Appearance
Created |
mNo edit summary |
||
(20 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
[[Category:Voyager]] | |||
== Introduction == | == Introduction == | ||
The desktop should resemble the WPS experience. There | The desktop should resemble the WPS experience. There won't be binary compatibility (if you want that, feel free to add it) but source compatibilty is top priority. | ||
Some cornerstones: | Some cornerstones: | ||
* OO design | * OO design | ||
* Extendable by just adding new classes like the WPS | * Extendable by just adding new classes like the WPS (subclassing without recompiling) | ||
* Class replacing | * Class replacing | ||
* No recompilation for new features | * No recompilation for new features | ||
* Drag and drop of almost everything (icons, colors, fonts etc.) | * Drag and drop of almost everything (icons, colors, fonts etc.) | ||
* Scriptable by REXX | * Scriptable by REXX | ||
* Maybe REXX-classes | * Maybe REXX-classes (classes written in REXX) | ||
* DSOM functionality (not at the beginning but development shouldn't prevent it) | |||
* ... | * ... | ||
'''Note:''' Please don't discuss items on this page. Use the discussion page or the [[Voyager]] page. | |||
== Design decisions == | == Design decisions == | ||
Line 20: | Line 23: | ||
* The graphical toolkit is [http://www.gtk.org GTK] | * The graphical toolkit is [http://www.gtk.org GTK] | ||
* GLib is used as the portability layer | * [http://www.gtk.org GLib] is used as the portability layer | ||
* An object model similar to SOM is the foundation | * An object model similar to SOM is the foundation (NOM: Netlabs Object Model) | ||
* GTK will be wrapped into objects to make development easier | |||
* Compiler is gcc 3.3.x (may change later. Compilation on OS/2 should always be possible) | |||
* [http://www.freedesktop.org/wiki/Software_2fdbus D-BUS] will be the foundation for interprocess communication | |||
* Make is gmake | |||
If you have compelling arguments against these decisions feel free to point to a better solution. But be aware that just saying "I don't like" | If you have compelling arguments against these decisions feel free to point to a better solution. But be aware that just saying "I don't like it" won't make serious points. Some hundred/thousand/millions lines of code will likely change our minds faster. | ||
== Status == | |||
(Last change 29.Dec2006) | |||
* The prototype code ([ftp://ftp.netlabs.org/pub/voyager/desktop/images/prototype.jpg screenshot]) is migrated to GTK 2.6.x. See [ftp://ftp.netlabs.org/pub/misc/cinc/vdesktop-gtk.jpg screenshot 1] and [ftp://ftp.netlabs.org/pub/misc/cinc/notebook.jpg screenshot 2]. It's currently running on X only and can be considered a proof of concept. Work is in progress to add more classes and methods and wrap the GTK API into objects. | |||
* Some historical status information can be found on [ftp://ftp.netlabs.org/pub/voyager/desktop/documentation.htm this page]. | |||
* The orbit IDL compiler is ported to OS/2 and is the foundation for the Voyager IDL compiler. | |||
* h-file emitter of the Voyager IDL compiler is done | |||
* c-file emitter of the IDL compiler is done | |||
* ih-file emitter is done | |||
* Completely based on gcc. No dependencies on closed code. | |||
== To do == | == To do == | ||
Line 37: | Line 54: | ||
The following list is only the most important stuff. | The following list is only the most important stuff. | ||
* Write an IDL compiler | * <strike>Write an IDL compiler</strike> | ||
* Migrate header files to our own (using IBM stuff atm) | * <strike>Migrate header files to our own (using IBM stuff atm)</strike> | ||
* Enable class replacing | * Enable class replacing | ||
* Make it distributed (DSOM) | * Make it distributed (DSOM) | ||
* ... |
Latest revision as of 15:03, 29 December 2006
Introduction
The desktop should resemble the WPS experience. There won't be binary compatibility (if you want that, feel free to add it) but source compatibilty is top priority.
Some cornerstones:
- OO design
- Extendable by just adding new classes like the WPS (subclassing without recompiling)
- Class replacing
- No recompilation for new features
- Drag and drop of almost everything (icons, colors, fonts etc.)
- Scriptable by REXX
- Maybe REXX-classes (classes written in REXX)
- DSOM functionality (not at the beginning but development shouldn't prevent it)
- ...
Note: Please don't discuss items on this page. Use the discussion page or the Voyager page.
Design decisions
At this point in time:
- The graphical toolkit is GTK
- GLib is used as the portability layer
- An object model similar to SOM is the foundation (NOM: Netlabs Object Model)
- GTK will be wrapped into objects to make development easier
- Compiler is gcc 3.3.x (may change later. Compilation on OS/2 should always be possible)
- D-BUS will be the foundation for interprocess communication
- Make is gmake
If you have compelling arguments against these decisions feel free to point to a better solution. But be aware that just saying "I don't like it" won't make serious points. Some hundred/thousand/millions lines of code will likely change our minds faster.
Status
(Last change 29.Dec2006)
- The prototype code (screenshot) is migrated to GTK 2.6.x. See screenshot 1 and screenshot 2. It's currently running on X only and can be considered a proof of concept. Work is in progress to add more classes and methods and wrap the GTK API into objects.
- Some historical status information can be found on this page.
- The orbit IDL compiler is ported to OS/2 and is the foundation for the Voyager IDL compiler.
- h-file emitter of the Voyager IDL compiler is done
- c-file emitter of the IDL compiler is done
- ih-file emitter is done
- Completely based on gcc. No dependencies on closed code.
To do
The following list is only the most important stuff.
Write an IDL compilerMigrate header files to our own (using IBM stuff atm)- Enable class replacing
- Make it distributed (DSOM)
- ...