Posts

Showing posts from May, 2017

Marco Cantù

Marco Cantù An IDE feature to comment all lines with sysntax error (or code lines lacking definition of variable name/object/classes etc) within a pas file or even entire project can help faster compilation of projects for analysis purpose and a gauge of estimation of effort in terms of LOC (lines of code) requiring change The feature can be a great help in estimation of required effort for migration projects from earlier IDE versions to later

This bundle might interest some Tokyo Ent. users: https://www.humblebundle.com/books/linux-book-bundle - and the git book is for everyone :)

This bundle might interest some Tokyo Ent. users: https://www.humblebundle.com/books/linux-book-bundle - and the git book is for everyone :) https://www.humblebundle.com/books/linux-book-bundle

First dialog re-factored to be 100% free of code thanks to the wonderful KnockOff. Now for the rest of them...

First dialog re-factored to be 100% free of code thanks to the wonderful KnockOff. Now for the rest of them... https://bitbucket.org/sglienke/knockoff

AARRGHH !

AARRGHH ! I can't reproduce this bug but I want to report it here. On a project under Tokyo, I use an avanced JSON Unit based on the one I've published on my web site. http://lookinside.free.fr/delphi.php?Delphi+XE8+et+JSON at application startup, I read a Record from a JSON file, it contains the application configuration. But after some change in the code (not related to JSON nor the Record), I've hit F9 and the application starts to do strange things...the problem was about the configuration. I've followed the JSON parsing to find out that the TypeInfo informations where corrupted. It was a Record TypeInfo with the rigth name but with fields informations from an other Record ! So my JSON Parser just dropped the values because nothing matched the record definition. I just had to rebuild the project to fix that nasty bug. not cool :/ http://lookinside.free.fr/delphi.php?Delphi+XE8+et+JSON

I'm migrating a VCL app to FMX Mac OS.

I'm migrating a VCL app to FMX Mac OS. Our application opens .png files that newly appear in a specific folder. These are created by a third party app. We display them in a TImage as "pseudo-video" at about 10 fps. We don't mind if we drop files now and then. In Windows, we chose not to use the Windows hooks that are available to monitor folder events. We simply use a TTimer, calling TDirectory.GetFiles once a second and looking for a file we haven't already processed. We delete files after we've processed them, so the file list doesn't get too big. In Windows, before actually opening an image for reading, we check if it is still open by the third party app with this code: function FileClosed( const aFileName: String):Boolean; var hInputFile: THandle; begin hInputFile := CreateFile(Pchar(aFilename), GENERIC_WRITE, 0, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); Result := (hInputFile <> INVALID_HANDLE_VALUE);

Edit: Nevermind - RangeCheck was off.

Edit: Nevermind - RangeCheck was off. Should this code create an Index out of bounds error? type TArrayType = TArray ; procedure TSomeClass.GetArray(var anArray: TArrayType); begin SetLength(anArray, 10); for ix := 1 to 10 // Should have been 0 to 9 do anArray[ix]:= ix; // <<-- Index out of bounds but no error end; procedure Test(SomeClassInst: TSomeClass); var Arr: TArray ; begin SomeClassInst.GetArray(Arr); // do something end; <<-- Eurekalog flags overwrite on array finalization

Blog post "Webinar Tomorrow: Understanding Automatic Reference Counting" at http://blog.marcocantu.com/blog/2017-may-webinar-understanding-arc.html

Blog post "Webinar Tomorrow: Understanding Automatic Reference Counting" at http://blog.marcocantu.com/blog/2017-may-webinar-understanding-arc.html http://blog.marcocantu.com/blog/2017-may-webinar-understanding-arc.html

How to get pointer to private method of TApplication?

How to get pointer to private method of TApplication? So far I'm using such a trick: lPointer := @TSomeClass.PrivateMethod; And it works (e.g. for Firedac classes), but for TApplication methods I get compile error e.g.: [dcc32 Error] E2361 Cannot access private symbol TApplication.UpdateVisible Why?

Hi

Hi , I have a problem with YoutubePlayer API Follow you, I import .jar file and use JNI .pas in my project But I have a error ; <<< A YouTubePlayerView can only be created with an Activity which extends YouTubeBaseActivity as its context.>>>> In my Code: << try FView:= TJYouTubePlayerView.JavaClass.init(TAndroidHelper.Context); FView.initialize( StringToJString(DEVELOPER_KEY), FOnInitializedListener); except on E: Exception do log.d('EE/ '+E.Message); end; >> I want to ask you, how can I set << YouTubeBaseActivity as its context >> Thanks All,

Hello!

Hello! From a Delphi application, we need to apply an XSLT transform to an XML file into an HTML page. This is mostly done, but we are receiving a CRLF sequence in the XML that is impeding certification because a little (but very important) piece of data is displaying incorrectly. We have tried to use fn:replace but there are no examples on how to use it with the content of a tag. Does anybody have pointers? Thanks :)

Before I start implementing it myself: Is there already a debug visualizer for Delphi 2007 (and possibly even older versions?) that displays:

Before I start implementing it myself: Is there already a debug visualizer for Delphi 2007 (and possibly even older versions?) that displays: * TDateTime as date / time string rather than a floating point value? * Multi line strings / TString/TStringlists as the formatted strings rather than 'bla'#$D#$A'blub' I'm mostly interested in the watch window, but support for the "Evaluate/Modify" dialog would also be appreciated.

Where can I find a version of dependency walker that works on Windows 10.

Where can I find a version of dependency walker that works on Windows 10. I've tried following the instructions here: https://stackoverflow.com/questions/8832936/profiling-x86-executable-with-dependency-walker-hangs-on-windows-7-x64 But after downloading 1GB :-< of WDK there is no depends.exe anywhere on my system. The version of dependency walker that google turns up is 2.2.600 which is broken on W10. I need version 2.2.888 which is included in the WDK according to the docs, but does not actually get installed. https://stackoverflow.com/questions/8832936/profiling-x86-executable-with-dependency-walker-hangs-on-windows-7-x64

Hi All

Hi All, how can i use YoutubePlayer API in my projects ; Any idea ; Thanks all,

OFX/OFC file format is widely used in Internet Banking of the leading financial institutions in the world.

OFX/OFC file format is widely used in Internet Banking of the leading financial institutions in the world. Need stars and more OFX file! https://github.com/leogregianin/ofx-reader

In recent versions, we see many new components for Win10 apps. What strikes me though is that one can use them in VCL apps.

In recent versions, we see many new components for Win10 apps. What strikes me though is that one can use them in VCL apps. Shouldn't those Win10-specific be avail for FMX as well? And the same goes for Metropolis apps. I feel like EMBD forces me to go to VCL if I want a modern Win app. But I still want to do cross-platform development for my own apps.

I am FindFirst, etc, to get a list of files and adding them to a table, but, the sql is tripping up on curly braces '{' and '}'.

I am FindFirst, etc, to get a list of files and adding them to a table, but, the sql is tripping up on curly braces '{' and '}'. I have RegEx code to replace the. RegEx.Subject := sr.Name; RegEx.RegEx := '{'; RegEx.Replacement := '\{'; if RegEx.Match then begin RegEx.Replace ; end; RegEx.Subject := sr.Name; RegEx.RegEx := '}'; RegEx.Replacement := '\}'; if RegEx.Match then begin RegEx.Replace; end; Is this the right way do this? AM I using the correct escape character? D XE7 Pro & Win 10 Thanks...Dan'l

Blog post "Centennial Bridge: BUILD, Creators Update, Windows 10 S and More" at http://blog.marcocantu.com/blog/2017-may-centennial-build-windows10s.html

Blog post "Centennial Bridge: BUILD, Creators Update, Windows 10 S and More" at http://blog.marcocantu.com/blog/2017-may-centennial-build-windows10s.html http://blog.marcocantu.com/blog/2017-may-centennial-build-windows10s.html

And here is why I think twice before spending time to report feature requests to QP

Image
And here is why I think twice before spending time to report feature requests to QP And even bugs/unexpected behavior are regularly being sweeped under the carpet reclassified as new feature. 46 out of those 84 resolved/closed have the resolution "wont fix" or "works as expected". This is not intended to be a flame but just pointing out the lack of emphasis on new features (at least those being reported in QP) FYI: Marco Cantù David Millington Horácio Filho

Hello

Hello, Any doc for connect to Azure Cosmos DB from delphi ? Any third party components ? regards

Hi! I've posted this tutorial on How to run Delphi Applications on Linux with Docker: http://yeiei.net/en/running-delphi-applications-on-linux-with-docker/ Enjoy and let me know your comments!

Hi! I've posted this tutorial on How to run Delphi Applications on Linux with Docker: http://yeiei.net/en/running-delphi-applications-on-linux-with-docker/ Enjoy and let me know your comments! http://yeiei.net/en/running-delphi-applications-on-linux-with-docker/

What's the point of having abstract classes in Delphi? Is there any use case? Hey, you can instantiate an abstract class just fine (no compiler error, warning, nor hint). You can even USE such object just fine

What's the point of having abstract classes in Delphi? Is there any use case? Hey, you can instantiate an abstract class just fine (no compiler error, warning, nor hint). You can even USE such object just fine Yes, I know, the docs: http://docwiki.embarcadero.com/RADStudio/en/Classes_and_Objects_(Delphi) Note: Delphi allows instantiating a class declared abstract, for backward compatibility, but this feature should not be used anymore. So, Delphi got this new feature called abstract classes on Delphi 7. That was in 2002 IIRC. So fifteen years later all we got is a just a highlighted keyword? I'm completely shocked /rant off

CrossVcl 0.41 just released

Image
CrossVcl 0.41 just released + TListView (Report mode only yet) and TRichEdit controls + More GDI+ APIs + More new APIs http://www.crossvcl.com/history.html

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) Eric Berry just posted this to the GExperts mailing list: ---------- I've posted Thomas's current binary builds as the official GExperts 1.38 release on the web site. This release adds support for Delphi 1.01 Berlin and 10.2 Tokyo (beta), as well as all of the other things Thomas has added and fixed over the last year or two. Home Page: http://www.gexperts.org/ Download: http://www.gexperts.org/download/ Status Updates and Discussion: https://plus.google.com/communities/112747591344358749692 Note: I'm no longer doing much software development, so I'm not actively reviewing or editing the GExperts code or doing builds, but I am making a few minor web site updates, as needed. Erik ---------- Just in case this is not clear enough: These are the very same installers that I have had on my homepage since January 2017. https://blog.dummzeuch.de/experimental-gexperts-version/ https://blog.dummzeuch.de/experimental-gexperts-version

Change TDateTimePicker.format to yyyy-MM-dd HH:mm:ss

Change TDateTimePicker.format to yyyy-MM-dd HH:mm:ss but the TDateTimePicker.kind only can set to dtkDate or dtkTime, so if i change the date and time together on UI, only the date or time changed in TDateTimePicker.Datetime. Which means, if i wanna get the date and time together, i should put TWO TDateTimePicker on the form. Is that possible for you to update the src to improve it? I also reported a QC Marco Cantù https://quality.embarcadero.com/browse/RSP-18215

Coworker and me were just thinking if this (or similar syntax) would be nice to have in Delphi:

Coworker and me were just thinking if this (or similar syntax) would be nice to have in Delphi: car := TCar.Create begin Name := 'Chevrolet Corvette'; Color := TColors.Yellow; end; Edit: After pointing out this might lead to code defects because begin end can be used regardless this feature here is another proposal (similar to how Oxygene does it): car := TCar.Create( Name: 'Chevrolet Corvette', Color: Colors.Yellow, MaxSpeedKm: 300 ); With a ctor that has an argument: car := TCar.Create('Chevrolet Corvette'; // <- semicolon Color: Colors.Yellow; MaxSpeedKm: 300 ); Suggestion by Eric Grange - like the original one but reusing the with to make it safe against issues using begin : car := TCar.Create with Name := 'Chevrolet Corvette'; Color := Colors.Yellow; MaxSpeedKm := 300 end; Ctor with parameter: car := TCar.Create('Chevrolet Corvette') with Color := Colors.Yellow; MaxSpeedKm := 300; end; Similar to how since C# 3.0
Are there blank characters in unicode that have the same widths as period, comma and digits?
I have a debating at work with developers with knowledge about .NET and Java, but minimum knowledge on Delphi. Debating is about using an architecture based on POJO objects instead of using TDataSet on a server application. I can't see any advantage of excluding the use of TDataset built-in functionality, and to create a small framework based on classes which map the tables from database. Server application is not designed to perform heavy CRUD operations. It just feed several .NET clients with data using RemObjects. I see a big disadvantage to create a plain class to hold values from a SQL select statement, instead of using a dataset. When the SQL is modified, or a table is modified, then all the classes need to be modified also. On the other hand, if using TDataset, developers should dedicate a small time involved to learn how to use Delphi datasets. Any thoughts on this?

New "Windows10 Office Light" and "Windows10 Office Dark" VCL styles released!

Image
New "Windows10 Office Light" and "Windows10 Office Dark" VCL styles released! http://www.delphistyles.com

New product from DelphiStyles !

Image
New product from DelphiStyles ! FM UI Plus - product, which includes patch installer for RAD Studio to improve default UI for FireMonkey applications. Now it comes as Bonus with "All Styles LifeTime Subscription" and "FMX Styles LifeTime Subscription"! At this moment it includes improvements for Windows and macOS platforms. + new default HQ style for macOS from delphistyles.com , which includes graphics with all specifics of Sierra at this moment + new focused frame around controls on macOS, which looks as native + new toolbar style, which can be merged with window caption to get more native look and feel on macOS + fixes of text drawing on macOS + fixes of TCalendar, TGrid drawing on Windows and macOS http://www.delphistyles.com/fmuiplus.html

Now records. Raudus translate app-client server to Web.

Image
Now records. Raudus translate app-client server to Web.

TMS XData REST Server on Linux - Final Part: The XData server is up and running!

TMS XData REST Server on Linux - Final Part: The XData server is up and running! http://www.tmssoftware.com/site/blog.asp?post=413 https://youtu.be/09Wa5wX9NtU
Whatever happened to that "with" removal feature that was in Castalia? They got rid of it because it didn't work? I mean it never worked for me, but I was hoping that Emb. fixed it.

Software Client Server recompilado usando RaudusVCL compatible. Não é necessário reescrever a aplicaçao. Falta remover alguns Bugs.

Image
Software Client Server recompilado usando RaudusVCL compatible. Não é necessário reescrever a aplicaçao. Falta remover alguns Bugs.

Just curious

Just curious, Is there ever a benefit to not providing a GUID in an interface? (Other than not having to press CTRL+Shift+G ;-) E.g.: faster code, smaller memory footprint, anything else? I can't think of anything, but don't have the evidence to back up the claim.

LiveBindings-Enabled FMX cross-platform Document Viewer: LiveBind viewer to TBlobField objects to show documents stored in Blob Fields.

Image
LiveBindings-Enabled FMX cross-platform Document Viewer: LiveBind viewer to TBlobField objects to show documents stored in Blob Fields. And I'll be going live in a few hours for Gnostice with a short presentation on XtremeDocumentStudio. I'll be showing some of these new features. The webinar is hosted by Embarcadero. Please do join us ;-) https://register.gotowebinar.com/rt/7389161623598400258 #XtremeDocumentStudio #Delphi #windows #macOS #iOS #Android

Some while ago I started a plugin to easily add units to the uses clause just like you can do via quickfix in VisualStudio.

Some while ago I started a plugin to easily add units to the uses clause just like you can do via quickfix in VisualStudio. I never actually polished it but since I felt it might be useful to others as well here it is (still beta - supported Delphi versions currently are 10, 10.1 and 10.2). Just run the setup and install into a directory where the IDE will also have write access to (should be %localappdata% by default). When you first start the IDE with the plugin it will index $(BDS)\source which should reasonably fast and you won't even notice it. You can then add additional directories via Options -> Third Party -> UsesHelper (or F6 -> UsesHelper). Just add any additional directories that should be indexed (recursively, only *.pas). Indexing will happen in the background. In the end it will save an index.dat file which it will only access when it gets changed or you restart the IDE. Via shortcut (Shift+Alt+F10 - fix for now, might be configurable later) while in the edi

Hello!

Hello! Does anyone have written code in FMX which after installation of the dmg file you have developed, a window appears and helps you drag the app to the applications...?

Stack Overflow: Helping One Million Developers Exit Vim - Stack Overflow Blog

https://stackoverflow.blog/2017/05/23/stack-overflow-helping-one-million-developers-exit-vim/

Anybody else noticed this inconsistency (using Berlin 10.1)?

Anybody else noticed this inconsistency (using Berlin 10.1)? extractfilepath ('\\192.168.0.1') results in '\\' extractfilepath ('\\2001:db8::1') results in '\\2001:db8::' Looks to me like extractfilepath isn't IPv6 aware yet, because it seems to think that the "1" at the end of the IP is a filename, not part of the path. I checked, and extractfilename ('\\2001:db8::1') indeed results in '1'.

This is just what I tried to find, but could not figure out what those colors are called :)

This is just what I tried to find, but could not figure out what those colors are called :) But anyways some Delphi-superhero has done all work for us https://github.com/MahdiSafsafi/ImmersiveColors https://github.com/MahdiSafsafi/ImmersiveColors

Still can't get Rad Studio 10.2 to install on my laptop. It'll install now, but then it can't load several BPLs and then it crashes before the IDE gets loaded. I'll probably go back to 10.1 for now after trying one more time.

Still can't get Rad Studio 10.2 to install on my laptop. It'll install now, but then it can't load several BPLs and then it crashes before the IDE gets loaded. I'll probably go back to 10.1 for now after trying one more time. This laptop is a Lenovo z70-80 with 12GB memory and 800 gb space available. It's a Core I7 machine. It ran Berlin fine. It could still be a corrupt ISO.

It just occured to me that when I have such code:

It just occured to me that when I have such code: type TFooBar = class s: string; end; procedure Main; var x, y: TFooBar; begin x := TFooBar.Create; y := TFooBar.Create; x.s := 'True'; y.s := 'True'; Assert(Pointer(x.s) = Pointer(y.s)); end; begin Main; end. The assertion will raise because whenever you assign a string literal to a string variable it checks if the string is a const (refcount = -1) and then calls _NewUnicodeString). I guess this has been discussed already somewhere else but I cannot find anything regarding my question: I would guess that even if it is a const it could assign that reference to s and don't touch the refcount. This should work fine with the cow mechanics. But as it is this would mean that if code runs through such const string assignments every time a new string gets allocated, no? In my case I am using the const string 'True' for nullables in Spring to set the "HasValue" flag for them (otherwise

Is there a way to alter a window/dialog from a vertical layout to a horizontal layout?

Is there a way to alter a window/dialog from a vertical layout to a horizontal layout? e.g. from this A: ----- B: ----- C:-------- D: -------- To this A:-------- C:------- B:-------- D:- ----- To this A:- --- B:- ---- C:- ----- D:- ------ As I resize the window? A,B,C,D are edit boxes or comboboxes etc. https://stackoverflow.com/questions/44137346/can-i-alter-control-layout-on-the-fly

Hello guys

Hello guys, Could does someone give me a clue about how to simulate Objective-C's optional methods in Delphi? It is just a proof-of-concept :) Thanks in advance :)

Creating a REST Server on Apache Linux using Delphi and TMS XData - Part 3: WebBroker Apache Module

Creating a REST Server on Apache Linux using Delphi and TMS XData - Part 3: WebBroker Apache Module http://www.tmssoftware.com/site/blog.asp?post=411 https://www.youtube.com/watch?v=kolOvymSNWk

Just was sneaking around YouTube and found this video showing how to use DDetours library to hook Win32 api.

Just was sneaking around YouTube and found this video showing how to use DDetours library to hook Win32 api. https://www.youtube.com/watch?v=7FZGAs3rlAw https://www.youtube.com/watch?v=7FZGAs3rlAw

Licensing issue: has anyone experienced this before ?

Licensing issue: has anyone experienced this before ? Using Delphi 10.1 Berlin Update 2 Pro with subscription... It's been a few days now, Delphi starts as usual and I can work with it but when first compilation finishes, Delphi IDE closes and launches a web browser to a URL with incorrect license registration. I ignore it, restart Delphi, re-compile the project, and it now works as expected. And it continues to work for some time. Then, this happens again. Running the license manager: no problem. Any idea of what could be going wrong here ?

Delphi + Android - Get the file path of image / video selected from media browser - Solved !!

Delphi + Android - Get the file path of image / video selected from media browser - Solved !! Hi guys, after a full day of research (I know... I was slow!), I have find wrote the code that can open the media gallery and return the file path (along with all other information) of the media file selected. Hope this helps! uses ... Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.Net , Androidapi.Helpers, FMX.Platform.Android, FMX.Platform, Androidapi.JNIBridge, Androidapi.JNI.JavaTypes, .... //open the gallery procedure TForm2.Button1Click(Sender: TObject); var Data : Jnet_Uri; Intent : JIntent; begin FMessageSubscriptionID := TMessageManager.DefaultManager.SubscribeToMessage(TMessageResultNotification, HandleActivityMessage); Intent := TJIntent.Create; Intent.setType(StringToJString('image/* video/*')); Intent.setAction(TJIntent.JavaClass.ACTION_GET_CONTENT); MainActivity.startActivityForResult(Intent, 0); end; // when message is received proc

TMS FlexCel for VCL/FMX v6.15 has been released with the ability to check and evaluate data validations.

Image
TMS FlexCel for VCL/FMX v6.15 has been released with the ability to check and evaluate data validations. TMS FlexCel = 100% Native .XLS, .XLSX, .XLSM, .PDF, .HTML, .SVG file generation/manipulation. Download the fully functional trial version for Delphi and C++Builder from our website: http://www.tmssoftware.com/site/flexcel.asp

Originally shared by Boian Mitov

Originally shared by Boian Mitov Just posted another update on the LabPacks prerelease with even more components ported to Cross Platform, and with improved support for Android and iOS :-) #Delphi #OpenWire

Suddenly & without warning, I am getting a Graphics32 error:

Suddenly & without warning, I am getting a Graphics32 error: "Graphics32 may only be installed with Delphi/BCB 6 (or higher) ..." Now I cannot compile my app. Two days ago everything was hunki-dori. Does anyone know why this would happen? I found discussions on ExpertsExchange. Basically get the x.x.x build from GitHub and hack some of the files. That was from 2 years ago. It mentioned an XE8 package but I could not find it. I have the XE5 package. Delphi XE7 pro, Win 10.

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) I have been asked to provide GExperts for Delphi 10.2 Tokyo, multiple times, via various channels. Apparently not everybody subscribed to the GExperts Community on Google+, where I posted this on 2017-04-01: No April fools’ joke: GExperts 1.38… http://blog.dummzeuch.de/2017/05/22/gexperts-for-delphi-10-2-tokyo/

Creating a REST Server on Apache Linux using Delphi and TMS XData - Part 2: Installing PAServer

Creating a REST Server on Apache Linux using Delphi and TMS XData - Part 2: Installing PAServer http://www.tmssoftware.com/site/blog.asp?post=410 https://www.youtube.com/watch?v=zXBg20Xhs2k

In this video I present how to use Intraweb, Firemonkey (Windows and Android), VCL and Console applications all reusing the layer that isolates the communication technology between View and Controller.

In this video I present how to use Intraweb, Firemonkey (Windows and Android), VCL and Console applications all reusing the layer that isolates the communication technology between View and Controller. https://www.youtube.com/watch?v=-tyrU4KPWaE&feature=share

For everyone interested in having nullable basic data types in Object Pascal I suggest looking at my new OLTypes library available at https://bitbucket.org/mihoor/oltypes/wiki/Home.

Image
For everyone interested in having nullable basic data types in Object Pascal I suggest looking at my new OLTypes library available at https://bitbucket.org/mihoor/oltypes/wiki/Home . The new types are: OLBoolean, OLInteger, OLCurrency, OLDouble, OLDate, OLDateTime and OLString. I've put each basic data type inside a record type with a flag for being Null and overloaded operators. As a huge bonus, there are some usefull methods for each data type. Concider this quick example:

Android question...

Android question... This might sound ridiculously simple to do but cross platform API isn't my strong point. I started an Activity with the Intent of consuming content from the Gallery which works fine. However, the Intent returns the URI of the file (as content://storage/... /media/12345) instead of the actual file path. I was expecting something like '/storage/emulated/0/.../VID_18161918.MP4' Any pointers? UPDATE ---- after going through the Android documentation and some examples (that probably work in Java). This is the code which I 'feel' should work.. but it is not... any help would be great function TForm2.HandleIntentAction(const Data: JIntent): Boolean; var P: TJavaObjectArray ; C: JCursor; I: Integer; begin Memo1.Lines.Text := JStringToString(Data.getData.toString); // this returns the URI in string perfectly... so I know that I am getting the file path properly // this is to prepare the information I need... they call it projection P := TJavaOb

Hi All. Surprised to see this bug is still there

Hi All. Surprised to see this bug is still there i.e ListBoxGroupHeader1 used in listbox1 in mobile shows text after scrolling the listbox , when the text is set to NULL (i.e blank), and that text is the default name for the component I created a bug report https://quality.embarcadero.com/browse/RSP-18170 Brian ps. setting the text to a space fixes it (easy work around) https://quality.embarcadero.com/browse/RSP-18170

Seems that FMX has some weird alignment logic.

Seems that FMX has some weird alignment logic. I cannot look closely at the moment, but it seems that it calculates alignment order based on original x (y) position of child control and its width (height) and documentation states that alignment can change control position and size. There is also question of what happens if you change content of child control - ordering may be changed. Is this a bug or what? http://stackoverflow.com/q/44084850/4267244

Meanwhile, in news on other languages ...

Meanwhile, in news on other languages ... https://techcrunch.com/2017/05/17/google-makes-kotlin-a-first-class-language-for-writing-android-apps/?utm_content=buffer282fc&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer There's a link that goes to a page the lists features that Kotlin has that Java doesn't, and vice versa. Many of the same kinds of things people would like to see in Delphi. https://techcrunch.com/2017/05/17/google-makes-kotlin-a-first-class-language-for-writing-android-apps/?utm_content=buffer282fc&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer

Originally shared by HACKADAY

Originally shared by HACKADAY Visually code your next #Arduino project with Visuino, created by Brian Mitov! https://goo.gl/uE4FEf #HackadayPrize http://www.hackaday.io/project/21388

Originally shared by Boian Mitov

Originally shared by Boian Mitov New Steinhart Hart Component Visuino component built by Swellington Santos with the Visuino Delphi SDK :-) #Visuino #Delphi #Arduino

Creating a REST Server on Apache Linux using Delphi and TMS XData - Part 1: Installing Ubuntu Linux

Creating a REST Server on Apache Linux using Delphi and TMS XData - Part 1: Installing Ubuntu Linux http://www.tmssoftware.com/site/blog.asp?post=409 https://www.youtube.com/watch?v=KtGWVFlBFIQt

Guys, I am at my wits end!! Please help... I am executing an API via Google... and it works perfectly (moving folders into another folder)... however, the same call via my Delphi code will not work! Through Delphi, I can create the folders , I can rename them... but I cannot change their parents! I am doing exactly what it's asking me to do!

Guys, I am at my wits end!! Please help... I am executing an API via Google... and it works perfectly (moving folders into another folder)... however, the same call via my Delphi code will not work! Through Delphi, I can create the folders , I can rename them... but I cannot change their parents! I am doing exactly what it's asking me to do! Here's the code.... RESTResponseDatasetAdapter1.AutoUpdate := false; RESTRequest1.Params.Clear; RESTRequest1.ClearBody; RESTRequest1.Method:= rmPATCH; RESTClient1.BaseURL := ' https://content.googleapis.com/drive/v3/files/'+edtMOveFolderSource.Text ; Folder := TJSONObject.Create; Folder.AddPair(TJSONPair.Create('addParents', edtMoveFolderDest.Text)); rsr1.AddBody(Folder); try RESTResponse1.Execute; Memo1.Text := rsp1.Content; except on e: Exception do ShowMessage(e.Message); end; ps: I have got authentication done.... and I can create a new folder , rename the folder and even upload the

Come check out our new blog post and explore the power, flexibility, and speed of the listbox control in FirePower with this in-depth tutorial. FirePower 10 Trial also now comes with a free license of the TwwListBox control that does not expire.

Come check out our new blog post and explore the power, flexibility, and speed of the listbox control in FirePower with this in-depth tutorial. FirePower 10 Trial also now comes with a free license of the TwwListBox control that does not expire. www.woll2woll.com/single-post/2017/05/18/FirePower-ListBox-Tutorial-for-RAD-Studio https://youtu.be/kb7fy77wy1I

Continuing the theme about "True Native Crossplatform Delphi Library"

Image
Continuing the theme about "True Native Crossplatform Delphi Library" During the development of my framework. I ran into serious limitations in Delphi - Android bridge. Namely, in limiting the number of simultaneously used classes (~30-40). What does it mean for developers? It means, that you cannot use in your android application more that ~30-40 classes in the same time. Once you exceed this limit, your app will fall in different places on the Delphi side. However it doesn't limits on instance count, which are allocated from one class. In other words, you can create alot of object java instances of one class, but you cannot create by one object of a lot of java classes. Since FMX is not very integrated with the native API, this issue while it is not critical. Because you are "in a bounce of limit". However, if you want to limit yourself to just Delphi with a functionality, and still use the android api directly, it can become a very serious problem in future.

True Native Crossplatform Delphi Library (spoiler)

Image
True Native Crossplatform Delphi Library (spoiler) Hello gentlemen, I'm glad to announce 3 news in Delphi world: 2 positive and one negative. I had been working on development FireMonkey library for 5 years in Embarcadero. It was a usefull time for deep understanding how library should work. And after closing offices i have been started to work on creating new crossplatform really native library from scratch. It never uses firemonkey anymore. Library something similar to VCL, but uses modern approach in development. It uses only small part of rtl. Framework uses native components and native graphics of each os. There are few advantages, which will be available in final version: 1. Look and Feel. All components are native. It means they are using native implementation system components aka VCL. Now you don't need to worry, that your application works on android not so like a application, which was created in XCode or Android Studio. 2. UI response. All components of new library

Hi to everybody... Gexperts for Tokyo 10.2?

Hi to everybody... Gexperts for Tokyo 10.2? Anyone know if there is a compatible version? I could not find on the web.

Title

Image
US Map Chart Demo US Map Chart demonstrates how Petra can help Delphi developers build custom UI elements with $0 cost (no need for any 3rd party libraries or frameworks), and with just few clicks, you get native quality and performance drawing that works seamlessly with FMX. The demo also demonstrates how the generated code can be easily customized. Feel free to use the map in your own code. http://www.applyingcode.com

DelphiStyles becomes a partner of Almediadev. Now you can order LifeTime Subscription of VCL Styles from delphistyles.com + StyleContols, ImageKit, SmartEffects from Almediadev with good discounts.

Image
DelphiStyles becomes a partner of Almediadev. Now you can order LifeTime Subscription of VCL Styles from delphistyles.com + StyleContols, ImageKit, SmartEffects from Almediadev with good discounts. Almediadev Home: http://www.almdev.com DelphiStyles Home: http://www.delphistyles.com

EhLib 9.1 is available for download

EhLib 9.1 is available for download Dear Developers, We are glad to inform that a new version of EhLib software - EhLib 9.1 is available for download. In this version:. + Storage of the library's language resources with the ability to dynamically load + Auto-save PivotGrid layout when reloading data + Showing / hiding total rows/columns in PivotGridEh + New aggregate functions in PivotGridEh (Product, StDev, StDevp, Var, Varp) + Editing Cells in PivotGridEh + Dynamic calculation of found cells in SearchPanel + Functions for saving / restoring the column state to an INI file and Registry in DBVertGridEh + The filter icon in the DBGridEh header See detail information in "About EhLib 9.1 Eng.doc" file of EhLib archive You can download Evaluation version of EhLib archive on EhLib home page: www.ehlib.com http://www.ehlib.com

I have a simple TCP Server using Indy.

I have a simple TCP Server using Indy. The client side send strings but not CR LF chars, it's delimited by a '!' point. When I say it does not send the Enter Linefeed could be because he application could be cutting it before. Problem is once into the OnExecute the serve gets locked. I've trying a lot of techniques but no luck here. Really need some help. Maybe all the examples I found will fail because the expect the client send the CRLF. If I connect using a terminal to test and send the CRLF my program and the examples will work. Maybe I need a kind of loop to wait for chars, but I don't know how to do that.

I have a simple TCP Server using Indy. The client side send strings but not CR LF chars, it's delimited by a '!' point. When I say it does not send the Enter Linefeed could be because he application could be cutting it before.

I have a simple TCP Server using Indy. The client side send strings but not CR LF chars, it's delimited by a '!' point. When I say it does not send the Enter Linefeed could be because he application could be cutting it before. Problem is once into the OnExecute the serve gets locked. I've trying a lot of techniques but no luck here. Really need some help. Maybe all the examples I found will fail because the expect the client send the CRLF. If I connect using a terminal to test and send the CRLF my program and the examples will work. Maybe I need a kind of loop to wait for chars, but I don't know how to do that.
OmniThreadLibrary 3.07.1 with support for 10.2 Tokyo was just released.

New "Cornflower Blue Expressive" FM and VCL style released!

Image
New "Cornflower Blue Expressive" FM and VCL style released! http://www.delphistyles.com

A simple free class, experimental version, of a variable length data reader / writer using any TStream.

A simple free class, experimental version, of a variable length data reader / writer using any TStream. https://github.com/davidberneda/VariableStream Add, change, delete or get items of variable length (for example: strings) from / to streams at fast speed. One stream is used as the index to another stream containing the data. Streams can be TFileStream, TMemoryStream or any other kind capable of reading/writing bytes. Pending: "trim" method to pack streams, optional sorted index for quick deletions (at the expense of slower random access), "array of T" automatic support https://github.com/davidberneda/VariableStream

Originally shared by Boian Mitov

Originally shared by Boian Mitov Visuino is the April 2017 winner of the Embarcadero Cool App contest! #Visuino #Delphi #Arduino http://www.businesswire.com/news/home/20170518005869/en/Embarcadero-Announces-April-Cool-App-Visuino http://www.businesswire.com/news/home/20170518005869/en/Embarcadero-Announces-April-Cool-App-Visuino

How do you build 32bit apps. in a 64bit machine?

How do you build 32bit apps. in a 64bit machine? I was trying to install an old VCL component but I got the following error: [dcc64 Fatal Error] ATReg.pas(20): E2213 Bad packaged unit format: c:\program files (x86)\embarcadero\studio\19.0\lib\win32\release\designide.dcp.DesignIntf - Expected version: 32.0, Windows Unicode(x64) Found version: 32.0, Windows Unicode(x86) In the docuwiki this is all I found: "For Win64 applications you need to create a 32-bit version of your component on this page of the wizard. Later you should compile your component again as a Win64 component" http://docwiki.embarcadero.com/RADStudio/Tokyo/en/New_Component In the options tool menu it list the win32 SDK but can't compile 32bits applications, I know using a 32bit OS to build 64bits apps it is necesary to connect to a 64bit machine but can't find info of doing it the other way, 64 to 32. http://docwiki.embarcadero.com/RADStudio/Tokyo/en/New_Component

Originally shared by Benjamin “BeRo” Rosseaux

Originally shared by Benjamin “BeRo” Rosseaux http://www.phoronix.com/scan.php?page=news_item&px=PasVulkan-Vulkan--Pascal-Bind :-) http://www.phoronix.com/scan.php?page=news_item&px=PasVulkan-Vulkan--Pascal-Bind
Embarcadero, I'm waiting for an Updated Rad Studio Tokyo version... My Android project are stuck and I still use Rad Studio Berlin....

My recently featured 2nd project in Instructables.

My recently featured 2nd project in Instructables. One-Click to convert image file to 3D model for 3D Printer. Video: https://www.youtube.com/watch?v=SbDZPxwLBpo&index=1&list=PLZG_AEGYW1gJxEjGB2AOvbxWfxKm7SOg4 Instructables: https://www.instructables.com/id/Ras3Der-My-Image-to-3D-Model-Tool-3d-Model-Viewer-/ https://www.instructables.com/id/Ras3Der-My-Image-to-3D-Model-Tool-3d-Model-Viewer-/

We are pleased to announce the first release of our Mida Dropbox Library

We are pleased to announce the first release of our Mida Dropbox Library The easy access at Dropbox API Core V2, this release includes VCL and FMX support for Seattle, Berlin and Tokyo IDE Main features: - Multi platform support Windows, macOS, iOS, Android and Linux - VCL and FMX compatible - It is a new product and use last Embarcadero technologies for lasts IDE - Required Seattle, Berlin, Tokyo - Full example and extra info for Linux - Optimized for DataSnap and thread code - Full Source - No external library required - Very easy to use and modify - It is a visual component for Delphi/C++ - New 2017 project for last Dropbox API v2 - Direct Dropox Api Server call, no extra code for maximum compatibility - Support Crypt LockBox 3 (free) ... http://www.midaconverter.com/dropbox.html http://www.midaconverter.com/dropbox.html

This puzzles me ...

This puzzles me ... Why would an Anroid App that is running fine in Debug and Release Mode crash when I deploy it to the AppStore and install it from there - on the very same device? This is what happens to me at the moment with one of my apps. I goes to Nirvana right after the splashscreen, but only if I install it from the appstore. The problem is that I have no idea how to troubleshoot the issue. Has anybody ever experienced similar? It is no general problem with the app in the appstore on another device this does not happen and I can install the app from the appstore and it runs. The device where it is not running from the appstiore has an Android 6.0 and the device where it is running has an Android 5.0 installed. So I guess it has to do with this difference?

Does anyone have a modern (fast) implementation of a heap data structure handy.

Does anyone have a modern (fast) implementation of a heap data structure handy. If not I'll throw something together using The Tomes. http://www.cprogramming.com/tutorial/computersciencetheory/heap.html

Does anyone have a modern (fast) implementation of a heap data structure handy. If not I'll throw something together using The Tomes.

Does anyone have a modern (fast) implementation of a heap data structure handy. If not I'll throw something together using The Tomes. http://www.cprogramming.com/tutorial/computersciencetheory/heap.html

Slightly Off Topic: Any recommendations of automation tools for GUI testing.

Slightly Off Topic: Any recommendations of automation tools for GUI testing. We tried AutoIT but it had some problems and way too technical. I would guess that if it would be commercial product, price should be pretty moderate and licensing model fair anyways (). Free and/or open source projects would be preferable.

I have a problem with the google Maps library GMLib for delphi xe. I always get the following script error. Can anyone help?

Image
I have a problem with the google Maps library GMLib for delphi xe. I always get the following script error. Can anyone help?

Originally shared by Boian Mitov

Originally shared by Boian Mitov Another Visuino component built by Swellington Santos with the Visuino Delphi SDK :-) #Visuino #Delphi #Arduino

Google Alerts tipped me off about a Sydney Delphi job.

Google Alerts tipped me off about a Sydney Delphi job. Rad Studio IDE Developer Hills District Immediate Start Permanent or Contract - Excellent $$$ My client, a rapidly growing radio communications business are looking to bring in a strong and experienced Rad Studio IDE Developer into the business to help them build out their engineering division. The projects are completely greenfield so you will be strong technically but also be able to consult into the business. Day to day you will be the key contributor of software, web, and multi-media applications that facilitates the achievement of business outcomes and improves business efficiencies and processes through leveraging technology. You will be responsible for developing cross-platform Android, iOS and Windows apps. Experience Required - Experience with Bluetooth comms (serial communications over Bluetooth Classic and BLE/Smart) - Familiarity with the Rad Studio IDE - Strong knowledge of iOS & Android SDK and C, Objective-C and

Here's the presentation that was given at Build 2017 about Windows on ARM and how it works. It also includes an explanation on how the x86 emulation(for Win32 applications) works. Based on the presentation, a Win32 application should work without any changes.

Here's the presentation that was given at Build 2017 about Windows on ARM and how it works. It also includes an explanation on how the x86 emulation(for Win32 applications) works. Based on the presentation, a Win32 application should work without any changes. https://channel9.msdn.com/Events/Build/2017/P4171

I created simple debugger application with Delphi and Dcef3. It allows debugging NodeJs applications/scripts in similar way you can do it in Chrome. Enjoy.

Image
I created simple debugger application with Delphi and Dcef3. It allows debugging NodeJs applications/scripts in similar way you can do it in Chrome. Enjoy. https://www.adremsoft.com/adrem-labs/

FmxLinux 1.0 just released.

FmxLinux 1.0 just released. We've changed upgrade policy to life-time - you pay for the product only the first time and get all new versions for free and for life. http://www.fmxlinux.com http://www.fmxlinux.com

Does anybody have some experience with using TJclZipCompressArchive or the 7zip.dll?

Does anybody have some experience with using TJclZipCompressArchive or the 7zip.dll? http://stackoverflow.com/questions/43983849/using-tjclzipcompressarchive-blocks-the-main-vcl-thread-in-delphi

Hello

Hello, ShowModal hides calling Form on Mac OS, I use delphi Tokyo. Complete information is here, how can I solve it ? http://stackoverflow.com/questions/43235347/delphi-firemonkey-mac-osx-modal-form-moves-behind-main-form-when-closing-file-di http://stackoverflow.com/questions/43235347/delphi-firemonkey-mac-osx-modal-form-moves-behind-main-form-when-closing-file-di

Question: Do you always fully qualify your units in the uses clause(s)?

Question: Do you always fully qualify your units in the uses clause(s)? i.e. vcl.Buttons, xml.XMLDoc; instead of just Buttons, XMLDoc;
Is there a Delphi library that allows for pooling of TCustomConnection instances preferably with an example on how to distinguish between instances that have effectively equal connection properties and the ones that are effectively unequal?

Hi devs!

Hi devs! In our old VCL application we used help html files. Now that we want to do a step forward with FMX and MAC friendly app , what is the way to implement chm or something like that?

Originally shared by Boian Mitov

Originally shared by Boian Mitov Swellington Santos just posted a great Video Tutorial on creating Visuino components using the Visuino SDK and Delphi :-) #Visuino #Delphi #Arduino
Happy Mother's Day to our mother Delphi, who gives us many wonderfully unforgettable moments and without her we do not live :)

Is this bug known?

Is this bug known? type IX = interface ['{2F2B4306-3427-43C7-8D86-A3E300501281}'] procedure Test(NormalParam: boolean; DefaultParam: boolean = true); end; TX = class(TInterfacedObject, IX) public procedure Test(NormalParam: boolean); end; Even though the implementation does not match the interface the compiler does not issue any hint, warning or error. IMO this should be an error.

Hello!

Hello! These are some components for Android: - AppEvents supports ScreenOn/ScreenOff event - AdMob Interstitial Ads https://github.com/Nglthach/NTDE Cheer!

Cary Jensen wrote a book again. This time it is about FireDAC:

Cary Jensen wrote a book again. This time it is about FireDAC: http://caryjensen.blogspot.de/2017/05/delphi-in-depth-firedac-is-now-available.html
How to read data from old delphi application Paradox databases without BDE? I search for freeware or open source solution.

Does anybody know whether the Embarcadero blogs have got individual RSS feeds? And what's the URL of the RSS feed for all blogs? I can't see anything regarding feeds on https://community.embarcadero.com/blogs

Does anybody know whether the Embarcadero blogs have got individual RSS feeds? And what's the URL of the RSS feed for all blogs? I can't see anything regarding feeds on https://community.embarcadero.com/blogs

http://delphisorcery.blogspot.com/2017/05/how-to-create-operator-overload-that.html

http://delphisorcery.blogspot.com/2017/05/how-to-create-operator-overload-that.html http://delphisorcery.blogspot.com/2017/05/how-to-create-operator-overload-that.html

New Blog Post: This tutorial shows you how you can download remote images in the background while you are scrolling through them. By doing so your applications will not be blocked by these slow operations and your end-user will experience a responsive user-interface. Full source code provided. Runs on both mobile and desktop devices.

New Blog Post: This tutorial shows you how you can download remote images in the background while you are scrolling through them. By doing so your applications will not be blocked by these slow operations and your end-user will experience a responsive user-interface. Full source code provided. Runs on both mobile and desktop devices. Blog entry - https://www.woll2woll.com/single-post/2017/05/11/Using-Threads-to-Download-Remote-Images Youtube comparison video - https://youtu.be/kRwt2s5BLcE https://www.woll2woll.com/single-post/2017/05/11/Using-Threads-to-Download-Remote-Images

The joys of code optimization

The joys of code optimization http://delphisorcery.blogspot.com/2017/05/i-wish-i-had-dcc32-dontmakemycodeslow.html

I have the following situation:

I have the following situation: I have enumerator classes that have a MoveNext and some internal state. The first time MoveNext is called additionally to the usual logic of MoveNext it needs to do some initialization. Currently the code is basically like this: function TEnumerator.MoveNext: Boolean; begin Result := False if state = init then begin DoInit; state := running; end; if state = running then begin // usual movenext stuff... end; end; In languages with case/switch fallthrough I could simply write it like this: case state of init: begin DoInit; state := running; end; running: begin // usual movenext stuff end; end; I am seriously tempted to use a label and a goto here but I was wondering if anyone has another idea to avoid checking state twice.

We are preparing a new Delphi product, a Dropbox component, for a very easy access to API Core V2

We are preparing a new Delphi product, a Dropbox component, for a very easy access to API Core V2 http://www.midaconverter.com/dropbox.html VCL / FMX / Win / Mac / ios / Android If you see any error please let me know :-) http://www.midaconverter.com/dropbox.html

I'm upgrading an app to build using 10.2.

I'm upgrading an app to build using 10.2. On iOS it seems you can't show a modal dialog in a FormShow event handler? Works on Android and Windows though. Fallen at the first hurdle.....

New RAD Studio Roadmap May 2017 available at https://community.

New RAD Studio Roadmap May 2017 available at https://community.embarcadero.com/article/news/16519-rad-studio-roadmap-may-2018 https://community.embarcadero.com/article/news/16519-rad-studio-roadmap-may-2018

New RAD Studio Roadmap May 2017 available at https://community.embarcadero.com/article/news/16519-rad-studio-roadmap-may-2018

New RAD Studio Roadmap May 2017 available at https://community.embarcadero.com/article/news/16519-rad-studio-roadmap-may-2018 https://community.embarcadero.com/article/news/16519-rad-studio-roadmap-may-2018

TMS Sparkle v2.3 (http://www.tmssoftware.com/site/sparkle.asp ) and TMS XData v2.5 (http://www.tmssoftware.com/site/xdata.asp ) both released with Linux support!

Image
TMS Sparkle v2.3 ( http://www.tmssoftware.com/site/sparkle.asp ) and TMS XData v2.5 ( http://www.tmssoftware.com/site/xdata.asp ) both released with Linux support!

Is there a reason TTimerProc used with IFMXTimerService is declared so, without sending through the TimerID/Handle to the callback procedure (in FMX.Types)?

Is there a reason TTimerProc used with IFMXTimerService is declared so, without sending through the TimerID/Handle to the callback procedure (in FMX.Types)? TTimerProc = procedure of object; IFMXTimerService = interface(IInterface) ['{856E938B-FF7B-4E13-85D4-3414A6A9FF2F}'] function CreateTimer(Interval: Integer; TimerFunc: TTimerProc): TFmxHandle; ... end; With the ID/handle it would be possible to use one TimerProc handler for multiple timers created this way. Looking further into the FMX.Platforms.xxx units I can see the ID/handle is available upto the point of the call to TimerProc (ok on Mac/iOS it will be more involved to get the ID, but it seems possible). Is there an easy way to use the same callback procedure for multiple timers created this way and know which timer fired?

Delphi 10.2 Starter + Raudus Web Framework

Image
Delphi 10.2 Starter + Raudus Web Framework
I have seen the fmxlinux website and the great product they have built, I am really loving it. But has embarcadero planned to have Linux Firemonkey on a future release? I'd like to see Linux FMX as "native" IDE feature and not as 3rd party component
Hi all. I have a windows 10 store app. Its in the store. But there is an issue with the new up and coming windows 10S (student version?), i.e a permission issue with the creation of the apps settings file...normal windows 10 with full resources allocated (that is enabled for the app by default, no way to change that?), using gethomepath, works OK, but for windows 10s I am told I need to create the files inside the installation folder. Using location:=ExtractFilePath(ParamStr(0)); it does not like either (normal windows version, permission error), as that is a folder under c:\program files. what co mmand, like gethomepath, to use, to get the windows 10 installation folder location? thanks! , Brian

Originally shared by Thomas Mueller (dummzeuch)

Originally shared by Thomas Mueller (dummzeuch) So I don’t forget: Adding a comment to an existing IXMLNode is simple, once you find out how: [delphi] var CommentNode: IXMLNode; begin CommentNode := ParentNode.OwnerDocument.CreateNode(‘comment text’, ntComment); ParentNode.ChildNodes.Add(CommentNode);… http://blog.dummzeuch.de/2017/05/10/adding-a-comment-to-an-xml-node/

DelphiStyles provide special patch installer for RAD Studio to fix problems of adding style for window title in macOS application.

Image
DelphiStyles provide special patch installer for RAD Studio to fix problems of adding style for window title in macOS application. Just install it and get fully styled macOS application! You'll get it for free with each FM style now! http://www.delphistyles.com

For document rendering we needed perfect path drawing capability as supported by the OS. FMX Canvas is great at many things, but has different limitations in path drawing, clipping, etc. across different platforms. With inputs through QC, we implemented native rendering across all platforms for the drawing capabilities we needed and now we have accurate and fast rendering across all platforms. The speed gains with native rendering on Android is phenomenal, plus that you can render in a background thread on Android with native rendering enables for a smooth enjoyable document viewing experience.

Image
For document rendering we needed perfect path drawing capability as supported by the OS. FMX Canvas is great at many things, but has different limitations in path drawing, clipping, etc. across different platforms. With inputs through QC, we implemented native rendering across all platforms for the drawing capabilities we needed and now we have accurate and fast rendering across all platforms. The speed gains with native rendering on Android is phenomenal, plus that you can render in a background thread on Android with native rendering enables for a smooth enjoyable document viewing experience. You can download the trial version here: https://www.gnostice.com/XtremeDocumentStudio_Delphi.asp?show=downloads Originally shared by Gnostice.com We are pleased to announce a mega release of XtremeDocumentStudio Delphi. This release includes major enhancements in PDF rendering with native rendering for all FMX platforms - Win32/64, OS X, iOS and Android. We have added support for RAD Studio 10.

Does anyone know if it's ok to "implement" interface methods with abstract methods in the class that implements the interface? These methods will be overriden later in child classes. I mean, I could leave these methods as virtual in the class that implements the interface, and leave the method bodies empty.

Does anyone know if it's ok to "implement" interface methods with abstract methods in the class that implements the interface? These methods will be overriden later in child classes. I mean, I could leave these methods as virtual in the class that implements the interface, and leave the method bodies empty. The compiler didn't complain.

Creating Gauge Visualizations with TeeChart Pro VCL / FMX in your Applications – Steema Blogs

Creating Gauge Visualizations with TeeChart Pro VCL / FMX in your Applications – Steema Blogs http://steema.com/wp/blog/2017/05/10/creating-gauge-visualizations-with-teechart-pro-vcl-fmx-in-your-applications/

FmxLinux 0.

Image
FmxLinux 0.99i - Hi-Dpi support, professional styles from DelphiStyles, new APIs for shell execute, custom font loading and bunch of fixes. http://www.fmxlinux.com

FmxLinux 0.99i - Hi-Dpi support, professional styles from DelphiStyles, new APIs for shell execute, custom font loading and bunch of fixes.

Image
FmxLinux 0.99i - Hi-Dpi support, professional styles from DelphiStyles, new APIs for shell execute, custom font loading and bunch of fixes. http://www.fmxlinux.com

Originally shared by Boian Mitov

Originally shared by Boian Mitov My next Visuino and Delphi article has just been published in the "Blaise Pascal Magazine" - Program Elegoo Bluetooth Controlled Arduino Robot Part 2 - Creating Android Remote Control App #Visuino #Arduino #Delphi

It seems I found another piece to the puzzle of generics causing big binaries and slow compile times:

It seems I found another piece to the puzzle of generics causing big binaries and slow compile times: https://quality.embarcadero.com/browse/RSP-18080 It looks like the compiler puts more into a dcu than it should/have to. That causes some cascading effect if you have a project with many units that all suffer from this. In my case I have a project with roughly 53k loc that compiles for 22sec and causes the IDE to go from 300MB to a little over 1GB RAM usage. But not only that it also causes the IDE to become sluggish right after that (yeah yeah, I can use msbuild to not let the IDE suffer but that's not the point). It goes away when I close the project but working with it and compiling even more projects makes it worse. The project is producing 73MB of dcu files that mostly contain the same stuff over and over (most of it being generic collection classes that are not even used but being pulled in because of the bug reported). Some of them being some couple hundred lines of trivial

New update for zControls, DebugEngine !

New update for zControls, DebugEngine ! zControls: - Floating number support. - Improved Tab & Arrow Key behavior more like Delphi IDE. - Added OnAutoExpandItemOnInit handler to expand some item automatically on init. - Fixed user input text when OnItemSetValue rerurns False. - Fixed AV error when changing component and previous selected item is out of new items range. DebugEngine: - Increased segment units to support large map files. - Fixed AV when there is no debug info for call item. https://github.com/MahdiSafsafi/zcontrols https://github.com/MahdiSafsafi/DebugEngine

TECNativeMap 3.1, 100% Delphi mapping component for VCL and Firemonkey

Image
TECNativeMap 3.1, 100% Delphi mapping component for VCL and Firemonkey Support for Delphi 10.2 Tokyo and Weather http://www.helpandweb.com/ecmap/en/tecnativemap.htm
Is there anywhere a file box (similar to that in a tOpenDialog) which is not a dialog box - so it can stay open on the form allowing selecting files or directories, moving files around etc?

Who do I request a JIRA account, with the administrators? I just have access to the edn.embarcadero.com

Who do I request a JIRA account, with the administrators? I just have access to the edn.embarcadero.com

Originally shared by Boian Mitov

Originally shared by Boian Mitov Another Visuino component built by Swellington Santos with the Visuino Delphi SDK :-) #Visuino #Delphi #Arduino

Browse and Doc It 1.2 for RAD Studio XE to XE 10.2 Tokyo

Browse and Doc It 1.2 for RAD Studio XE to XE 10.2 Tokyo http://www.davidghoyle.co.uk/WordPress/?p=1671 http://www.davidghoyle.co.uk/WordPress/?p=1671
I need to reinstall my PC and I will uninstall Delphi. Question is: the uninstall process will release the counter for allow me install it again? Should I really uninstall it first or I simply could format/reinstall my PC?

New "Charcoal Expressive" FM and VCL style released!

Image
New "Charcoal Expressive" FM and VCL style released! http://www.delphistyles.com