; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

    Do_ToolBar  PROTO :DWORD
;    SetBmpColor PROTO :DWORD

    include tbmacros.asm

    .data?
    
        hToolBar      dd ?    

    .data

        szDefault	  db "Windows Default",0
        szOffice2000  db "OFFICE 2000",0
        szOfficeXP    db "OFFICE XP",0
        szXNET	  db "XNET",0
        
        szTDefault	  db "╤ЄрэфрЁЄэ√щ ёЄшы№ ьхэ■ Windows",0
        szTOffice2000 db "╤Єшы№ ьхэ■ яюїюцшщ эр OFFICE 2000",0
        szTOfficeXP   db "╤Єшы№ ьхэ■ яюїюцшщ эр OFFICE XP",0
        szTXNET       db "╫Єю Єю ёЁхфэхх ьхцфє, Ёрчэ√ьш ёЄшы ьш",0
        
        ToolClass     db "tooltips_class32",0
       
    .code

; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл

Do_ToolBar proc hWin :DWORD

    ; ---------------------------------------
    ; This proc works by using macros so that 
    ; the code is easier to read and modify
    ; ---------------------------------------

    LOCAL tbb   :TBBUTTON
    LOCAL hToolTip:HWND
    LOCAL ti:TOOLINFO

    ; ------------------
    ; The toolbar bitmap
    ; ~~~~~~~~~~~~~~~~~~
    ; You must supply a bitmap for the toolbar that has the 
    ; correct number of the required images, each of the same
    ; size and in the following strip bitmap form.
    ;
    ; For the bitmap to have the correct background color, there
    ; must be a 'path' for the FloodFill function from the top
    ; left corner AROUND each tool button image on the bitmap.

    ;  -------------------------------------
    ;  |  1  |  2  |  3  |  4  |  5  |  6  |
    ;  -------------------------------------

    ; ------------------------
    ; Uncomment following when
    ; bitmap has been created
    ; ------------------------
    ; invoke LoadBitmap,hInstance,750
    ; mov hTbBmp,eax

    ; --------------------------------------------------
    ; Set toolbar button dimensions here, width & height
    ; --------------------------------------------------
    Create_Tool_Bar

    TBextraData     ; additional data for TBBUTTON structure

    ; -----------------------------------
    ; Add toolbar buttons and spaces here
    ; Syntax for the macro TBbutton is
    ; TBbutton bmpID number, WM_COMMAND ID number
    ; WM_COMMAND ID numbers start at 50
    ; -----------------------------------
    TBblank
    TBbutton  0, IDM_VIEW_THEME_DEFAULT, offset szDefault
    TBblank
    TBbutton  0, IDM_VIEW_THEME_OFFICE_2000, offset szOffice2000
    TBblank
    TBbutton  0, IDM_VIEW_THEME_OFFICE_XP, offset szOfficeXP
    TBblank
    TBbutton  TBSTATE_CHECKED, IDM_VIEW_THEME_XNET, offset szXNET
    TBblank
    
    ; ╤ючфрфшь яюфёърчъш 

    invoke CreateWindowEx, 0, ADDR ToolClass, NULL, TTS_ALWAYSTIP,
                        CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
                        hWnd, NULL,hInstance, NULL  
    mov hToolTip, eax
    
    mov ti.cbSize, sizeof(TOOLINFO)
    m2m ti.hWnd, hToolBar
    m2m ti.hInst, hInstance
    m2m ti.uFlags, TTF_SUBCLASS
    
    invoke SendMessage, hToolBar, TB_GETITEMRECT, 0, ADDR ti.rect
    mov ti.uId, IDM_VIEW_THEME_DEFAULT
    mov ti.lpszText, offset szTDefault
    invoke SendMessage, hToolTip, TTM_ADDTOOL, 0, ADDR ti
    
    mov ti.uId, IDM_VIEW_THEME_OFFICE_2000
    mov ti.lpszText, offset szTOffice2000
    invoke SendMessage, hToolTip, TTM_ADDTOOL, 0, ADDR ti
    
    mov ti.uId, IDM_VIEW_THEME_XNET
    mov ti.lpszText, offset szTXNET
    invoke SendMessage, hToolTip, TTM_ADDTOOL, 0, ADDR ti     
   
    mov ti.uId, IDM_VIEW_THEME_OFFICE_XP
    mov ti.lpszText, offset szTOfficeXP
    invoke SendMessage, hToolTip, TTM_ADDTOOL, 0, ADDR ti

    ; set the tooltip control as part of the toolbar
    invoke SendMessage, hToolBar, TB_SETTOOLTIPS, hToolTip, 0 
    
    ret

Do_ToolBar endp

; ллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллллл