XIncludeFile "TabBarGadget.pbi" Structure CharacterArray c.c[0] EndStructure Procedure.s RandomString(Length.i, CharacterSet.s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz") Protected Index.i, Len.i = Len(CharacterSet)-1 Protected *CharacterSet.CharacterArray = @CharacterSet Protected String.s = Space(Length) Protected *String.CharacterArray = @String While Index < Length *String\c[Index] = *CharacterSet\c[Random(Len)] Index + 1 Wend ProcedureReturn String EndProcedure UsePNGImageDecoder() Enumeration #Window #TabBarGadget1 #TabBarGadget2 #TabBarGadget3 #TabBarGadget4 #TextGadget EndEnumeration OpenWindow(#Window, 0, 0, 800, 200, "TabBarGadget - Demo", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered|#PB_Window_SizeGadget) SmartWindowRefresh(#Window, #True) TextGadget(#PB_Any, 5, 5, 150, 40, "Simple tabs, easy to reorder"+#LF$+"using drag and drop:", #PB_Text_Right) TabBarGadget(#TabBarGadget1, 160, 5, WindowWidth(#Window)-155, 25) AddTabBarGadgetItem(#TabBarGadget1, #PB_Default, "small") AddTabBarGadgetItem(#TabBarGadget1, #PB_Default, "normal tab") AddTabBarGadgetItem(#TabBarGadget1, #PB_Default, "very large tab") AddTabBarGadgetItem(#TabBarGadget1, #PB_Default, "another very long tab") TextGadget(#PB_Any, 5, 45, 150, 40, "Tabs with icons like in"+#LF$+"browser and a 'new'-tab button:", #PB_Text_Right) TabBarGadget(#TabBarGadget2, 160, 45, WindowWidth(#Window)-155, 25, #TabBarGadget_CloseButton) AddTabBarGadgetItem(#TabBarGadget2, #PB_Default, "Facebook", ImageID(CatchImage(#PB_Any, ?Facebook))) AddTabBarGadgetItem(#TabBarGadget2, #PB_Default, "Google", ImageID(CatchImage(#PB_Any, ?Google))) AddTabBarGadgetItem(#TabBarGadget2, #PB_Default, "GMX - E-Mail", ImageID(CatchImage(#PB_Any, ?GMX))) AddTabBarGadgetItem(#TabBarGadget2, #PB_Default, "YouTube - Broadcast Yourself", ImageID(CatchImage(#PB_Any, ?YouTube))) SetTabBarGadgetState(#TabBarGadget2, 1) AddTabBarGadgetItem(#TabBarGadget2, #TabBarGadgetItem_EmptyButton, "", ImageID(CatchImage(#PB_Any, ?Add))) TextGadget(#PB_Any, 5, 90, 150, 40, "Text cutting or navigation"+#LF$+"for more tabs and"+#LF$+"navigation with mouse wheel:", #PB_Text_Right) RandomSeed(1) TabBarGadget(#TabBarGadget3, 160, 85, WindowWidth(#Window)-155, 25, #TabBarGadget_EmptyButton|#TabBarGadget_CloseButton|#TabBarGadget_TextCutting) Define Index.i For Index = 1 To 6 AddTabBarGadgetItem(#TabBarGadget3, #PB_Default, RandomString(Random(10)+10)) Next TabBarGadget(#TabBarGadget4, 160, 110, WindowWidth(#Window)-155, 30, #TabBarGadget_EmptyButton|#TabBarGadget_CloseButton) Define Index.i For Index = 1 To 6 AddTabBarGadgetItem(#TabBarGadget4, #PB_Default, RandomString(Random(10)+10)) Next TextGadget(#TextGadget, 570, 170, 230, 40, "Resize window to see the text cutting->", #PB_Text_Right) Define Position.i Repeat Select WaitWindowEvent() Case #PB_Event_CloseWindow End Case #PB_Event_SizeWindow For Index = #TabBarGadget1 To #TabBarGadget4 ResizeGadget(Index, 160, #PB_Ignore, WindowWidth(#Window)-165, #PB_Ignore) TabBarGadgetEvent(Index) Next ResizeGadget(#TextGadget, WindowWidth(#Window)-230, #PB_Ignore, #PB_Ignore, #PB_Ignore) Case #PB_Event_Gadget Select EventGadget() Case #TabBarGadget1 To #TabBarGadget4 Select TabBarGadgetEvent(EventGadget()) Case #TabBarGadget_Event_NewTab Debug "TabBarGadgetEvent: NewTab" Position = AddTabBarGadgetItem(EventGadget(), #PB_Default, "new tab "+Str(Random(1000))) SetTabBarGadgetState(EventGadget(), Position) Case #TabBarGadget_Event_CloseTab Debug "TabBarGadgetEvent: CloseTab" RemoveTabBarGadgetItem(EventGadget(), GetTabBarGadgetState(EventGadget())) Case #TabBarGadget_Event_Change Debug "TabBarGadgetEvent: ChangeState" Debug " Position: "+Str(GetTabBarGadgetState(EventGadget())) Debug " Text: "+GetTabBarGadgetItemText(EventGadget(), GetTabBarGadgetState(EventGadget())) Case #TabBarGadget_Event_Swap Debug "TabBarGadgetEvent: Swap" Debug " Position: "+Str(GetTabBarGadgetState(EventGadget())) Debug " Text: "+GetTabBarGadgetItemText(EventGadget(), GetTabBarGadgetState(EventGadget())) EndSelect ;Debug "PureBasicEventType: "+Str(EventType()) ;Debug " Tab: "+Str(EventTab(EventGadget())) Case #TabBarGadget2 TabBarGadgetEvent(#TabBarGadget2) EndSelect EndSelect ForEver DataSection Google: Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$FFF31F0000000608,$4752730100000061 Data.q $0000E91CCEAE0042,$FF0044474B620600,$93A7BDA0FF00FF00,$7359487009000000,$130B0000130B0000 Data.q $000000189C9A0001,$0CDB07454D497407,$D8D5AB852B2F000C,$544144490A030000,$559C6BCBD225CB38 Data.q $4DF7CE7BDFE1C018,$DA1349326DC99326,$446D164A0D2268D8,$81BC2EDB56034821,$5D56EA082DA85C52 Data.q $D69B8A371BB55B76,$8310445111626E0B,$8D6C5BC17ADA8404,$D318D1A6D21214D1,$EBCB9CDF32667499 Data.q $5E700078B3C1FFA2,$A33E391D55A5C7F5,$6BCF1F6BE81FC3C9,$9E9F9E86F559AF50,$3401A3196D05DFD2 Data.q $F1802816E821B460,$95816E75385AD54E,$E2FE9CDDD7711F66,$993B3AE41BD7965F,$4636028EA52CFB7C Data.q $62B0922004482C44,$9FF973DE08136350,$A4EF6CB5A26EC508,$DF8FC9600AFDF87C,$809A211E3F753645 Data.q $8C11A3C545A96847,$D31E4F5761244846,$7B2F2E588C32188A,$161C059D08588F10,$C14B40958351211B Data.q $44C8E916E6224B19,$12F5B493AC7F0B99,$60C98B1109318663,$CE8DC321B5916163,$6FF46A540C16D25E Data.q $4615AB2B92069C3B,$CE6631D1FCF12B6F,$91ED5D2AEFF1655F,$EFB33384107BD313,$C7EE77AB9348EA70 Data.q $FEC70DED22108E4A,$F7D915717E3C3B2B,$6278FB89EAFAFBEC,$6B4FD9F1DD4A9C7A,$E9CBDC3A33768D4C Data.q $60EC2DE1FC9CB3D9,$09C41800C4254437,$E763FE9166A4526A,$6078148C0E3565D4,$BE51041F4F939072 Data.q $8E231EEF4399FA5E,$0014AD202034400D,$6C94C17829F11E75,$6F26A5C5CF2E628B,$CB551D46CAC5FCCC Data.q $AC801E8D8CDDA51D,$448F141213068989,$2AE30B4D40114845,$329EF478CF69EC9B,$81501DB2A71D1CCF Data.q $C386753C2E21BEE1,$B5015446A36883E5,$6452E02A2835B944,$FA09C9A1F55FABE6,$4B7FD6C0BABE0D7A Data.q $F924F63433AFB634,$65E8FB1E782E3F62,$2C105D73439F5CBE,$A8344010B06245C6,$7A45F6FA59E736D6 Data.q $E6A199A06D248DF9,$A34ABA53E87DD9C6,$738EF7DEE35C6E2C,$7A21068B7AC2D0B3,$7B9CFE758B260F01 Data.q $64DFDBD8EF93DB81,$2CB28DA7B940ABB0,$E57D86284BCDF1B0,$A208E6400C760CBD,$AB490F114FA900C4 Data.q $70F69F235FD141BA,$ED0A01896F11E6B3,$4C7675710D734225,$1CF8C5241D5ACD07,$DED3151A03411C51 Data.q $3CB7D483FF5B4233,$C245224721A02CDA,$E4573411E86DA58E,$82475D5EB9665FF3,$88456C431D844241 Data.q $5A9B6AE231349239,$C0D71097AB461F99,$789F930EC6DA7925,$9BC9F2BCCBAB4B8E,$06808084B262C484 Data.q $90C97FE4E7D78520,$000065958AD5917B,$42AE444E45490000,$0000000000008260 EndDataSection DataSection GMX: Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$FFF31F0000000608,$4752730100000061 Data.q $0000E91CCEAE0042,$FF0044474B620600,$93A7BDA0FF00FF00,$7359487009000000,$130B0000130B0000 Data.q $000000189C9A0001,$0CDB07454D497407,$F98733000335000C,$544144490E010000,$50C2AE2190EDCB38 Data.q $8A1460EFE40F4510,$349B62F8C9005664,$03D9A097EAB87535,$563810486A06E84B,$0E073C8102688240 Data.q $FF037686F9D890F3,$17388CCDC9998E4B,$B888BB5D750FFCBE,$03A318F7BF7EFAAA,$1087A67C038D34DE Data.q $82109CCCCC86CCDC,$E8421EAAAE666E03,$9BEC30E1C3F01D1F,$6E1EBAEBD555C6CD,$4E9D38CCC5B6DA7F Data.q $BB7099327C69A6A3,$221DBB76555000DD,$E79E466CD9894A42,$9E7939F3E6478F1C,$7D18C4A74E980633 Data.q $EFDFB8AD5AB35EBD,$652DB6D196591998,$FDFBC75D74222259,$68C51450017AF5E6,$2E5CB76ED82C58BC Data.q $027CF9E004B2CA17,$05145129492E5CB0,$99F3E72BD7AE2529,$A83EBD1E3C78CB2C,$C7D450C88B888BAA Data.q $8F2AAABFDEB4BE9D,$FE5FA14355557A31,$758E1E9814A52FC8,$4549000000005F3E,$0000826042AE444E EndDataSection DataSection Add: Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$FFF31F0000000608,$5845741900000061 Data.q $72617774666F5374,$2065626F64410065,$6165526567616D49,$00003C65C9717964,$DA78544144495C02 Data.q $3D105153684B53A4,$4B1A4987926D36F7,$B65D8DC160B44B69,$5742911161FC1115,$EC4445828A082775 Data.q $175A845C2E170B22,$A576764A0A17155A,$B48685C42E94DC14,$098D20B442C54A90,$9D3EFBE6D24D34F9 Data.q $7985E1705315F979,$E6733339CEE777DC,$1FC2CB3FF030C30A,$54860CD2E0E34421,$47B34328C75D3E0D Data.q $7F3BCC81624DA04A,$4FCC2E4CBBF54B0F,$380FBB9E34E2E00D,$07FAC70373395D6F,$C89147CAD8735651 Data.q $8ABC30421EB4206C,$16E5C29F9B9B4572,$F137D839E77E0A00,$5E58B7912B1F9AEC,$F295807672A4A3F7 Data.q $31617453B0063A54,$4C99417B594282B4,$4D87218B1EC60036,$498FE2C7EEB93E09,$A9CEE0755063B6A4 Data.q $8811B0167E9E7F6A,$2D75F0BBA648ED14,$92C6BB87F0C74D06,$C646C68F15150BE4,$2A310AA42BCFEDF1 Data.q $FF46C6816D9BD018,$6EBD136576055B46,$39DDAC9F61986BF2,$268FC9C230E7A477,$F780137A4A229973 Data.q $38652BB24B872A45,$A2702A1B67BBB315,$91CDC4ECEA8B6D25,$5FA94DD3DE548B74,$2AB2FABA95530B2E Data.q $BFE4584049D99023,$54802481CCFB9785,$E0625989B1D50A36,$EF8D2A89EF5D3832,$0958DEA76895308B Data.q $B4F131D1F5046680,$3745182FE8E10212,$64D1DACC93AA566C,$72019B2FB19F3DE1,$7E4800D022292279 Data.q $C3A13247122D6F87,$F0026966CC2C25D0,$88171E2ACA34CF9E,$36BF2CC629C40DA6,$C6EAE378FBF9CA48 Data.q $470E8F77448F51C4,$6299009AF5B2E017,$467E04C70514B90C,$AB88785B98E2640D,$1E17FDCA3BDF9B14 Data.q $80B73ED189D2B5E0,$0AE78EE4EA346EC3,$C7453C19A4EDE655,$71C181AD02DE5BBF,$8E3B16DB8C343C9C Data.q $2360405AB762A5D7,$FBC1C4F8F7D5D988,$3990F131E2DAA63E,$EFCB21164B3012FF,$4CDC000C02BB8D7D Data.q $0000B1AFD4924B07,$42AE444E45490000,$0000000000008260 EndDataSection DataSection YouTube: Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$FFF31F0000000608,$4752730100000061 Data.q $0000E91CCEAE0042,$FF0044474B620600,$93A7BDA0FF00FF00,$7359487009000000,$130B0000130B0000 Data.q $000000189C9A0001,$0CDB07454D497407,$523F98E8122D000C,$5441444951010000,$41034B3F93C5CB38 Data.q $410989B7777FC510,$51111A0860820721,$46C4A900FD1A4D8C,$116961610FC2C2D4,$E7E0A0FF11051104 Data.q $12B42C4513688130,$9E88B127602AC114,$236494616B2F66C7,$F7BCC3BB1E172B11,$E5758FBFE0660676 Data.q $81A4023031C0A2C6,$937702405B9A2FF0,$E2C0AB34A125B795,$3C45CCEE374D3E1F,$4669A156742B64F6 Data.q $95284877B4310E10,$D64835DAC819CCC2,$02DCEE0891046680,$F998F3B3E225A713,$6686A571A96D2426 Data.q $336DA47DF7C1D7BC,$2BAA0ED6C0CBBDB8,$DA7048571A93C982,$4F751DF79E78D4DB,$4D96571E020890CF Data.q $ADEBCBB75A6A23A2,$127D83A532E52F06,$8D0AA3008485703F,$CE790BEE007DF7C6,$4CB2D23E9518D7D7 Data.q $18B6F402A6A4207D,$06E6D9CAB55E3AA8,$85838D85C613F9CF,$AF44F51D62A02F6C,$C31529702D8B4C81 Data.q $8DC4CD3AB6CFA1C2,$FE15300069A2E850,$D28514193BA14AEC,$3AC26BEC607E80E4,$E400BBC6D7801E08 Data.q $A0922300F9197DFE,$00000047F2A948E1,$6042AE444E454900,$0000000000000082 EndDataSection DataSection Facebook: Data.q $0A1A0A0D474E5089,$524448490D000000,$1000000010000000,$FFF31F0000000608,$4D41670400000061 Data.q $584FD4D8D6000041,$5845741900000032,$72617774666F5374,$2065626F64410065,$6165526567616D49 Data.q $00003C65C9717964,$DA7854414449C102,$7E1841146B3D533C,$92E5EDCBDDD99DE6,$8B0544404D04A288 Data.q $4ECECACEC2C2D114,$0FF8D8DAB4913B1B,$112749B114422CEC,$2C06A092B441052B,$3124188924F44A24 Data.q $CF87CEC7DC977351,$EFBB0EECDEDCCE6C,$E5FF7BB98CEF5F3C,$1293836B4E0D4764,$C000540240104202 Data.q $43CEBA14EF071079,$CDF9493A0E5286AC,$376FE653243B1D2E,$5C42055169ED659D,$06422594178A05E5 Data.q $39E3538D33540B67,$D95A58B6941AF246,$67E0F7DCE77ADAC5,$7C4050663BAF4ECD,$B1C14125E4645380 Data.q $976B8F35230E15D0,$CC090108F0F47027,$54BB6FA588B5BB5F,$4A50B77B76998D9B,$5C6C9470E4895B43 Data.q $1E4C2E36EDBB3E52,$F6EED01C9403E2E7,$8760EEDAFC7B6AD0,$5CD94BA298509173,$05C3CA0CFA0058A8 Data.q $4A57923458A64F0B,$2C3E02DCE1ECA8D6,$8F450A21E652416E,$4E180B0C1828B664,$296716E820CE532C Data.q $5B3403EDDA6B42AA,$042D853AF09B6F7C,$5A690B669FCC1462,$EB8381244154D685,$3117EBEDC175E479 Data.q $ABA9903D9AA75A3A,$31EF27E98091D9E7,$CDCD9AE19C86B0BF,$D511513A0E58B21D,$91E8C3D20E0CF7C3 Data.q $A5B2BBED09A40C21,$0B7563F4095AF5C3,$E0B4A6AF51B6373F,$D26258F76EF40462,$DEE770746C50F7CE Data.q $C667B38134B95C73,$56345BDCD1E3C069,$9C0CCD0DB2B1A37F,$28BE76D95A183123,$BE9EF11046245507 Data.q $AF067EE6F2C684F8,$3B3445B3F1E0BFE6,$39BE8919D7100945,$E1FA789F6C1F9F42,$2EBE9A9645583EBF Data.q $E8C1943EA096BC85,$2612678DCD0555D8,$A2899293ED94B4A9,$F49551B6A3F3D7E8,$D2151F58A24C5991 Data.q $132BBC642ECD1234,$C072FD533EFEE815,$9248001FFD1BEF72,$80278201291C6904,$F6092568AD503328 Data.q $F2F950F1191B944C,$4D98CE37F6219134,$2E99643257904B25,$4674F2D4DA2D536B,$85146DC6C15372A4 Data.q $5EC18C968D878B52,$B5428AB50294F104,$6D0F7951A780619E,$F315035BAA150CC2,$13C44F0B06F8C799 Data.q $F5E1934640663E29,$8502E65C7DDE069B,$C677073CE18F2DF5,$3FC1EF5413301B57,$DDBD2F305E000601 Data.q $4900000000D2B2F9,$00826042AE444E45 EndDataSection ; IDE Options = PureBasic 4.60 (Windows - x86) ; CursorPosition = 52 ; FirstLine = 24 ; Folding = -- ; EnableXP