BlackHole Productions Announces Plans for BDE



We have decided to enter the Desktop Environment "Market" with our BlackHole Desktop Envoronment(BDE). It will use a brand new GUI development, which promotes customization. If you want to be a part of this project, please write bde@black-hole.iwarp.com. If you are still reading, you must be really interested. Now for the most important part, the guts of BDE.

The core will consist of an engine that draws every widget according to a theme. This allows the use of customized widgets, down to the very look of each widget. Since we have decided to use the Qt toolkit as our foundation GUI programming, it will be a great environment, just look at KDE(1.0 was the best). If you want to know all the technical stuff, the GUIs of every program, including the Panel, windows, apps, etc. will be written in a form of XML, our own flavor, so that you can customize the appearance of them for yourself. For example, if you wanted to write a simple app, lets say, that has a toolbar, menu, scrollbar, and MultLine Edit widgets, here is what it will look like:

<!DocType GUI>
<GuiDef>
<MenuBar name="mainMenuBar">
<Menu name="file">&File
<Item name="new">&New
<Item name="quit">&Quit
</Menu>
<Menu name="edit">&Edit
<Item name="prefs">&Preferences
</Menu>
</MenuBar>
<ToolBar name="mainToolBar>
<Tool name="new" image="new.xpm">New
<Tool name="quit" image="quit.xpm">Quit
</ToolBar>
<ScrollView name="mainScroll" scroll="Both">
<MultiLine name="text">
</ScrollView>
</GuiDef>

To disect this, first, you define the Gui using the DocType tag. Then you start at the top, and work you way down. The Menubar comes next, followed by the toolbars. You must be sure to make a char array in your app so that the program can read the file and send the commands to the appropriate place. The names are important. As you can see, I put two "new"s in, one menu item, and one Toolbar item. This is so that you can connect both to the same slot, and you don't have to worry about having multiple names.

Well, this concludes the initial lesson, I hope this interests you enough to help on the project.


Justin Hibbits