Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post your working scripts, libraries and tools
lexikos
Posts: 6175
Joined: 30 Sep 2013, 04:07
GitHub: Lexikos

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by lexikos » 06 Feb 2016, 17:01

There is a proof of concept for the "Scenic Ribbon" (apparently what the "Windows Ribbon Framework" used to be called), but the screenshot and download link are broken.

Anyway, the API produces ribbons like in WordPad, with style dependent on the OS, whereas Office does its own separate thing as usual.
User avatar
kczx3
Posts: 634
Joined: 06 Oct 2015, 21:39

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by kczx3 » 06 Feb 2016, 17:21

That'd be cool to get our hands on for at least a starting point if anyone happened to have downloaded it at any point in time.
User avatar
TheDewd
Posts: 1094
Joined: 19 Dec 2013, 11:16
Location: USA

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by TheDewd » 06 Feb 2016, 17:24

lexikos wrote:... screenshot and download link are broken.
I was thankfully able to use my Google-foo and find the only existing mirror available on a Chinese AutoHotkey forum.
Forum Link: http://www.ahk8.com/thread-4311-post-30456.html
Download Link: http://www.ahk8.com/attachment.php?aid=1750

The user has indicated that the Ribbon demo is from fincs, but it's unclear if it has been modified from the original release version. I have tested the script and can confirm that it is a successful working example.

I'm attaching the files and screenshots to this post for future preservation. I must say that it looks quite lovely...
AhkRibbonDemo.zip
Main.ahk, Ribbon.ahk, PreviewRibbon.dll
(20.87 KiB) Downloaded 374 times
Windows 7 - Main
Image

Windows 7 - Menu
Image

Windows 10 - Main
Image

Windows 10 - Menu
Image
Last edited by TheDewd on 08 Feb 2016, 07:52, edited 5 times in total.
Image Bulldozer - Sokoban inspired game from 1994 recreated in AutoHotkey.
User avatar
kczx3
Posts: 634
Joined: 06 Oct 2015, 21:39

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by kczx3 » 06 Feb 2016, 17:34

Hail TheDewd
User avatar
joedf
Posts: 6486
Joined: 29 Sep 2013, 17:08
Facebook: J0EDF
Google: +joedf
GitHub: joedf
Location: Canada, Quebec
Contact:

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by joedf » 06 Feb 2016, 21:30

@Lexikos & TheDewd
Thanks! :)
User avatar
TheDewd
Posts: 1094
Joined: 19 Dec 2013, 11:16
Location: USA

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by TheDewd » 08 Mar 2016, 08:07

Here is an idea I had for an interface design, but it was eventually abandoned:

Code: Select all

; Auto-Execute =================================================================
#SingleInstance, Force ; Allow only one running instance of script
#Persistent ; Keep the script permanently running until terminated
#NoEnv ; Avoid checking empty variables for environment variables
#Warn ; Enable warnings to assist with detecting common errors
;#NoTrayIcon ; Disable the tray icon of the script
SendMode, Input ; The method for sending keystrokes and mouse clicks
SetWorkingDir, %A_ScriptDir% ; Set the working directory of the script
SetBatchLines, -1 ; The speed at which the lines of the script are executed
;SetWinDelay, -1 ; The delay to occur after modifying a window
SetControlDelay, -1 ; The delay to occur after modifying a control
OnExit("OnUnload") ; Run a subroutine or function when exiting the script

Menu, Tray, Icon, % ResourceTemp . "app-icon.ico"
Menu, Tray, Tip, Binster
Menu, Tray, NoStandard ; Remove all standard menu items from the tray menu
Menu, Tray, Add, Exit, ExitSub

Gui, +LastFound -Resize -DPIScale +HWNDhGui1
Gui, Color, % GuiColor := "F5F8FA"
Gui, Margin, 10, 10

Gui, Add, Tab3, x-100 y-100 w0 h0 -Wrap +Theme vTabControl, General|Advanced|Language|Theme|About

Gui, Tab ; Items below are excluded from any tabs
Gui, Add, Picture, x0 y0 w140 h59 vBtnMenuLogo gControlHandler, % ResourceTemp . "logo-small.png"
Gui, Add, Picture, x140 y0 w92 h59 vBtnMenuGeneral gControlHandler, % ResourceTemp . "menu-general.png"
Gui, Add, Picture, x232 y0 w92 h59 vBtnMenuAdvanced gControlHandler, % ResourceTemp . "menu-advanced.png"
Gui, Add, Picture, x324 y0 w92 h59 vBtnMenuLanguage gControlHandler, % ResourceTemp . "menu-language.png"
Gui, Add, Picture, x416 y0 w92 h59 vBtnMenuTheme gControlHandler, % ResourceTemp . "menu-theme.png"
Gui, Add, Picture, x508 y0 w92 h59 vBtnMenuAbout gControlHandler, % ResourceTemp . "menu-about.png"
Gui, Add, Picture, x0 y59 w600 h1, % ResourceTemp . "E1E8ED.bmp" ; Divider Line
Gui, Add, Picture, x8 y68 w584 h324, % ResourceTemp . "E1E8ED.bmp" ; Content Border
Gui, Add, Picture, x9 y69 w582 h322, % ResourceTemp . "FFFFFF.bmp" ; Content Background
Gui, Add, Picture, x8 y386 w584 h6 vCI, % ResourceTemp . "64B5F6.bmp" ; Content Indicator

Gui, Tab, 1 ; Settings > General
Gui, Add, Text, % " x" 16 " y" 76 " w" 100 " h" 100 " +BackgroundTrans", General

Gui, Tab, 2 ; Settings > Advanced
Gui, Tab, 3 ; Settings > Language
Gui, Tab, 4 ; Settings > Theme
Gui, Tab, 5 ; Settings > About

Gui, Show, w600 h400, Binster
return ; End automatic execution
; ==============================================================================

; Labels =======================================================================
MenuHandler:
    MsgBox,, MenuHandler, % "Menu Item: " A_ThisMenuItem "`nMenu: " A_ThisMenu
return

ControlHandler:
    If (A_GuiControl = "BtnMenuLogo") {
        MsgBox, Test
    } Else If (A_GuiControl = "BtnMenuGeneral") {
        GuiControl, ChooseString, TabControl, General
        GuiControl,, CI, % ResourceTemp . "64B5F6.bmp"
    } Else If (A_GuiControl = "BtnMenuAdvanced") {
        GuiControl, ChooseString, TabControl, Advanced
        GuiControl,, CI, % ResourceTemp . "E57373.bmp"
    } Else If (A_GuiControl = "BtnMenuLanguage") {
        GuiControl, ChooseString, TabControl, Language
        GuiControl,, CI, % ResourceTemp . "7986CB.bmp"
    } Else If (A_GuiControl = "BtnMenuTheme") {
        GuiControl, ChooseString, TabControl, Theme
        GuiControl,, CI, % ResourceTemp . "4DB6AC.bmp"
    } Else If (A_GuiControl = "BtnMenuAbout") {
        GuiControl, ChooseString, TabControl, About
        GuiControl,, CI, % ResourceTemp . "90A4AE.bmp"
    }
return

GuiEscape:
GuiClose:
ExitSub:
    ExitApp ; Terminate the script unconditionally
return
; ==============================================================================

; Functions ====================================================================
OnLoad() {
    Static Init := OnLoad() ; Call function on loading of the script

    ; Create resource files ----------------------------------------------------
    Global ResourceTemp := A_Temp . "\" . "Binster" . "\"

    FileCreateDir, % ResourceTemp ; Create a new directory for the files

    ICO_WINDOW := "000001000200101000000100200068040000260000002020000001002000"
    . "A81000008E04000028000000100000002000000001002000000000000004000000000000"
    . "000000000000000000000000FFFFFF00FFFFFF00FFFFFF000000000B0000002200000031"
    . "000000330000003300000033000000330000003300000031000000220000000BFFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF005C5D5D608F8F8FB99A9A9AF79B9B9BFF9B9C9DFF"
    . "9D9E9EFF9D9D9EFF9C9C9DFF9A9B9BF78F8F8FB95C5D5D60FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00A2A1A2FFB1AFAEFFE0E0E0FFD8D8D9FFDCDBDDFF989595FFAFAEADFF"
    . "CAC9C9FFD9D8D9FFB3B2B2FFA3A3A3FFFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "AEABA6FFDED8D3FFF0DFCFFFFEFEFCFFBD985EFFE3E0DBFFE6D8C6FFEDDAC4FFF3ECE4FF"
    . "D5CFC7FFAFACA6FFFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCBDA9FFD8D1C9FF"
    . "E6DED9FFBD9A64FFBD9B66FFFBFEFFFFF8F8F6FFF8F5F3FFF0EEECFFD2C7BBFFC3B39DFF"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0B2A0FFFAFAF9FFBC9861FFBF9E6BFF"
    . "BF9E6BFFBC9A64FFBB9760FFBA965EFFDAC7A9FFEDEBE6FFB7A993FFFFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00C5B39CD9E4DFD9EDDECEC1FBBD9B66FFBD9B67FFE2E3E3FF"
    . "E0D7CCFFD8C6AFFFC1A374FFF9FAFBFCBBA78BD8FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00C4B49CD3E9E0D5C5D4B897D7EBE7E2B9B9955EFFF0EFE9B5BA9761FFE7D4C1BB"
    . "DECCB2D4D5CABDC1BAA78BD3FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C4B49BD5"
    . "F0E8E1C2C1A06CFDDBCDB9D1EAEAEABEE8E7E3BDBC9B66FFBC9A66FFEAE8E4C0D7CDC0C4"
    . "BAA78BD5FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C4B39BD5EFE7E0C4CCAF83EA"
    . "B8955EFFB9945DFFBA9762FFBE9D6BFFBE9D6AFFBA9760FFD7CEC2C3BAA88BD5FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00C3B29BD5EDE5DDC5E8CFBABFE9E3DABFECF0F0BD"
    . "EEECE7B9BC9A65FFBA9963FFF0EDE8BCD6CCBFC4BAA78BD5FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00C3B29AD5EAE1D8C6DDC5AEC3E1D9CDC1E3EAEAC1E3E0D6BDB59158FF"
    . "E3CEB8BCE9E2D9C0D2C7B9C5B9A68AD5FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "C2B29AD3F5F3F1DFFEFEFDF9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDF9"
    . "E8E4DEDFB9A68AD3FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C2B096E4FCD8BCFF"
    . "FDE3D1FFFFEFE6FFFCE3D1FFF8D7BDFFF6DBC0FFF6E1C9FFF7DABEFFFBDABDFFBCA88DE4"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BEAB8ED4ECE2D6F2FFF4EDFFFFFBF7FF"
    . "FFEADAFFFDDEC5FFFBE0C8FFFEF0E2FFFEF0E2FFE7DBCDECBFAC8FD4FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00C3AE9236C1AC8F86BFAA8DBBBEAA8CC7BEAA8DC7BFAB8EC6"
    . "BFAB8EC7BFAB8EC7BFAB8EBBC1AD9086C3AF9236FFFFFF00FFFFFF00E0030000E0030000"
    . "E0030000E0030000E0030000E0030000E0030000E0030000E0030000E0030000E0030000"
    . "E0030000E0030000E0030000E0030000E003000028000000200000004000000001002000"
    . "000000000010000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000000000000000000000000000001000000060000000D00000012"
    . "000000150000001600000016000000160000001600000016000000160000001600000015"
    . "000000120000000D000000060000000100000000000000000000000000000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000000000003"
    . "0000000C00000017000000230000002F0000003A00000041000000430000004300000043"
    . "00000043000000430000004300000043000000410000003A0000002F0000002300000017"
    . "0000000C000000030000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000005000000160000002E000000405A5A5A7C7F7F80B4"
    . "909090DD9C9C9CFF9D9D9DFF9E9E9FFFA0A0A0FFA0A0A0FF9F9F9FFF9E9E9EFF9D9D9DFF"
    . "9D9D9DFF919292DD808080B45A5A5A7C000000400000002E000000160000000500000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000010"
    . "00000034828282B59C9C9CFFAFAEAEFFC3C2C3FFD3D2D0FFD0CECDFFC2C0BEFFB0AEACFF"
    . "9E9B99FF9F9B99FFABA8A7FFB6B3B2FFC0BEBDFFC8C5C6FFC7C6C6FFBEBDBCFFAFADADFF"
    . "9C9C9CFF828282B5000000340000001000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000169C9C9CEFA4A4A3FFC4C2BFFFD9D8D5FF"
    . "E9E8E7FFE1E0DFFFCFCDCCFFBFBDBBFFAEACAAFF9D9A98FF9E9A99FFA9A6A5FFB4B1B0FF"
    . "BDBBBAFFC8C6C5FFD3D1D0FFDEDDDCFFD6D5D4FFC3C1BEFFA4A4A3FF9C9C9CEF00000016"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "000000169E9E9EFFB7B4B1FFC5C4C2FFD4D4D3FFE6E5E6FFDEDEDEFFCCCACAFFBCB9B8FF"
    . "AAA7A5FF989593FF989594FFA5A2A2FFAFADADFFB9B8B9FFC4C3C4FFD0CFD0FFDADADAFF"
    . "D1D1D1FFC5C3C1FFB7B5B3FF9E9E9EFF0000001600000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000169C9C9DFFB4B1AFFFC5C3C2FF"
    . "DDD7D1FFECE0D6FFEDDFD2FFEDE5D9FFEDECE6FFEBF0F0FFE7E9E5FFE7E5DFFFE9E4D8FF"
    . "EAE0D3FFECDECEFFEADBC8FFE6D8C7FFE7DFD5FFDAD7D2FFC4C1C0FFB4B2B0FF9C9D9DFF"
    . "0000001600000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00000000169D9D9EFFD6D2CDFFEEE2D7FFE1D1C1FFD5C0AEFFCEBDAEFFC7BEB4FF"
    . "C9C7C2FFCCD1D1FFCCD0CCFFCDCBC5FFCCC7BEFFCCC3B8FFCCBFB1FFCBBCA9FFD2BFA9FF"
    . "DBCCBBFFE6DBCDFFEFE8E2FFD9D4CDFF9C9C9CFF0000001600000000FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000016C4BBB0FFF9F4EEFF"
    . "D1C6BCFFC7B8A9FFC3AF9CFFC5B4A3FFC7BFB5FFCAC9C6FFCED5D8FFCFD5D3FFD0CEC9FF"
    . "D1CCC1FFD3CABEFFD3C7B8FFD2C3B1FFD6C2AEFFD7C7B7FFDACFC3FFE4DDD6FFE6DCD0FF"
    . "B2A693FF0000001600000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000015C8BEAEFFF6F1EBFFD0C5BAFFCCBCAEFFCAB6A4FFCEBDADFF"
    . "D2CAC2FFD5D7D7FFBD9960FFC8B390FFD9DAD7FFD8D4CBFFD8CFC5FFD9CDBEFFD8C9B7FF"
    . "D7C6B0FFDBCBBAFFDDD1C5FFE3DDD6FFE3DBCFFFB7A891FF0000001500000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000013C9BEAEFF"
    . "E6E0DBFFEFE5DBFFE2D4C5FFD8C4B2FFD5C5B8FFD0CBC6FFBA9962FFF9D9B6FFBC9A65FF"
    . "D9DDDEFFD9D7D1FFD8D1CAFFD9CEC2FFD7C9B8FFDDCAB6FFE1D3C2FFEADFD3FFF3EEE7FF"
    . "D4CBC0FFB7A992FF0000001300000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000012CDBFACD7E3DDD8EDDCD3C8FFE0D3C4FFE4D1BFFF"
    . "EBDDD1FFB99862FFF6D3B0FFF5D3B1FFB99A66FFBB9A66FFBB9A65FFBB9A64FFCCB38AFF"
    . "E5D4BFFFEADAC7FFE6D8C8FFE3DACDFFE1DBD6FFCFC6BAEDB7A488D70000001200000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012"
    . "CEBFACD6E5DED7CBDFD2C5CADCCBBBDAD9C6B6E9B99862FFF6CEAAFFF2CDA9FFF2CCA8FF"
    . "F3CDAAFFF5CEAAFFF5CEAAFFEDC7A2FFDFBA91FFC1A06CFFCFB89AFEDDCFBDE9E1D5C8DA"
    . "E5DED7CACEC3B5CBB7A387D60000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD7E6DFD8CEE0D3C6CADFCCBBC8"
    . "DBC4AEC6B79761FFFBE1CBFFF2C8A2FFF2C8A2FFFAE0CBFFFBE0CAFFFAE0CAFFF8D7BDFF"
    . "F4CBA6FFF2C8A3FFC4A271FFD1BEA2D6E1D6C8C8E6DFD9CACFC4B6CEB8A487D700000012"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "00000012CEC0ACD8E6E0D9CEE0D4C7CCDDCBBACBDCC5AFC9DCCAB9C6B69560FFFCE3CEFF"
    . "F4C5A0FFB89964FFB89862FFC8A372FFD1AB7EFFE2B88FFFF5C8A4FFE8BC94FFC4A87DF2"
    . "E2D7CAC9E6DFD9CBCEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CC"
    . "DECCBACCDBC4AECADAC8B7C9DBD5CDC6B89761FFFFE7D6FFB99762FFDEE1DCC7D6CBB6D5"
    . "D4C6AFD5CBB591E5C7A676FFF4C39EFFB99864FFE1D6CAC8E6DFD9CBCEC4B7CEB8A487D8"
    . "0000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECBBBCBD8C1A9CDC0A271FCBA9964FF"
    . "D5CFC3D4B8955DFFC8B18CEFE3E4E2C7E1DDD5C8DED6CCC9DCD0C2C7CDB695E0D2AC7EFF"
    . "BA9965FFDFD2C2CBE7E0D9CBCFC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CE"
    . "E0D4C7CCDECCBBCBD9C2ABCBBA9A66FFD2B488FFCDBFA6E1E0E0E0C6DFE3E3C9E0E0DCCA"
    . "DFDAD2CAC6AD85F0B99863FFD3BEA5D5BA9A67FFC1A273FBE0D2C3CCE6DFD9CBCFC4B7CE"
    . "B8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECCBBCBDBC5B0C7B99965FF"
    . "F4D9B9FFC7A879FFCABCA1E7D3CFC0D9D3CBB8D9DBDAD4C8B99863FFEFD0B4FFB99965FF"
    . "DAC6B2C6DFCFBDC7E3D7C9C9E7E0D9CCCEC4B7CEB8A487D80000001200000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8"
    . "E6E0D9CEE0D4C7CCDECBBBCBDCC5B0C8C3A67AF1E8C8A3FFF5D7B6FFE2C199FFD1B183FF"
    . "C8A575FFB99863FFB99965FFF5D8B7FFEECDB0FFB79661FFDCCCBBC9E2D6C8CAE7E0D9CC"
    . "CEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECCBACCDCC5AFC9"
    . "D3BCA0D6C3A271FFF1CEAAFFF4D1AFFFF4D0AEFFF4D0ADFFF4D1AEFFF3D1AEFFF2D0ADFF"
    . "F3D0ADFFEECDAEFFB6955EFFE2D7C9C9E6DFD9CBCEC4B7CEB8A487D80000001200000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012"
    . "CEC0ACD8E6E0D9CEE0D4C7CCDECCBACCDAC4ADCBDDCAB8C8CFBCA0DEBF9D6AFFDFB98FFF"
    . "F1D4B7FFFBE3CFFFFBE3CFFFFAE3CFFFF2CBA6FFF2CBA6FFF8E4D2FFB6945DFFE3D8CAC8"
    . "E6DFD9CBCEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECCBACC"
    . "DCC4ADCBDCC8B4CADFD7CCC8D9D1C4D2C5AE86F1B7945DFFB7955FFFB99762FFB89864FF"
    . "F5C8A2FFF8E3D3FFB5955EFFE0CFBDC5E3D7C8C9E7E0D9CCCEC4B7CEB8A487D800000012"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "00000012CEC0ACD8E6E0D9CEE0D4C7CCDECCB9CCDAC2ABCBDAC6B2CCDCD3C5CBDFDFDACA"
    . "E2E6E6C8E0E4E4C7E0E1E0C6DEDDD6C4B99761FFFBE5D9FFB6955FFFDCC7B0C5DFCEBAC9"
    . "E2D5C6CBE6DFD9CCCEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD7E5DFD8CEDDD0C4CC"
    . "DAC6B5CCD5BCA5CBD4BFA9CCD6CBBDCBD6D5CFCBD9E0E0CBD8DDDACBD7D6D1CAD8D4CAC8"
    . "C2A87FECB6925AFFD4C3AEC6D6BFA7C9D9C7B2CBDED1C2CCE3DCD6CCCEC4B6CEB8A487D7"
    . "0000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF0000000013CEBFACD7E2DBD4CED7C9BBCEE6DBD2DEEBE3D9EBF9F8F6F6FFFFFFFF"
    . "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF8F7F6"
    . "EDE8E0EBE9E2DADEDDD4CCCECAC0B3CEB7A287D70000001300000000FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000014CABCA8D8E1D9D0EA"
    . "FEFFFFFFFDF4ECFFFDEEE4FFFFF2E9FFFEF0E7FFFDE9DBFFFBE2D0FFF9DCC6FFF8D6BBFF"
    . "F7D6BBFFF6DAC1FFF6DEC6FFF5E1CAFFF8E7D6FFF9E8D7FFFCF2E8FFFFFFFFFFD3CABBEA"
    . "B5A285D80000001400000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000012C5B094FDFFFFFFFFF6D0AEFFF6D5B9FFFAE0CCFFFDECE0FF"
    . "FEF1E9FFFDEBDEFFFBE5D3FFF9DECAFFF8D8C0FFF7D9BFFFF6DDC5FFF6E0C9FFF6E3CDFF"
    . "F6DFC8FFF5D8BBFFF3D0B0FFF6D1B0FFFFFFFFFFBFAA8CFD0000001200000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000CB8A286D1"
    . "FFFFFFFFF7D1B0FFF7D6B9FFFAE1CCFFFDECE0FFFEF1E9FFFDEBDEFFFBE5D3FFF9DECAFF"
    . "F8D8C0FFF7D9BFFFF6DDC5FFF6E0C9FFF6E3CDFFF6DFC8FFF5D8BCFFF4D1B1FFF7D2B1FF"
    . "FFFFFFFFB8A387D10000000C00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000003BAA78AADD0C3B1DCFFFFFFFFFFF8F0FFFFF0E6FF"
    . "FFF3EBFFFFF1E8FFFEEBDDFFFBE3D1FFF9DDC7FFF8D7BDFFF7D7BCFFF6DBC2FFF6DEC7FF"
    . "F6E2CAFFFAE8D8FFFCEBDAFFFFF6EDFFFFFFFFFFD0C3B1DCBAA78AAD0000000300000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000"
    . "00000002B9A58970B9A487BFD7CABAE1E4DED4EBF6F6F3FAFFFFFFFFFFFFFFFFFFFFFFFF"
    . "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F5FAE5DFD5EBD7CBBBE1"
    . "B9A487BFB9A58970000000020000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000000000000001B29F8434"
    . "B7A3866DB8A38697BAA587BEBAA586CBBAA586CBBAA587CABAA587CABAA587CABAA587CB"
    . "BAA587CBBAA687BEB8A38797B7A3866DB29F843400000001000000000000000000000000"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FF00007FFC00001FF800000FF800000FF800000F"
    . "F800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000F"
    . "F800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000F"
    . "F800000FF800000FF800000FF800000FF800000FF800000FF800000FFC00001FFF00007F"

    PNG_LOGOSM := "89504E470D0A1A0A0000000D494844520000008C0000003B08030000009E"
    . "D192C100000159504C5445FFFFFF59ADEBD0E0E3D2E2E45CAEEBFBFCFDD6E4E75FB0EBF6"
    . "F9F961B1EB69B4EAD9E6E9FEFEFEFDFDFEEDF3F4E1EBED7FC0EF5DAFEBDCE8EAEAF1F363"
    . "B2EC6CB5EAF1F6F66DB7EDCADEE4F9FBFDE9F0F1E6EEF0F7FAFBEFF4F5E3EDEEC8DCE3E2"
    . "F1FB73BAEE9CCAE7D4E3E6A8CFE698C8E6ACD0E5EEF6FCEBF5FCF4F7F8C2E1F77ABDEFDE"
    . "E9EC71B7E992C6E88AC2E7F1F8FDD8ECFAD1E8F9B9DCF5AED7F597CCF290C8F066B3EC8E"
    . "C4E7CEDFE4E7F3FCB5DAF6A5D2F488C4F070B8ED83BFE8A4CEE6BFD9E5CDE6F9BBDEF7B2"
    . "D9F577BCEE6AB5ED96C7E886C1E87FBDE8D8E5E7A0CCE6B1D3E5B8D5E4E9F4FCC7E3F8BF"
    . "DFF7ABD6F49FD0F383C2F07CBEEFB0D6EE7CBCE9BAD7E4F2F6F8C5E2F79BCEF394CAF2CA"
    . "E1EFBDDBED83C0ECB4D4E5C5DCE4C6E0F1A3D0EFCBE1EB9FCDEB8AC3EA79BBE982BEE8AE"
    . "D2E6C2DAE4DEEFFBD4EAF9E5EFF4DAEAF3E1EDF29CCCEEA2CDE8C0DDF0D2E5EFC2D5005B"
    . "000005884944415468DEED9667575341108677E6B6F4DE1B090102241A4312212004A588"
    . "14E96241B0F7FEFF3F38B37BA378544E02F1F825CF39909DCDBD3BB3EFCECC460C183060"
    . "C08001032E48B2544A8A0B303E6FCD5F13FDE3DA4E7321088473E5E152BEC777E300302F"
    . "FAC5785387B3141A25D13DF3C0CC8AFE702B02BFD1EC3A9C2980F87580C59021FAC07B5B"
    . "96F8C95A75A6FAFA8A1398C82DD11D01809A03601443E2F2187176BDF738811D8E465D40"
    . "6C8B6EC80304C473520631232ECD24005CFFA025AA4ED716DAB4AED2A4551253057D6152"
    . "9CCB0D807A6C14E039A24F5C1A3AEF400C710600D6CC8A3F97CEF9DD1ADE2373F1A30EC4"
    . "F955BB0030EE7641C18B981297A60CF0AE8837C96FF06745383E03A5C13030F9730B11A0"
    . "E0580458CAF4459902347C885500D8CB69A64328F6C91E1B03C2D532CFF1B203F0301705"
    . "97914274884BB377C3E3C70497D03122FA7FD42B441278D515B9779366FF5EB58F0026BF"
    . "D09FC74453F40537B2067124D47DF0C022FB90CC541819C71FDB531C40E7F72CB0E60E17"
    . "478E455F3091B218AE220E1DE7EFCED6E6CA402C8710311643C2F4FC319820FC4244F485"
    . "5CBA00B25344A143A046610C47834BE9A2F67CC5B92344693EB89F1436B3FBC185BC777C"
    . "6A0F6CD4F5E4AD97ADE9A62CBFE48ABE2D3CBB91859EEF890C1047763056F9FA5C5E6435"
    . "1C216397BE7DC87DCD1338D307AFAD92D11022F60688353435D4C2615F3800CCF45D3E69"
    . "D296DEE4FF3D52032281F8781A98723DE546C4360DA7542B09D0E2C49C9078D9A9935CC6"
    . "3668104DA0CD6B5034556637A6D898143DB2C48B23A22FB9BD1601E24E0B3144DB0FA64D"
    . "FC44F623D30532A7435ED975890721341DCB34D8449B317EB0F495C2F31B224EAA4AA18F"
    . "35B3B77B8257BFA2AAC6C4D35764DD0E3B66E9E384269FD2E70BD5FFA8CCB394B972F745"
    . "2EB6863A5ED5110E000A46A845C1A0360E00ABC00CF5DA9AB9985EA97E32A121DE01D03F"
    . "797668F2194DCED1E788139C00165961312EB57B49632DC3C1BC455C67BDD8FFB29F336D"
    . "860E1C9819158CEF565D740FF7DBD7B4B84C88ACFF09BBAF349514286523719478D9E40A"
    . "302E2E7C31A7BC4D746EDCA738A643E403A254521F0A020C274EE729D9BA87D7AFD2066D"
    . "33C917139756041143241B87437B6D93590A00C41B32CE9C0A206137C53D3EDD7B00C129"
    . "0FE24B997948A66447744F1CA4B621DB1CE76086B8DBF0B91C00337628DBE2138A3B7E77"
    . "96A5A344B9B6CFC1A8BE9DB740E2AA892C0E39413EB20892604DC4C2A24BA65503F6DB66"
    . "9D9D6FAA39BC6F496158F8CFB835CDB118EB3A4BD7BA215DBEE55CF32CA9589C57C32286"
    . "9BB2F6AC04A71F71929FA860D7C14494E39CB232713EEE0D569DA4082861F036C0756427"
    . "792384144C752648C6827CD15B0B8024DAC274E5665B196B7CC8532F3638F17AF88161A9"
    . "634AABF6CA0B37D939DC19DA70AA8C9129A95781D85EC74DB029DCE0A766CA40947995F6"
    . "C8B0CA13BB0165E9CC1413A24B746EE2A35B744CDE77BB11363E927385AE4B6170CC3641"
    . "6F57EDF4B07633DF7450AC4E7A9FC10F0E82AADE34AFF05490A864442FC130CE6935B2DE"
    . "17F1082481FC81AA692A53E2E53274708D86D21A8E0213692427DCAD7627B0BAA3C067AC"
    . "B2D0733FE5EBA5074F1EC0590A35BE9A0E577557F5A8623C55BFD4DD4B56746D0B731B51"
    . "2E8FF2B3D3164ABE44835786DD6937126F5E3975D7493D1DC24D6774489ECD45286DB45D"
    . "A028D7731A2B6C88309E2126A84C2489B74F2AFC08A3A5BD19B429FA3C29FC819B673CE2"
    . "42B093AD372323A709DB0B6DCA819250C64D6BD333868CC0FFD3633165D0B4B2B594978E"
    . "C4DFF926EC7173455C0C9F1BCF623AE46411CD1C8DEE6BB6AD997E1AF8D6E5D6D313F6C6"
    . "C3A6E60E1B6A9C0D696856B25E7E699DE62E48D2E72F7624F679C5B978938647FC6B0C47"
    . "2C9B9D30C4800103060C1830E07FF31D4B0D97F3597EE48A0000000049454E44AE426082"

    PNG_MENU01 := "89504E470D0A1A0A0000000D494844520000005C0000003B0803000000C1"
    . "C01D880000013E504C544564B5F6FFFFFFE4F2FD5E5E5E4444445FA5DC48555FBFC0C0FC"
    . "FCFCF1F2F3444546F5FAFEE2E3E4C5E3FBEEEFF0B6B7B7506F89495762464C51FCFEFEC3"
    . "DDF162B1F0E7E9EADCDCDCC2C2C2495864ACD7FA7ABFF773BCF7F5F6F65C9ACC4E697E48"
    . "4949ECF6FDE9F5FDF2F7FCD1E9FC8DC9F85FA4DC5B97C7588CB64F6E8645494DBBDEFBF8"
    . "F8F99ACFF988C6F887C6F868B7F696CAF463B4F4E2EBF162B1EFECECEC60ABE760A9E2E1"
    . "E1E165A9DFCCCCCCC5C6C8B1BEC87890A29A9B9D52769451759184888C5A758C4E6A807E"
    . "7E7E47525AF7FBFEE2F0FCA5D3F87CC1F76AB7F6D2E1EC8CC1ECCEDDEADFE4E9C4D8E9E0"
    . "E4E8B3CEE3C1D0DCB8C6D294B2C96E9FC6B7BEC3BBBFC25A91BE6596BDABABAC8A9AA784"
    . "97A7A4A4A55582A5537A9A6A81937D848B50718B757C825D71827575754C61724F5B665F"
    . "5F5F48545DB7A33045000001964944415458C3ED92D752DB501445CF0661C972906D1CA4"
    . "C8053038D87120F4122074D27B42EF1DFEFF07D8BE8C0D0F3CDC5766CE7AD09DD9E7EE35"
    . "A32389A2288AA2288AF224239554AEFFAD481BC83B1EA922D354FFA304BC302AA48C329F"
    . "4C0A62C5EB1C7ECFCF6E2FB3E1A6D3ED3D54CDCF50FE22F190B86E807FDDBC8B00E7E30D"
    . "797B87D850C6A193EDBD7ED368F466321D6D61887D236F253C4E109E8974621DE9AABDBC"
    . "8052DF31CF49365EBDEC64313C45B06BE42631AAF779CC6DC8D78F3F9D89D2AABD7C0451"
    . "3D0F60940DCFF3F802C98D5F70A7296F2520133757328CC5388F95496BF9174CC5637F4B"
    . "E8EB66C3F77DCABB8A491C0C50DE4CE046584F0C4A050DE66AF63B1FC08AEC04466E1A94"
    . "CB18A6286F3A78AC06C94D29E6922E3FAD77612FFF0CEF5B2547B9D970C1C8E507407933"
    . "A1EA3B22EE7DAF6B6D6D018BD366302C16FC8F8686C2B44F39F93068E4C5126613D24C28"
    . "973FD8FA84CBA5C6EF181D99C1424D2CA8C57EFD36332E5987F448967299A93B0969250E"
    . "97B0E46462A7CA51D589EF07CBA2288AA2288AF24CB9037F962859622493D30000000049"
    . "454E44AE426082"

    PNG_MENU02 := "89504E470D0A1A0A0000000D494844520000005C0000003B0803000000C1"
    . "C01D880000015C504C5445E57373FFFFFFFAE7E74444445E5E5EFEFDFDCE6C6CFDF6F6C0"
    . "BFBF5C4B4BFCEEEE7A5353614C4CDEDEDE504747E2E2E2D16C6CC06767F5CACAF0B2B2FB"
    . "FBFBF9F6F6F4F1F1EFEFEFEBE6E6EB9595E78080D66E6EC46969BD67675F4B4BFBF3F3F2"
    . "F0F0EBEAEAE4E3E3F7D8D8CAC9C9C2C2C2F3BDBDB7B7B7E88686E57575BA66665C5C5C8C"
    . "59598659594C4646474545FBFAFAFAF9F9F5F5F5E9A0A0EC9898969696E98D8D807F7FE0"
    . "71716B6B6BAB62627D60608156565B4A4AFDF8F8F8EDEDFAE8E8F0E1E1E8E0E0F8DCDCE8"
    . "D3D3DAD2D2EFD0D0ECC8C8E3C6C6BDBDBDBAB4B4C4B3B3ABABABA6A5A5EEA4A4ABA0A0A0"
    . "9D9DEA9191D78E8EE988888A8686897F7FE678788176767575756E6E6ECD6B6B736464A2"
    . "5F5F9C5D5D574949FBE9E9EFE9E9D0CFCFF3C2C2B2B2B2B5AEAEC49F9FA48D8D898989A3"
    . "87879D7D7DE67A7A907979B36E6E6D6D6D656565655C5C925B5B7758586D50506D4F4FE2"
    . "EECD3D000001D74944415458C3EDD2774FDB501405F07BF270123B761267904D66332024"
    . "404A58A1D0022D1DB4A52D9D94EEBDDBEF2FF5DA969207321F00E9FDFE78967CEF3992AD"
    . "478AA2288AA228CA59060C62014033120F89B6D1266A635B1E85F2FC08BDE2E3F24E2854"
    . "3FE4572C370E9D27870C9EB80DE19B16161F5013CB714AE24097466814B83CA6D340D3F6"
    . "DE2C7CB379BBD59AB2C7A17324B08256C969988A44EEA1561AA2714C3BF8F97B32CA56F1"
    . "D12B37F049FCDDE8DBCEF668141C87C8D7E3D035717569DE2D0F12A5F182B616FF7CD5B2"
    . "A23819558F90F9EE94B75111EB4405DEBE742321877CDDC57D338947ABDE1E9FCF9E37B1"
    . "32C0C1A634AA9CEC235CE0F21CAC2831DE4B69DA480A919F3A1C8D756FAF730573F621DE"
    . "ED63AD2B8DA6A3F9697C2EC7F421AA2631675B082185C8475EAB84C3E14C6AC3DB6BC212"
    . "71DA8A655F8BE264C4E53440B55CD33B651C71AAE36D931CF291C49D6824721BCB05FE8B"
    . "D70DA4D74CA2B79AF6FE441E7139ED02359D5FA676EBE5E1AAFBCFDB3409F9E0E9D32E5F"
    . "5E582F03C042F6D65CAFE8DC4EFCE84A23B73C9F06DF16FA60A596F67E1503605F8252C8"
    . "8F2966F99C1526CD08D1DF9C77BFAF24847D6AC4E514EF099D1FC733FDDEBF386F337B1C"
    . "521445511445B978FE03BCE03C44B2DCC1970000000049454E44AE426082"

    PNG_MENU03 := "89504E470D0A1A0A0000000D494844520000005C0000003B0803000000C1"
    . "C01D880000011A504C54457986CBFFFFFFE8EAF6444444FCFDFD4D4F5B7783C64C4E58E2"
    . "E2E35E5E5E484849717CB7464647F8F8FCEEF0F8BFBFC0F0F2F9F0F0F2ECECECDCDCDD81"
    . "8DCE5B617E575C77555A71494A52F5F5F5E8E8EA737FBEB7B7B7F4F5FAF9F9F9EEEEEEA7"
    . "B0DD97A1D78691D07581C2656E9A505050D6DAEFE1E2E6CACEE3B6BDE29CA5D97D8ACD6A"
    . "74A76770A085868A47484EF7F7F7DADDF0E3E4ECCDD1EBD6D8E5A3ACDAC4C5C7C2C2C2B5"
    . "B6C19BA0BA82828480808048494FEEEEF0CCD1EBC4CAE8B9BFE2B1B8DF9FA9DAD6D6D6C5"
    . "C8D48F99D38D98D28C97D2CACACABCBDC0ABABAB6C76AB6B75A9A4A4A59D9D9F8C8F9E98"
    . "989861688E5D648577787E6265787575754F526152545FF1F2F3DDE1F2D2D4E1727AA37E"
    . "82964F52629129EA8A000001A04944415458C3ED92D94EDB501445CFCEBD4E427062C8E0"
    . "0CCEDC94A1100AB4500874A42D2DF33CF3FFBFC1B1231D8B87F81DE9AC87E45EEDBD972C"
    . "CBA4288AA2288AA2BC26857D8A28A030BEE7FBFC974FF14F6FAE650BDF896650262A6346"
    . "6A92857DA637513E354DCC07747019DDB119B03C9BA15F16F39BD9FF1596BF7FC7F2624D"
    . "6A9271DF6B36A70E93E5DFB083E611DF1B0D9C8EE5051C1BA77AEBC772A94916EEABBE3F"
    . "9D285FCACF9BF57A25948FD0790CE57F51772F384AC772A949C6FB2F0B9F8812E55D9C38"
    . "8B58E1F26C6D015EC0F21E4AB91F009662B9D424E3BDB5D64F96AF21E4DF80E5BBE53B9C"
    . "B6B2993F283A1BBF57914B47F23E1A35A9C519EF8D3189F2BE9DF53CAF63AF58FE913650"
    . "ACF33B6F6185865F59708F9D80BAD8AB492DCEA2FD24A277D65DC4C16EB5BA85B32094D3"
    . "03C0F29FB09FE72C0BBA7C58B3183DC735C9A2FDFE4439B3B58EEB4AF89D95CE23797F35"
    . "94D376A9DD6E34DD346DEFD5DBA59119A4A42659B47F9AF4F08E612A8E59E6F3B271C861"
    . "390539C3721A38AE9BF1F930BCC9B9374322A94936DE1F92A2288AA228CA9BE305DC7033"
    . "0925A0E46B0000000049454E44AE426082"

    PNG_MENU04 := "89504E470D0A1A0A0000000D494844520000005C0000003B0803000000C1"
    . "C01D88000000B1504C54454DB6ACFFFFFFE0F2F15E5E5EF1F2F24444444BA59D45585644"
    . "4C4B44454566C0B7455553DCDCDCC1C1C1FCFDFDE2E2E2BCE3E055B9AF476C68F7FAFABB"
    . "DDDAB6B6B64A9B9347706CE8EAEA78C8C050B8AE4CB4AA4A978F767A7AEEF4F3E5F2F1B4"
    . "DCD89FD8D2C0CACABCBCBC72908D47736FF5F5F5D7ECEAC5E7E4E2E3E3DDDDDD8DD0C982"
    . "CCC5B2C3C2ACBDBB6DC3BAB0B0B04CB0A7A1A1A14BA1998B9291498C8649837E6E737368"
    . "72714F7270545C5B711BA4F8000001044944415458C3EDD0C96E83301485E17B011B030D"
    . "4DA1490843C6A6F33CB7EFFF603D1483BAAA84C826D2FD36B68EC42F64124208218410FF"
    . "58F1AF35391C1285EC106E30C791E64479CACB6EEAEB6633E274BBADDE1D7635E2473E4A"
    . "A3C9C49D22581574CB7C1CB513F5F5F6C55E9024E5DFB89BCC66DAC9CE1F4B1A2F3DC4ED"
    . "44BD9DB06770E0E74EC7978837370CD926DBE5E97D7A15B5D38078AD89C7719C90E3BDF2"
    . "E79C3FF02C761A127783C045BCB905887FC7CFAB8542DC4E83E2BA68DF5C13216E2EAE17"
    . "7706713B0D8B53D8BD7958C7D7CCD50E713BED270E671AF107F68212F176A2FE9E9421F0"
    . "153ED6CAAF6F3025DFD08B3205A9A89B84104208210EDB0F0C040FE58C180AE200000000"
    . "49454E44AE426082"

    PNG_MENU05 := "89504E470D0A1A0A0000000D494844520000005C0000003B0803000000C1"
    . "C01D88000000F9504C544590A4AEFFFFFF444444494B4BF2F2F2ECEFF1FCFCFCF4F6F6B6"
    . "C3CA95A8B1F7F8F8EFEFEF96A9B38B9DA74C4E4FECECECBFBFBF666E7154585A5154564F"
    . "4F4FFEFEFEF9FAFAF5F5F5E9ECEEDCDCDC82939B7B8A9176848B7582898181815C63675E"
    . "5E5E464747F2F4F5E4E8EAE0E5E8D1D8DCC2CDD2A2B3BBB8B9BAE2E2E3D7D7D7D4D4D5BC"
    . "C8CECACBCBC2C2C2ABBAC2BCBCBC9AACB5ACACAC8DA0AA899BA484959D9999997D8C9389"
    . "8D8F88898A848484727E846D787E76767671717165696C5F66696363634F5253474849ED"
    . "F0F2E9E9E9DCDFE1D5DCE0D9DDDFCDCDCEC8CACCAEBCC3ABB3B8A3ABAFA0A8AC9D9E9E90"
    . "9496797B7B575C5F5B79F117000001524944415458C3EDD2594FC2401486E1F34DCB80AD"
    . "680BB20BC8BECBBEEFE0BEEBFFFF31CE1013EE4CC02B93F35C34A74DF3667A52628C31C6"
    . "1863BFCA224B8A070859F9929A7CD1B08CFAD4E0C529D129BC54C04E910ED5848DCF5DDC"
    . "29C7701EA73A64ED51E245C72FFC2A7E7EE67B72106EB5E6333AD03D52280F75FC2ABD94"
    . "72431626E2EB03F6741FA7A40B33B35A25E83027E18AC8455C1DBF2E44431D51822992FA"
    . "D4CB7D5CBD06D3A083F9F01E2C62DC55F18885C8C06DA2A2333758C4FF1CCF436B24F55A"
    . "B6573646EAE41BF5DCC27A9845D04F6DDC1E1B6F874CC7716CE9EA785F5D167D2FC6FA83"
    . "6C11CF21D55353EDD878111D239D2E63D0DBED1CF645A20E79970B6164A8AE7CC84B4C02"
    . "47C63D98BB44CF88CD3C00CCC6DAF0D35BD50AC752624AF45A8D586A4A1EBBF3A0D0FF57"
    . "4204D52484918EABBBCB402613B8A4DDB4FD99BAC220C618638CB1FFEE1B11371D973FC4"
    . "00000000000049454E44AE426082"

    BMP_FFFFFF := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000FFFFFF00"

    BMP_E1E8ED := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000EDE8E100"

    BMP_64B5F6 := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000F6B56400"

    BMP_E57373 := "424D3A000000000000003600000028000000010000000100000001001800"
    . "0000000004000000000000000000000000000000000000007373E500"

    BMP_7986CB := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000CB867900"

    BMP_4DB6AC := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000ACB64D00"

    BMP_90A4AE := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000AEA49000"

    FileWriteHex(ICO_WINDOW, ResourceTemp . "app-icon.ico")

    FileWriteHex(PNG_LOGOSM, ResourceTemp . "logo-small.png")

    FileWriteHex(PNG_MENU01, ResourceTemp . "menu-general.png")
    FileWriteHex(PNG_MENU02, ResourceTemp . "menu-advanced.png")
    FileWriteHex(PNG_MENU03, ResourceTemp . "menu-language.png")
    FileWriteHex(PNG_MENU04, ResourceTemp . "menu-theme.png")
    FileWriteHex(PNG_MENU05, ResourceTemp . "menu-about.png")

    FileWriteHex(BMP_64B5F6, ResourceTemp . "64B5F6.bmp") ; General Blue
    FileWriteHex(BMP_E57373, ResourceTemp . "E57373.bmp") ; Advanced Red
    FileWriteHex(BMP_7986CB, ResourceTemp . "7986CB.bmp") ; Language Purple
    FileWriteHex(BMP_4DB6AC, ResourceTemp . "4DB6AC.bmp") ; Theme Green
    FileWriteHex(BMP_90A4AE, ResourceTemp . "90A4AE.bmp") ; About Gray

    FileWriteHex(BMP_FFFFFF, ResourceTemp . "FFFFFF.bmp")
    FileWriteHex(BMP_E1E8ED, ResourceTemp . "E1E8ED.bmp")
}

OnUnload() {
    Global ResourceTemp
    FileRemoveDir, % ResourceTemp, 1 ; Clean up temporary files before exiting
}

FileWriteHex(Input, Output) {
    File := FileOpen(Output, "w")

    Loop, % StrLen(Input) // 2 {
        File.WriteUChar("0x" . SubStr(Input, (2 * A_Index) - 1, 2))
    }

    File.Close()
}

WM_CTLCOLORBTN(wParam, lParam, Msg, Hwnd) {
    Static Init := OnMessage(0x0135, "WM_CTLCOLORBTN")
    Global GuiColor
    return DllCall("Gdi32.dll\CreateSolidBrush", "UInt", "0x" . GuiColor, "UPtr")
}
; ==============================================================================
Attachments
BinsterScreenshot.png
Screenshot
Last edited by TheDewd on 29 Sep 2016, 08:55, edited 1 time in total.
Image Bulldozer - Sokoban inspired game from 1994 recreated in AutoHotkey.
User avatar
kczx3
Posts: 634
Joined: 06 Oct 2015, 21:39

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by kczx3 » 08 Mar 2016, 10:26

Few minor tweaks :)

Code: Select all

; Globals ======================================================================
#SingleInstance, Force ; Allow only one running instance of the script
#Persistent ; Keep the script permanently running until terminated
#NoEnv ; Avoid checking empty variables for environment variables
#Warn ; Enable warnings to assist with detecting common errors
;#NoTrayIcon ; Disable the tray icon of the script
SendMode, Input ; Method for sending keystrokes and mouse clicks
SetWorkingDir, %A_ScriptDir% ; Set the working directory of the script
SetBatchLines, -1 ; Run the script at maximum speed
;SetWinDelay, -1 ; The delay to occur after modifying a window
SetControlDelay, -1 ; The delay to occur after modifying a control
OnExit("OnUnload") ; Run a subroutine or function when the script exits

Application := {} ; Create Application Object
Application.Name := "Binster"
Application.Version := "0.1"

Window := {} ; Create Window Object
Window.Width := 600
Window.Height := 400
Window.Title := Application.Name
; ==============================================================================

; Script =======================================================================
Menu, Tray, Icon, % ResourceTemp . "app-icon.ico"
Menu, Tray, Tip, % Application.Name
Menu, Tray, NoStandard ; Remove all standard menu items from the tray menu
Menu, Tray, Add, Exit, ExitSub

Gui, +LastFound -Resize -DPIScale +HWNDhGui1
Gui, Color, % GuiColor := "F5F8FA"
Gui, Margin, 10, 10

Gui, Add, Tab2, % " x" -100 " y" -100 " w" 0 " h" 0 " -Wrap +Theme vTabControl", % "General|Advanced|Language|Theme|About"

Gui, Tab ; Items below are excluded from any tabs

Gui, Add, Picture, % " x" 0 " y" 0 " w" 140 " h" 59 " +AltSubmit vBtnMenuLogo gControlHandler", % ResourceTemp . "logo-small.png"
Gui, Add, Picture, % " x" 140 " y" 0 " w" 92 " h" 59 " +AltSubmit vBtnMenuGeneral gControlHandler", % ResourceTemp . "menu-general.png"
Gui, Add, Picture, % " x" 232 " y" 0 " w" 92 " h" 59 " +AltSubmit vBtnMenuAdvanced gControlHandler", % ResourceTemp . "menu-advanced.png"
Gui, Add, Picture, % " x" 324 " y" 0 " w" 92 " h" 59 " +AltSubmit vBtnMenuLanguage gControlHandler", % ResourceTemp . "menu-language.png"
Gui, Add, Picture, % " x" 416 " y" 0 " w" 92 " h" 59 " +AltSubmit vBtnMenuTheme gControlHandler", % ResourceTemp . "menu-theme.png"
Gui, Add, Picture, % " x" 508 " y" 0 " w" 92 " h" 59 " +AltSubmit vBtnMenuAbout gControlHandler", % ResourceTemp . "menu-about.png"

Gui, Add, Picture, % " x" 0 " y" 59 " w" 140 " h" 1 " +AltSubmit", % ResourceTemp . "E1E8ED.bmp" ; Divider Line

Gui, Add, Picture, % " x" 8 " y" 68 " w" 584 " h" 324 " +AltSubmit", % ResourceTemp . "E1E8ED.bmp" ; Content Border
Gui, Add, Picture, % " x" 9 " y" 69 " w" 582 " h" 322 " +AltSubmit", % ResourceTemp . "FFFFFF.bmp" ; Content Background

Gui, Add, Picture, % " x" 8 " y" 386 " w" 584 " h" 6 " +AltSubmit vCI", % ResourceTemp . "64B5F6.bmp" ; Content Indicator

Gui, Tab, 1 ; Settings > General
Gui, Add, Text, % " x" 16 " y" 76 " w" 100 " h" 100 " +BackgroundTrans", General

Gui, Tab, 2 ; Settings > Advanced
Gui, Tab, 3 ; Settings > Language
Gui, Tab, 4 ; Settings > Theme
Gui, Tab, 5 ; Settings > About

Gui, Color, 64B5F6
Gui, Show, % " w" Window.Width " h" Window.Height, % Window.Title
return ; End automatic execution
; ==============================================================================

; Labels =======================================================================
MenuHandler:
    MsgBox,, MenuHandler, % "Menu Item: " A_ThisMenuItem "`nMenu: " A_ThisMenu
return

ControlHandler:
    If (A_GuiControl = "BtnMenuLogo") {
        MsgBox, Test
    } Else If (A_GuiControl = "BtnMenuGeneral") {
        GuiControl, ChooseString, TabControl, General
        GuiControl,, CI, % ResourceTemp . "64B5F6.bmp"
	   Gui, Color, 64B5F6
    } Else If (A_GuiControl = "BtnMenuAdvanced") {
        GuiControl, ChooseString, TabControl, Advanced
        GuiControl,, CI, % ResourceTemp . "E57373.bmp"
	   Gui, Color, E57373
    } Else If (A_GuiControl = "BtnMenuLanguage") {
        GuiControl, ChooseString, TabControl, Language
        GuiControl,, CI, % ResourceTemp . "7986CB.bmp"
	   Gui, Color, 7986CB
    } Else If (A_GuiControl = "BtnMenuTheme") {
        GuiControl, ChooseString, TabControl, Theme
        GuiControl,, CI, % ResourceTemp . "4DB6AC.bmp"
	   Gui, Color, 4DB6AC
    } Else If (A_GuiControl = "BtnMenuAbout") {
        GuiControl, ChooseString, TabControl, About
        GuiControl,, CI, % ResourceTemp . "90A4AE.bmp"
	   Gui, Color, 90A4AE
    }
return

GuiEscape:
GuiClose:
ExitSub:
    ExitApp ; Terminate the script unconditionally
return
; ==============================================================================

; Functions ====================================================================
OnLoad() {
    Static Init := OnLoad() ; Call function on loading of the script

    ; Create resource files ----------------------------------------------------
    Global ResourceTemp := A_Temp . "\" . "Binster" . "\"

    FileCreateDir, % ResourceTemp ; Create a new directory for the files

    ;DllCall("Gdi32.dll\AddFontResourceEx", "Str", "filename.ttf", "UInt", 0x10, "UInt", 0)

    ICO_WINDOW := "000001000200101000000100200068040000260000002020000001002000"
    . "A81000008E04000028000000100000002000000001002000000000000004000000000000"
    . "000000000000000000000000FFFFFF00FFFFFF00FFFFFF000000000B0000002200000031"
    . "000000330000003300000033000000330000003300000031000000220000000BFFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF005C5D5D608F8F8FB99A9A9AF79B9B9BFF9B9C9DFF"
    . "9D9E9EFF9D9D9EFF9C9C9DFF9A9B9BF78F8F8FB95C5D5D60FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00A2A1A2FFB1AFAEFFE0E0E0FFD8D8D9FFDCDBDDFF989595FFAFAEADFF"
    . "CAC9C9FFD9D8D9FFB3B2B2FFA3A3A3FFFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "AEABA6FFDED8D3FFF0DFCFFFFEFEFCFFBD985EFFE3E0DBFFE6D8C6FFEDDAC4FFF3ECE4FF"
    . "D5CFC7FFAFACA6FFFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00CCBDA9FFD8D1C9FF"
    . "E6DED9FFBD9A64FFBD9B66FFFBFEFFFFF8F8F6FFF8F5F3FFF0EEECFFD2C7BBFFC3B39DFF"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C0B2A0FFFAFAF9FFBC9861FFBF9E6BFF"
    . "BF9E6BFFBC9A64FFBB9760FFBA965EFFDAC7A9FFEDEBE6FFB7A993FFFFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00C5B39CD9E4DFD9EDDECEC1FBBD9B66FFBD9B67FFE2E3E3FF"
    . "E0D7CCFFD8C6AFFFC1A374FFF9FAFBFCBBA78BD8FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00C4B49CD3E9E0D5C5D4B897D7EBE7E2B9B9955EFFF0EFE9B5BA9761FFE7D4C1BB"
    . "DECCB2D4D5CABDC1BAA78BD3FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C4B49BD5"
    . "F0E8E1C2C1A06CFDDBCDB9D1EAEAEABEE8E7E3BDBC9B66FFBC9A66FFEAE8E4C0D7CDC0C4"
    . "BAA78BD5FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C4B39BD5EFE7E0C4CCAF83EA"
    . "B8955EFFB9945DFFBA9762FFBE9D6BFFBE9D6AFFBA9760FFD7CEC2C3BAA88BD5FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00C3B29BD5EDE5DDC5E8CFBABFE9E3DABFECF0F0BD"
    . "EEECE7B9BC9A65FFBA9963FFF0EDE8BCD6CCBFC4BAA78BD5FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00C3B29AD5EAE1D8C6DDC5AEC3E1D9CDC1E3EAEAC1E3E0D6BDB59158FF"
    . "E3CEB8BCE9E2D9C0D2C7B9C5B9A68AD5FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "C2B29AD3F5F3F1DFFEFEFDF9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDF9"
    . "E8E4DEDFB9A68AD3FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00C2B096E4FCD8BCFF"
    . "FDE3D1FFFFEFE6FFFCE3D1FFF8D7BDFFF6DBC0FFF6E1C9FFF7DABEFFFBDABDFFBCA88DE4"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00BEAB8ED4ECE2D6F2FFF4EDFFFFFBF7FF"
    . "FFEADAFFFDDEC5FFFBE0C8FFFEF0E2FFFEF0E2FFE7DBCDECBFAC8FD4FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00C3AE9236C1AC8F86BFAA8DBBBEAA8CC7BEAA8DC7BFAB8EC6"
    . "BFAB8EC7BFAB8EC7BFAB8EBBC1AD9086C3AF9236FFFFFF00FFFFFF00E0030000E0030000"
    . "E0030000E0030000E0030000E0030000E0030000E0030000E0030000E0030000E0030000"
    . "E0030000E0030000E0030000E0030000E003000028000000200000004000000001002000"
    . "000000000010000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000000000000000000000000000001000000060000000D00000012"
    . "000000150000001600000016000000160000001600000016000000160000001600000015"
    . "000000120000000D000000060000000100000000000000000000000000000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000000000003"
    . "0000000C00000017000000230000002F0000003A00000041000000430000004300000043"
    . "00000043000000430000004300000043000000410000003A0000002F0000002300000017"
    . "0000000C000000030000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000005000000160000002E000000405A5A5A7C7F7F80B4"
    . "909090DD9C9C9CFF9D9D9DFF9E9E9FFFA0A0A0FFA0A0A0FF9F9F9FFF9E9E9EFF9D9D9DFF"
    . "9D9D9DFF919292DD808080B45A5A5A7C000000400000002E000000160000000500000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000010"
    . "00000034828282B59C9C9CFFAFAEAEFFC3C2C3FFD3D2D0FFD0CECDFFC2C0BEFFB0AEACFF"
    . "9E9B99FF9F9B99FFABA8A7FFB6B3B2FFC0BEBDFFC8C5C6FFC7C6C6FFBEBDBCFFAFADADFF"
    . "9C9C9CFF828282B5000000340000001000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000169C9C9CEFA4A4A3FFC4C2BFFFD9D8D5FF"
    . "E9E8E7FFE1E0DFFFCFCDCCFFBFBDBBFFAEACAAFF9D9A98FF9E9A99FFA9A6A5FFB4B1B0FF"
    . "BDBBBAFFC8C6C5FFD3D1D0FFDEDDDCFFD6D5D4FFC3C1BEFFA4A4A3FF9C9C9CEF00000016"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "000000169E9E9EFFB7B4B1FFC5C4C2FFD4D4D3FFE6E5E6FFDEDEDEFFCCCACAFFBCB9B8FF"
    . "AAA7A5FF989593FF989594FFA5A2A2FFAFADADFFB9B8B9FFC4C3C4FFD0CFD0FFDADADAFF"
    . "D1D1D1FFC5C3C1FFB7B5B3FF9E9E9EFF0000001600000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00000000169C9C9DFFB4B1AFFFC5C3C2FF"
    . "DDD7D1FFECE0D6FFEDDFD2FFEDE5D9FFEDECE6FFEBF0F0FFE7E9E5FFE7E5DFFFE9E4D8FF"
    . "EAE0D3FFECDECEFFEADBC8FFE6D8C7FFE7DFD5FFDAD7D2FFC4C1C0FFB4B2B0FF9C9D9DFF"
    . "0000001600000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00000000169D9D9EFFD6D2CDFFEEE2D7FFE1D1C1FFD5C0AEFFCEBDAEFFC7BEB4FF"
    . "C9C7C2FFCCD1D1FFCCD0CCFFCDCBC5FFCCC7BEFFCCC3B8FFCCBFB1FFCBBCA9FFD2BFA9FF"
    . "DBCCBBFFE6DBCDFFEFE8E2FFD9D4CDFF9C9C9CFF0000001600000000FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000016C4BBB0FFF9F4EEFF"
    . "D1C6BCFFC7B8A9FFC3AF9CFFC5B4A3FFC7BFB5FFCAC9C6FFCED5D8FFCFD5D3FFD0CEC9FF"
    . "D1CCC1FFD3CABEFFD3C7B8FFD2C3B1FFD6C2AEFFD7C7B7FFDACFC3FFE4DDD6FFE6DCD0FF"
    . "B2A693FF0000001600000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000015C8BEAEFFF6F1EBFFD0C5BAFFCCBCAEFFCAB6A4FFCEBDADFF"
    . "D2CAC2FFD5D7D7FFBD9960FFC8B390FFD9DAD7FFD8D4CBFFD8CFC5FFD9CDBEFFD8C9B7FF"
    . "D7C6B0FFDBCBBAFFDDD1C5FFE3DDD6FFE3DBCFFFB7A891FF0000001500000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000013C9BEAEFF"
    . "E6E0DBFFEFE5DBFFE2D4C5FFD8C4B2FFD5C5B8FFD0CBC6FFBA9962FFF9D9B6FFBC9A65FF"
    . "D9DDDEFFD9D7D1FFD8D1CAFFD9CEC2FFD7C9B8FFDDCAB6FFE1D3C2FFEADFD3FFF3EEE7FF"
    . "D4CBC0FFB7A992FF0000001300000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000012CDBFACD7E3DDD8EDDCD3C8FFE0D3C4FFE4D1BFFF"
    . "EBDDD1FFB99862FFF6D3B0FFF5D3B1FFB99A66FFBB9A66FFBB9A65FFBB9A64FFCCB38AFF"
    . "E5D4BFFFEADAC7FFE6D8C8FFE3DACDFFE1DBD6FFCFC6BAEDB7A488D70000001200000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012"
    . "CEBFACD6E5DED7CBDFD2C5CADCCBBBDAD9C6B6E9B99862FFF6CEAAFFF2CDA9FFF2CCA8FF"
    . "F3CDAAFFF5CEAAFFF5CEAAFFEDC7A2FFDFBA91FFC1A06CFFCFB89AFEDDCFBDE9E1D5C8DA"
    . "E5DED7CACEC3B5CBB7A387D60000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD7E6DFD8CEE0D3C6CADFCCBBC8"
    . "DBC4AEC6B79761FFFBE1CBFFF2C8A2FFF2C8A2FFFAE0CBFFFBE0CAFFFAE0CAFFF8D7BDFF"
    . "F4CBA6FFF2C8A3FFC4A271FFD1BEA2D6E1D6C8C8E6DFD9CACFC4B6CEB8A487D700000012"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "00000012CEC0ACD8E6E0D9CEE0D4C7CCDDCBBACBDCC5AFC9DCCAB9C6B69560FFFCE3CEFF"
    . "F4C5A0FFB89964FFB89862FFC8A372FFD1AB7EFFE2B88FFFF5C8A4FFE8BC94FFC4A87DF2"
    . "E2D7CAC9E6DFD9CBCEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CC"
    . "DECCBACCDBC4AECADAC8B7C9DBD5CDC6B89761FFFFE7D6FFB99762FFDEE1DCC7D6CBB6D5"
    . "D4C6AFD5CBB591E5C7A676FFF4C39EFFB99864FFE1D6CAC8E6DFD9CBCEC4B7CEB8A487D8"
    . "0000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECBBBCBD8C1A9CDC0A271FCBA9964FF"
    . "D5CFC3D4B8955DFFC8B18CEFE3E4E2C7E1DDD5C8DED6CCC9DCD0C2C7CDB695E0D2AC7EFF"
    . "BA9965FFDFD2C2CBE7E0D9CBCFC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CE"
    . "E0D4C7CCDECCBBCBD9C2ABCBBA9A66FFD2B488FFCDBFA6E1E0E0E0C6DFE3E3C9E0E0DCCA"
    . "DFDAD2CAC6AD85F0B99863FFD3BEA5D5BA9A67FFC1A273FBE0D2C3CCE6DFD9CBCFC4B7CE"
    . "B8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECCBBCBDBC5B0C7B99965FF"
    . "F4D9B9FFC7A879FFCABCA1E7D3CFC0D9D3CBB8D9DBDAD4C8B99863FFEFD0B4FFB99965FF"
    . "DAC6B2C6DFCFBDC7E3D7C9C9E7E0D9CCCEC4B7CEB8A487D80000001200000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8"
    . "E6E0D9CEE0D4C7CCDECBBBCBDCC5B0C8C3A67AF1E8C8A3FFF5D7B6FFE2C199FFD1B183FF"
    . "C8A575FFB99863FFB99965FFF5D8B7FFEECDB0FFB79661FFDCCCBBC9E2D6C8CAE7E0D9CC"
    . "CEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECCBACCDCC5AFC9"
    . "D3BCA0D6C3A271FFF1CEAAFFF4D1AFFFF4D0AEFFF4D0ADFFF4D1AEFFF3D1AEFFF2D0ADFF"
    . "F3D0ADFFEECDAEFFB6955EFFE2D7C9C9E6DFD9CBCEC4B7CEB8A487D80000001200000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012"
    . "CEC0ACD8E6E0D9CEE0D4C7CCDECCBACCDAC4ADCBDDCAB8C8CFBCA0DEBF9D6AFFDFB98FFF"
    . "F1D4B7FFFBE3CFFFFBE3CFFFFAE3CFFFF2CBA6FFF2CBA6FFF8E4D2FFB6945DFFE3D8CAC8"
    . "E6DFD9CBCEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD8E6E0D9CEE0D4C7CCDECCBACC"
    . "DCC4ADCBDCC8B4CADFD7CCC8D9D1C4D2C5AE86F1B7945DFFB7955FFFB99762FFB89864FF"
    . "F5C8A2FFF8E3D3FFB5955EFFE0CFBDC5E3D7C8C9E7E0D9CCCEC4B7CEB8A487D800000012"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "00000012CEC0ACD8E6E0D9CEE0D4C7CCDECCB9CCDAC2ABCBDAC6B2CCDCD3C5CBDFDFDACA"
    . "E2E6E6C8E0E4E4C7E0E1E0C6DEDDD6C4B99761FFFBE5D9FFB6955FFFDCC7B0C5DFCEBAC9"
    . "E2D5C6CBE6DFD9CCCEC4B7CEB8A487D80000001200000000FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000012CEC0ACD7E5DFD8CEDDD0C4CC"
    . "DAC6B5CCD5BCA5CBD4BFA9CCD6CBBDCBD6D5CFCBD9E0E0CBD8DDDACBD7D6D1CAD8D4CAC8"
    . "C2A87FECB6925AFFD4C3AEC6D6BFA7C9D9C7B2CBDED1C2CCE3DCD6CCCEC4B6CEB8A487D7"
    . "0000001200000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF0000000013CEBFACD7E2DBD4CED7C9BBCEE6DBD2DEEBE3D9EBF9F8F6F6FFFFFFFF"
    . "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAF8F7F6"
    . "EDE8E0EBE9E2DADEDDD4CCCECAC0B3CEB7A287D70000001300000000FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000014CABCA8D8E1D9D0EA"
    . "FEFFFFFFFDF4ECFFFDEEE4FFFFF2E9FFFEF0E7FFFDE9DBFFFBE2D0FFF9DCC6FFF8D6BBFF"
    . "F7D6BBFFF6DAC1FFF6DEC6FFF5E1CAFFF8E7D6FFF9E8D7FFFCF2E8FFFFFFFFFFD3CABBEA"
    . "B5A285D80000001400000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF0000000012C5B094FDFFFFFFFFF6D0AEFFF6D5B9FFFAE0CCFFFDECE0FF"
    . "FEF1E9FFFDEBDEFFFBE5D3FFF9DECAFFF8D8C0FFF7D9BFFFF6DDC5FFF6E0C9FFF6E3CDFF"
    . "F6DFC8FFF5D8BBFFF3D0B0FFF6D1B0FFFFFFFFFFBFAA8CFD0000001200000000FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000000CB8A286D1"
    . "FFFFFFFFF7D1B0FFF7D6B9FFFAE1CCFFFDECE0FFFEF1E9FFFDEBDEFFFBE5D3FFF9DECAFF"
    . "F8D8C0FFF7D9BFFFF6DDC5FFF6E0C9FFF6E3CDFFF6DFC8FFF5D8BCFFF4D1B1FFF7D2B1FF"
    . "FFFFFFFFB8A387D10000000C00000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF0000000003BAA78AADD0C3B1DCFFFFFFFFFFF8F0FFFFF0E6FF"
    . "FFF3EBFFFFF1E8FFFEEBDDFFFBE3D1FFF9DDC7FFF8D7BDFFF7D7BCFFF6DBC2FFF6DEC7FF"
    . "F6E2CAFFFAE8D8FFFCEBDAFFFFF6EDFFFFFFFFFFD0C3B1DCBAA78AAD0000000300000000"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000"
    . "00000002B9A58970B9A487BFD7CABAE1E4DED4EBF6F6F3FAFFFFFFFFFFFFFFFFFFFFFFFF"
    . "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F5FAE5DFD5EBD7CBBBE1"
    . "B9A487BFB9A58970000000020000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00"
    . "FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000000000000000000000000000001B29F8434"
    . "B7A3866DB8A38697BAA587BEBAA586CBBAA586CBBAA587CABAA587CABAA587CABAA587CB"
    . "BAA587CBBAA687BEB8A38797B7A3866DB29F843400000001000000000000000000000000"
    . "00000000FFFFFF00FFFFFF00FFFFFF00FF00007FFC00001FF800000FF800000FF800000F"
    . "F800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000F"
    . "F800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000F"
    . "F800000FF800000FF800000FF800000FF800000FF800000FF800000FFC00001FFF00007F"

    PNG_LOGOSM := "89504E470D0A1A0A0000000D494844520000008C0000003B080200000026"
    . "6DF5A40000000467414D410000B18F0BFC6105000000097048597300000EC200000EC201"
    . "15284A800000001874455874536F667477617265007061696E742E6E657420342E302E39"
    . "6C337E4E00000D2C49444154785EED5A079B1BC519CEDF0CDD40306E186C08D8104C8C83"
    . "311063C0609A31C106128CCFD77B6FBEA6EBBDE9D456D23669554FF5F2EE7DA3D995EE4C"
    . "826E0FA464BFE77DEEB9DD9D9D9D9977BE3AFAC38E2D152F364955203649552036495520"
    . "364955203649552036495520364955203649552036495520364955203649552036495520"
    . "8742D27626AF26B2A1642E99C9B35B1529723C7B6528FC54AD7479201C4EE6D8DDCA136B"
    . "48C20CBB9DC91BE39197DA94C7EF4B7FBC67E0489DFC5AA7FAA523D2B599748733EC850A"
    . "108CF9548BC2C7F9EE60983DA83C392849D88C9F8D471EAB3158F9659C6D536B97E34A22"
    . "CBDEFFFDE4FD21AD646CFEE8EF3FAA7DE540243984D4D37572C954FF1B3C724FFA7C22A2"
    . "267E370B33ED4FD148A04CD746185BDF4F0A1B01319DAD38AACA27695E4CED5520ACFE0B"
    . "2DF2C51EE99DBEE0FBFDFEAB83FE2B7DFE8BDD8133ADC123B56249E367EBE509619B75F7"
    . "DBCA5BBD211AC39A928EA532F4FFE723C2F496672320B1461523659294CEE64F361B061D"
    . "FAF4CDA4D6B3268F6D7830CF87A163C9FBC58870B4C1600BA43EF0FCD63CB9C28C155085"
    . "CB09171BCCED099D24603B5D41BE135226497D5B499A18F0E188E60BC7675D5E3004ED79"
    . "BA4E3CDE186C5DF0726E4AE0707A3E19F6F3D79FAC95D4781A7DC204BDDCAE423B4FB72A"
    . "FDAE247DE830E4F64C8C3EDDB69ED0124928105D3E704A3442251A634D2B43CA24E9E351"
    . "66C72FF484B44482E606E3463781777AFD4B5EFF665072498A47517D4AC82DAB5BA2BC2A"
    . "04E7DC3A7F6F740678E3DB0E6129187BD4643CA161DAF66179AC175B990D10E3D9152178"
    . "AC3188FFCFB429B95C9E26120C6BAC69654899249DEFD26D3A967233945EF0E856A267C5"
    . "FB680DB36388C2FD115D391E26C954FAAB71951A03B0815F8FB2EDCC7148F13AC251EAFF"
    . "6CBB9A48A57F98F4D165C74602568E48FA1FD12444D29858CD521CF3A1897D3060A8D1AD"
    . "A9885751E7DCBE45AF3FBE9D62EF14CBDBFD61DEFEE769DFBD19B65884E38DE2A4D3B3E8"
    . "152C5FAFDE82A1FECA11F5C8EA89265D8D8E3749995C1E0A44730179AC75654899247D33"
    . "15FD7E3696CFE761C130AB894D8F39781B71AA345B00E68EBD6392E9008B808167EA24BC"
    . "8E961F0FF99F6FD443BED73B02DDCB864BCB581A135F1F8BD077E1F6BE7330933BE08A63"
    . "2ED813F81CAC346B5A315226495C568400267677DAD083175A9499C2FAE29F54A6D46A0D"
    . "B9B79FAA658D81BA45851A03C17044D422FC9270C07D3D29A4900CC132E35BE69C01E37C"
    . "F2BEBEB19EAA151B5713754BE13B0EDF3FA77C139ECA7248908392847D8775BC3E6284E3"
    . "D78675DD0246373C235BAA47CB88B12C92F965398DB5206746C0C2D5AFC4D70322B507C2"
    . "F1841667610801BB1B7B9C7DAC2C412AF64471A5EA97817482BD593172509260D67D6A08"
    . "A1119F2442355ADF93BBE6FE61F86B6F68454E2302A6C65F8D0A279A44441C70E0821A9E"
    . "F7F810043A5CD26B9DEA913AB9C7C922723591BD3218C6A25FEA0FA7B20F254F88662FF6"
    . "E9CD5E6A539015E5F279047208F1BF9D8E960C632F78112F9BCBB7AE27CE75A9D0FBA38D"
    . "F2E7139192222C0680E1413B29D5C366BABB1083B946F42844AC34D1072509124FE7CC93"
    . "6C5F64EEE46453518901F910D4E8DA88D6B49A807AE14535A6675768F9AF29C35AFEB460"
    . "440A5F3A98FF40A08F4BACC29B3D86220E3F240BC6529E3025DA886EE83E74B466D6886E"
    . "80BFF5EAB61ACA4AC3C0DFA016912251442B412D76A1C7883F09CF35C8B00AD41B04769B"
    . "EEC31EE0F2E6A4B103E88E556201498B529A0F0EE045879E7505B3323F02CE77A9ED6BD1"
    . "4058236746B8D463E44C3301231A3C5DA852536960D06D64D040E3EA3E0B81ED0F1DE56D"
    . "A085C1C2B2C2967E3B6E04FAA79A82E3BB01CBBEB8D86D0CC98C1BE311EA0DC26390DAE5"
    . "382F061290ECB34656880524C140F1C13D5D673818391283418029B8DC177CB6BE48AB2E"
    . "74051C4ED66CCD1F3CDEC4B88481F2AA1AFC1C220EB7C29600B83E165EF0069E37D59380"
    . "FA7969C6E5814B83356343D9D941CCC91BC0E70DBBE36B7E11BDA1CF442A55BF1CE74FEB"
    . "E67C7CA825404AC09B8109D8D8DE0D96309C6814DD924245587ED2F1F362ACC46C8CB942"
    . "30D7D0D164DA8268DE02927E9833D6E57473904F158B420DB040534E4FE3BCF75CBBB13D"
    . "6F8C4A08E490D506A22CBB042EF61A91DE90D3B036DF3AE4AFC74AB3DDDE1566576136E9"
    . "430EA1683B7F31A151A24D80FADE5B3448EA5C32A2FC923CE18D6EA68BAF74A8996C0EDB"
    . "085B8AEEBCB03B41A48052CCF8D689C226E340D0443D235E659D1E402C20E9A342A91F38"
    . "DF6118B16C8EB9D968328959E10EA87AAB60461EAF115D4A146E0641017FFDCE148B0C81"
    . "E61543937E9CD24B82F8876763889B794B38127C05A1019C363D25BC3760B481BFD94E67"
    . "6097F8D3FE55F668D9E7CF15860A910A2509A061254E8920F79AD706F56816685F2925E6"
    . "EFA6749E9304F786ADD3BA9660BD97251690F4769F513B8029A7C18115F6785772B97C28"
    . "16C7861D5C372C0992126750FE6CDC20A37B856D7C18A8DB33861F7EA985058AB71C6C69"
    . "CEB61A2A8B9E93193DD0A2471CCF37186DE090308CE655C3323F58678FB087689024E6DA"
    . "F1B04B4FDA60FDB0A570F94CBDEC09C5E9ADAFC78A9CD66335223AE4B1FECD31010EAF61"
    . "CE7B7940574AE41EACF7B2C40292FEDC61ACCE953EB6D1567C01F6B85852192314A4F39B"
    . "53CDEC12090A548D5E87A7E167711CB0A59D6BCC1021D6A09640289EE6E743279B95FB4B"
    . "86BA904974CB2A7DBDDF6510C0A306985C7A4A620ED33F7D10E48560A407B3C114549FDE"
    . "BAD25F9460BCD9A58FE78DCEFDB30E9E4294271690643E58BA5AB0061B01913D2E161825"
    . "DEF88B1161641DB69E59B0B77A4CA5072DF21753B44DB83BEDAB5B625AFBD110FBD0D09A"
    . "F7D5820E612488E50211C35BC04CA10D5C3D3E8DD0FC629FD12727C95C13415265AE8670"
    . "1C6B9496249D4B682D5EC1B08F1437A30FF172AD196017893CDE85368B5A74F73BBF4E2C"
    . "2009891E1FD0C785B58329678F8BA5DD140AFE84459F3566756D981DE7005A621B79157F"
    . "04BCD8A2DBAE9BE36CABDE74E88CB62D7AFF54881B4FED320447B8EC0B907502BE1CD595"
    . "75C229FC381743384E37097D85B8836A835091CECD64C9470178C14F86FD6244B7575865"
    . "C493B5B3BE9238130E92CA8FBAD3ED329B41F1529FE20967A2C9EDCDA03E3B729FBF562C"
    . "20C9ECAEAF0F3392B885310BD25EAE7648D4E15D6F991217D8167A17CA614E5A09700C78"
    . "F4D903D6FEEAB05EC33DBE7B144440820C861089E13E3C04DDFC60C0FFE1A0FFF1DD1A1D"
    . "E174E130094B4F9F43D4809D8E7C99B7E1402C47A982A086B1CA5DCB5E734AC771B960E4"
    . "818D809EEADD9A909093F598CAC404B9ACA2BE052499ED03568446E353F4F4D32CDA76CE"
    . "BC1037C6F57301BEE800CC3A68FBC784B0F7D710081CA85B7EEC048EDFEFF73F523095C0"
    . "883B011D421B2440FC66095E6E57EFCC72972362D75F1DF09FEB2A8A38A80EC42FDFEE09"
    . "FC38E94320F07A07E8291D18A17ECE2003F610934556C0EF70201A8A25CBF9AD80052499"
    . "4BCB303E08075A16BC4E999194CDE5B742999F1662088D78B3E71AE40D490F9CF69EF511"
    . "D0A7B9DB7B332CF12C397622D091EEA3352216F4DD3E3FD5B64BF0E47DE9EE422C9ECACC"
    . "FA42FC70B204C79BF4637B28D69DE97DB4CA0C24523C903BDA20F27807813E65D6309ECE"
    . "DDD89D038A5876626B314966C007800CF3A13801FB7421B84D6966FBA277EFF6BCD02D7B"
    . "2399D70B19E599821A015035BE3A840F06F54299F94E09B088D837AB01BD103CB35BA3BB"
    . "61525F022C3662C2ED4C1E3B7DD51F9C747AC077491BC2B126A56D3D114FA55E6963773E"
    . "1D36F265B76C24C5E029924822999523D103FEB2C50292065C499EA2FF479C6D53D7647D"
    . "21F8C47E9E93B185C125D29AF7FAFDA00D9B0EDE65684B43027BACF8372D2B42A0632301"
    . "9A4F36EBE551A82C6C88475161244F998AEE20F27C57E8BBE970E3BC172BCE5FE7F8CE11"
    . "400F4FDC17CFB40661CA960409F6D95C4E046A6603E7DAF55FA2C1C3616C977AA5B655CD"
    . "A746E075F014210F86878FF2BC154080C016C552B1802412259185ABC4063CDA80C5DAC7"
    . "9E9CEF525B56A31E2544256702725EAA83ED3DEBDB175A82658525C74E0444D5FDAB883B"
    . "3C9BA28CC8C5FC210EDCF487C2304AD8DD20B8E429611E2E35AA9F3B0742EC40FD6100AF"
    . "BC13D806BC42C3B3562C2309C2873EB6A107C735333EB85C24108DF3BED14DE654CCC07A"
    . "F1AD9748A54A9E02486961C7F906C73FD418025523DBC5816488FF48615F6011617C1002"
    . "B22E7676027BDACFB9BDB8C9AB4458F42DC9C8DECC009152442F6BF1E1F9438775A46B25"
    . "496A34B62A1876EC97B1B4E7372A72248699E3D1A257F0C82AAFCFC2B2EFFEA645D8D33E"
    . "0A9A71DF2529FC113A59F2190131B6391611013476C3BEDB1C0B4DE74918B9A44579BDD1"
    . "2C08D8B05DC01F7A4363675056A3715E7AA7E12DFBFCFBBE6B89584912493A93C5F22199"
    . "3557A0CDC0AAA181F97CC172C9E5F2A94C0686F490ECCF6F2CD69364166C2E04425A2289"
    . "CD08603B5BFBD39FFF13395C926CB1446C92AA406C92AA406C92AA406C92AA406C92AA40"
    . "6C92AA406C92AA406C92AA406C92AA406C92AA406C92AA406C922A5E7676FE0D61D303D5"
    . "F78A25B90000000049454E44AE426082"

    PNG_MENU01 := "89504E470D0A1A0A0000000D494844520000005C0000003B080200000079"
    . "7C7AED000000017352474200AECE1CE90000000467414D410000B18F0BFC610500000009"
    . "7048597300000EC300000EC301C76FA8640000001874455874536F667477617265007061"
    . "696E742E6E657420342E302E396C337E4E0000044749444154785EED96FF6F13651CC7FD"
    . "E3BAAE256C631BD369651D63202E11115245B4714EC0B9B10402CEB91835660B8E1123CC"
    . "510374EB3AD6B9E9804022EA5A286D19FD96F51BEDB56B7BFABE3D70BB5C3F92B43FCCC4"
    . "7C9EBCD23CF7BEFB3CF7DCEBEEB9EB4BDDD33946074B216029042C8580A510B014029642"
    . "C05208580A014B216029042C8580A510B014029642C05208580A014B216029042C8580A5"
    . "10B014029642C05208580A418D524E2D48B7C3A54C412E96E568B67CFD4151E4A174F96F"
    . "4DEBF7E4D530BB211FBDB13502369F64CAA2FF822A34718A6B0F8A071D5BE5209E530EC0"
    . "AF361455EFCF4ADAB05A6A917266395F2ACB38B73F149E5F58F4FBFDD767DDCDB6B3D825"
    . "E6E472B9AE6EB68E8E8ED7477F532FCFB3F84BE744500C02298160D0D4667D711542B4F5"
    . "4402FD9F3D77BB2E2745F9E0621E89C86D1FF6EDFB292B72518511ACE35E91D4402D5262"
    . "59E5C46363E30683C1FC4A57E3417B93E540D35B27B14B9D53E39B1FED7AFB3380C9217C"
    . "1289462211EC1A18BD2006A9945259A5863D1F9F437F6D6DADF9C869517E335844D2DBDB"
    . "8B5F87C361195912F97F23E5039784B33E7D9AADAFAF6F3D3EAAE65D9713F8157372BBDD"
    . "F3BED442706B4D85A331FB8941EC4A2412FB879D082BA5545689CB7B63C237797F03FD95"
    . "951553AB05BB7A1C39A9283F0C4570571E46D3D96CF6E5A383BAAA6D95F2A947796EBD5E"
    . "6FDD8EC61FEE2B7DD1C48217732AA195CBA0E9D029112653E9FAE6576FFEA13C2C332EF7"
    . "DE4BE14A299555CAB8CF5B2896B45AAD3BF71EC1AED1DB05245F7DFDADB9BD7BF277C5D7"
    . "C9FE41ED5DD96E29F639E54989C7E398D0F95FF37377BC92A42466B3190B5E9D93A1CE28"
    . "4009C2543A636C68397C2D97CA6471C0892F2EA4F29012D22D1F5D1542A7D3B9BABA8A8E"
    . "DD6E37B759AD63CAA5DE8B969068DBF2F272FB90433BD4B64AD93F9D4B4BCA7AFEA47F08"
    . "9BAF9D9D892752D8D449D1CE09A122656733FA234B491C108BC5D2B98D4A29BAAA67E1B1"
    . "A144328576E81B0F727CC2CAB29C4865669FB7F5F5753C647BDEE9FBB7A1AAA59617EDF8"
    . "3D65D5601E771FC5EF844BF86462532B457D3B1CDFFC346AA5805BBE288E41D349A9AC42"
    . "282EEFF45C5C96E53FFF5AED9EF05FDC5C2F9393978C0DAD8D3DBDE0C71B1E2423235F76"
    . "5E7CAC1B0A0B4D9CB42A6A9102CE5F59C26BA5502848F9C2E370ECAAC361341A55296A3B"
    . "76E63B3CF03A2936A7949514AD8140402B456D6A15FAEA3D9FBA15C4A663663E9054D68E"
    . "CD666B79F79C1870684919CDE7F3B5F58DEB86BA32FB6C5955458D5240FBC0145E2B867A"
    . "539D698769F71E7C47F74D6590E3238D8F82DAF08F4384AA14D0F9FDA33A7303F60A29E2"
    . "0071BC686A15FAEA426879EF736CEE3A3CA09CD760B00C2BAB4960195E40821C7DDD50E2"
    . "0F5455D42EE57F0C4B216029042C8580A510B014029642C05208580A014B216029042C85"
    . "80A510B014029642C05208580A014B216029042C8580A510B014029642C0522A98CEFD03"
    . "14EAF6D499FC89620000000049454E44AE426082"

    PNG_MENU02 := "89504E470D0A1A0A0000000D494844520000005C0000003B080200000079"
    . "7C7AED000000017352474200AECE1CE90000000467414D410000B18F0BFC610500000009"
    . "7048597300000EC300000EC301C76FA8640000001874455874536F667477617265007061"
    . "696E742E6E657420342E302E396C337E4E000004D349444154785EED96FD4F535718C7F7"
    . "C7150A960C8D2828850E2294B7D608D409594721E16D04364734988C8081C42D2C1AC18D"
    . "8C0C640D7184C409646C2801B1B4944BA12D85BE53D8B73DEBB583A7BDFCBEE7E41372CE"
    . "73EE7DCE733F3DF75C3E71343430676029042C8580A510B014029642C05208580A014B21"
    . "6029042C8580A510B014029642C05208580A014B216029042C8580A510B014029642C052"
    . "08580A014B21B8A894A8DB7D7A7A1ADDDF4F0D469C4E04D14E8E8F8F3D1EFFC282D4D5F5"
    . "EFD4CE0EE23BEDED62880E86088A21C890301608385B5BE52086514992877B8F1E85D6D7"
    . "63C160CCEF0FBE7DBB7BFF3E827225A2B9FAFB5383E7CBCBCC85A4B81E3E446A4FE2315A"
    . "EFDEB5D7D78BB858757676767A7A7A636303FD4838FC775F1FA67C535318F6F7F72FD6D5"
    . "61E87DF60CC3919191128D463121DAFCAB577F1A8D2208295B369B3671E3FED0D0095A2C"
    . "B6BAB4B4F8E64D2412F9A6A9E9B7AA2AB9929F13ADB4B4F4A55E9FA1BCCC5C480A1C23A3"
    . "C562C1DFC9C9C95FF57A1117ABA282A6AB57BF2828181B1EC6D06EB74FEBF5526F2FFA0B"
    . "0B0BC33A1DAE0CBD7B87614545C5B7C5C59913EE3A9D9224213EDADB2B82A952B0B330D5"
    . "DDDD9DA552192E5F6ED6E9D45959F2F38B4ADAAE5F077FD4D565284F644E87B294ED7BF7"
    . "B057773637552A95F7C307BFDFDF9E783020AF8A0AE291C6C690DF8F48C3AD5B18065DAE"
    . "7038FC7951D176733336B0E47020C3EF35359913BA24A9BBA505493C1ECF4462B3C85276"
    . "3A3B113FF07A71E30F6565E296BF12D7884AAC56EBDEFC3C8C8BA9CCE56540598A7B7414"
    . "89860707CBF2F2BC1313E87FD5D1F1FECE1D4C9D5D3519311A8DAF6B6B0F6766D0B798CD"
    . "52E227FAFEC993E24B971413E2990B7373EDF3F3885B6766566FDF96A5E0A440706D6DED"
    . "8A5A2DBF7102B12E8E8E1888C55AAE5D9383E9CA1311126529C1D555244A6D78297E2C2F"
    . "C7D4D9554DA65828848856AB9DADAAC21188FEF8F8B86D6E0E9D9A9A9AAF6FDE544C7878"
    . "708067769ACD470707981AE9EC3CF6F98414A9A7071197CB559E97175F2E05B912BC5682"
    . "D420599E7CEF7914A4382D169C6A3E8FE765B2B9DD6EFC205F2676EF7F566D6C145BE3FD"
    . "C606B6B7385F436EB7CD66DBDFDEF648128273D5D58A0921255FAD8EAFFEF831B24141D8"
    . "E7B36F6DC5CF1493297A748460574B4BFC0281C9246EFC5849724AB1BC742848F18E8F23"
    . "D1D8D8D8959C9CE682023097D8F00303032B46A358156FB2677131BAB7877E3810A8ADAD"
    . "FD2CF94B1E5AADF18FC5C9C94F4F9F16E5E65E24E1472938CE96963085664F1EB49EE7CF"
    . "318C46A3BB2B2BC195156C22A9AFCF565F2F5722CE149C3EB858B1BC74284889381CC865"
    . "32997A6EDC1091BD810144D6D7D7BF2B2911ABA245231197C331F5E20576665E76B6B5BA"
    . "5A5CEC7AF0405C6030184406C584A9529C6D6DC14000B3D86E420A981B1ADADCDC8417FF"
    . "D1D1DAF27285568B0D285722DAA0D9FC3AF9F5414B575E3A94CF141C87D86F53959572E4"
    . "97CA4A4410475FA7D1A08F9693958573B4A3B0F0CCCEC4F74F5C80FF26444431A12C052C"
    . "1B0C780CCCCA52C0884E57AAD1A855AA4FB3B30DF9F9B80641B912D1F09D4E0DA62B8F44"
    . "59CAFF109642C05208580A014B216029042C8580A510B014029642C05208580A014B2160"
    . "29042C8580A510B014029642C05208580A014B216029042C8580A59CA3A1E11FA742DAEF"
    . "543A7BCB0000000049454E44AE426082"

    PNG_MENU03 := "89504E470D0A1A0A0000000D494844520000005C0000003B080200000079"
    . "7C7AED000000017352474200AECE1CE90000000467414D410000B18F0BFC610500000009"
    . "7048597300000EC300000EC301C76FA8640000001874455874536F667477617265007061"
    . "696E742E6E657420342E302E396C337E4E0000046B49444154785EED96FB4F9B5518C7FD"
    . "E34ABB72590D3299DC14B25BE66582ED86534BCB4A91B989D364D66C0C990C5D6ABC2402"
    . "5B1CB6B2895AC6C6709495D1096D879496DE68696BCBF0DB9EEC95744F5F48E36F3E279F"
    . "34E73CE7F69CCF7BFAB6CFBD6D9E640A6029042C8580A510B014029642C05208580A014B"
    . "216029042C8580A510B014029642C05208580A014B216029042C8580A510B014029642C0"
    . "5208580A014B21D859CACAEAC6D6D6D6079FCE14C441389242572892DA1E14E393C98CF9"
    . "E3692988E66A302935CF7FEE74BAC289442693DD5C0BA76E3956443C124B63AEF1EC1DD1"
    . "44054D044553406E0A8AAD29F2918AE5F29C34A518BB95D2D4D4D4FAEEE8F6F885C10788"
    . "8742617C9E68D7B77739445C4A6262E2D7B73AC64410523C1E6FE5DEFDA8F75F9DCF6E3E"
    . "C18025CFE39BB7261617176F8CD9EB5FD1A34B48D168343AE3389A424A20105097578B75"
    . "8A6D2AB3A6C8C76EB78FE40B0EF2DA71AB98558CD2A5DCBE1740DC6030E0737474F455DD"
    . "5511C7F8BF56FC2888F79EEB17C1ED5242E1DCA31E1CBCA25028AA34F5FB5E3A565DF372"
    . "6D830E5D3B4A29B6A9CC9A52FEFBEA5AF737B68382833C4B8952F4A7A752A9ECE2D23292"
    . "F0F8828944A2B1E51D69BCDFBFDA61E8C6AC7038DC76F20B042529672D3388C7E371954A"
    . "D578A04B4C01274E4DE0535E4AB14DE5D714F98F8F8F3BEEF8A6EE05A45E194A94F2D577"
    . "6E04FBFAFAAB340D23631ED4CDDD3D52129148B4BCB2C631F508719BED67ADC1BEF1548A"
    . "65600EC185850595AAE2BA2D375194F77A6E63AEBC94629BCAAF29F2CF66B39BF952DB70"
    . "1C41794A94E27247F2FBFE5B1C0EC7A1372E88F1D1686C8F5A73AAF76E34164757CF99BE"
    . "58FC6F8F3727A5F7B33F1009068355CF375CB63EFCE5B7FBC9641211B55A8DE385A33929"
    . "353535428AE9A3BB68E29B28A414DB547E4D297F85A24C208E20432952CCE7A637379F44"
    . "2231DBD3120A85F0285A0EB68BF190A2DAB317F52B5F3B31178F7A7D3DE9F5FA20E564F7"
    . "E47A3C777253D7690C38D23AB0B6963BAA38807B2986BAD168D41A6CB9E9DF2CA0393B3B"
    . "5B5EF182CCA6F26B920F559EDD4A91BE93B8C3C3F9AB6BB55A711D5EAC6B033F0CDB11B1"
    . "582CDA8E9FB64B0133F797D085E2CDDF1444BEBFF6279A388FF3C163E77C18BFA0688A03"
    . "0C7D9BB390C96466E77CF3EE08AE3C9A26934953DD22BFA9CC9A05F99FA1FE5B14B05B29"
    . "5219BE76D3EB0BA2A2D3E9EA9B0D624CDF900B11B7DBDD7CE4C30229EF7F32BDB191BBCC"
    . "1E8F4748011707AEE315904EA753A9F4F2B27F646454A954E200E8B25CBAE1743AF1D644"
    . "97CBF5A8B3B313AFD543C72E2EFB13329BCAAC5990BFBEF3FC8E57666729A0525387CCA4"
    . "82DF7FBCEA5039AAFD521A73543B8408E262BC2405B4E97F54AACAD12B4901075FB7E015"
    . "5056A6522AD51555B5F8A56CEFFA5D741D7EF392A6BA196F4D74A182A688CB6F0A8AAD59"
    . "90FF7FF03FE57F084B216029042C8580A510B014029642C05208580A014B216029042C85"
    . "80A510B014029642C05208580A014B216029042C8580A510B014029642C0529EC13CF90F"
    . "5626BFA96C6364CC0000000049454E44AE426082"

    PNG_MENU04 := "89504E470D0A1A0A0000000D494844520000005C0000003B080200000079"
    . "7C7AED000000017352474200AECE1CE90000000467414D410000B18F0BFC610500000009"
    . "7048597300000EC300000EC301C76FA8640000001874455874536F667477617265007061"
    . "696E742E6E657420342E302E396C337E4E000002D349444154785EED96EF6B525118C7FB"
    . "E3AEBB4CAD1525230AF14D5263ADA53464A35E14F4A6C656413FD87A616C4461653FD0D5"
    . "B6146548B1602F62B1A13534DA6C8375AFF38596D6574F1CE4DEC7083C48C4F3F07971CE"
    . "739EE77AEE877B0EEEDB1F8B3016580A014B216029042C8580A510B014029642C0520858"
    . "0A014B216029042C8580A510B014029642C05208580A014B216029042C8580A510B01402"
    . "9642C05208944979FA69FDA72DA65657B0B4611A18FB9371518901A61F8D5D3115AB3246"
    . "3209992C57AB07E38F44D9A1B9C7E5EF55240B25F30F8D4A5026657CE5CDE2BBE5442281"
    . "FD552A9585668442A1DE4B17C4EEBD5EAF6BF62E2A85946C36EB38DA8FA9584D2693B166"
    . "A0CC397543BEF0C8E8A8FBF903945D5C5E12997C3EEFF01C6ED7887CE7A83C3EBD572FF7"
    . "0586B151C33034BD471F3C059C3727FE460A56F501BF3E3C085086E497ADAD72B91C8D46"
    . "9DB72650B650D8D834BE99A66991626944BE7314DF299E974F7E4B71BB6452EC3E954ACD"
    . "E7D6F16E4B9B9FED52E4AA6C296E6FA7339962B1A807CFE01095AA95C8E23CBEC17CA1D0"
    . "2AC5D2A884EE49B18445CA0F44AD06F4A10191DC358C2BD7AF61E964E0ECF9B7290C8682"
    . "C17ABD6EF9522C8D4AE89E149FCFD7D30C0C30B51F1FCDE11088A4619A478E1FABD5EBE1"
    . "7038BEB6BAB357D2340D95F6E3D3DAA884EE4969DC2933D3EE170F4FBC8E616A97D27A23"
    . "082978C8879DAFB95C6E77AFF42C9DD2FA0EA0D22E45D55522E9AE94F617ADBC1AFCC939"
    . "911452EEADBDC72AE2DCD8182E170C2C522C8D4AF857A4C8084C8EBB66A7A594D3E95748"
    . "E2813877CEDB93185BA4C8108DE2173B44B114E08EDEC7E16F95021CFD1EE4E4778E01A6"
    . "428A5C9521FE6E3492CD87B8C2771A59B70B470F530C8594768D9DA35ECA7F004B216029"
    . "042C8580A510B014029642C05208580A014B216029042C8580A510B014029642C0520858"
    . "0A014B216029042C8580A510B014029642C0526CC422BF006D4E53E2845694DD00000000"
    . "49454E44AE426082"

    PNG_MENU05 := "89504E470D0A1A0A0000000D494844520000005C0000003B080200000079"
    . "7C7AED0000000467414D410000B18F0BFC6105000000097048597300000EC200000EC201"
    . "15284A800000001874455874536F667477617265007061696E742E6E657420342E302E39"
    . "6C337E4E0000040049444154785EED95FF4FD26B14C7FBE304BF06B568DD5B375D0ECBD6"
    . "945B64B36CA64433C5CACC9CDAD5BA375A1664F3A623924DA3B6EBC570CB522B706ADF14"
    . "11F0432060A0F78DCFF6B95667FD223F583BCF5E63CF39E7F97C7878F17CCE675B93B987"
    . "F90A9642C05208580A014B216029042C8580A510B014029642C05208580A014B21602904"
    . "2C8580A510B014029642C05208580A014B216029042C8580A510B014820C4B9122D1B5B5"
    . "35E95374637231242189914AAD2EC7E2D3EFE7CC7D0EB9DAEFFC77CE1F58F98C91C4A4EF"
    . "F1B05CFA145DC655AD771E8810138448623E3AE959BFE5176368E4B958B9493229C53AE0"
    . "C4CE82A1103E4F56555DBA794FE48594A1A121BBDDEEF1A47FCCE262C0D0DC8192637814"
    . "612A951A7BF1D2ED1E4D2693082D0F1E8A0B8514B55A6DEABC8D5048F1FBFD052AF5C3A7"
    . "23C3AE67838383C8241209C7FAA8ACAC2C3F79465CBB19322965DC3B832DD6D4D4E0D366"
    . "B39D365D117921A5B0B070BFF690F6880E0A30D43B775DBED5138DC551321A8D590AC59E"
    . "DF8A9A5A5A11068341FD19232EFC8E1484C76BEB0E96FD8E8C24494AA5B2E8E06170AABE"
    . "497CE966C8989496DBBD899595B7EFDE6765657D98F345A3D192B2A3A224A4389DCEB1D7"
    . "DE8540687575D56AB562D99FBD76E4C3E130E615867AB138BA9C1671A8F4300EDAF7A580"
    . "ABDDBDC8404A6E7EBEC864848C49B13D75617F9D5D5D3B77EF71BA5F605E5777FEC28DBB"
    . "280929D0148BC530894422EDEDED25E5C7EEDA1F239C9D9DCDCDCB979FB5C05218499D4E"
    . "77B6E58F1F5ECACC8779EC6FE370B95CE2FF971F9FEC9CDCC2A2223C1D08CF5D6CFEEBEF"
    . "014C7052D4BB34F27D62F10492C5C5C5D517AE86D7DBB646A31152DA2D7D087D3EDF8F21"
    . "A5C3DA8F37CB9224A1F389815F8EAE595AAE43559672AEF53A427F30DD89F57ABDB1A533"
    . "B27E16EA1B4CE2A488E3866B150A054ECABBF90584B5B5B5F5D7CCA8E23D85707C7CBC40"
    . "B50321D8D2529CEE316CCE62B1E4156CDFAF2D05B6470E64DADADACE7798FFEF29AF3CBE"
    . "40DA48281452A954A74DCD03FFB811A2EF7AA767A100ED0661636323EE034DFD4FD216F0"
    . "AE7E3D353DF3713E994A214457D6FCBA4F7CEF9696B2105CC2E62A2A2A4ACAF522D3E378"
    . "82CCD4D4545965B5902286140EBB4646B45A2D7EB6A9AB1B2B6F745B272727E3F138DEAC"
    . "1EAF17E7027DF75875FAED036E5AEE4F4C4CA00D61C11B8FD760306CECCA5BBDA7A0BF62"
    . "BB550D97E50CE6C8208FF90ECD6ECCC5C8CB2FD877406BB8724D5E79E26C83E697BDCAEC"
    . "6C80C909A3492EA5AB46139239B979CAEC1C9C91AFAA8DD7EFE09E5B54CACF044B216029"
    . "042C8580A510B014029642C05208580A014B216029042C8580A510B014029642C0520858"
    . "0A014B216029042C8580A510B014029642C052BEC1DCF31FDCF758F855A469B800000000"
    . "49454E44AE426082"

    BMP_FFFFFF := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000FFFFFF00"

    BMP_E1E8ED := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000EDE8E100"

    BMP_64B5F6 := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000F6B56400"

    BMP_E57373 := "424D3A000000000000003600000028000000010000000100000001001800"
    . "0000000004000000000000000000000000000000000000007373E500"

    BMP_7986CB := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000CB867900"

    BMP_4DB6AC := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000ACB64D00"

    BMP_90A4AE := "424D3A000000000000003600000028000000010000000100000001001800"
    . "000000000400000000000000000000000000000000000000AEA49000"

    FileWriteHex(ICO_WINDOW, ResourceTemp . "app-icon.ico")

    FileWriteHex(PNG_LOGOSM, ResourceTemp . "logo-small.png")

    FileWriteHex(PNG_MENU01, ResourceTemp . "menu-general.png")
    FileWriteHex(PNG_MENU02, ResourceTemp . "menu-advanced.png")
    FileWriteHex(PNG_MENU03, ResourceTemp . "menu-language.png")
    FileWriteHex(PNG_MENU04, ResourceTemp . "menu-theme.png")
    FileWriteHex(PNG_MENU05, ResourceTemp . "menu-about.png")

    FileWriteHex(BMP_64B5F6, ResourceTemp . "64B5F6.bmp") ; General Blue
    FileWriteHex(BMP_E57373, ResourceTemp . "E57373.bmp") ; Advanced Red
    FileWriteHex(BMP_7986CB, ResourceTemp . "7986CB.bmp") ; Language Purple
    FileWriteHex(BMP_4DB6AC, ResourceTemp . "4DB6AC.bmp") ; Theme Green
    FileWriteHex(BMP_90A4AE, ResourceTemp . "90A4AE.bmp") ; About Gray

    FileWriteHex(BMP_FFFFFF, ResourceTemp . "FFFFFF.bmp")
    FileWriteHex(BMP_E1E8ED, ResourceTemp . "E1E8ED.bmp")
}

OnUnload() {
    Global ResourceTemp

    ;DllCall("Gdi32.dll\RemoveFontResourceEx", "Str", "filename.ttf", "UInt", 0x10, "UInt", 0)
    FileRemoveDir, % ResourceTemp, 1 ; Clean up temporary files before exiting
}

FileWriteHex(Input, Output) {
    File := FileOpen(Output, "w")

    Loop, % StrLen(Input) // 2 {
        File.WriteUChar("0x" . SubStr(Input, (2 * A_Index) - 1, 2))
    }

    File.Close()
}

WM_CTLCOLORBTN(wParam, lParam, Msg, Hwnd) {
    Static Init := OnMessage(0x0135, "WM_CTLCOLORBTN")
    Global GuiColor
    return DllCall("Gdi32.dll\CreateSolidBrush", "UInt", "0x" . GuiColor, "UPtr")
}
; ==============================================================================
User avatar
jNizM
Posts: 2323
Joined: 30 Sep 2013, 01:33
GitHub: jNizM
Contact:

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by jNizM » 14 Mar 2016, 06:08

TheDewd wrote:AhkRibbonDemo.zip
Failed to create ribbon! Make sure you're running Windows 7.
Windows 10
Version 1511
Build 10586.122
[AHK] 1.1.29.01 x64 Unicode | [WIN] 10 Pro (Version 1803) x64 | [GitHub] Profile
Donations are appreciated if I could help you
-_+
Posts: 70
Joined: 06 Dec 2014, 12:43

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by -_+ » 14 Mar 2016, 09:26

jNizM, same happens to me with W7U-SP1-x64 (AHK_x64 1.1.23.01).
User avatar
TheDewd
Posts: 1094
Joined: 19 Dec 2013, 11:16
Location: USA

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by TheDewd » 14 Mar 2016, 09:29

I'm sorry I didn't mention this, but I've only had success running the script using 32-bit AutoHotkey.
Image Bulldozer - Sokoban inspired game from 1994 recreated in AutoHotkey.
User avatar
kczx3
Posts: 634
Joined: 06 Oct 2015, 21:39

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by kczx3 » 22 Apr 2016, 10:38

Thought I'd link this topic as it applies. Manipulating the client frame
SomeGuest

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by SomeGuest » 23 Apr 2016, 11:31

These are probably the best implementations of GDI (& bass.dll etc) I've seen. By "noname":
https://autohotkey.com/board/topic/1141 ... k-unicode/

He did post an image of his playlist editor a few pages back but I thought I'd link his thread with all of them and their sourcecode.
Included are a kinetic clock, stopwatch, music player and editor, hdd temp meter etc
Recca
Posts: 34
Joined: 18 Jan 2016, 21:44

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by Recca » 05 Jun 2016, 00:49

Template for accessible toolbar, inspired by Win+G (Gaming Bar) from Window 10
with Close button and extendable window
Image
-------------------------------------------------------------------------------
Image

Replace #g to something else if you're Window 10 :D

Code: Select all

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

;--------- BASIC SETTING
BG_color = 2B2B2B
selection = 4F4D50
transColor = FF00FF
size = 80
;-------- WINDOW PROPERTIES
Gui, 1: -Caption +ToolWindow +LastFound +AlwaysOnTop
Gui, 1:Color, %BG_color%
WinSet, TransColor, %transColor% 255
Gui, 1:Font, s8 bold
;---------- BUTTONS
Gui, 1:Add, ListView, x0 yp w%size% h%size%  Background%BG_color% -Hdr +ReadOnly -E0x200 vButton1 +Icon cWhite  AltSubmit gButton1, 
Gui, 1:Add, ListView, xp+%size% yp w%size% h%size%  Background%BG_color% -Hdr +ReadOnly -E0x200 vButton2 +Icon cWhite AltSubmit gButton2, 
Gui, 1:Add, ListView, xp+%size% yp w%size% h%size%  Background%BG_color% -Hdr +ReadOnly -E0x200 vButton3 +Icon cWhite AltSubmit gButton3, 
Gui, 1:Add, ListView, xp+%size% yp w%size% h%size%  Background%BG_color% -Hdr +ReadOnly -E0x200 vButton4 +Icon cWhite AltSubmit gButton4, 
Gui, 1:Add, ListView, xp+%size% yp w%size% h%size%  Background%BG_color% -Hdr +ReadOnly -E0x200 vButton5 +Icon cWhite AltSubmit gButton5, 
;---------- WINDOW CONTROL
Gui, 1:Add,Progress, xp+%size% yp w5 hp Background%transColor% Disabled
Gui, 1:Add,Progress, xp+5 yp w15 hp Background%BG_color% Disabled hwndHPROG
Gui, 1:Font, s22 bold
Gui, 1:Add, Text, xp-1 yp+20 w24 h60 BackgroundTrans Center gGuiMove vCaption cWhite +Border,≡
Gui, 1:Font, s10
Gui, 1:Add, Text, xp yp-20 w24 h21 BackgroundTrans Center gGuiClose cYellow +Border,X
;---------- ICONS
Gui, Listview, Button1
ImageListID := IL_Create(5,,1)
LV_SetImageList(ImageListID)
IL_Add(ImageListID, "shell32.dll", 2) 
IL_Add(ImageListID, "shell32.dll", 3) 
IL_Add(ImageListID, "shell32.dll", 4) 
IL_Add(ImageListID, "shell32.dll", 7) 
IL_Add(ImageListID, "shell32.dll", 6) 
LV_Add("Icon1" ,"`r`nButton 1")

Gui, Listview, Button2
LV_SetImageList(ImageListID)
LV_Add("Icon2","`r`nButton 2")

Gui, Listview, button3
LV_SetImageList(ImageListID)
LV_Add("Icon3","`r`n Button 3")

Gui, Listview, button4
LV_SetImageList(ImageListID)
LV_Add("Icon4","`r`nButton 4")

Gui, Listview, button5
LV_SetImageList(ImageListID)
LV_Add("Icon5","`r`nButton 5")
;------------------------------------------------------- Extender
Gui, 1:Add,Progress, x0 y80 w428 h23 Background%transColor% Disabled
Gui, 1:add, Listview, x0 y85 w428 h15 Background2B2B2B +ReadOnly vDropdown -Hdr AltSubmit gDropdown
Gui, 1:Show, w428 h270, Toolbar
OnMessage(0x200,"Help")
extend = 1
TB_display = 1
return

#g::
TB_display := !TB_display
if TB_display
{
	if extend
		Gui, 1:Show, w428 h270 NoActivate, Toolbar
	else
		Gui, 1:Show, w428 h100 NoActivate, Toolbar
}
else
	Gui, 1:submit
return

GuiClose:
ExitApp
return
GuiMove:
PostMessage, 0xA1, 2
return

Button1:
Button2:
Button3:
Button4:
Button5:
if A_GuiEvent = Normal
{
StringRight, temp, A_ThisLabel, 1
Gui, Listview, button%temp%
LV_Modify(1, "-Select")
Gui, +OwnDialogs
MsgBox 262208,Info,You pressed button %temp%
}
return

Dropdown:
if A_GuiEvent = Normal
{
	extend := !extend
	if extend
		Gui, 1:Show, w428 h270, Toolbar
	else
		Gui, 1:Show, w428 h100, Toolbar
}
return

Help(wParam, lParam, Msg)
{
	global mouseX, mouseY, currWin, currControl
	MouseGetPos, mouseX, mouseY, currWin, currControl
	IfInString, currControl, SysListView
	{
	if (currControl = "SysListView321")
		GuiControl, +Background4F4D50, Button1
	else
		GuiControl, +Background2B2B2B, Button1

	if (currControl = "SysListView322")
		GuiControl, +Background4F4D50, Button2
	else
		GuiControl, +Background2B2B2B, Button2
	
	if (currControl = "SysListView323")
		GuiControl, +Background4F4D50, Button3
	else
		GuiControl, +Background2B2B2B, Button3
	
	if (currControl = "SysListView324")
		GuiControl, +Background4F4D50, Button4
	else
		GuiControl, +Background2B2B2B, Button4
	
	if (currControl = "SysListView325")
		GuiControl, +Background4F4D50, Button5
	else
		GuiControl, +Background2B2B2B, Button5
	
	if (currControl = "SysListView326")
		GuiControl, +Background4F4D50, Dropdown
	else
		GuiControl, +Background2B2B2B, Dropdown
	}
}

Varacolaci
Posts: 5
Joined: 25 Jun 2015, 00:29

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by Varacolaci » 17 Aug 2016, 22:44

Well this is a WIP project I'm working on but the main timer (can countown or up) is done using Gdip only here is a sample if it it also include a little smoth animations for the handle.

vasili111
Posts: 747
Joined: 21 Jan 2014, 02:04
Location: Georgia

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by vasili111 » 18 Aug 2016, 00:47

Varacolaci wrote:Well this is a WIP project I'm working on but the main timer (can countown or up) is done using Gdip only here is a sample if it it also include a little smoth animations for the handle.

Very nice :) Please post sources when it will be ready.
DRAKON-AutoHotkey: Visual programming for AutoHotkey.
User avatar
huyaowen
Posts: 100
Joined: 28 Jul 2014, 01:15

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by huyaowen » 18 Aug 2016, 01:05

thanks ,good jobs.
Varacolaci
Posts: 5
Joined: 25 Jun 2015, 00:29

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by Varacolaci » 20 Aug 2016, 13:54


Here is a bit more of Gdi+ still very far from a release candidate but ... what do you think on the main behavior?
User avatar
JnLlnd
Posts: 268
Joined: 29 Sep 2013, 21:29
GitHub: JnLlnd
Location: Montreal, Quebec, Canada
Contact:

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by JnLlnd » 19 Oct 2016, 22:27

I wrote that one or two years ago. It is still alpha version but it works well with to manage tunes cover in an iTunes library. And I should write an MP3 lib some time...
MyTunesCover Image
Other screen captures in the rest of the slideshow:
http://code.jeanlalonde.ca/mytunescovers/#screenshots

Source on GitHub:
https://github.com/JnLlnd/MyTunesCovers
Author of freeware apps Quick Access Popup (http://www.quickaccesspopup.com),
FoldersPopup and CSV Buddy (http://code.jeanlalonde.ca)
think
Posts: 35
Joined: 09 Feb 2014, 05:20

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by think » 02 Nov 2016, 16:02

Has anyone managed to actually create a simple custom ribbon? Any examples how to add another item into it?
Windows 7 - Main
Image
User avatar
kczx3
Posts: 634
Joined: 06 Oct 2015, 21:39

Re: Examples of Non-Standard GUIs (ActiveX, GDI, etc.)

Post by kczx3 » 04 Nov 2016, 08:13

think wrote:Has anyone managed to actually create a simple custom ribbon? Any examples how to add another item into it?
As far as I can tell you have to create a resource file containing the markup (xml) used to format the ribbon. The resource file also contains the bitmaps or images used for the buttons and etc.

There are several example solutions on MSDN and you can download them all here: Ribbon Samples.

I've been able to modify the markup in these and rebuild them (then renaming the produced .exe to a .dll) and using that to create a different look and feel to the ribbon.

It would be really cool if we didn't have to rely on Visual Studio though. But I'm not experienced at all in creating resource files with binary text and icons/bitmaps.

I am unable to attach a zip containing an example I tweaked to have two tabs on the ribbon.
Post Reply

Return to “Scripts and Functions”