Tuesday, July 28, 2015

New BeaconFence for RAD Studio

Beside announcing the deal with Raize Software, today we are announcing a new internally developed components focused on beacon fencing, that is a new technology for tracking mobile user indoor.

Beside announcing the deal with Raize Software (see my previous blog post), today we are announcing a new internally developed components focused on beacon fencing, that is a new technology for tracking mobile user indoor. You can read all about BeaconFence at:

http://www.embarcadero.com/products/beaconfence

In short, this is a technology based on beacons, that lets developer graphically design areas within an indoor building (a large store, a restaurant, a mall, a sports facility...) and define actions and event that fire when a user enters or exists the given area. The image below of the map editor gives you a feeling of the product, which is a component with some specific and very complex design time editors.

Again, head to the product page for more information and check our the "pay-per-use" pricing. You can sign up the free plan for BeaconFence, get the component, build and deploy a simple scenario. For more complex solutions, there is a deployment fee depending on the size of the building and related factors.

One of the reasons we are particularly proud of this product and this technology is that BeaconFence is the first commercial ready-to-use beacon fencing solution for software developers available today.

Embarcadero Buys Raize Components and CodeSite

Embarcadero Technologies today announced the acquisition from Ray Konopka's Raize Software of Raize Components and CodeSite.

In case you don't know, Ray Konopka has been from the early days of Delphi one of the leading authorities on components development, thanks to his classic components development book, the countless Delphi conferences he has spoken about this subject (along with UI design and other VCL technologies) and the great set of high-quality components he built and sold as Raize Components. Ray has done a lot more with Delphi, in terms of tool, training, consulting and business development, and he is one of the Delphi community gurus.

This is why I'm extremely happy to see this acquisition by Embarcadero Technologies of his flagship components and his CodeSite logging tool (the light version of which already ships with RAD Studio). Embarcadero starts selling these components today. The components have been renamed as "Konopka Signature VCL Controls". The CodeSite Logging System keeps its existing name and is available for RAD Studio but also Visual Studio. Both can be bought today, along with subscription, from Embarcadero web shop and from our partners.

You can read the complete press release at www.embarcadero.com/press-releases/embarcadero-acquires-raize-components-introduces-new-windows-ui-and-logging-products-for-delphi-and-cbuilder-developers.

What should I add? Stay tuned for more add-on components from Embarcadero, to complement RAD Studio but also supporting other development tools.

 





Wednesday, July 22, 2015

Delphi Blogs of the Week/Month #32

Long time without blogging, but I took 2 weeks off and was very busy last week. Here is a short round of interesting tidbits for Delphi developers.

Long time without blogging, but I took 2 weeks off and was very busy last week. Here is a short round of interesting tidbits for Delphi developers.

Company News

Embarcadero opening its focus on more developers, beside those using our IDEs and programming languages. New nice developers landing page at:  www.embarcadero.com/products/application-development . More information will get added to the page over time. Stay tuned.

As an example, AppAnalytics (www.embarcadero.com/products/appanalytics) is going beyond RAD Studio... www.nuget.org/packages/appanalytics.

Unexpected Delphi Blog Posts

The last person I'd have expected to start blogging about Delphi is Chuck Jazdzewski, who was one of the original developers of the VCL library and of Delphi itself (and after moved to Microsoft and Google). He had several posts in his http://removingalldoubt.com/ blog. They really explain some of the core foundations of Delphi, and titles are quite descriptive:

And One More Delphi Blog Post

Minecraft in Delphi? Kind of. Read www.fmxexpress.com/free-minicraft-game-source-code-for-delphi-xe8-firemonkey-on-android-and-ios/ Interesting. I've been watching my son play Minecraft, and set up a server for him. Good stuff.

Again, summer vacation is mostly over for me, now get back to work... and to blogging.

 

 

Saturday, June 27, 2015

Delphi Blogs of the Week/Month #31

A lot time since the last collection of links, but here is it.

A lot time since the last collection of links, but here is it. (And by the way, I'm going on vacation and will leave the blog quiet for a couple of weeks)

Blogs Etc

Third Party

 

Friday, June 19, 2015

RAD Studio XE8 Update 1

The Update 1 of RAD Studio XE8, C++ Builder XE8, and Delphi XE8 is available for Update Subscription customers, as anticipated.

The Update 1 of RAD Studio XE8, C++ Builder XE8, and Delphi XE8 is available for Update Subscription customers, as anticipated. If you are not under Update Subscription and have XE8, you can subscribe now. Links:

Again, you need Update Subscription for the "Subscription Update 1". If not, you can buy it now, regardless of when you bought XE8. If you don't really want the update subscription, there is a limited general update available. PS: Don't install the full udpate if you are not entitled, as your XE8 product might stop functioning.

New features? A community toolbar and the favorites in the Welcome page:

 





Thursday, June 18, 2015

Windows 10 Notifications from a VCL app with the WinRT API

The WinRT API headers for Delphi are now on GetIt and here is a demo to try out using Windows 10 notifications in a VCL Win32 application.

The WinRT API headers for Delphi are now on GetIt and here is a demo to try out using Windows 10 notifications in a VCL Win32 application.

Windows 10 Webinar

Yesterday, we had a Windows 10 focused webinar, with a Microsoft guest and a few of us (me, David I, Jim McKeeth, and JT) talking about Windows 10 and the support RAD Studio XE8 offers for the coming versions of Windows. If you missed it, the replay will soon be available. What I showed in the webinar, beside some classic demos, was a VCL application using notifications on Windows 10, a feature not available in the traditional Win32 APIs but only using the new WinRT APIs.

How to do you get the headers for that API and how do you get a working demo? Keep reading...

Delphi WinRT Headers for Windows 10 on GetIt

First of all, today we made available the headers for the WinRT API on GetIt, to all developers with Delphi or RAD Studio XE8 (there is no direct support for C++, at this very moment). Just open GetIt in XE8 and click on the corresponding entry, shown below.

Notice that this code is for the Windows 10 preview, it is likely that the APIs and our header translations will change over the coming months. So you might have to change/clean up your code in the future, but it is great to be able to start target WinRT classes today with XE8.

The WinRT Notification Demo

As an example of an interesting feature you can use only from WinRT, this demo is focused on the new notifications, called "toast" notifications. Now, the API is available but not really encapsulated in ready-to-use components, so the code is far from simple and I won't list everything here, only the core elements. This is what we want to obtain:

This is a portion of the code used to create a notification. As you can guess below, WinRT classes are basically used like COM objects, and they share the core architecture. The objects creation doesn't use a CoClass (or class factory) but is a little more complex:

    if Succeeded(RoGetActivationFactory(LString, TGUID.Create('{50AC103F-D235-4598-BBEF-98FE4D1A3AD4}'), LCreated)) then
    begin
      LINotificationManagerStatics := LCreated as IToastNotificationManagerStatics;
      if Succeeded(WindowsCreateString(PWideChar(Edit1.Text), Length(Edit1.Text), LString2)) then
      begin
        LToastNotifier := LINotificationManagerStatics.CreateToastNotifier(LString2);
        LXMLTemplate := LINotificationManagerStatics.GetTemplateContent(ToastTemplateType.ToastText02);
        if Succeeded(WindowsCreateString(PWideChar(SToastNotification), Length(SToastNotification), LString)) then
        begin
          if Succeeded(RoGetActivationFactory(LString, TGUID.Create('{04124B20-82C6-4229-B109-FD9ED4662B53}'), LCreated)) then
          LToastFactory := LCreated as IToastNotificationFactory;
          LToast := LToastFactory.CreateToastNotification(LXMLTemplate);
          LAccepted := TAcceptedEventHandler.Create;
          LToast.add_Activated(LAccepted);
          LToastNotifier.Show(LToast);
        end;
The TAcceptedEventHandler class is the one that has an invoke callback method, that logs in the memo the fact taht the information was accepted (the dismiss portion I'll have to refine). This is the code:
procedure TAcceptedEventHandler.Invoke(sender: IToastNotification; args: IInspectable);
begin
  Form51.Memo1.Lines.Add ('You clicked on the notification!');
end; 
I know the reference to the global form is ugly, but the code is complex enough to avoid the extra indirection. Do you want to give it a go? You can download the complete demo at dl.dropboxusercontent.com/u/133855/WinRTCheck.zip. I'm probably going to update it, and possibly also write a couple more examples, covering other new areas in WinRT. 

Windows 10 is Coming

...and it looks it will be a very important version of Windows, so get the Windows 10 Preview now, and start using XE8 to experiment the integration of your VCL (and FireMonkey) applications with it.

 

Thursday, June 4, 2015

More Information on GetIt Package Manager in XE8

GetIt is the new XE8 package manager for RAD Studio. Information about how to submit your libraries to GetIt has just been made available by Embarcadero.

GetIt is the new XE8 package manager for RAD Studio. Information about how to submit your libraries to GetIt has just been made available by Embarcadero.

The idea behind GetIt is really to make is easier and faster to discover, install, and keep updated some of the best open source libraries for Delphi and C++Builder. The main form of GetIt lets you browse or search for a library, and with one click (plus a second to accept the license) you can get the component installed and ready to use.

You can find more information at www.embarcadero.com/products/rad-studio/tools-and-components, while some technical information is in the help at docwiki.embarcadero.com/RADStudio/XE8/en/GetIt_Main_Window.

What's new is the set of "acceptance guidelines" for submitting libraries to GetIt, something Embarcadero is encouraging. While the process is still manual (and it will get automated) you can read the article to see if your library is within the requirements, which if it is an actively maintained library adding value to the product is likely the case. In the article you can also find the download with the information needed for an actual submission. The link is:

community.embarcadero.com/index.php/article/news/16027-submitting-libraries-to-getit

Beside the initial "TurboPack" group of libraries and a couple of internal add-ons, we already got a couple of submissions, including ICS and OmniThread. A couple of others are being added right now. Let's add many more...

 

Wednesday, June 3, 2015

Events in Japan and China

A few pictures of the XE8 events during my recent trip to Japan and China, and a video of my keynote in Tokyo.

A few pictures of the XE8 events during my recent trip to Japan and China, and a video of my keynote in Tokyo. (Trying to link directly form Google Photo, let's see if this works).

Japan

Event in Osaka (view of the castle from the event room and dinner after event) and Tokyo (during the event and the city)

 

 

China

In Beijing, forbidden city entrance and attendees at the XE8 event.

There was a good crowd at the first event after some time, old customers looking to the new features but also new developers.

I was actually a bit (negatively) impressed by how nothing in my Android Google phone worked in the country, given all Google servers cannot be reached. But that's another story.

Video of Tokyo Keynote

This is in English with subtitles, edited to skip the live translation.

 

 





Monday, June 1, 2015

Delphi Blogs of the Week/Month #30

It has been a while, but here is another round of useful links for Delphi developers.

It has been a while (really going for for monthly posts, than weekly ones these days), but here is another round of useful links for Delphi developers.

XE8 and Windows 10

There is a lot of information floating around about the current support for Windows 10 in RAD Studio XE8. Here are some links:

XE8 Mobile Tidbits

And More

 

 

Wednesday, May 20, 2015

Article on Developing for Windows 10 with RAD Studio XE8

Just wrote an article on Embarcadero Community site you might be interested in.

Just wrote an article on Embarcadero Community site you might be interested in:

community.embarcadero.com/index.php/article/news/15977-windows10withxe8

It covers installing RAD Studio XE8 on Windows 10 preview and building applications for the preview of the coming version of Windows. We are expecting the migration to be smooth, but also very interested in creating "first calss apps" (or universal apps) via the Centennial bridge.

We are working with Microsoft to offer Delphi and C++Builder the best support for Windows 10, whether they keep going with the best Windows library out there (VCL) or follow the multi-device route with FireMonkey. Stay tuned for more information.