isdonateandmail.iss 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. // -- IsDonateAndMail.iss --
  2. // Include file which adds donate and subscribe buttons to Setup
  3. //
  4. [Files]
  5. Source: "isdonate.bmp"; Flags: dontcopy noencryption
  6. Source: "ismail.bmp"; Flags: dontcopy noencryption
  7. [CustomMessages]
  8. ; No need to localize: The IS website is in English only
  9. IsDonateAndMailDonateCaption=Donate
  10. IsDonateAndMailDonateHint=Support Inno Setup - Thank you!
  11. IsDonateAndMailMailCaption=Subscribe
  12. IsDonateAndMailMailHint=Be notified by e-mail of new Inno Setup releases
  13. [Code]
  14. procedure DonateBitmapButtonOnClick(Sender: TObject);
  15. var
  16. ErrorCode: Integer;
  17. begin
  18. ShellExecAsOriginalUser('open', 'https://jrsoftware.org/isdonate.php', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
  19. end;
  20. procedure MailBitmapButtonOnClick(Sender: TObject);
  21. var
  22. ErrorCode: Integer;
  23. begin
  24. ShellExecAsOriginalUser('open', 'https://jrsoftware.org/ismail.php', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
  25. end;
  26. <event('InitializeWizard')>
  27. procedure IsDonateAndMailInitializeWizard;
  28. var
  29. ImageFileName: String;
  30. DonateBitmapButton, MailBitmapButton: TBitmapButton;
  31. BevelTop: Integer;
  32. begin
  33. if WizardSilent then
  34. Exit;
  35. ImageFileName := ExpandConstant('{tmp}\isdonate.bmp');
  36. ExtractTemporaryFile(ExtractFileName(ImageFileName));
  37. DonateBitmapButton := TBitmapButton.Create(WizardForm);
  38. DonateBitmapButton.AutoSize := True;
  39. DonateBitmapButton.Bitmap.LoadFromFile(ImageFileName);
  40. DonateBitmapButton.Caption := CustomMessage('IsDonateAndMailDonateCaption');
  41. DonateBitmapButton.Hint := CustomMessage('IsDonateAndMailDonateHint');
  42. DonateBitmapButton.ShowHint := True;
  43. DonateBitmapButton.Anchors := [akLeft, akBottom];
  44. BevelTop := WizardForm.Bevel.Top;
  45. DonateBitmapButton.Top := BevelTop + (WizardForm.ClientHeight - BevelTop - DonateBitmapButton.Bitmap.Height) div 2;
  46. DonateBitmapButton.Left := DonateBitmapButton.Top - BevelTop;
  47. DonateBitmapButton.Cursor := crHand;
  48. DonateBitmapButton.OnClick := @DonateBitmapButtonOnClick;
  49. DonateBitmapButton.Parent := WizardForm;
  50. ImageFileName := ExpandConstant('{tmp}\ismail.bmp');
  51. ExtractTemporaryFile(ExtractFileName(ImageFileName));
  52. MailBitmapButton := TBitmapButton.Create(WizardForm);
  53. MailBitmapButton.AutoSize := True;
  54. MailBitmapButton.Bitmap.LoadFromFile(ImageFileName);
  55. MailBitmapButton.Caption := CustomMessage('IsDonateAndMailMailCaption');
  56. MailBitmapButton.Hint := CustomMessage('IsDonateAndMailMailHint');
  57. MailBitmapButton.ShowHint := True;
  58. MailBitmapButton.Anchors := [akLeft, akBottom];
  59. MailBitmapButton.Top := DonateBitmapButton.Top
  60. MailBitmapButton.Left := DonateBitmapButton.Left + DonateBitmapButton.Width + ScaleX(4);
  61. MailBitmapButton.Cursor := crHand;
  62. MailBitmapButton.OnClick := @MailBitmapButtonOnClick;
  63. MailBitmapButton.Parent := WizardForm;
  64. end;