Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


MikeMon last won the day on April 3

MikeMon had the most liked content!

Community Reputation

9 Neutral

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Hi @Dave Nottage After some playing around, I found out what the problem was. The "Authorization" header should not be encoded. Now, everything works fine by using REST. FYI, the pre-complied RESTDebugger.exe that comes with Delphi 10.3.3 doesn't have the "Do Not Encode" checkbox when adding parameters. I had to recompile its project and it was there.
  2. Hi Dave. Thank you for your valuable input. I compiled and ran your desktop app and it's working perfectly. I will check your code and see what I'm missing.
  3. Hi I've setup firebase cloud messaging and everything is working fine both on iOS and Android, i.e. I can send push notifications through the Firebase Cloud Messaging console. What I want to do is to develop my own console with which I want to send my firebase push notifications. I came across the following in the FCM app server protocols: https://fcm.googleapis.com/fcm/send To test it, I'm using the "Embarcadero REST Debugger" software. As per the FCM documentation, I've add a header called "Authorization" with a value of "key=XYZ". XYZ is the "Server Key" value in the Firebase Console's "Cloud Messaging" setting of my App. Unfortunately I keep on getting a "401: INVALID_KEY" response. Is there anything else I need to do to make it work?
  4. Any direction on "Sign in with Apple" requirement? Deadline is June 30th, too.
  5. MikeMon

    Programmatically Change Properties of a Custom style

    Hi @Rollo62 As I said earlier, I do use TRectangle instead of TPanel. But my example above was just for illustration to show that first-level stylename's properties of a style can not be modified whereas its children's can. E.g. with a TSwitchObject, there is nothing I can do. The TSwitchObject stylename is at the first-level and I can't access any of its properties programmatically. I tried adding a TLayout in the style at the first-level and have the TSwitchObject as its child, but it is not working properly. E.g., the isChecked:= True is not changing the TSwitch's state.
  6. MikeMon

    Programmatically Change Properties of a Custom style

    Let me find a solution for 1 platform and I'll do the rest!! lol
  7. MikeMon

    Programmatically Change Properties of a Custom style

    Yes, I can change the color of TPanel during design time, but not at runtime. To be honest I use TRectangle, too. The TPanel in my question was just for reference because it is simple to demonstrate. Generally, I can't access and change the properties of the first-level style. Another example which I still haven't found a workaround for is TSwitch. I use a TSwitchObject for a TSwitch style. Again, because it is the first-level style, I can't access and change its properties, e.g. "ThumbOn.Color".
  8. MikeMon

    Programmatically Change Properties of a Custom style

    Hi Serge Thank you for your answer. The custom-styled TPanel has no children. This is what I'm doing: 1.) Drop a TPanel on the form. Call it Panel1 2.) Right-click on the TPanel and choose "Edit Custom Style..." 3.) Close the designer 4.) Make sure the "StyleLookup" field of Panel1 is "Panel1Style1" What I need to do is to programmatically change the "Fill.Color" of "Panel1Style1". I can't seem to find a way how. However, if I drop a TLabel and do the same, "Label1Style1" will be created. Label1Style1 has a child stylename "Text". I could easily access and change its properties by my method above, i.e. Label1.StylesData['text.Scale.X']:= 2, or Label1.StylesData['text.Text']:= 'OK'
  9. MikeMon

    Programmatically Change Properties of a Custom style

    The code above works for the children of the "RedButtonLabelStyle" resource. How do I change for the resource itself. E.g.: when you use a "Custom Style" for a TPanel, it creates a custom style e.g. Panel1Style1. Panel1Style1 doesn't have any children. How can I change its properties (e.g. Fill.Color) by code? The above code's approach (e.g. StylesData['Panel1Style1.Fill.Color'] or StylesData['Fill.Color']) doesn't work.
  10. MikeMon

    Programmatically Change Properties of a Custom style

    Hi. Thank you for your answer. Your approach is irrelevant to what I am trying to do. What I want to do is change properties of a style in a Stylebook and expect all objects having that style in their stylelookup field to be updated automatically. Currently, as a workaround, I'm recursively checking all objects and their children and looking for TLabels with stylelookup the style that I want, and changing the fill color of the rectangle in the style. There should be a better way, i.e. just change the fill color of the style in the stylebook. This is the code I'm currently using as a workaround: procedure ChangeAllLabelStyles(ChangeToColor: Cardinal); procedure ChangeObjectRecursive(CurrentComponent: TComponent); var i: Integer; begin if CurrentComponent.ClassNameIs('TLabel') and (TLabel(CurrentComponent).StyleLookup = 'RedButtonLabelStyle') then TLabel(CurrentComponent).StylesData['Rectangle1Style.Fill.Color']:= ChangeToColor; for i:= 0 To CurrentComponent.ComponentCount - 1 do ChangeObjectRecursive(CurrentComponent.Components[i]); end; begin ChangeObjectRecursive(Self); end;
  11. How can I programmatically change properties of a custom style? Basically, I have created a custom style for TLabel and have added a rectangle to be able to control its background. How can I programmatically change its color so that all TLabels that have that style are automatically updated with the new color?
  12. I got confirmation from Embarcadero support that storyboard launch screen will be supported in 10.4, including the beta that will be available to Delphi/RAD Studio customers on update subscription.
  13. This is an email I received a couple of days ago. Dear Mike, We greatly value the worldwide developer community, and appreciate your commitment to making a difference in people’s lives through the power of technology. To accommodate developers who may need additional time to update their existing apps on the App Store, the deadline for adhering to the requirements below has been extended to June 30, 2020. Apps for iPhone or iPad must be built with the iOS 13 SDK or later and use an Xcode storyboard to provide the app’s launch screen. iPhone apps must support all iPhone screens and all iPad apps must support all iPad screens. Apps for Apple Watch must be built with the watchOS 6 SDK or later. Apps that authenticate or set up user accounts must support Sign in with Apple if required by guideline 4.8 of the App Store Review Guidelines. Apps in the Kids category must be in full compliance with guideline 1.3 and guideline 5.1.4. of the App Store Review Guidelines. Apps using HTML 5 must be in full compliance with guideline 4.7 sections 4, 5, and 6 of the App Store Review Guidelines. Thank you for your continuing efforts to serve your users during this time. If you have any questions, contact us. Read the App Store Review Guidelines Learn about submitting apps Best regards, Apple Developer Relations The initial deadline was the April 29. So, obviously, we have an issue here with the first and 4th points. Any input would be appreciated.
  14. How come there's nothing in forums about this? How are other Delphi users developing for iOS tackling this? The above solution doesn't feel right.
  15. In the latest iOS App requirements and guidelines, one of the requirements says: "Apps for iPhone or iPad must ..... and use an Xcode storyboard to provide the app’s launch screen." Does this mean that a launch image is not enough and we need to create a splash screen inside the app? or this is already handled by Delphi?