à encoder entre
Code : Tout sélectionner
Module ToolsBar
EndModule
Code : Tout sélectionner
DeclareModule ToolsBar
Declare Init(Id,IdWindow,X,Y,Width=-1,Heidht=100)Init(Id,IdWindow,X,Y,Width=-1,Heidht=100)
EndDeclareModule
Code : Tout sélectionner
ToolsBar::Init(#Id_Menu_Onglet,#ID_Form,X,Y,W,H)
Code : Tout sélectionner
;Pocédure pour charger les paramètre par défaut couleur font ect... (seront modifiable)
Procedure DefaultParameters()
myTools()\BackColor=$EBCE87
myTools()\LineColor=$FF901E
myTools()\HeightOnglet=25
myTools()\LeftOngletMargin=40
myTools()\BackColorOngletSelected=$FCEACC
myTools()\FrontColorOngletSelected=$FEF9F1
myTools()\MarginOnglet=10
myTools()\FontOnglet=LoadFont(#PB_Any,"Time new roman",12,#PB_Font_Bold|#PB_Font_HighQuality)
myTools()\OngletTexteColor=$FF0000
myTools()\OngletBoxOverBackColor=$FFFFE0
myTools()\OngletBoxOverFrontColor=$00FFFF
myTools()\FontGroupeTitle=LoadFont(#PB_Any,"Time new roman",10,#PB_Font_HighQuality)
myTools()\FrontColorGroupeTitle=$FF0000
myTools()\BackColorGroupeTitle=$F6D8B9
myTools()\ColorLineGroupe=$FF901E
EndProcedure
Code : Tout sélectionner
;Cette procedure va créer le menu onglet en mémoire
Procedure Init(Id,IdWindow,X,Y,Width=-1,Heidht=100)
Protected W
;Si #PB_Any incrémente automatiquement l'id
If Id=#PB_Any
AddMapElement(myTools(),Str(MapSize(myTools())+1))
Else
;Vérifie si un tool bar n'existe pas déjà avec cette id
If FindMapElement(myTools(),Str(Id))<>0
MessageRequester("Error ToolsBar Init","This Id already exist...")
ProcedureReturn 0
EndIf
AddMapElement(myTools(),Str(Id))
EndIf
;Charge les valeur couleur font ect... par défaut
DefaultParameters()
myTools()\X=X
myTools()\Y=Y
myTools()\H=Heidht
myTools()\IdWindow=IdWindow
UseGadgetList(WindowID(myTools()\IdWindow))
;Si l'utilisateur du module renseigne un largeur à -1 on prend toute la largeur de la fenêtre
If Width<>-1
W=Width
Else
W=WindowWidth(IdWindow,#PB_Window_InnerCoordinate)
EndIf
myTools()\W=W
myTools()\IdCanvas=CanvasGadget(#PB_Any,X,Y,W,Heidht,#PB_Canvas_Keyboard)
myTools()\ProcedureEventOngletCallBack=-1
ProcedureReturn Val(MapKey(myTools())) ;Retourne l'id du menu onglet
EndProcedure
http://www.purebasic.fr/french/viewtopi ... 21&t=14732