NooTed Window Manager

Version 0.001

Salut, c'est ma première version de mon premier essai pour faire un Window Manager/Shell MS-Windows (95/98/nt4/2000).


Téléchargez les exécutables http://perso.club-internet.fr/noote/Old/Nwm/Nwm001.zip.
Téléchargez les sources http://perso.club-internet.fr/noote/Old/Nwm/NwmSources001.zip

Capacités de NWM :

Pour le moment, on peut seulement 'customisé' le bureau (pas encore de textures pour les fenêtres)

- Bureau :

Le bureau est la racine des fenêtres, on peut y ajouter des menus, des raccourcis ou/et des groupes.

- texture de fond
- menus (popup) (droite, gauche, centre, simple/double clique de souris)

- Menu :

Simple menu (pas récursif), pas de texture.

- execute/lance un exécutables

- Raccourci :

Un raccourci est une icône statique auquel on peut exécuter une commande : exécuter un programme, lancé une commande interne (caché or affiché un groupe...)

- texture de fond
- Quitte/Fin d'une session
- boite d'exécution
- exécute une commande : lance un programme avec des paramètres
- exécute une action : HIDE_GROUP, SHOW_GROUP

- Groupe :

Un Groupe est un groupe de raccourcis dans une fenêtre.

- texture de fond
- affichable/cachable via une action d'un raccourci

- Texture :

Une texture est  un groupe d'images ou d'icônes.

- transparent (rgb : 255,0,255)
- ajout/copie (mixage) avec une autre texture
- agrandissement (changement de la taille suivant la taille de la fenêtre)

Capacités dans le futur (pas d'ordre particulier) :

- tips/textes pour les raccourcis
- déplacement/animation des groupes et des raccourcis
- menus dans les groupes groups
- plugins
- sons
- menus récursifs
- extraction de répertoire vers un menu
- textures dans le menu
- textures pour les fenêtres (interception des appels WM_NC_xxx, est-ce quelqu'un connaîtrait des tutoriaux, des infos ou des sources (C/C++) la dessus ?)
- ...

Thème description :

You can get some theme at http://perso.club-internet.fr/noote/Old/Nwm/Themes but you must know I'm not an artist ! I seek for somes good theme makers for help me to make a good default theme for NWM. The current default theme was stolen from a OutSider99 theme (I hope his author not flame me).

Theme format architecture is simple :

THEME "name"
{
	/* Just some info about this theme */
	DESCRIPTION
	{
		VERSION {"0.001"}
		AUTHOR {"?"}
		EMAIL {"?"}
		HTTP {"http://www.multimania.com/noote/Nwm/Themes"}
		INFO {"put what you want"}
	}
	/* define a menu */
	MENU "SmallMenu"
	{
		ITEM "&About..." { ABOUT {} }
		SEPARATOR {}
		ITEM "&Run..." { RUN {} }
		SEPARATOR {}
		ITEM "&Quit" { QUIT {} }
		ITEM "&Log Out" { ENDSESSION {} }
		ITEM "&Shut Down" { SHUTDOWN {} }
	}

	/* the desktop definition */
	DESKTOP
	{
		/* set a background, you can omit it, it will take default windows background */
		BITMAP "BackGround" {"themes\default\images\back.bmp"}
		/* add a menu to the rigth click on desktop */
		MOUSEMENU "RightClick" {"SmallMenu"}

		/* add somes shortcuts in this desktop */
		SHORTCUT "Quit"
		{
			/* set position and size */
			WIDTH {"64"} HEIGHT {"64"}
			POSX {"700"} POSY {"500"}
			/* set a background */
			BITMAP "BackGround" {"themes\default\images\shutdown.bmp"}
			/* set a command : here it's a quitting button */
			SHUTDOWN {}
		}
		SHORTCUT "Show Me"
		{
			WIDTH {"64"} HEIGHT {"64"}
			POSX {"128"} POSY {"128"}
			BITMAP "BackGround" {TRANSPARENT{"themes\default\images\show.bmp"}}
			/* show SmallGroup group */
			ACTION "show_group" {"SmallGroup"}
		}

		/* add a group */
		GROUP "SmallGroup"
		{
			/* set position and size */
			POSX {"0"} POSY {"0"}
			WIDTH {"128"} HEIGHT {"128"}
			/* specify it's loaded as show, it can be hide */
			SHOW {}
			/* add a backgound, if no background specified, it's a transparent window */
			BITMAP "BackGround" {TRANSPARENT{"themes\default\images\tableau.bmp"}}
			/* add some shortcuts */
			SHORTCUT "Browse"
			{
				WIDTH {"64"} HEIGHT {"64"}
				POSX {"0"} POSY {"0"}
				/* for background, we take a icon from eplorer file */
				BITMAP "BackGround" {TRANPARENT{"extract::c:\windows\explore.exe"}}
				/* a execute command : launch a desktop explore ! */
				EXECUTE "explorer" { PARAM {"/root,,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"} }
			}
			SHORTCUT "Hide Me"
			{
				WIDTH {"64"} HEIGHT {"64"}
				POSX {"60"} POSY {"70"}
				BITMAP "BackGround" {TRANSPARENT{"themes\default\images\hide.bmp"}}
				/* Hide SmallGroup group */
				ACTION "hide_group" {"SmallGroup"}
			}
		}
	}
}

NWM (http://perso.club-internet.fr/noote/Old/Nwm)
NooTe (noote@club-internet.fr)
Last update : 02/05/99