Re: Toolbar+ dropdown arrow, popupmenu, toggle buttons, gadg
Posted: Fri Dec 17, 2010 9:38 pm

http://www.purebasic.com
https://www.purebasic.fr/english/
Code: Select all
ProcedureDLL CreateToolBarPlus(ID, Parent, Size=16) ;Create toolbar plus
Shared ToolbarPlusParent
Shared ToolbarPlus
Shared ToolbarPlusID
Result=CreateToolBar(ID, parent)
ToolbarPlusID=ID
ToolbarPlusParent=parent
ValidateGadgetID(Result, ToolbarPlusID, ToolbarPlus)
; ====================
; Change Style
; ====================
#TB_SETEXTENDEDSTYLE=$400+84
#TB_GETEXTENDEDSTYLE=$400+85
#TBSTYLE_EX_DRAWDDARROWS=$1
Protected es=SendMessage_(ToolbarPlus, #TB_GETEXTENDEDSTYLE, 0, 0) | #TBSTYLE_EX_DRAWDDARROWS
SendMessage_(ToolbarPlus, #TB_SETEXTENDEDSTYLE, 0, es)
hImageList = ImageList_Create_(Size, Size, #ILC_COLOR32 | #ILC_MASK, 20, 0)
If hImageList
SendMessage_(ToolbarPlus, #TB_SETIMAGELIST, 0, hImageList)
Select Size
Case 24
SendMessage_(ToolbarPlus, #TB_LOADIMAGES, #IDB_STD_LARGE_COLOR, #HINST_COMMCTRL)
SendMessage_(ToolbarPlus, #TB_LOADIMAGES, #IDB_HIST_LARGE_COLOR, #HINST_COMMCTRL)
SendMessage_(ToolbarPlus, #TB_LOADIMAGES, #IDB_VIEW_LARGE_COLOR, #HINST_COMMCTRL)
Default
SendMessage_(ToolbarPlus, #TB_LOADIMAGES, #IDB_STD_SMALL_COLOR, #HINST_COMMCTRL)
SendMessage_(ToolbarPlus, #TB_LOADIMAGES, #IDB_HIST_SMALL_COLOR, #HINST_COMMCTRL)
SendMessage_(ToolbarPlus, #TB_LOADIMAGES, #IDB_VIEW_SMALL_COLOR, #HINST_COMMCTRL)
EndSelect
EndIf
SendMessage_(ToolbarPlus, #TB_AUTOSIZE, 0, 0)
ShowWindow_(ToolbarPlus, #True)
ProcedureReturn Result
EndProcedure