Aqua Print Button

Share your advanced PureBasic knowledge/code with the community.
User avatar
VB6_to_PBx
Enthusiast
Enthusiast
Posts: 627
Joined: Mon May 09, 2011 9:36 am

Aqua Print Button

Post by VB6_to_PBx »

Image

Example using ImageGadget as a Button

Code: Select all

;        Download Link 
;        http://s23.postimg.org/lb2dxpusn/Aqua_Print_Button.png

UsePNGImageDecoder()

;        Change LoadImage location to what you want on your Computer
LoadImage(5,"C:\PureBASIC\_____New___Source_Codes\Aqua_Print_Button.png")


Procedure OpenWindow_0()
    OpenWindow(0, 0, 0, 300, 250, "", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_ScreenCentered)
    SetWindowColor(0, RGB(255,255,255))
    ImageGadget(1, 115, 98, 65, 30, ImageID(5))
EndProcedure


Procedure Window_0_Events(event)
    Select event
    Case #PB_Event_CloseWindow
         ProcedureReturn #False
    Case #PB_Event_Gadget
         Select EventGadget()
         Case 1 
              Select EventType()
              Case #PB_EventType_LeftClick
                   ImageGadget(1, 118, 101, 65, 30, ImageID(5))
                   Delay(100) : ImageGadget(1, 115, 98, 65, 30, ImageID(5))
              EndSelect
         EndSelect
    EndSelect

    ProcedureReturn #True

EndProcedure


OpenWindow_0()

Repeat
    event = WaitWindowEvent()
Until Window_0_Events(event) = #False

End
 
PureBasic .... making tiny electrons do what you want !

"With every mistake we must surely be learning" - George Harrison
User avatar
Guimauve
Enthusiast
Enthusiast
Posts: 742
Joined: Wed Oct 22, 2003 2:51 am
Location: Canada

Re: Aqua Print Button

Post by Guimauve »

Hello everyone,

For those you want to create more button using the same technics, more button image can be created on this website :
http://cooltext.com/

Best regards
Guimauve
Dear Optimist, Pessimist,
and Realist,

While you guys were
busy arguing about the
glass of water, I DRANK IT !

Sincerely,
the Opportunist
User avatar
Bisonte
Addict
Addict
Posts: 1305
Joined: Tue Oct 09, 2007 2:15 am

Re: Aqua Print Button

Post by Bisonte »

And if the time comes, that the image is not reachable anymore....

Replace :

Code: Select all

;        Download Link
;        http://s23.postimg.org/lb2dxpusn/Aqua_Print_Button.png

UsePNGImageDecoder()

;        Change LoadImage location to what you want on your Computer
LoadImage(5,"C:\PureBASIC\_____New___Source_Codes\Aqua_Print_Button.png")
with

Code: Select all

DataSection
  ; http://s23.postimg.org/lb2dxpusn/Aqua_Print_Button.png
  Aqua_Print_Button_png_start: ;{ Datas : Size = 2416 Bytes
  Data.q $0A1A0A0D474E5089,$524448490D000000,$1E00000041000000,$732F730000000608,$4144493309000067
  Data.q $54707B99D5855854,$BEEF7BBF3FC715F5,$84F2126CDB1E6EE3,$448D1E1210F0D024,$B4A8A84019D6C454
  Data.q $B54E3B1C1CFB58CE,$5B630ED1FEAD3AB4,$E0ED5B53FCA31F5B,$B5879153A8C0E9D4,$588F224C414685F5
  Data.q $9B5E6C2408481123,$3FDBDEEF7647D925,$A55890BBB366EEEE,$EFEFBFBB9BF333D0,$FCEFCF739CEFCE77
  Data.q $282891F3E0ADFDCE,$F1F194C6C6C79028,$EE903976F1100D71,$F6F5A5CB97343870,$8C54FA6F16804AF6
  Data.q $BF7E2972E5C032D3,$6942574A09B80F3F,$1971056AC10A381D,$01810E3C21D74138,$ACBB01F7A701DD38
  Data.q $27C48E1C3840EB56,$F9F901A0BEE3E769,$3FE43170F0F0F2F9,$95E415EB04EFCB00,$67EA9A265D6EABEB
  Data.q $359348B527B7CEE2,$D905F419E74BFF55,$081F0BDAFE9751FF,$03B7BC18D080BA86,$2448AEE6CD998F7C
  Data.q $721719119F9F1E32,$0A0A78DF07581582,$D8DB96C77296710A,$41AE2E993741B1BC,$BDB13C431A27845F
  Data.q $034EE701DA1EE78D,$80978107CFF04383,$84E7CE9249B62611,$47815FFAC2F7101C,$B36FC9FAFC42AAA2
  Data.q $C22FA0D4FFD14E74,$06FF7BA1E5E1DAD3,$93F2F0EAF075BA27,$96213863F4063FA0,$6C37700704E6CA60
  Data.q $DF4F2F2099730478,$4BAAE2D56235CBF8,$376B46F3CB7FD066,$5027C867457E1FDB,$C029E031E978747B
  Data.q $C45B494223C4A80B,$14AB60B69B80AC0A,$C5B595C25750DDB8,$6A0B46FFF30B9C0C,$0C337684AFAF6C3C
  Data.q $4EAEC09FDAD082CA,$9D24473C40301760,$0F902040E43870E0,$035753332E45BF0D,$1379F0FE35635340
  Data.q $EE69AACB4D4F65EB,$C42B0A1C1E61410F,$14924BB50E1CFE16,$04084EA91CED34D2,$35C75E50CDC03902
  Data.q $274EB9000B1604CB,$3FEEDB64A78BD1E3,$E9FEAC4015AC77D1,$70D3A75CFCBA5FD3,$A99E6F04CB35C000
  Data.q $42001B4D35EB4384,$3EC9E5E5E400AA80,$50B55237B30ECF9F,$55FAF10A4E2B2DC9,$E27D5FC219C8672A
  Data.q $EE4DD13BB03F1C47,$C35B5F35034D4F43,$C733C94B4D7735C2,$9EAA000F607E38DA,$1F0B676CE885CEB9
  Data.q $8A26CD68B71C36ED,$7255FAF1CC67166A,$3245AA91FD93F30B,$B2C9773A11BE3F27,$CF800AFCC58B183C
  Data.q $C97E74A0B302B3E7,$40A649DD0B72468A,$31DBE77147BA3A10,$4AC8C6AE064832CB,$AC22AD9DBC56CEDE
  Data.q $B521A534DC6EEA0A,$FD005AC346626C37,$BD7DFD9F55F3F85C,$B2F62D61A33117C9,$E1818C58910680F8
  Data.q $5F63D8A494208120,$73A1337DC9EF48D1,$DB12C601EB162C76,$757F312E442C06C1,$17C06074C58CECDE
  Data.q $27913E342154E523,$777F080EB743FFAE,$8FA4784DDFCFED1B,$003DFF55C69F57F6,$B825B9AD450D87BC
  Data.q $AE3A01B777F1EA2A,$055FB0953EFC068A,$36EEFE77146FD4C0,$C35CAE7800BD23C2,$4B0DBBBF8CFE77A9
  Data.q $AE2C43F158A8896E,$30FD1F747DFDC662,$AFD8643F4793B4E9,$B42E28584000D726,$B95E9F30B8A5B24C
  Data.q $2AF005A03CC62144,$02B37373524D4D4D,$267029ECD6B73054,$B331FEA4C3F74EEC,$D7053C79C40B6269
  Data.q $24ECB4F454B03DE2,$BC03A9C0A787D23C,$232CC140058FFCF1,$9D78B650B78E875C,$9B63B63F4EBFADA8
  Data.q $BCAC162009D969E8,$DEC4E0026388075D,$6A1E1726F70E0987,$9D4FD63F47FACBDF,$D0EA499E779E8378
  Data.q $BC5B2880F433CEF3,$DCFFAC2F6BFADA8E,$56AC720228470AD9,$0500936B6B6945AB,$3761C962F29EB96C
  Data.q $4092964562CE34C3,$0539000B64EF8F2A,$E87BC293CDD87033,$5DD389BECB550B78,$D39BB0EEA976A786
  Data.q $06E3566C548008E5,$C17F5FC1F0966B0A,$8F78BDC38219D0D8,$FABF989AF3E512EC,$D5FCC00AD9EE8E1E
  Data.q $9771CF44BD5850F7,$1794F7F43375B48A,$235B081CD623DE49,$9002830609498891,$9A0C3761B4E9D901
  Data.q $7EB6B7D142656492,$E86C603E3B780047,$AB219BDFD68B000C,$BCFDB03F5606F97A,$1E9B95B153F31272
  Data.q $DBFBFBD85662C007,$DCD9455652BFBF93,$6CA002AD9EE8FD46,$774B4EB74D35236E,$4D266EC8D78ED3A7
  Data.q $132A34296294A4D3,$9149C95A65361DD3,$C6934BDEF67DA627,$B3F5BFAB8FB86E96,$282581929B0E3CAC
  Data.q $0E4E2798B30D9631,$D362B25361C6598B,$A15DE28708151921,$406A0C183D76EDD8,$34C36ED57EC1B9FF
  Data.q $3B2DC6D9A729412D,$836F2B79B90F1174,$267B760CB22F25EC,$9292CC3658C4A096,$B663A73703162CDF
  Data.q $C055FB06E70E68E9,$79794A692492A807,$7A7A0311D1D1DEB9,$294B70DBB7EC393F,$048400454F24684A
  Data.q $F9BEAEAB8A7300B2,$6E6E41366E2D69B6,$D52C3658C4A09626,$1731D23B81BB7679,$FD74DC0A53D074C4
  Data.q $F18028727EF418B5,$E8E94C4A28AE30FD,$4F9E8C703080D0E8,$DDB395DD077A06FB,$A682B8A602932364
  Data.q $993DDAF3CE5D4514,$586C9C9B373994DF,$ABCAFC0CDBB65BEA,$FB4CDD1F3B624AAF,$40BEB6BB80082F9B
  Data.q $D083A7D743AECD54,$2448C103740431D3,$071E1E3742305112,$D16EB73CDFDE1DF7,$93B0AE024DD28CFA
  Data.q $5BE2988D8DF9F20C,$BAF961D3217395D0,$6E6331A4B398005B,$A4F2EA8AB0D93936,$AAE0395C72EA8A9C
  Data.q $87D9E0ECBFFEE529,$2F3DA19A7BD43336,$68C2E770FBEEEEB2,$1ACDFDE1D255FB30,$02A80FC5EC361EB4
  Data.q $2150A14399B366C0,$FAFD3C8FB5E294B0,$080EB3951385D52B,$F64D3F44FB1C8659,$6C5884163D29F765
  Data.q $DD5FAE9B07DFD632,$924A0E047FBDD9C3,$AAA00CB0DA69AED4,$9B31D8C234D2E26A,$3150B55A6FAAAF6A
  Data.q $0B56109934D08C5B,$E2212CC0966028E4,$A8BFD54D8E96D4CF,$12CBFA132B20C83C,$7AFF67F8DB7C7B6C
  Data.q $F5D74BA001C01FF4,$8451457B0C922001,$07FBD9F0301269A6,$81673350DC174A8B,$0E0911B228322847
  Data.q $6A678C9840980CC0,$191E345FEAA6C74B,$F5FFD09329C64A88,$FDDDFCDB9ED11FBF,$053884293817B630
  Data.q $1A69A69065FC3004,$FBB7BCCF46006E46,$CD5457D779F2A2DD,$0B0052708C210B71,$9B1D2D6904871920
  Data.q $132881C678D17FAA,$CDFF54FCEE6FE0F7,$740CBD76A2B4B71D,$A968022061802702,$1C605125C8C75009
  Data.q $16ED978EDF6BA075,$C58A59DACACABCF7,$C887716C20480C6A,$78517FAF9FC84D13,$23A302F5E2408804
  Data.q $F3BF1F45AFB3E2F0,$803A04EE4F5177E6,$AAD9CD84C78FC4E3,$E04A808A07601343,$EE0FED7F7E56B3EB
  Data.q $B7294CC35D56707F,$E919498584085D00,$75D74AB0DD462792,$F684F5BBFC10C8C4,$DB7B789F74B6EFCC
  Data.q $F4044614E041C0DB,$EB35EF18E8A65C61,$10A066D178C0BBF7,$959A9CD2C0B500F0,$E592D97571BAAECB
  Data.q $53149B1517E5E6D7,$AAA3504EE4BEC4B2,$5BF361FA2FB67C3E,$E758CCE7B6BFEF23,$2CE02E818F80475B
  Data.q $AD8C003B8A181A70,$6CD8474909CF9FAF,$BC41405C850A1136,$A462700F20628079,$86309D8C5485CB88
  Data.q $492FD02D4630EC61,$202D8C0169A6A0D2,$0C9C37FD4C007148,$73870E1CD5AB56E8,$3229118ECDE22B80
  Data.q $ADC63A494BD2AB93,$8F2CB2A30208044F,$EC31531C50B162C6,$E26317CE9B13B8CD,$44A6CD9B64035B53
  Data.q $EC7C4AAAAA9351A3,$4924C72CB2027172,$44D8C31551A3458A,$07FECE7FACCFE293,$59E1E622F062C99C
  Data.q $444E454900000000,$00000000826042AE
  Aqua_Print_Button_png_eof: ;}
EndDataSection

UsePNGImageDecoder()

; Change LoadImage location to what you want on your Computer
; LoadImage(5,"C:\PureBASIC\_____New___Source_Codes\Aqua_Print_Button.png")
CatchImage(5, ?Aqua_Print_Button_png_start)
PureBasic 6.21 (Windows x64) | Windows 11 Pro | AsRock B850 Steel Legend Wifi | R7 9800x3D | 64GB RAM | RTX 5080 | ThermaltakeView 270 TG ARGB | build by vannicom​​
English is not my native language... (I often use DeepL.)
User avatar
VB6_to_PBx
Enthusiast
Enthusiast
Posts: 627
Joined: Mon May 09, 2011 9:36 am

Re: Aqua Print Button

Post by VB6_to_PBx »

Update : and Merry Christmas and many prosperous New Years to come
BEEPs on Button click
and Calls PrintRequester properly on MouseUp Event
Uses ImageGadget on a CanvasGadget to get proper Mouse Events

Sort of a transparent PNG Image Gadget that responds correctly to Mouse Events

Code: Select all


;        Aqua_Print_Button_with_Image_Data__v3.pb

;        http://www.purebasic.fr/english/viewtopic.php?f=12&t=56149


Enumeration FormWindow
    #Window_0
EndEnumeration

Enumeration FormGadget
    #Canvas_0
    #Image_0
EndEnumeration

Enumeration FormImage
    #Img_Window_0_0
EndEnumeration

UsePNGImageDecoder()
CatchImage(#Img_Window_0_0, ?Aqua_Print_Button_png_start)


Procedure OpenWindow_0(x = 0, y = 0, width = 340, height = 250)

    OpenWindow(#Window_0, x, y, width, height, "", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    SetWindowColor(#Window_0, RGB(255,255,255))
    CanvasGadget(#Canvas_0, 138, 103, 65, 30)
    ImageGadget(#Image_0, 138, 103, 65, 30, ImageID(#Img_Window_0_0))

EndProcedure


Procedure Window_0_Events(event)

    Select event
    Case #PB_Event_CloseWindow
         ProcedureReturn #False
    Case #PB_Event_Gadget
         Select EventGadget()
         Case #Canvas_0
              If EventType() = #PB_EventType_LeftButtonDown
                   ImageGadget(#Image_0, 140, 105, 65, 30, ImageID(#Img_Window_0_0))
                   Beep_(1500, 100)
              EndIf

              If EventType() = #PB_EventType_LeftButtonUp 
                   ImageGadget(#Image_0, 138, 103, 65, 30, ImageID(#Img_Window_0_0)) 
                   Beep_(500, 100)
                        If PrintRequester() 
                             ;---- place printer code here
                             ;---- or just click the Printer Dialog [Cancel] button instead
                        EndIf
              EndIf
         EndSelect
    EndSelect

    ProcedureReturn #True

EndProcedure


OpenWindow_0()

Repeat : event = WaitWindowEvent() : Until Window_0_Events(event) = #False : End


DataSection
  ; http://s23.postimg.org/lb2dxpusn/Aqua_Print_Button.png
  Aqua_Print_Button_png_start: ;{ Datas : Size = 2416 Bytes
  Data.q $0A1A0A0D474E5089,$524448490D000000,$1E00000041000000,$732F730000000608,$4144493309000067
  Data.q $54707B99D5855854,$BEEF7BBF3FC715F5,$84F2126CDB1E6EE3,$448D1E1210F0D024,$B4A8A84019D6C454
  Data.q $B54E3B1C1CFB58CE,$5B630ED1FEAD3AB4,$E0ED5B53FCA31F5B,$B5879153A8C0E9D4,$588F224C414685F5
  Data.q $9B5E6C2408481123,$3FDBDEEF7647D925,$A55890BBB366EEEE,$EFEFBFBB9BF333D0,$FCEFCF739CEFCE77
  Data.q $282891F3E0ADFDCE,$F1F194C6C6C79028,$EE903976F1100D71,$F6F5A5CB97343870,$8C54FA6F16804AF6
  Data.q $BF7E2972E5C032D3,$6942574A09B80F3F,$1971056AC10A381D,$01810E3C21D74138,$ACBB01F7A701DD38
  Data.q $27C48E1C3840EB56,$F9F901A0BEE3E769,$3FE43170F0F0F2F9,$95E415EB04EFCB00,$67EA9A265D6EABEB
  Data.q $359348B527B7CEE2,$D905F419E74BFF55,$081F0BDAFE9751FF,$03B7BC18D080BA86,$2448AEE6CD998F7C
  Data.q $721719119F9F1E32,$0A0A78DF07581582,$D8DB96C77296710A,$41AE2E993741B1BC,$BDB13C431A27845F
  Data.q $034EE701DA1EE78D,$80978107CFF04383,$84E7CE9249B62611,$47815FFAC2F7101C,$B36FC9FAFC42AAA2
  Data.q $C22FA0D4FFD14E74,$06FF7BA1E5E1DAD3,$93F2F0EAF075BA27,$96213863F4063FA0,$6C37700704E6CA60
  Data.q $DF4F2F2099730478,$4BAAE2D56235CBF8,$376B46F3CB7FD066,$5027C867457E1FDB,$C029E031E978747B
  Data.q $C45B494223C4A80B,$14AB60B69B80AC0A,$C5B595C25750DDB8,$6A0B46FFF30B9C0C,$0C337684AFAF6C3C
  Data.q $4EAEC09FDAD082CA,$9D24473C40301760,$0F902040E43870E0,$035753332E45BF0D,$1379F0FE35635340
  Data.q $EE69AACB4D4F65EB,$C42B0A1C1E61410F,$14924BB50E1CFE16,$04084EA91CED34D2,$35C75E50CDC03902
  Data.q $274EB9000B1604CB,$3FEEDB64A78BD1E3,$E9FEAC4015AC77D1,$70D3A75CFCBA5FD3,$A99E6F04CB35C000
  Data.q $42001B4D35EB4384,$3EC9E5E5E400AA80,$50B55237B30ECF9F,$55FAF10A4E2B2DC9,$E27D5FC219C8672A
  Data.q $EE4DD13BB03F1C47,$C35B5F35034D4F43,$C733C94B4D7735C2,$9EAA000F607E38DA,$1F0B676CE885CEB9
  Data.q $8A26CD68B71C36ED,$7255FAF1CC67166A,$3245AA91FD93F30B,$B2C9773A11BE3F27,$CF800AFCC58B183C
  Data.q $C97E74A0B302B3E7,$40A649DD0B72468A,$31DBE77147BA3A10,$4AC8C6AE064832CB,$AC22AD9DBC56CEDE
  Data.q $B521A534DC6EEA0A,$FD005AC346626C37,$BD7DFD9F55F3F85C,$B2F62D61A33117C9,$E1818C58910680F8
  Data.q $5F63D8A494208120,$73A1337DC9EF48D1,$DB12C601EB162C76,$757F312E442C06C1,$17C06074C58CECDE
  Data.q $27913E342154E523,$777F080EB743FFAE,$8FA4784DDFCFED1B,$003DFF55C69F57F6,$B825B9AD450D87BC
  Data.q $AE3A01B777F1EA2A,$055FB0953EFC068A,$36EEFE77146FD4C0,$C35CAE7800BD23C2,$4B0DBBBF8CFE77A9
  Data.q $AE2C43F158A8896E,$30FD1F747DFDC662,$AFD8643F4793B4E9,$B42E28584000D726,$B95E9F30B8A5B24C
  Data.q $2AF005A03CC62144,$02B37373524D4D4D,$267029ECD6B73054,$B331FEA4C3F74EEC,$D7053C79C40B6269
  Data.q $24ECB4F454B03DE2,$BC03A9C0A787D23C,$232CC140058FFCF1,$9D78B650B78E875C,$9B63B63F4EBFADA8
  Data.q $BCAC162009D969E8,$DEC4E0026388075D,$6A1E1726F70E0987,$9D4FD63F47FACBDF,$D0EA499E779E8378
  Data.q $BC5B2880F433CEF3,$DCFFAC2F6BFADA8E,$56AC720228470AD9,$0500936B6B6945AB,$3761C962F29EB96C
  Data.q $4092964562CE34C3,$0539000B64EF8F2A,$E87BC293CDD87033,$5DD389BECB550B78,$D39BB0EEA976A786
  Data.q $06E3566C548008E5,$C17F5FC1F0966B0A,$8F78BDC38219D0D8,$FABF989AF3E512EC,$D5FCC00AD9EE8E1E
  Data.q $9771CF44BD5850F7,$1794F7F43375B48A,$235B081CD623DE49,$9002830609498891,$9A0C3761B4E9D901
  Data.q $7EB6B7D142656492,$E86C603E3B780047,$AB219BDFD68B000C,$BCFDB03F5606F97A,$1E9B95B153F31272
  Data.q $DBFBFBD85662C007,$DCD9455652BFBF93,$6CA002AD9EE8FD46,$774B4EB74D35236E,$4D266EC8D78ED3A7
  Data.q $132A34296294A4D3,$9149C95A65361DD3,$C6934BDEF67DA627,$B3F5BFAB8FB86E96,$282581929B0E3CAC
  Data.q $0E4E2798B30D9631,$D362B25361C6598B,$A15DE28708151921,$406A0C183D76EDD8,$34C36ED57EC1B9FF
  Data.q $3B2DC6D9A729412D,$836F2B79B90F1174,$267B760CB22F25EC,$9292CC3658C4A096,$B663A73703162CDF
  Data.q $C055FB06E70E68E9,$79794A692492A807,$7A7A0311D1D1DEB9,$294B70DBB7EC393F,$048400454F24684A
  Data.q $F9BEAEAB8A7300B2,$6E6E41366E2D69B6,$D52C3658C4A09626,$1731D23B81BB7679,$FD74DC0A53D074C4
  Data.q $F18028727EF418B5,$E8E94C4A28AE30FD,$4F9E8C703080D0E8,$DDB395DD077A06FB,$A682B8A602932364
  Data.q $993DDAF3CE5D4514,$586C9C9B373994DF,$ABCAFC0CDBB65BEA,$FB4CDD1F3B624AAF,$40BEB6BB80082F9B
  Data.q $D083A7D743AECD54,$2448C103740431D3,$071E1E3742305112,$D16EB73CDFDE1DF7,$93B0AE024DD28CFA
  Data.q $5BE2988D8DF9F20C,$BAF961D3217395D0,$6E6331A4B398005B,$A4F2EA8AB0D93936,$AAE0395C72EA8A9C
  Data.q $87D9E0ECBFFEE529,$2F3DA19A7BD43336,$68C2E770FBEEEEB2,$1ACDFDE1D255FB30,$02A80FC5EC361EB4
  Data.q $2150A14399B366C0,$FAFD3C8FB5E294B0,$080EB3951385D52B,$F64D3F44FB1C8659,$6C5884163D29F765
  Data.q $DD5FAE9B07DFD632,$924A0E047FBDD9C3,$AAA00CB0DA69AED4,$9B31D8C234D2E26A,$3150B55A6FAAAF6A
  Data.q $0B56109934D08C5B,$E2212CC0966028E4,$A8BFD54D8E96D4CF,$12CBFA132B20C83C,$7AFF67F8DB7C7B6C
  Data.q $F5D74BA001C01FF4,$8451457B0C922001,$07FBD9F0301269A6,$81673350DC174A8B,$0E0911B228322847
  Data.q $6A678C9840980CC0,$191E345FEAA6C74B,$F5FFD09329C64A88,$FDDDFCDB9ED11FBF,$053884293817B630
  Data.q $1A69A69065FC3004,$FBB7BCCF46006E46,$CD5457D779F2A2DD,$0B0052708C210B71,$9B1D2D6904871920
  Data.q $132881C678D17FAA,$CDFF54FCEE6FE0F7,$740CBD76A2B4B71D,$A968022061802702,$1C605125C8C75009
  Data.q $16ED978EDF6BA075,$C58A59DACACABCF7,$C887716C20480C6A,$78517FAF9FC84D13,$23A302F5E2408804
  Data.q $F3BF1F45AFB3E2F0,$803A04EE4F5177E6,$AAD9CD84C78FC4E3,$E04A808A07601343,$EE0FED7F7E56B3EB
  Data.q $B7294CC35D56707F,$E919498584085D00,$75D74AB0DD462792,$F684F5BBFC10C8C4,$DB7B789F74B6EFCC
  Data.q $F4044614E041C0DB,$EB35EF18E8A65C61,$10A066D178C0BBF7,$959A9CD2C0B500F0,$E592D97571BAAECB
  Data.q $53149B1517E5E6D7,$AAA3504EE4BEC4B2,$5BF361FA2FB67C3E,$E758CCE7B6BFEF23,$2CE02E818F80475B
  Data.q $AD8C003B8A181A70,$6CD8474909CF9FAF,$BC41405C850A1136,$A462700F20628079,$86309D8C5485CB88
  Data.q $492FD02D4630EC61,$202D8C0169A6A0D2,$0C9C37FD4C007148,$73870E1CD5AB56E8,$3229118ECDE22B80
  Data.q $ADC63A494BD2AB93,$8F2CB2A30208044F,$EC31531C50B162C6,$E26317CE9B13B8CD,$44A6CD9B64035B53
  Data.q $EC7C4AAAAA9351A3,$4924C72CB2027172,$44D8C31551A3458A,$07FECE7FACCFE293,$59E1E622F062C99C
  Data.q $444E454900000000,$00000000826042AE
  Aqua_Print_Button_png_eof: ;}
EndDataSection

 
PureBasic .... making tiny electrons do what you want !

"With every mistake we must surely be learning" - George Harrison
User avatar
Andre
PureBasic Team
PureBasic Team
Posts: 2137
Joined: Fri Apr 25, 2003 6:14 pm
Location: Germany (Saxony, Deutscheinsiedel)
Contact:

Re: Aqua Print Button

Post by Andre »

Just tried this latest piece of code on my MacBook with OS 10.5.8 (have commented the WinAPI Beep_() function calls) - but couldn't see any effect. The program only reacts on closing the window.... anyone else? Maybe CanvasGadget or available events are different between Windows and MacOS...!?
Bye,
...André
(PureBasicTeam::Docs & Support - PureArea.net | Order:: PureBasic | PureVisionXP)
User avatar
J. Baker
Addict
Addict
Posts: 2181
Joined: Sun Apr 27, 2003 8:12 am
Location: USA
Contact:

Re: Aqua Print Button

Post by J. Baker »

Smaller DataSection. ;)

Code: Select all

DataSection
  ; http://s23.postimg.org/lb2dxpusn/Aqua_Print_Button.png
  Aqua_Print_Button_png_start: ; size : 890 bytes
    Data.q $0A1A0A0D474E5089,$524448490D000000,$1E00000041000000,$83F1440000000308,$544C50BD00000055
    Data.q $7B541A00D8AF7E45,$6D4A2A320000CEA3,$000083633F000000,$0000000006000000,$220802A047080000
    Data.q $774A000000540000,$00010101000000A9,$0000000000004B00,$0000010101000000,$3097623300000000
    Data.q $544C37A58A61CD79,$8B43FFE3A34E351F,$2FCF8F55FFEFB2E1,$700800BB5F12AB65,$D796841D0020170E
    Data.q $00E6B786563D25FF,$EB9F5CFFFCBF9131,$AF77F5A865FFFFC9,$91FBB26FD6AB94E5,$E7A96CFFD090EAC5
    Data.q $FFD2EEC59BFFFFD6,$A3FFC584E4AA70FF,$FFFFDCFFEDD5FFE4,$AA0CF8DAB7FFBB7A,$52741800000071EF
    Data.q $4AF5D4FDE6FD534E,$FCBFFE677AA556FA,$154191EE0D1EFE29,$0000BB3C6BD60006,$5E78544144495402
    Data.q $45103AE36E879595,$D543125942F5171D,$FFEF7DF6CB525EE2,$0241373450EF6B3F,$C1CD23D05C60732C
    Data.q $437057EB9358218C,$73DCF035FCD1F1AE,$7BF8C78E66134B66,$FC3E9E26E1974B03,$DFC4699709BC699B
    Data.q $032997E1FE8DB81A,$DC3712195FCE5E1C,$C26DDC739BFF8EEC,$7EBE182D064E7194,$E0405F0328546186
    Data.q $0D1916050F873F1F,$51CFFBCA9D39B66C,$E2434896599B4E9E,$6AC63FDF0FEFBE85,$E234C27A03EB0F9A
    Data.q $EBD7ADD820E7827C,$345EB5B1046885F2,$50F2C4D3713520A8,$2D924330218767A2,$EB120C006EE825D7
    Data.q $84214D48145C42E6,$6618F4BD6095DEFC,$AB75D0C0D3B0BDC8,$15BAAC515D76D8AD,$B2873798C9D1453E
    Data.q $358141701C420F2B,$125C30346E9E90C8,$DA5B14CF23456CCB,$4B2727155400230E,$2406069DFEA59C26
    Data.q $564B1B3BA3BBB866,$D3A730F11C31E628,$59C1872C83F06970,$1EB56E03C8686A3D,$630C31151552711F
    Data.q $3FEAE90C82C15668,$455418471CC40C0D,$B8348E14D0C61905,$23C955550C0D0FFE,$3431B5C2A2A2AA0C
    Data.q $7CF57D99AE2D83BE,$23510857B10B5F61,$57359E320C82A2A9,$B4F63F766CF2192E,$15490180AB430B6D
    Data.q $75D6D8849F686415,$13C128BCCFDC363B,$55F7DF494FF1A515,$515490AEBA8AF75D,$DCEFD2380FD750F1
    Data.q $B1C0F3D363B10D8F,$9EC4F4E6CE27BEC6,$7FD19FD10E418096,$C848469EE71C0E6B,$9CCDFC494C1659C0
    Data.q $868180461E069833,$7298BF6E94130458,$EAE12C177024C10B,$6DF8D68A83B22E5F,$81941D8041512D06
    Data.q $47F4C3847E748A63,$2A30C0146F1DCE38,$61327D3581A76658,$F40A4C676B8E056A,$6A6E7B6651E782FB
    Data.q $F052E516767AEB82,$A18890CCA2C7ADF6,$11B92483137BFDFF,$CE6201FC317FCD09,$0000301F5B37920C
    Data.q $42AE444E45490000
    Data.b $60,$82
  Aqua_Print_Button_png_end: ;}
EndDataSection
www.posemotion.com

PureBasic Tools for OS X: PureMonitor, plist Tool, Data Maker & App Chef


Even the vine knows it surroundings but the man with eyes does not.
User avatar
VB6_to_PBx
Enthusiast
Enthusiast
Posts: 627
Joined: Mon May 09, 2011 9:36 am

Re: Aqua Print Button

Post by VB6_to_PBx »

Andre wrote:Just tried this latest piece of code on my MacBook with OS 10.5.8 (have commented the WinAPI Beep_() function calls) - but couldn't see any effect. The program only reacts on closing the window.... anyone else? Maybe CanvasGadget or available events are different between Windows and MacOS...!?
i don't have Linux or Mac Computers to test it on ,
i thought it should be Cross-Platform if the WinAPI Beep_() function calls were Commented out ? :(

i wish PureBasic had a ImageGadget that responded to Mouse Hover, Mouse In/Out, Mouse LeftButton/RightButton, KeyBoard Keys
and had ability of Transparent Background and would handle PNG and GIFs with different Pictures for = Hover, Mouse Button Down, UP
and also ability to display Text with or without Transparent backgrounds.

it would be easy to even create 3D looking Text effects with 2 ImageGadgets slightly offset ontop each other

If not an ImageGadget , then another type ButtonImageGadget that had all the above abilities would be great :)
 
PureBasic .... making tiny electrons do what you want !

"With every mistake we must surely be learning" - George Harrison
User avatar
VB6_to_PBx
Enthusiast
Enthusiast
Posts: 627
Joined: Mon May 09, 2011 9:36 am

Re: Aqua Print Button

Post by VB6_to_PBx »

J. Baker wrote:Smaller DataSection. ;)

Code: Select all

DataSection
  ; http://s23.postimg.org/lb2dxpusn/Aqua_Print_Button.png
  Aqua_Print_Button_png_start: ; size : 890 bytes
    Data.q $0A1A0A0D474E5089,$524448490D000000,$1E00000041000000,$83F1440000000308,$544C50BD00000055
    Data.q $7B541A00D8AF7E45,$6D4A2A320000CEA3,$000083633F000000,$0000000006000000,$220802A047080000
    Data.q $774A000000540000,$00010101000000A9,$0000000000004B00,$0000010101000000,$3097623300000000
    Data.q $544C37A58A61CD79,$8B43FFE3A34E351F,$2FCF8F55FFEFB2E1,$700800BB5F12AB65,$D796841D0020170E
    Data.q $00E6B786563D25FF,$EB9F5CFFFCBF9131,$AF77F5A865FFFFC9,$91FBB26FD6AB94E5,$E7A96CFFD090EAC5
    Data.q $FFD2EEC59BFFFFD6,$A3FFC584E4AA70FF,$FFFFDCFFEDD5FFE4,$AA0CF8DAB7FFBB7A,$52741800000071EF
    Data.q $4AF5D4FDE6FD534E,$FCBFFE677AA556FA,$154191EE0D1EFE29,$0000BB3C6BD60006,$5E78544144495402
    Data.q $45103AE36E879595,$D543125942F5171D,$FFEF7DF6CB525EE2,$0241373450EF6B3F,$C1CD23D05C60732C
    Data.q $437057EB9358218C,$73DCF035FCD1F1AE,$7BF8C78E66134B66,$FC3E9E26E1974B03,$DFC4699709BC699B
    Data.q $032997E1FE8DB81A,$DC3712195FCE5E1C,$C26DDC739BFF8EEC,$7EBE182D064E7194,$E0405F0328546186
    Data.q $0D1916050F873F1F,$51CFFBCA9D39B66C,$E2434896599B4E9E,$6AC63FDF0FEFBE85,$E234C27A03EB0F9A
    Data.q $EBD7ADD820E7827C,$345EB5B1046885F2,$50F2C4D3713520A8,$2D924330218767A2,$EB120C006EE825D7
    Data.q $84214D48145C42E6,$6618F4BD6095DEFC,$AB75D0C0D3B0BDC8,$15BAAC515D76D8AD,$B2873798C9D1453E
    Data.q $358141701C420F2B,$125C30346E9E90C8,$DA5B14CF23456CCB,$4B2727155400230E,$2406069DFEA59C26
    Data.q $564B1B3BA3BBB866,$D3A730F11C31E628,$59C1872C83F06970,$1EB56E03C8686A3D,$630C31151552711F
    Data.q $3FEAE90C82C15668,$455418471CC40C0D,$B8348E14D0C61905,$23C955550C0D0FFE,$3431B5C2A2A2AA0C
    Data.q $7CF57D99AE2D83BE,$23510857B10B5F61,$57359E320C82A2A9,$B4F63F766CF2192E,$15490180AB430B6D
    Data.q $75D6D8849F686415,$13C128BCCFDC363B,$55F7DF494FF1A515,$515490AEBA8AF75D,$DCEFD2380FD750F1
    Data.q $B1C0F3D363B10D8F,$9EC4F4E6CE27BEC6,$7FD19FD10E418096,$C848469EE71C0E6B,$9CCDFC494C1659C0
    Data.q $868180461E069833,$7298BF6E94130458,$EAE12C177024C10B,$6DF8D68A83B22E5F,$81941D8041512D06
    Data.q $47F4C3847E748A63,$2A30C0146F1DCE38,$61327D3581A76658,$F40A4C676B8E056A,$6A6E7B6651E782FB
    Data.q $F052E516767AEB82,$A18890CCA2C7ADF6,$11B92483137BFDFF,$CE6201FC317FCD09,$0000301F5B37920C
    Data.q $42AE444E45490000
    Data.b $60,$82
  Aqua_Print_Button_png_end: ;}
EndDataSection

J. Baker , thanks for reducing the .PNG DataSection Code

How did you do that ?? :)
did you just use a better Image Software Program to Compress the PNG Image further smaller ?
 
PureBasic .... making tiny electrons do what you want !

"With every mistake we must surely be learning" - George Harrison
User avatar
J. Baker
Addict
Addict
Posts: 2181
Joined: Sun Apr 27, 2003 8:12 am
Location: USA
Contact:

Re: Aqua Print Button

Post by J. Baker »

VB6_to_PBx wrote:

J. Baker , thanks for reducing the .PNG DataSection Code

How did you do that ?? :)
did you just use a better Image Software Program to Compress the PNG Image further smaller ?
ImageAlpha - http://pngmini.com/ ;)
www.posemotion.com

PureBasic Tools for OS X: PureMonitor, plist Tool, Data Maker & App Chef


Even the vine knows it surroundings but the man with eyes does not.
User avatar
VB6_to_PBx
Enthusiast
Enthusiast
Posts: 627
Joined: Mon May 09, 2011 9:36 am

Re: Aqua Print Button

Post by VB6_to_PBx »

J. Baker wrote:
VB6_to_PBx wrote:

J. Baker , thanks for reducing the .PNG DataSection Code

How did you do that ?? :)
did you just use a better Image Software Program to Compress the PNG Image further smaller ?
ImageAlpha - http://pngmini.com/ ;)

J. Baker , Thanks for the ImageAlpha Link

i Updated StringGadget Text Editor with your smaller Aqua Print Button data

Code: Select all

;        StringGadget_TextEditor_with_Aqua_Print_Button__v1.pb

;        http://www.purebasic.fr/english/viewtopic.php?f=12&t=56149

Enumeration
    #Window_0
    #Img_Window_0_0
    #ButtonGadgetPrint
    #StringGadgetTextEditor
    #Canvas_0
    #Image_0
    #CourierNewFont10
    #PrinterGadgetFont
EndEnumeration

UsePNGImageDecoder()
CatchImage(#Img_Window_0_0, ?Aqua_Print_Button_png_start)


LoadFont(#CourierNewFont10, "Courier New", 10 )
LoadFont(#PrinterGadgetFont, "Courier New", 10 * 6.25 )     ;----- 6.25 works better with Australian Paper Sizes
;LoadFont(#PrinterGadgetFont, "Courier New", 10 * 6.4 )     ;----- 6.4 makes FontSize = 10 for PrinterGadget

OpenWindow(#Window_0,0,0,800,600,"StringGadget_TextEditor",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    SetWindowColor(#Window_0,RGB(128,128,128))
StringGadget(#StringGadgetTextEditor,10,10,780,520,"", #WS_HSCROLL |#WS_VSCROLL | #ES_MULTILINE )
    SetGadgetFont(#StringGadgetTextEditor, FontID(#CourierNewFont10))
    SetGadgetColor(#StringGadgetTextEditor,#PB_Gadget_FrontColor,RGB(0,0,190))
CanvasGadget(#Canvas_0, 60, 560, 60, 28)
    If StartDrawing(CanvasOutput(#Canvas_0))
         Box(0, 0, OutputWidth(), OutputHeight(), RGB(128,128,128))  ;----- Set CanvasGadget BackColor to match Window Color
         StopDrawing()
    EndIf
ImageGadget(#Image_0, 58, 560, 100, 28, ImageID(#Img_Window_0_0))    ;----- uses CanvasGadget BackColor for transparency Print Button Color


Procedure Window_0_Events(event)

    Select event
    Case #PB_Event_CloseWindow : ProcedureReturn #False
    Case #PB_Event_Gadget
         Select EventGadget()
         Case #Canvas_0
              If EventType() = #PB_EventType_LeftButtonDown
                   ImageGadget(#Image_0, 60, 562, 100, 28, ImageID(#Img_Window_0_0))
              EndIf

              If EventType() = #PB_EventType_LeftButtonUp
                   ImageGadget(#Image_0, 58, 560, 100, 28, ImageID(#Img_Window_0_0))

                   String$ = GetGadgetText(#StringGadgetTextEditor) ;: Debug CountString(String$,#CRLF$)
                           
                   If PrintRequester()
                        If StartPrinting("")
                             If StartDrawing(PrinterOutput())
                                  BackColor(RGB(255, 255, 255))
                                  FrontColor(RGB(0, 0, 190))
                                  DrawingFont(FontID(#PrinterGadgetFont))
                                  ;--------- Page 1 of 5
                                  For i = 1 To 70
                                       DrawText(0, ((i - 1) * TextHeight("gM")), StringField(String$,i,#CRLF$))
                                  Next

                                  ;--------- Page 2 of 5
                                  If CountString(String$,#CRLF$) > 70
                                       NewPrinterPage()

                                       For i = 71 To 140
                                            DrawText(0, ((i - 69) * TextHeight("gM")), StringField(String$,i,#CRLF$))
                                       Next
                                  EndIf

                                  ;--------- Page 3 of 5
                                  If CountString(String$,#CRLF$) > 140
                                       NewPrinterPage()

                                       For i = 141 To 210
                                            DrawText(0, ((i - 139) * TextHeight("gM")), StringField(String$,i,#CRLF$))
                                       Next
                                  EndIf

                                  ;--------- Page 4 of 5
                                  If CountString(String$,#CRLF$) > 210
                                       NewPrinterPage()

                                       For i = 211 To 280
                                            DrawText(0, ((i - 209) * TextHeight("gM")), StringField(String$,i,#CRLF$))
                                       Next
                                  EndIf

                                  ;--------- Page 5 of 5
                                  If CountString(String$,#CRLF$) > 280
                                       NewPrinterPage()

                                       For i = 281 To CountString(String$,#CRLF$) + 1
                                            DrawText(0, ((i - 279) * TextHeight("gM")), StringField(String$,i,#CRLF$))
                                      Next
                                  EndIf

                                  StopDrawing()
                             EndIf
                        StopPrinting()
                        EndIf
                   EndIf
              EndIf
         EndSelect
    EndSelect

    ProcedureReturn #True

EndProcedure


Repeat : event = WaitWindowEvent() : Until Window_0_Events(event) = #False : End


DataSection
  ; http://s23.postimg.org/lb2dxpusn/Aqua_Print_Button.png
  Aqua_Print_Button_png_start: ; size : 890 bytes
    Data.q $0A1A0A0D474E5089,$524448490D000000,$1E00000041000000,$83F1440000000308,$544C50BD00000055
    Data.q $7B541A00D8AF7E45,$6D4A2A320000CEA3,$000083633F000000,$0000000006000000,$220802A047080000
    Data.q $774A000000540000,$00010101000000A9,$0000000000004B00,$0000010101000000,$3097623300000000
    Data.q $544C37A58A61CD79,$8B43FFE3A34E351F,$2FCF8F55FFEFB2E1,$700800BB5F12AB65,$D796841D0020170E
    Data.q $00E6B786563D25FF,$EB9F5CFFFCBF9131,$AF77F5A865FFFFC9,$91FBB26FD6AB94E5,$E7A96CFFD090EAC5
    Data.q $FFD2EEC59BFFFFD6,$A3FFC584E4AA70FF,$FFFFDCFFEDD5FFE4,$AA0CF8DAB7FFBB7A,$52741800000071EF
    Data.q $4AF5D4FDE6FD534E,$FCBFFE677AA556FA,$154191EE0D1EFE29,$0000BB3C6BD60006,$5E78544144495402
    Data.q $45103AE36E879595,$D543125942F5171D,$FFEF7DF6CB525EE2,$0241373450EF6B3F,$C1CD23D05C60732C
    Data.q $437057EB9358218C,$73DCF035FCD1F1AE,$7BF8C78E66134B66,$FC3E9E26E1974B03,$DFC4699709BC699B
    Data.q $032997E1FE8DB81A,$DC3712195FCE5E1C,$C26DDC739BFF8EEC,$7EBE182D064E7194,$E0405F0328546186
    Data.q $0D1916050F873F1F,$51CFFBCA9D39B66C,$E2434896599B4E9E,$6AC63FDF0FEFBE85,$E234C27A03EB0F9A
    Data.q $EBD7ADD820E7827C,$345EB5B1046885F2,$50F2C4D3713520A8,$2D924330218767A2,$EB120C006EE825D7
    Data.q $84214D48145C42E6,$6618F4BD6095DEFC,$AB75D0C0D3B0BDC8,$15BAAC515D76D8AD,$B2873798C9D1453E
    Data.q $358141701C420F2B,$125C30346E9E90C8,$DA5B14CF23456CCB,$4B2727155400230E,$2406069DFEA59C26
    Data.q $564B1B3BA3BBB866,$D3A730F11C31E628,$59C1872C83F06970,$1EB56E03C8686A3D,$630C31151552711F
    Data.q $3FEAE90C82C15668,$455418471CC40C0D,$B8348E14D0C61905,$23C955550C0D0FFE,$3431B5C2A2A2AA0C
    Data.q $7CF57D99AE2D83BE,$23510857B10B5F61,$57359E320C82A2A9,$B4F63F766CF2192E,$15490180AB430B6D
    Data.q $75D6D8849F686415,$13C128BCCFDC363B,$55F7DF494FF1A515,$515490AEBA8AF75D,$DCEFD2380FD750F1
    Data.q $B1C0F3D363B10D8F,$9EC4F4E6CE27BEC6,$7FD19FD10E418096,$C848469EE71C0E6B,$9CCDFC494C1659C0
    Data.q $868180461E069833,$7298BF6E94130458,$EAE12C177024C10B,$6DF8D68A83B22E5F,$81941D8041512D06
    Data.q $47F4C3847E748A63,$2A30C0146F1DCE38,$61327D3581A76658,$F40A4C676B8E056A,$6A6E7B6651E782FB
    Data.q $F052E516767AEB82,$A18890CCA2C7ADF6,$11B92483137BFDFF,$CE6201FC317FCD09,$0000301F5B37920C
    Data.q $42AE444E45490000
    Data.b $60,$82
  Aqua_Print_Button_png_end: ;}
EndDataSection

 
PureBasic .... making tiny electrons do what you want !

"With every mistake we must surely be learning" - George Harrison
Post Reply