Asus EEE : Simplecats


Above you see the menu bar of the EEE. It shows 6 tabs plus the Help button. But I think the help button is merged in in the simpleui handler. I havent't found a reference in the simpleui.rc files.

Looking at the bar above, we come to the conclusion that there are six categories of applications. And hence there should be six simplecat entries. One each for:

  1. Internet
  2. Work
  3. Learn
  4. Play
  5. Settings
  6. Favourites
Now let's just see how these come back in the simpleui.rc file.

Simplecats : their abundance in simpleui.rc

Here are the simplecat tags as they appear in simpleui.rc. I reformatted the entries for maximum readability. In the actual rc file, less whitespace is used.

<simplecat
	id		= "Internet" 
	icon		= "Internet.png"
	background	= "internet_wallpaper.jpg">

	<name lang="en">Internet</name>
</simplecat>
   
<simplecat
	id		= "Work" 
	icon		= "work_sel.png" 
	background	= "work_wallpaper.jpg">

	<name lang="en"   >Work</name>
	<name lang="de_DE">Arbeiten</name>
	<name lang="fr_FR">Travailler</name>
	<name lang="nl_NL">Werken</name>
</simplecat>

<simplecat
	id		= "Learn"
	icon		= "learn_sel.png"
	background	= "learn_wallpaper.jpg">

	<name lang="en"   >Learn</name>
	<name lang="de_DE">Lernen</name>
	<name lang="fr_FR">Apprendre</name>
	<name lang="nl_NL">Leren</name>
</simplecat>
   
<simplecat
	id		= "Play"
	icon		= "play_sel.png"
	background	= "play_wallpaper.jpg">

	<name lang="en"   >Play</name>
	<name lang="de_DE">Spielen</name>
	<name lang="fr_FR">Multimédia</name>
	<name lang="nl_NL">Spelen</name>
</simplecat>
   
<simplecat
	id		= "Settings"
	icon		= "system_sel.png"
	background	= "settings_wallpaper.jpg">

	<name lang="en"   >Settings</name>
	<name lang="de_DE">Einstellungen</name>
	<name lang="fr_FR">Réglages</name>
	<name lang="nl_NL">Instellingen</name>
</simplecat>
   
<simplecat
	id		= "Favorites"
	icon		= "fav_sel.png"
	background	= "internet_wallpaper.jpg">

	<name lang="en">Favorites</name>
	<name lang="de_DE">Favoriten</name>
	<name lang="fr_FR">Favoris</name>
	<name lang="nl_NL">Favorieten</name>
</simplecat>
   
   
Which shows us that indeed 6 simplecats are defined, each with the expected id. Whch doesn't mean anything of course. The 'Work' tab could as well have been specified as follows:
<simplecat
	id		= "Bedtime" 
	icon		= "work_sel.png" 
	background	= "work_wallpaper.jpg">

	<name lang="en"   >Work</name>
	<name lang="de_DE">Arbeiten</name>
	<name lang="fr_FR">Travailler</name>
	<name lang="nl_NL">Werken</name>
</simplecat>
   
but that could be confusing, not to mention, obfuscating. Still, the text for the tab is defined in the conditional name tags which are in the simplecat container.

Simplecats and parcels

Let's start with an easy application of the simplecat label:

<parcel
	simplecat	= "Work"
	extraargs	= "/usr/bin/XandrosFileManager -maximized" 
	icon		= "file_manager_norm.png"
	selected_icon	= "file_manager_hi.png">

	<name lang="en"   >File Manager</name>
	<name lang="de_DE">Datei-Manager</name>
	<name lang="fr_FR">Gestionnaire de fichiers</name>
	<name lang="nl_NL">Bestandsbeheer</name>
</parcel>
   
The parcel is the application, the program, that is to be started on mouseclick. This parcel (an 'object', in modern day computerspeak) has four parameters:

selected_icon This is the icon to be shown when the mouse cursor is over the icon of an application. If the mouse pointer is off screen, the topleft icon has the highlight.
icon This is the default icon to show on the screen, when the mouse pointer is not over it.
extraargs This is what we used to call the command line with it's command tail. Programs are not started with mouse clicks. Mouse clicks cause certain programs to produce a command line with parameters (arguments) to the command processor.
simplecat This defines to which category a parcel belongs. In this case, it belongs to the Simplecat entry with the 'id' equal to 'Work'.

When a new tab in the top menu bar is selected, the simpleui.rc file is scanned for all parcels that have the corresponding id's. In the case of the 'Work' tab, this applies to the parcels:

  1. XandrosFileManager
  2. Dictionary
Now, this causes some confusion... The screenshot for the WORK tab looks like this:


Now, the funny part is: Hence, how did the other 7 get there? And where is Dictionary now?

Simplecats and shortcut parcels

Have a look here:

<parcel
	simplecat	= "Work"
	shortcut	= "ooo-writer.desktop" 
	icon		= "documents_norm.png"
	selected_icon	= "documents_hi.png">

	<name lang="en"   >Documents</name>
	<name lang="de_DE">Dokumente</name>
	<name lang="fr_FR">Documents</name>
	<name lang="nl_NL">Documenten</name>
	<desc lang="en">OpenOffice.org office suite - word processor</desc>
</parcel>
   
Essentially this parcel has the same layout as the Xandros Filemanager. Yet it has one special argument: the shortcut. The shortcut is the name of a shell script in /usr/share/applications. In this case, the shell script has the name "ooo-writer.desktop" and it starts the Open Office Org package (hence the prefix 'ooo').
The ooo file is a kind of XML file as well. It contains millions of lines with language specific comments in all kind of asian languages. I took the liberty to clip the significant lines from the start of the file:
	[Desktop Entry]
	Version 	  = 1.0
	Encoding	  = UTF-8
	Terminal	  = false
	Icon 		  = ooo-writer
	Type 		  = Application
	InitialPreference = 2
	Categories 	  = Application;Office;X-Red-Hat-Base;X-SuSE-Core-Office;
	Exec 		  = ooffice -writer %U
   
At this moment I don't have a clue why they did it this way. But most of the applications in the WORK tab are linked to a shortcut script. Perhaps this way it is easier to pass more (and more complex) arguments to the programs.

Simplecat and subsimplecats

Now we came a long way. We covered all icons in the WORK tab. All, but one: the Accessories icon. This isn't a parcel and it's not a shortcut either. It's something different. It opens a new screen with new icons, like a subdirectory opens up a new world, down the path of a higher directory.

In EEE parlance, this is a folder. It's syntax is as follows:

<folder 
	simplecat	= "Work" 
	id		= "Accessories"
	icon		= "dir_accessories_norm.png"
	selected_icon	= "dir_accessories_hi.png">

	<name lang="en"   >Accessories</name>
	<name lang="de_DE">Zubehör</name>
	<name lang="fr_FR">Accessoires</name>
	<name lang="nl_NL">Accessoires</name>
</folder>
   
The folder takes arguments and in the folder body (or container) is has place for the by now familiar functions name, include, exclude etc. The arguments of the folder keyword are:

selected_icon Familiar (see above)
icon
simplecat
id This is the unique identifier, or name, for this subdirectory of icons.

Page created on 3 April 2008 and

Page equipped with FroogleBuster technology