Page 1 sur 5

[SOCPB 2006] Projet # 2-3 : Skinner fenêtre/gadgets/Menus

Publié : lun. 19/juin/2006 8:16
par Progi1984
Projet #2

Leader :Gillou & Dorian

Membres :

Bon Code

Note :
Le Leader a pour but :
+ d'orienter le développement du projet
+ de regrouper les codes recus
+ de formater le code final (lisibilité, commentaire)
Donc ses paroles sont lettres d'évangiles

Publié : lun. 19/juin/2006 16:12
par Progi1984
Idées Menus :
- mettre icone dans les menus (contextuels ou pas)
Image
- titre au dessus des menus contextuels
Image
- Gestion de la transparence des menus
Image
- Le reve
Image

Idées Gadgets :
- Gestion des skins de gadgets (dans tous les états facilement)
Image

-Le reve
Image

Idées Fenetres
- Skin barre de titre, fond de la fenetre, tour de fenetre
- Un article : http://www.flipcode.com/articles/articl ... kins.shtml


Pour tous :
-un max de compatibilité : Windows 9x à 2003
-le reve un skinMaker

Publié : lun. 19/juin/2006 18:12
par Jacobus
...

Publié : lun. 19/juin/2006 18:40
par Anonyme2
:D

(humour)

Publié : lun. 19/juin/2006 18:53
par Anonyme2
Pour colorer les menu avec des couleurs fixes (pas de dégradé comme Nico l'a fait), le plus long et difficile est la callback, la mienne fait presque 600 lignes

Pour vous aider, j'intercepte les événements suivants

Code : Tout sélectionner

;- #WM_ENTERMENULOOP
;- #WM_EXITMENULOOP
;- #WM_NCMOUSELEAVE
;- #WM_MENUSELECT
;- #WM_NCMOUSEMOVE
;- #WM_DRAWITEM
;- #WM_MEASUREITEM
;- #WM_DESTROY
sachant que les 3 derniers sont les plus important, les autres entrent dans la gestion des menu sous WIN98 pour obtenir le même résultat que sous XP

Publié : lun. 19/juin/2006 23:13
par Gillou
Et bien si le projet commence comme ça il va pas avancer beaucoup, je suis d'accord avec Jacobus. Si tout le monde décide de faire son truc dans son coin sans rien partager et en ne filant que des indices ont est pas sorti de l'auberge :(.

En bref, Nico, des interventions de ce type y'a rien de mieux pour encourager les codeurs à publier leur travail.

Tu es un excellent codeur bien meilleur que moi, mais pour un modérateur, je suis désolé mais ça le fait pas trop.

Voila je t'ai dis ce que je pensais, ne le prend pas mal, mais ton post ne fait en rien avancer ce projet.

Publié : mar. 20/juin/2006 6:04
par Gillou

Publié : mar. 20/juin/2006 14:03
par bernard13
nico a écrit :Une petite parenthèse pour te dire que dans ce Forum, il n'y a qu'une douzaine d'actifs en gros et c'est ceux là qui ont ma confiance, c'est pas plus compliqué que ça!
!
tu va pas nous faire un flan pour ton code, on va sortir les mouchoirs et pleurer , Nico je te comprend mais arrete de parler de ton code svp on sait que tu travaille dessus moi personnellement ça me derange pas que tu veux pas le montrai , tu as bien raison ...

Publié : mar. 20/juin/2006 14:03
par Dorian
Quelqu'un aurais au code qui permet de créer un gadget du début jusqu'à la fin avec les évenements pour étudier sa ? Merci d'avance :wink:

Publié : mar. 20/juin/2006 19:10
par Flype
du pure code, amuses-toi, pas si simple mais terriblement puissant comme approche qui ressemble à celle de tailbite.
http://www.purebasic.fr/english/viewtopic.php?t=21412

Publié : mer. 21/juin/2006 22:43
par Gillou
En ce qui concerne ce projet avez vous des suggestions (forme des fenêtres, transparence, création des skins, gestion des fichiers nécessaire au skin : un seul fichier? codé, en lecture libre, sous zip?)?

N'hésitez pas à la fin de la semaine je mettrais au propre les travaux actuellement lancer et la répartition des taches à ceux qui veulent participer

Publié : mer. 21/juin/2006 23:15
par Flype
je suis pas du tout spécialiste mais il me semble que bcp de skins célèbres sont en XML, donc en clair, en tout cas pour le fichier descriptif.

Publié : sam. 24/juin/2006 13:12
par Gillou
Merci Flype de cette précision,

Donc je vous propose ceci :

Le skin : Il sera stocké dans un fichier zip qui encapsulera les images ainsi que le fichier de la forme. (Un seul fichier avec l'extension SknPB)

Pour les fonctions :

Infos sur la lib:

Skin_LibName() ; Retourne le nom de la lib
Skin_LibVersion() ; Retourne la version de la lib
Skin_LibDescription() ; Retourne une descritpion de la lib

Initialisation, fermeture et info sur le skin:

Skin_Load(SkinID, FileName) ; Charger le skin
Skin_IsLoad(SkinID) ; Retourne si le skin est bien chargé
Skin_Free(SkinID) ; Libère le skin
Skin_Name(SkinID) ; Retourne le nom du skin
Skin_Description(SkinID) ; Retourne une description
Skin_Version(SkinID) ; Retourne la version du skin

Application sur une fenêtre:

Skin_WindowSet(WindowID, SkinID) ; Applique le skin sur une fenêtre
Skin_WindowGet(WindowID) ; Retourne l'identifiant du skin appliqué à la fenêtre
Skin_GadgetSet(GadgetID, SkinID) ; Applique le skin choisi sur le gadget
Skin_GadgetGet(GadgetID) ; Retourne l'identifiant du skin appliqué sur le gadget
Skin_MenuSet(MenuID, SkinID) ; Applique le skin sur le menu (Fonction identique pour PopMenu)
Skin_MenuGet(MenuID) ; Retourne l'identifiant du skin appliqué sur le menu
Skin_MenuItemSet(MenuID, ItemID, SkinID) ; Applique le skin sur le menu (Fonction identique pour PopMenu)
Skin_MenuItemGet(MenuID, ItemID) ; Retourne l'identifiant du skin appliqué sur le menu

Modification du skin:

Skin_Create(SkinID, FileName) ; Créer un fichier SknPB et le charge (la fonction Skin_IsLoad permet de tester si le skin est bien chargé)
Skin_ObjectSet(SkinID, ObjectType, State, ImageID) ; Permet de modifier le skin d'un object, ImageID voir script? pour un état de l'object
Skin_ObjectGet(SkinID, ObjectType, State) ; Retourne l'identifiant de l'image ou (du script?)
Skin_ObjectFontSet(SkinID, ObjectType, State, FontID) ; Permet de changer la police d'un object pour un état donné
Skin_ObjectFontGet(SkinID, ObjectType, State) ; Retourne l'identifiant de la police appliqué au skin
Skin_WindowMoveArea(WindowID, Area) ; Défini l'espace ou on peu cliquer pour déplacer une fenêtre

Autre fonction:

Skin_IsMouseOverGadget(GadgetID) ; Retourne si la souris est au dessus du gadget

En ce qui concerne les menus étant donné les possibilités de modification relativement réduite de la forme, je serais d'avis de créer nos propres menus

Publié : sam. 24/juin/2006 18:39
par Dorian
Sa serai nikel mais je peine pour trouver quoi faire et encore plus s'il faut faire des régions transparentes :( :(

Publié : sam. 24/juin/2006 18:44
par Gillou
Je te propose plusieurs axes à développer :

- gestion du fichier qui contient la forme
- gestion du zip
- gestion des fenêtres
- gestion des gadgets
- gestion des menus

Et tout ça sans lib externe, bien sur ;)

J'ai surtout attaqué les fenêtres et le zip
Si tu veux on peut attribuer des tâches à chaque personne voulant particiêr au projet