Watch, Follow, &
Connect with Us

Embarcadero Blogs

Latest Posts

Hello Moto 360 from Delphi XE7

I really like my Moto 360 watch. It looks fabulous, and does great as an extension of my Android phone, but of course the most important question is how to make an app for it. Turns out it just works with …

Read more »

posted @ Fri, 19 Sep 2014 11:40:04 +0000 by Jim McKeeth

Modernize your Windows Apps with Premium VCL Styles

Our current RAD offer (valid through September 30th, 2014) includes a new premium styles for VCL. Included in the pack are the following premium styles:

  • Coral
  • Emerald
  • Diamond
  • Jet
  • Sterling

To add the premium VCL styles to XE7, extract the .vsf files from the zip archive and copy them to your styles directory: C:\Users\Public\Documents\Embarcadero\Studio\15.0\Styles\

posted @ Fri, 19 Sep 2014 17:09:29 +0000 by sarinadupont

XE7 Bonus Pack delivers new Premium FireMonkey Styles

Our current RAD offer (valid through September 30th, 2014) includes a new FireMonkey premium style pack.

This pack includes the following 4 new multi-device styles for iOS, Android, Windows and Mac:

  • Emerald Crystal
  • Emerald Dark
  • Coral Crystal
  • Coral Dark

Our existing Jet, Diamond and Sterling styles have also been extended on the Desktop side to include the same UI elements as the premium mobile styles.


When working with custom styles, every view (including the Master) needs to have a style loaded. Below are the steps for getting started using premium styles with FireUI in XE7:

Every view (including the Master) needs to have a style loaded when using premium style.

1. With the Master view selected, add a TStyleBook component to your form

2. On the Master view, select a Master style from the toolbar drop-down menu and then load the associated premium style from the style pack. For example, if you selected ‘Android’ as the Master style, load and assign the file to your StyleBook on the Master view. When working with custom styles, each view must have a style, including the Master view.

3. Switch to each of your created views, select the TStyleBook component on that view and load the custom style related to that platform  (Windows style for "Windows Desktop" view, Android style for "Android…" view, Mac style for  "OS X Desktop" view, iOS style for "iPad" and for "iPhone" views).

Note: If you have different views for iPad and iPhone, you need to load the same iOS style for each view.

4. If your application consists of multiple forms, you can set TStyleBook.UseStyleManager = True in each view in order to use the same custom styles for all other forms at runtime. If TStyleBook.UseStyleManager = True is set, then custom styles fully override system styles in all other forms (Form2, Form3etc.)  that are part of your application for that particular platform. If  TStyleBook.UseStyleManager = False is set, then new forms (Form2, Form3 etc.) will use the default platform style and for customization, you must add TStyleBook to Form2’s "Master" view and load each custom style again for all created views of the additional forms that are part of your application.

posted @ Fri, 19 Sep 2014 16:15:40 +0000 by sarinadupont

Delphi XE7 Moto 360 Support w/FireUI

Jim McKeeth walks thru Moto 360 support for Delphi XE7. Jim is using XE7’s new FireUI and the new Moto 360 circular FireUI view (available soon as a free XE7 download) to build and deploy a native Moto 360 app to the watch. Demos for C++ and Appmethod also soon. Developers without access to a Moto 360 can deploy/debug to the Android Wear round face emulator. Note: the Android emulator requires high performance PC and host GPU turned ON.

Download the FREE XE7 Trial today, and remember that you only have until September 30th to get an add’l 10% early adopter discount, plus you get theFREE XE7 bonus pack including FREE Castalia Full Version and FREE FastCube VCL 2.

With Delphi XE7, C++Builder XE7, and RADStudio XE7 you can build and deploy your apps to a wide variety of Android devices including phones, tablets, Google Glass, game consoles, and smart watches. Look for more FireUI view support for more devices as they are added.

FireUI is one of the most popular and talked about new features but there are many more new features in XE7, and lots of enhancement and improvements to the new capabilities introduced in XE5 and XE6.

“The XE7 FireUI Multi-Device designer allows us to create a master view and customize the layout for numerous other devices. The development time it saves is worth the upgrade to XE7 alone.”
Andrew Tierney - CEO - CastleSoft

“FireUI is like heaven! XE7 users will be lightyears ahead of other developers”
Erik Bellaard - Developer - *WEGA Automatisering VOF, NL

“The most important XE7 feature for me is FireUI Multi-Device Designer. I love it.”
Bogdan Bogus- Project manager - Metaproiect Software srl, Tirgu Mures, Romania

“XE7’s FireUI delivers the promise of single-source development across all the FMX platforms”
Ptere Ingham - Independent Software Development Consultant

“FireUI in XE7 is awesome. It rocks. Love the concept and the use of inheritance.”
Keith Brown, independent programmer, Keith and Lisa Brown, LLC

Twitter @Mike_Swindell

posted @ Fri, 19 Sep 2014 16:47:02 +0000 by Michael Swindell

Bluetooth App Tethering with RAD Studio XE7

With RAD Studio XE7, you can easily extend your existing Windows VCL and FireMonkey apps to connected devices, sensors, data and services using Application Tethering.

In XE7, we have added support for Bluetooth tethering, in addition to Network based tethering.

Here are some of the features that App Tethering provides:

  • Extend FireMonkey and VCL Apps
  • Auto Device Discovery
  • Trigger Events and Methods on Other Devices
  • Remote Control Apps
  • Send Data back and forth
  • Bluetooth & Wifi Support

If you used network (Wifi) based application tethering with XE6, you can easily switch your existing apps to use bluetooth tethering in XE7.

The only change you need to make is to switch the AllowedAdapters property from Network to Bluetooth on your TetheringManager component. You will need to make this change to the TetheringManager component on all tethered apps.


Before running the application, ensure that both of your devices are paired. In my example, I am using a 2012 Nexus 7 that I paired to my Macbook Pro. On my Nexus 7, I selected Settings, and turned Bluetooth on. I then clicked on Bluetooth and selected to ‘Search for Devices’. Once I found my Macbook Pro, I clicked on it to pair my Nexus 7 device to it. My Nexus 7 then also appeared in my list of Bluetooth devices on my Macbook Pro.

The tethering demo you see in my screenshots and the video below can be found under:

C:\Users\Public\Documents\Embarcadero\Studio\15.0\Samples\Object Pascal\Mobile Samples\Media\MediaPlayer

C:\Users\Public\Documents\Embarcadero\Studio\15.0\Samples\CPP\Mobile Samples\Media\MediaPlayer


Click here to find out more about our introductory 10% Discount on qualifying XE7 products through September 30, 2014!

posted @ Fri, 19 Sep 2014 15:32:53 +0000 by sarinadupont

Castalia IDE plug-in is part of the XE7 Bonus Pack

Castalia is an amazing IDE productivity tool. If you haven’t checked it out, you should. And now you can as part or your RAD Studio or Delphi XE7 purchase by September 30th. Marco shares some excitement about it on his blog:

posted @ Fri, 19 Sep 2014 14:43:42 +0000 by J T

Designing App Navigation with TMultiView in RAD Studio XE7

In RAD Studio XE7, we introduced a new smart menu component called TMultiView. With TMultiView, it is really easy to create app navigation that automatically adjusts itself depending on form factor, orientation and target platform using our new behavior services. TMultiView is a container component which means that you can parent many different components to it, such as a top aligned TToolbar or a client aligned TListview.

To use the new TMultiView component, drag and drop the TMultiView component onto your Multi-Device form. You can also use the Master/Detail Multi-Device template (File->New->Multi-Device Application) as a good starting point.

The MultiView component has some default built-in behavior that defines its appearance at runtime based on form factor and orientation.


The drawer menu, for example, can overlap with the content shown on the form, or push the content off its current position. You can also define the duration of the sliding drawer. The drawer is automatically invoked by swiping across the screen from either the left or the right side (depending on the placement of the drawer), and you can also hook it up to a button.


Also included with RAD Studio XE7 are both C++ and Delphi TMultiView demos:

  • C:\Users\Public\Documents\Embarcadero\Studio\15.0\Samples\Object Pascal\Mobile Samples\User Interface\MultiView
  • C:\Users\Public\Documents\Embarcadero\Studio\15.0\Samples\CPP\Mobile Samples\User Interface\MultiView


The following mobile demos also use TMultiView:

posted @ Thu, 18 Sep 2014 17:24:13 +0000 by sarinadupont

Dynamic Arrays in RAD Studio XE7

Marco discusses a significant new language feature for Dynamic Arrays.

posted @ Thu, 18 Sep 2014 17:12:52 +0000 by J T

Bluetooth LE support in RAD Studio XE7

RAD Studio XE7’s integrated wireless support (Bluetooth and Wifi) works with thousands of consumer and industry specific devices. RAD Studio’s approach makes it easy to integrate virtually any device into the app user experience, and even support multiple device vendors with the same code.

In RAD Studio XE7, we have a new Bluetooth LE component for connecting to many different Bluetooth Smart Devices that work with the different GATT profiles.

We ship several Bluetooth demos with the product that you can look at. For Bluetooth LE, we have a heartrate monitor demo that displays your current heart rate by connecting to a heart rate sensor.
You can find the demo under: C:/Users/PublicDocuments/Embarcadero/Studio/15.0/Samples/Object Pascal/Mobile Samples/Device Sensors and Services/Bluetooth/HeartRateMonitor

I am using the Zephyr heartrate monitor for this, but have also used Polar’s H7 heartrate monitor.

I extended the demo slightly by adding a Listbox for logging the heartrate. Also, for the iPhone version, I customized my iPhone view using the new FireUI Multi-Device Designer to display a + icon instead of the ‘Save’ text for logging my heart rate since I am working with less screen real estate.



bluetooth_iPod.jpg bluetooth2.jpg

Below are the necessary UUIDs we need to connect to our heart rate sensor:

  HRDeviceName = 'Cardiosport HRM';
  ServiceUUID = '';
  CharactUUID = '';

  // From the Bluetooth website Home > GATT Specifications > Services > ServiceViewer
  // Exposes heart rate and other data from a Heart Rate Sensor 
  HRSERVICE: TBluetoothUUID = '{0000180D-0000-1000-8000-00805F9B34FB}';

  // from the Bluetooth website under Home > GATT Specifications > Characteristics > CharacteristicViewer
  HRMEASUREMENT_CHARACTERISTIC: TBluetoothUUID  = '{00002A37-0000-1000-8000-00805F9B34FB}';
  BODY_SENSOR_LOCATION_CHARACTERISTIC: TBluetoothUUID  = '{00002A38-0000-1000-8000-00805F9B34FB}';

  //Body Sensor Location Characteristic value used to index the array to display the string
  BodySensorLocations : array[0..6] of string = ('Other', 'Chest', 'Wrist', 'Finger', 'Hand', 'Ear Lobe', 'Foot');


Here is the btnScanClick code:

procedure TfrmHeartMonitor.DoScan;
  lblDevice.Text := '';
  lblBodyLocation.Text := '';
  lblContactStatus.Text := '';
  BluetoothLE1.DiscoverDevices(2500, [HRSERVICE]);

We also set up several additional events:


procedure TfrmHeartMonitor.BluetoothLE1EndDiscoverDevices(const Sender: TObject;
  const ADeviceList: TBluetoothLEDeviceList);
  I: Integer;
  // log
  Memo1.Lines.Add(ADeviceList.Count.ToString +  ' devices discovered:');
  for I := 0 to ADeviceList.Count - 1 do Memo1.Lines.Add(ADeviceList[I].DeviceName);

  if BluetoothLE1.DiscoveredDevices.Count > 0 then
    FBLEDevice := BluetoothLE1.DiscoveredDevices.First;
    lblDevice.Text := HRDeviceName;
    if BluetoothLE1.GetServices(FBLEDevice).Count = 0 then
      Memo1.Lines.Add('No services found!');
      lblBPM.Font.Size := 26;
      lblBPM.Text := 'No services found!';
    lblDevice.Text := 'Device not found';

Here is a video of our Bluetooth LE support in action:

posted @ Thu, 18 Sep 2014 17:00:40 +0000 by sarinadupont

Delphi, C++Builder and RAD Studio XE7 first impressions from real developers

I recently did a Survey Monkey asking for first impressions from some of the first Delphi, C++Builder and RAD Studio XE7 customers that appeared in our registration database.  Here are just a few of the many responses that we received in the first few hours.


"The XE7 FireUI Multi-Device designer allows us to create a master view and customize the layout for numerous other devices. The development time it saves is worth the upgrade to XE7 alone." - Andrew Tierney - CEO - CastleSoft

The XE7 FireUI desgner is what I was looking for, one program for all platforms, great as I can use what I need on iPad and PC in one go." - Ulco Visser - Maxtra Media

"FireUI is like heaven! XE7 users will be lightyears ahead of other developers" - Erik Bellaard - Developer - *WEGA Automatisering VOF, NL

"XE7’s FireUI delivers the promise of single-source development across all the FMX platforms” - Ptere Ingham - Independent Software Development Consultant

"FireUI in XE7 is awesome. It rocks. Love the concept and the use of inheritance." - Keith Brown, independent programmer, Keith and Lisa Brown, LLC

"XE7’s FireUI multi-device forms take a massive headache out of developing screens that look good everywhere." - David M Williams - International IT consultant and author

Parallel Programming Library

"I am a developer for mechanical engineering software. XE7’s Parallel Programming will be very helpfull for this kind of application." - Wolfgang Häfele - Spplication developer at FIMA

"The Parallel Library in XE7 provides and easy and new way to think about concurrency in your applications." - Robert Love - Team Lead - State of Utah


"In XE7 app tethering to bring some old apps to life again. Parallel library, is gonna make my apps fly." - Roderick Ziervogel - CIO - ECI

"XE7’s multi-plateform support and of course Bluetooth support are very intuitive and easy to use" - Laura Legue - Software Architect

"Delphi XE7 has given us a new level of integration using connection bluetooth. We can reach almost all platforms using a single tool. It’s amazing and is very easy linking all connections with XE7. And the new Google Glass support is certainty a cherry on the cake." - Kelson Palharini - Developer - Ponto.Sys Sistemas

Enterprise Mobility Services (EMS)

"XE7 Enterprise Mobility Services is exactly what I was looking for" - Darian Miller, CTO, Dealer Marketing Services, Inc.

General/Overall Impressions

"XE7 is more responsive, more stable. I’ve been using Delphi for 15 years and still in love with it. That tells it all." - Karim kouni - senior petroleum engineer

"XE7 is mature and stable and very astutely addresses the modern day challenges that a profit conscience company is concerned to be competitive at the lowest investment, yet best quality." - Gerhard Stoltz U-RAD Technologies

"With XE7 Embarcadero continues taking Delphi to a whole new level with constant focus on quality improvements as well as new features. It’s the development platform of choice for me and it keeps getting better." - Darian Miller, CTO, Dealer Marketing Services, Inc.

"XE7 is one of the best releases in recent memory especially with the multi-device designer, no one else has anything like this saving me tons of development time." - Richard Baroniunas - Lead Developer - Baron Software

"Wow, big step forward. If you really want to go multi-platform, RAD Studio XE7 is _the_ choice." - Oliver Funcke - CEO - Software Union G.m.b.H.

"XE7 is the best tool for developing real multi-platform applications." - Carlo Barazzetta - Software Architect - Ethea Srl

"XE7 appears to be more stable and the new features for multi devices are amazing. With XE7 I really have one code for multiple platforms, simple and fast." - Rogério Lagares Xavier - Senior Analyst - Banco Público Federal

"I can’t see how you CAN’T get excited over a platform that lets you deploy to Windows, Mac, Android and iOS in native code with a common code base, using either Pascal or C++." - Tom Marchione - CEO - XMS Corporation

"XE7 is a very polished and stable release for mobile development. I’m a Delphi developer from days past. This release was the one that brought me back from the craziness of Visual Studio/Xamarin and the Apple XCode nightmare." - Zachary Burns - Senior Developer - Midas

Share your XE7 First Impressions - take the survey

If you want to share your XE7 first impressions with us you can use the Survey Monkey survey at

posted @ Thu, 18 Sep 2014 14:27:15 +0000 by David Intersimone

Server Response from: BLOGS1