Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

20 Excellent

Technical Information

  • Delphi-Version
    Delphi 10.2 Tokyo

Recent Profile Visitors

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

  1. I can only partly agree to this. In new projects I use meanwhile 90% FMX, and simply avoid all the buggy parts, by using the essential components only. Regarding VCL-compatibility, I would love to see this vice versa, maybe make VCL more compatible to FMX. Indeed a few simple changes could make code much more compatible, but the question is if its worth the efford.
  2. Dear all, a CrossPost in the German DP. I want to use a simple vibration-feedback, aka Peek und Pop, but I'm unsure with which method this may run on all iPhone devices. There is the possibility to use AudioServicesPlaySystemSound, https://stackoverflow.com/questions/33425586/vibrate-iphone-6s-manually-like-peek-and-pop which would be perfectly OK for me. But I had to note that this doesn't seem to work on all devices anymore. There is also the TapticEngine, which can be used on newer devices (I think >= iOS10 / iPhone7). https://developer.apple.com/documentation/uikit/uiimpactfeedbackgenerator https://www.delphipraxis.net/192200-uiimpact-feedback-generator-fehlende-klasse-deklarieren-und-nutzen.html There seems to exist also a way via 3DTouch. https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/Adopting3DTouchOniPhone/3DTouchAPIs.html Which method might guarantee that it will work on all devices and versions ?
  3. then also try out "while .. do" loops, they can replace for and repeat loops both
  4. Rollo62

    Decorating read-only controls

    Unfortunately 99.99% of the people out there are NO engineers, so that these clear and straight concepts doen't work most of the time. It seems we have to sit on the users chairs sometimes, and have a look from their perspective. This catches me also from time to time, if some customer came up with a brilliant simplification idea. I would propose that all engineers should be forced to work for 2 weeks with their own apps and real data, before launching a product. This is not embracing designers work here (sure they do their own mistakes), but I praise the "sitting one somebody elses chair" method.
  5. Thanks Remy. I was always hesitating to use the "Transition" animations, because I never can be 100% sure where it may use Application.ProcessMessages internally. There are a lot of places where this is maybe used, and only by digging deep inside the sources I can check it out, but I'm never sure on what happens in future versions. procedure AnimateControlPositionXWait(AParent: TFmxObject; const NewValue: Integer); var A: TIntAnimation; begin TAnimator.StopPropertyAnimation(AParent, 'Position.X'); A := TIntAnimation.Create(AParent); try A.Parent := AParent; A.AnimationType := DefaultSlidingAnimationType; A.Interpolation := DefaultSlidingInterpoation; A.Duration := DefaultSlidingDuration; A.PropertyName := 'Position.X'; A.StartFromCurrent := True; A.StopValue := NewValue; A.Start; while A.Running do begin Application.ProcessMessages; Sleep(0); end; finally A.DisposeOf; end; end; The SetActiveTabWithTransitionAsync is maybe a good starting point for Async transitions, I will check that more deeply. TabControl1.SetActiveTabWithTransitionAsync( On the other hand I banned all unnecessary transitions from my apps anyway, because users don't feel like "cool" anymore, they often consider the UI as "slow".
  6. Everybody in the Pascal world MUST be active here
  7. Rollo62

    Copy Sqlite DB to tethered app

    Sorry, TLDR. These lines are a little doubtful to me. ms := TMemoryStream.Create; //<-- This is overwriting the formerly created TMemoryStream. ms := dmplanner.GetDbAsStream; I would expect some kind of CopyStream here.
  8. Google APIs have a quite relaxed free tier, but it may add monthly service cost if these limits were touched. You very likely will need an Google maps API key (I never used reverse GeoCode alone, only together with maps). (Sorry, already answered by Remy.) Apple reverse geocode is free (how unlikely is that ?).
  9. Rollo62

    Spring4D and IEqualityComparer<T>

    Thinking about Roslyn, it seems the hell had frozen already.
  10. Rollo62

    ANN: Find leaks in Delphi and C++ with Deleaker

    Thanks for clarification.
  11. Rollo62

    ANN: Find leaks in Delphi and C++ with Deleaker

    Does this tool also support FMX somehow and other platforms (iOS, Android, MaxOS, Linux) ?
  12. Rollo62

    Bluetooth not working with 10.3 on Mac?

    Not that I would recommend such harsh steps, but has anybody tried to reset something in the MacOS ? I'm not a Mac guy at all, so thats why I'm very hesitating to get any deeper into the Mac hardware secrets. Maybe there are other tools or settings which could help. Edit: Maybe it helps to search for differences in CoreBluetooth, which could affect Rx10.3.1 apps. Does anyboy know good MacOS forums for such kind of question ?
  13. Please excuse my curiosity, I would like to know who is actually dealing with MacOS client apps.
  14. Rollo62

    best practise sharing : 2 buttons with mrOK on a form

    One option would be to return two different "OK" in ModalResult from different buttons, like mrOK and mrYES. If that is what you mean.
  15. Rollo62

    Spelling and search

    Yes I like that idea too, but: This is just another service that reads ALL my texts I ever enter and sends them to their KI servers ... In my naivity I thought that Google and Facebook should make enough headache