Code: Select all
UsePNGImageDecoder() ;Load png file
Enumeration
#Win
#TrayIconMax
#TrayIconMin
#TrayIconApp
EndEnumeration
Global igIconMax.i = CatchImage(005,?IconMax)
Global igIconMin.i = CatchImage(006,?IconMin)
Global igIconApp.i = CatchImage(007,?IconApp)
Procedure Win()
;--------------
If OpenWindow(#Win, 0, 0, 400, 200, "Win", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_ScreenCentered)
SetWindowTitle(#Win,"Win")
AddSysTrayIcon(#TrayIconMax, WindowID(#Win), igIconApp)
SysTrayIconToolTip(#TrayIconMax, "Win")
EndIf
EndProcedure
Procedure WaitForUser()
;----------------------
Protected iEvent.i = 0
Protected iExit.i = #False
Repeat
iEvent = WaitWindowEvent(1)
Select iEvent
Case #PB_Event_MaximizeWindow
SetWindowTitle(#Win,"Win Max")
ChangeSysTrayIcon(#TrayIconMax, igIconMax)
SysTrayIconToolTip(#TrayIconMax, "Win Maximised")
Case #PB_Event_MinimizeWindow
SetWindowTitle(#Win,"Win Min")
ChangeSysTrayIcon(#TrayIconMax, igIconMin)
SysTrayIconToolTip(#TrayIconMin, "Win Minimised")
Case #PB_Event_RestoreWindow
SetWindowTitle(#Win,"Win")
ChangeSysTrayIcon(#TrayIconMax, igIconApp)
SysTrayIconToolTip(#TrayIconMax, "Win")
Case #PB_Event_SysTray
Select EventGadget()
Case #TrayIconMax : HideWindow(#Win,#False)
Case #TrayIconMin : HideWindow(#Win,#False)
Case #TrayIconApp : HideWindow(#Win,#False)
EndSelect
Case #PB_Event_CloseWindow
iExit = #True
EndSelect
Until iExit = #True
EndProcedure
;###Main Entry Point
Win()
WaitForUser()
End
DataSection
IconMax:
Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$6891900000000208,$5948700900000036
Data.q $0E0000C40E000073,$00001B0E2B9501C4,$DD07454D49740700,$649BA5232D161009,$58457407000000E0
Data.q $00726F6874754174,$0C00000048CCAEA9,$6373654474584574,$006E6F6974706972,$0A00000023210913
Data.q $79706F4374584574,$0FAC007468676972,$45740E0000003ACC,$6974616572437458,$00656D6974206E6F
Data.q $09000000090FF735,$74666F5374584574,$FF705D0065726177,$5845740B0000003A,$69616C6373694474
Data.q $8FB4C0B70072656D,$7458457408000000,$00676E696E726157,$0700000087E61BC0,$72756F5374584574
Data.q $00EB83FFF5006563,$4374584574080000,$F600746E656D6D6F,$7406000000BF96CC,$656C746954745845
Data.q $00000027D2EEA800,$95912854414449EE,$F1C61041434A31D2,$02F00730B4298BDF,$2A4D828822ED1962
Data.q $97606F3B439E3041,$A58289B10F784BCE,$978688D0B051B062,$0F366C799E2D6626,$F33FE76776298642
Data.q $D390D59CB059B0CD,$260538A0CAF7945F,$47C8845F25C3B06C,$643A284E4EB16974,$55E16CC681E3D31C
Data.q $878BD40D66D0DCFA,$7808ED9EE6F87E13,$554C28655A3399E2,$A47C1A6F4472184D,$38A33834F18107CD
Data.q $982F7A7B1D9C4C44,$EC4E87FFB2AB7643,$149C172A5E0D1A8D,$7C4692A4F3249528,$5C02419C992EE9CE
Data.q $7B29C87BA733A4D3,$654AA3340740255C,$9C5B390310707DE7,$E4D82E3B96B55B73,$E7D16565F816409D
Data.q $8E7F652C017A98C3,$00E76F3A8EDE89FB,$AE444E4549000000,$0000000000826042
EndDataSection
DataSection
IconMin:
Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$6891900000000208,$5948700900000036
Data.q $0E0000C40E000073,$00001B0E2B9501C4,$DD07454D49740700,$742CB8332D161009,$5845740700000084
Data.q $00726F6874754174,$0C00000048CCAEA9,$6373654474584574,$006E6F6974706972,$0A00000023210913
Data.q $79706F4374584574,$0FAC007468676972,$45740E0000003ACC,$6974616572437458,$00656D6974206E6F
Data.q $09000000090FF735,$74666F5374584574,$FF705D0065726177,$5845740B0000003A,$69616C6373694474
Data.q $8FB4C0B70072656D,$7458457408000000,$00676E696E726157,$0700000087E61BC0,$72756F5374584574
Data.q $00EB83FFF5006563,$4374584574080000,$F600746E656D6D6F,$7406000000BF96CC,$656C746954745845
Data.q $01000027D2EEA800,$63912854414449C1,$C4C0148188F55CD4,$EF3FD9E6FDF0C0C0,$EF9FEFFFF757E15F
Data.q $3E4888B035402E77,$AA9C5BD3F7F25E9F,$B7DFE0A5367EFCFF,$291252C2AC0D50CF,$11FAFDFD16A6CFAD
Data.q $15CA4D9F3FDFEA8B,$606065B3D6E58B74,$2FBBB3D7E1FB8460,$FD7EFE67FB0B3517,$E3E18181882EDF94
Data.q $ADF61F7C5CCC75E1,$F8443554E2C80E14,$836DF994A4D80201,$220ABFD87E24771E,$79B213A7AADF61F2
Data.q $30303451AAE03DCD,$E59991917BBF7C30,$F3FC7EBF7F538DFB,$793898276BB7C5EE,$2D1186AC8EBC3C7E
Data.q $7EFCE5F3FDFFFF58,$DFBFA64646050936,$2232303218AA723E,$0B332322F341602B,$FE191FAFDFCBB1AF
Data.q $EE8D5341101663FF,$76519F3DF7E72FA4,$FFFF6BC3E7F8CD3B,$E53BA4F2669DBDFE,$D761FFFF0C2DF1D3
Data.q $3056FB0FFDF9EBF0,$8808B2596970B330,$C7EBBD3E7F682872,$270865088C0CCBBD,$C2E3D5DBF5F1FBFD
Data.q $C25C437E7F0C3981,$D1F3F563A5CEE66B,$A0F27130BFDF7FF5,$E7274FCFB7DFFA78,$FBFF682870978689
Data.q $E181818B9D898DF9,$1F3FAC2C8CDF9FFF,$0A7F2A5BA2BD78DD,$BF3F7F49D4273B13,$438ABA2C57313A7F
Data.q $819AA20181819B41,$8181819585918181,$94D9E0A424434E5D,$78F86D417FBFFF82,$02849B21AAA73D78
Data.q $2F5FD9E6FDF06E03,$4103C7A105DBF21F,$F631CABA49840000,$45490000000057ED,$0000826042AE444E
EndDataSection
DataSection
IconApp:
Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$6891900000000208,$5948700900000036
Data.q $0E0000C40E000073,$00001B0E2B9501C4,$DD07454D49740700,$F1D3311105171009,$58457407000000FD
Data.q $00726F6874754174,$0C00000048CCAEA9,$6373654474584574,$006E6F6974706972,$0A00000023210913
Data.q $79706F4374584574,$0FAC007468676972,$45740E0000003ACC,$6974616572437458,$00656D6974206E6F
Data.q $09000000090FF735,$74666F5374584574,$FF705D0065726177,$5845740B0000003A,$69616C6373694474
Data.q $8FB4C0B70072656D,$7458457408000000,$00676E696E726157,$0700000087E61BC0,$72756F5374584574
Data.q $00EB83FFF5006563,$4374584574080000,$F600746E656D6D6F,$7406000000BF96CC,$656C746954745845
Data.q $01000027D2EEA800,$9591285441444955,$7FC61050C28A3F92,$60255213E2125659,$16F01795A27C0DE1
Data.q $11586D884BC52936,$8DA0EF414EC6DAC4,$AF62424C01EA0895,$97644ACD122DBE96,$CCDE61FCC37818FD
Data.q $43E67C2FF14A69F7,$6981A3402DDB2BD7,$2523DFB6654AD2E6,$5216581860618596,$17D7DE64D4BC3872
Data.q $18486125CB252042,$E4183042252058B2,$8A25DBA0847BF61A,$9D1144451834E388,$A44A47D27364420E
Data.q $D2D3972997288A24,$CB648FCA93649FA7,$09ECCB4D1F7E89D3,$7B76E274E3D7A34D,$4A218418615ABD2C
Data.q $19F398E297D9C711,$31FAF5830C0208A5,$E22C539F33EF8121,$73E64D3071C46938,$85960B97ACF5E082
Data.q $711CBF1E302851E7,$AE2CB0F3C050A234,$00D5AE984B429457,$1B7693669F7C77EE,$D254A86CD94E98A5
Data.q $080E1DC41FBB764D,$3AE8DB616AD2EB81,$94BAE16AD36D8EBA,$948306E2398F1C4A,$C98CD98CD984C9B8
Data.q $1DF0E18952956A84,$D5E5A1A53F9CC9D3,$88DFD7ABE2A5BB7A,$31EF06F8EFC34DEF,$00005593A3106FE5
Data.q $42AE444E45490000,$0000000000008260
EndDataSection