Quantcast
Channel: Blogs from Sarina D - Embarcadero Community
Viewing all 112 articles
Browse latest View live

Podcast Streaming - FireMonkey Demo

$
0
0

Jim McKeeth just relaunched his weekly Delphi podcast with Nick Hodges. Today, I thought I would show you how to build a FireMonkey app for streaming your podcast.

Visual Controls

Application Title:

  • TToolbar
    • TLabel: StyleLookUp = toollabel; Align = Contents

 

Streaming Controls:

  • TToolbar
    • TEdit: Align = Left; Margins Right = 5
    • TButton: StyleLookUp = stoptoolbutton; Margins Right = 5, Margins Left = 5;
    • TButton: StyleLookUp = playtoolbutton; Margins Right = 5, Margins Left = 5;

 

I also added a TImage for the background image and a TLabel underneath the image for the podcast title.

 

Non-Visual Controls

  • TMediaPlayer
  • TStyleBook: For this demo, I selected the following Windows 10 style which is part of Berlin Anniversary Edition: Windows10ModernSlateGray

 

Here's the code for the sample application:

unit Unit1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Media,
  FMX.Controls.Presentation, FMX.StdCtrls, FMX.Edit, FMX.ScrollBox, FMX.Objects;

type
  TForm1 = class(TForm)
    btnPlay: TButton;
    MediaPlayer1: TMediaPlayer;
    Edit1: TEdit;
    btnStop: TButton;
    ToolBar1: TToolBar;
    Label1: TLabel;
    ToolBar2: TToolBar;
    Image1: TImage;
    Label2: TLabel;
    StyleBook1: TStyleBook;
    procedure btnPlayClick(Sender: TObject);
    procedure btnStopClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}
{$R *.iPhone47in.fmx IOS}

procedure TForm1.btnPlayClick(Sender: TObject);
begin
  MediaPlayer1.Stop;
    begin
      MediaPlayer1.FileName := Edit1.Text;
      MediaPlayer1.Volume := 100;
      MediaPlayer1.Play;
    end;
  end;

procedure TForm1.btnStopClick(Sender: TObject);
begin
  MediaPlayer1.Stop;
end;
end.

 

 


[YoutubeButton url='https://www.youtube.com/watch?v=O9e691ZbU2s']
 
[DownloadButton Product='RAD' Caption='Download a RAD Studio Trial today!']
 

Read more

Multi-Device Apps and Clipboard Support

$
0
0

We have a lot of great demos to help you get started with RAD Studio. Today's blog post focuses on our CopyPaste FireMonkey demo.

The CopyPaste sample demonstrates how to create applications that use the system's clipboard to copy and paste text or images. The sample uses IFMXClipboardService to interact with the system clipboard. The SetClipboard method is used to put data into the system clipboard and the GetClipboard method is used to return data from the system clipboard.

Windows, macOS and iOS platforms provide copy/paste of both text and images. The Android clipboard does not support images. To allow users to copy and paste images between your own Android applications, you can use a custom format instead.

The CopyPaste sample leverages FMX.Controls.TControl.MakeScreenshot. MakeScreenshot creates a new TBitmap, draws on it the image of the current control by calling PaintTo, and returns it.

 

procedure TCopyPasteDemo.CopyButtonClick(Sender: TObject);
var
  Svc: IFMXClipboardService;
  Image: TBitmap;
begin
  if TPlatformServices.Current.SupportsPlatformService(IFMXClipboardService, Svc) then
    if TextRadioButton.IsChecked then
      Svc.SetClipboard(Edit1.Text)
    else
    begin
      Image := TextBorder.MakeScreenshot;
      try
        Svc.SetClipboard(Image);
      finally
        Image.Free;
      end;
    end;
end;

procedure TCopyPasteDemo.PasteButtonClick(Sender: TObject);
var
  Svc: IFMXClipboardService;
  Value: TValue;
  Bitmap: TBitmap;
begin
  if TPlatformServices.Current.SupportsPlatformService(IFMXClipboardService, Svc) then
  begin
    Value := Svc.GetClipboard;
    if not Value.IsEmpty then
    begin
      if Value.IsType<string> then
      begin
        PasteLabel.Text := Value.ToString;
        PasteImage.Bitmap := nil;
      end
      else if Value.IsType<TBitmapSurface> then
      try
        PasteLabel.Text := string.Empty;
        Bitmap := TBitmap.Create;
        try
          Bitmap.Assign(Value.AsType<TBitmapSurface>);
          PasteImage.Bitmap := Bitmap;
        finally
          Bitmap.Free;
        end;
      finally
        Value.AsType<TBitmapSurface>.Free;
      end;
    end;
  end;
end;

 

See the demo in action below:

 

 


Read more

Building a Medical Terms (SNOMED CT) Healthcare Application

$
0
0

Systematized nomenclature of medicine or SNOMED CT is a collection of clinical terms. It provides terms and definitions for diseases, substances and anatomy used in reporting and clincial documentation.


Read more

Celebrating Delphi's 22nd Birthday with FireMonkey #ILoveDelphi

$
0
0

Delphi turns 22 today. Throughout the day, we've seen many great posts on Delphi, including Marco Cantu's detailed blog post celebrating Delphi's birthday.

I thought we could celebrate Delphi's 22nd birthday with a fun sample application. This app leverages local notifications and allows you to set reminders throughout the day.

RAD Studio provides the TNotificationCenter component to manage multi-device notifications. The notification center allows you to send messages from a running applications. To learn more about our notification support, click here.

procedure TNotificationsForm.btnSendScheduledNotificationClick(Sender: TObject);
var
  Notification: TNotification;
begin
  Notification := NotificationC.CreateNotification;
  try
    Notification.Name := 'MyNotification';
    Notification.AlertBody := Edit1.Text;
    Notification.FireDate := Date + TimeEdit1.Time;
    NotificationC.ScheduleNotification(Notification);
    ShowMessage('Notification has been scheduled');
  finally
    Notification.DisposeOf;
  end;
end;
end.

 

 

 

 


 

 

 

 

 


Read more

Looking to build multi-device apps? We have code snippets to get you started

$
0
0

With RAD Studio, you can build multi-device applications from a single codebase. If you're just starting with mobile application development using the FireMonkey framework, we have great code snippets to help you get started.

Location Sensor

This code snippet shows you how to use the TLocationSensor component in order to read the GPS location of the device and display it realtime on the form. The snippet also shows you how to display Google Maps in a web browser in order to accurately pinpoint the location of the device on a real map.

Code Sample – Object Pascal
Code Sample – C++

Orientation Sensor

This code snippet shows you how to use the TOrientationSensor component in order to get various compass related information such as three axis tilt, distance and heading, heading relative to magnetic north compensated and uncompensated and heading relative to true north compensated and uncompensated.

Code Sample – Object Pascal
Code Sample – C++

Device Info

This code snippet shows you how to use obtain device information that includes OS version, OS name, and device type.

Code Sample – Object Pascal
Code Sample – C++

 

 

Share Sheet

This snippet shows you how to use standard actions to open the Camera Application on your Android or iOS device to take a photo and display it on your FireMonkey form. Then, with another standard action, you will open the Share Sheet to share your image via email, post to Facebook and Twitter, print via AirPrint and more.

Code Sample – Object Pascal
Code Sample – C++

 

Access all our code snippets and full feature demos here.

[DownloadButton Product='RAD' Caption='Download a RAD Studio Trial today!']


Read more

Build IoT enabled apps with RAD Studio Berlin

$
0
0

In RAD Studio Berlin, we provide access to over 50 prebuilt components for popular IoT devices.

ThingConnect IoT device components range from healthcare devices such as heartrate montiors, blood pressure monitors and scales to home automation gadgets like BLE light bulbs, Z-Wave enabled door locks, smart switches, smoke detectors and more. Also included are components for popular fitness gadgets such as cycling sensors.

The available ThingConnect devices use one of the following technologies:

  • Z-Wave
  • Bluetooth Low Energy

The Z-Wave protocol is an inter-operable, wireless, RF-based communications technology designed specifically for control, monitoring and status reading applications in residential and light commercial environments. For more information about the Z-Wave technology, see About Z-Wave Technology.

In order to use a Z-Wave device, you need to have a device that acts as a controller. We test our devices using the VeraLite Smart Home Controller, but you may use any compatible Z-Wave controller.

The Z-Wave IoT Framework is HTTP based and acts as a layer between the user and the device, making the interaction easier and transparent. Using the Z-Wave IoT Framework you can interact with devices by accessing properties. The properties are either readable, writable or both.

Bluetooth Low Energy (Bluetooth LE) or Smart Bluetooth provides a new environment for devices with small amount of data to transfer and lower power consumption.

Connecting to the Devices

To connect to a Bluetooth LE device in your application, you need to:

  1. Drop a TBluetoothDeviceDiscoveryManager component onto your form
  2. Drop the corresponding component for the Bluetooth LE device onto your form
  3. In the Object Inspector, set the DiscoveryManager property of the Bluetooth LE component to the TBluetoothDeviceDiscoveryManager.
  4. Set the appropriate discovery mechanism in the DiscoveryMethod property of the TBluetoothDeviceDiscoveryManager.
  5. To connect to the actual device you need to call the method DiscoverDevices of the TBluetoothDeviceDiscoveryManager.

    Delphi:

      FDiscoveryManager.DiscoverDevices;

    C++:

      FDiscoveryManager->DiscoverDevices();
  6. After connecting to the device, the OnDeviceConnected event of the corresponding component is called.
  7. Add the following units to the Uses clause of the application:
    • Iot.Family.BluetoothLE.GattTypes
    • The custom Types unit (if the component defines custom data types).

 

         

 


[YoutubeButton url='https://www.youtube.com/watch?v=tQlYAlvfpPQ']

 

Looking to build an end to end solution with support for IoT devices?

RAD Server is a turn-key application foundation for rapidly building and deploying services based applications. RAD Server provides automated Delphi and C++ REST/JSON API publishing and management, Enterprise database integration middleware, IoT Edgeware and an array of application services such as User Directory and Authentication services, Push Notifications, Indoor/Outdoor Geolocation and JSON data storage. RAD Server enables developers to quickly build new application back-ends or migrate existing Delphi or C++ client/server business logic to a modern services based architecture that is open, stateless, secure and scalable. RAD Server is easy to develop, deploy and operate making it ideally suited for ISVs and OEMs building re-deployable solutions.
 

[YoutubeButton url='https://www.youtube.com/watch?v=HY0JRJPvjsU']
 

 


Read more

Previewing RAD Server Multi-Tenancy Support in 10.2

$
0
0

Today, I thought I would preview a new feature that we have been working on for the 10.2 release. It's multi-tenancy support for RAD Server, a frequently requested feature by our customers.

RAD Server is a turn-key application foundation for rapidly building and deploying services based applications. RAD Server provides automated Delphi and C++ REST/JSON API publishing and management, Enterprise database integration middleware, IoT Edgeware and an array of application services such as User Directory and Authentication services, Push Notifications, Indoor/Outdoor Geolocation and JSON data storage.

With Multi-Tenancy support in 10.2, a single RAD Server instance with a single RAD Server database connection will be able support multiple isolated tenants. Each tenant has a unique set of RAD Server resources including Users, Groups, Installations, Edge Modules, and other data.

 

 

In a retail store chain scenario, each store with its employees and goods is a tenant implementation.

Managers can add new store items, delete them, and edit the details of the existing ones while cashiers can only view the information about the existing goods. Neither employee can see the information about the other stores in the chain.

RAD Studio Architect Suite Special Offer

Save over 54% and build a modern Enterprise application stack with this time limited RAD Studio Architect bundle.

The RAD Studio Architect Suite contains:

* RAD Studio Architect (Named User)
* RAD Server Site License - including BeaconFence
* InterBase XE7 Server with Unlimited Users
* All with 12 months update subscription

Get More. Do More. Spend Less.

Offers ends March 31st, 2017. For terms and conditions and to learn more about this promotion, please visit https://www.embarcadero.com/radoffer#rad-studio-architect-suite


Read more

Previewing FireMonkey Features in RAD Studio 10.2

$
0
0

Today, I thought I would preview an iOS specific feature that we have been working on for FireMonkey in 10.2: the ability to change the behavior of the system status bar.

 

We are adding two new properties, SystemStatusBar.BackgroundColor and SystemStatusBar.Visibility.

This allows you to set the visibility and fill color of the iOS status bar to match your toolbar color, for example.

 

 

Stay tuned for more RAD Studio 10.2 feature previews.

 


Read more

RAD Studio 10.2 is here - Get Delphi Linux Server Support today!

RAD Server Multi-Tenancy Support is here

$
0
0

Today I thought I would follow up my previous 'preview' post with more information on Multi-Tenancy support in RAD Server. The 10.2 version, released 2 days ago, includes Multi-Tenancy support for RAD Server.

RAD Server is a turn-key application foundation for rapidly building and deploying services based applications. RAD Server enables developers to quickly build new application back-ends or migrate existing Delphi or C++ client/server business logic to a modern services based architecture that is open, stateless, secure and scalable.

With Multi-Tenancy support, a single RAD Server instance with a single RAD Server database connection can support multiple isolated tenants. Each tenant has a unique set of RAD Server resources including Users, Groups, Installations, EdgeModules, and other data. All tenants have custom resources that are installed in the EMS Server. As an administrator, you can create new tenants, edit the existing ones, add, edit, or delete details of your tenants, specify if the tenant is active, and delete the tenants that you do not need.

We have a great sample application to help you get started building a RAD Server solution with Multi-Tenancy support, targeting both Windows and Linux servers with RAD Studio 10.2.
It requires InterBase to be installed on the machine or to connect to a remote server. Make sure that the server is running before you run the sample application.
This demo uses a chain of toy stores to highlight RAD Server’s multi-tenancy support where each store with its employees and goods is a tenant implementation.

 

Using the RAD Server Multi-Tenant Sample Application

The sample application demonstrates a retail store deployment use case. Each store with its employees and goods is a tenant implementation.

Employees

There are two groups of users with different rights:
   - Managers 
   - Cashiers


Managers can add new store items, delete them, and edit the details of the existing ones while cashiers can only view the information about the existing goods. Neither employee can see the information about the other stores in the chain.  


Store Log in Page

To access store specific information, enter the following information on the Store Log in page:

Toy Store: select the desired store from the list. Each store is a tenant implementation.
Store password: enter the password.


Tip: You can find credentials in the Readme.txt file provided with the sample application.

 

 

Employee Log in Page

On the Employee Log in page, each employee enters the following:
   - Employee login
   - Employee password


Tip: You can find credentials in the Readme.txt file provided with the sample application.

 

Store Items Page

After logging in, each employee sees the store items screen. The screen is displayed in two different modes: edit or view only, and access depends on the employee’s position. This uses EMS groups (a feature of RAD Server) to define access rights.
   -  Managers can view, add, and delete the store items and edit the details
   -  Cashiers can view the items’ details only

 

Store items for managers

 

 

Store items for cashiers

 

Implementation

EMS Package
On initialization, EMS Package runs scripts that create the template data for your tenants.
The EMS Package includes two resources with the following names: “settings” and “items”. You can find them in the SettingsDataModule.pas and StoreDataModule.pas files.

-  The “settings” resource provides the GET method. This method returns the list of stores of the Toy Store Chain. The “settings” resource does not require you to provide TenantId and TenantSecret from EMS Client, because it has the AllowAnonymousTenant attribute which skips Tenant validation step.
-  The “items” resource manages the store items. This resource defines the GET and POST methods. The store items are filtered by the TenantId that you provided. We use the GetData method to filter the data by tenants accessing the Tenant ID through AContext.Tenant.ID.


MultiTenant Client Application
The MultiTenant client app has the following 3 tabs:
1. On the first screen, you need to select the store and enter the associated password.
2. On the second screen, you need to enter the username and password for the selected store (tenant).
3. On the third screen, you can view the store items or edit them depending on user privileges: manager or cashier.


TEMSProvider Component
The client application uses the TEMSProvider component. This component identifies the address of the EMS Server (http://localhost:8080). After the user selects a certain store (tenant), the tenant’s credentials are provided for TEMSProvider. Each further request contains Tenant details, and the data that users see is filtered depending on the tenant that is selected.

Download the sample project now: http://sourceforge.net/p/radstudiodemos/code/HEAD/tree/branches/RADStudio_Tokyo/Object%20Pascal/Database/EMS/Multi-Tenancy%20Demo

 


[YoutubeButton url='https://www.youtube.com/watch?v=cWJjN8_68no']

 [DownloadButton Product='Delphi' Caption='Download a 10.2 Delphi Trial Today!']

 


Read more

New FireMonkey styles for macOS and Android Wear in 10.2

$
0
0

In Delphi, C++Builder and RAD Studio 10.2 we are providing two new FireMonkey styles: a dark blue style for Android Wear devices and a dark graphite style for macOS.

You can access the FireMonkey styles at:

  • C:\Users\Public\Documents\Embarcadero\Studio\19.0\Styles\MacOS\macOSgraphite.fsf

  • C:\Users\Public\Documents\Embarcadero\Studio\19.0\Styles\Android\AndroidWearDarkBlue.fsf

To apply the style to your application, drop a TStyleBook component onto your form, and double click on the component. Then select load and browse to the style folder on disk. After loading the style, close the Style Designer and ensure your form's StyleBook property is set to StyleBook1.


[YoutubeButton url='https://www.youtube.com/watch?v=xO3g7Bz-bgk']

 


Read more

RAD Server Samples in RAD Studio 10.2

$
0
0

With RAD Studio 10.2, we provide great RAD Server demo projects to get you started.  With 10.2, you can deploy RAD Server to Linux servers, in addition to Windows servers. Below is a list of sample projects that highlight RAD Server's capabilities and are designed to help you get started building your own solutions with RAD Server.

 

 

Notes Resource Sample

The first part of the application consists of creating a RAD Server Package with a new ResourceName (Notes). Once you run the package, the resource is registered on the server and can be accessed by a client application using REST. The client needs a TEMSProvider to connect to RAD Server and retrieve the JSON data.

  • Start | Programs | Embarcadero RAD Studio 10.2 Tokyo | Samples and then navigate to either:
    • Object Pascal\Multi-Device Samples\EMS\NotesResource
    • CPP\Multi-Device Samples\EMS\NotesResource

 

RAD Server Multi-Tenancy Sample

The sample application demonstrates a retail store deployment use case. Each store with its employees and goods is a tenant implementation. Multi-tenancy support was added in RAD Studio 10.2.

  • Start | Programs | Embarcadero RAD Studio 10.2 Tokyo | Samples and then navigate to the following:
    • Object Pascal\DataBase\EMS\Multi-Tenancy Demo

 

FireDAC Resource Sample

This sample is a RAD Server demo that uses FireDAC components. The sample accesses a SQLite database.

  • Start | Programs | Embarcadero RAD Studio 10.2 Tokyo | Samples and then navigate to either:
    • Object Pascal\DataBase\EMS\FireDACResource
    • CPP\Database\EMS\FireDACResource

 

ThingPoint IoT Sample

This demo application creates a ThingPoint Edge Service application that simulates data generated from an IoT device, caches its data, and responds to remote requests for data from RAD Server. 

  • Start | Programs | Embarcadero RAD Studio 10.2 Tokyo | Samples and then navigate to either:
    • Object Pascal\Multi-Device Samples\EMS\ThingPoint IoT Sample Data Demo
    • CPP\Multi-Device Samples\EMS\ThingPoint IoT Sample Data Demo

 

Custom Login sample

This sample demonstrates how to implement custom Login and Signup endpoints in a custom resource.

    • Start | Programs | Embarcadero RAD Studio 10.2 Tokyo | Samples and then navigate to either:
      • Object Pascal\Database\EMS\CustomLogin
      • CPP\Database\EMS\CustomLogin

 

API Doc Attributes Sample

You can find the APIDocAttributes sample project at:

  • Start | Programs | Embarcadero RAD Studio 10.2 Tokyo | Samples and then navigate to either:
    • Object Pascal\DataBase\EMS\APIDocAttributes
    • CPP\Database\EMS\APIDocAttributes

 


[YoutubeButton url='https://www.youtube.com/watch?v=cWJjN8_68no']

 

 


Read more

Updated Roadmap Coming Soon & Annual Developer Survey

$
0
0

A couple of weeks ago, we launched RAD Studio 10.2 Tokyo. On the heels of the release, the PM team is working on an updated roadmap for calendar year 2017/2018.

 

As we are finalizing our roadmap plans, we would like to get your feedback through our 2017 RAD Studio developer survey. Getting your input is very valuable to us as it allows us to validate the features and technologies we are looking to add to the product over the next 12-18 months.

 

Click the button below to participate in our annual developer survey.

 
In anticipation of the actual roadmap being available (anticipated in the next couple of weeks), we wanted to also share the themes that we’ve defined for calendar year 2017/2018. The actual roadmap will be a lot more detailed.

To summarize, here are the key features introduced in RAD Studio 10.2 Tokyo:

  • Delphi Linux compiler for server application development

  • Improved IDE menus for faster navigation

  • A host of FireMonkey multi-device updates and new features

  • New TDataSet capabilities for editing data at design time

  • Multi-tenancy support in RAD Server  

  • Updates to FireDAC with new and improved database capabilities    

  • A number of cross platform runtime library enhancements, including Linux file system support, App Tethering enhancements and more

  • Improvements to our SOAP support

  • Greatly improved compiled C++ performance and linker improvements

 

In the past few months, we also delivered new VCL controls and QuickEdit designers, along with the first IDE to support Windows 10 Store deployment via the Desktop Bridge (introduced in Berlin Update 2 Anniversary Edition).

Linux C++ support is in progress and targeted for the 10.2.1 release.

 

Key Delphi, C++Builder and RAD Studio 2017/2018 product themes:

  • Linux Server Application Support for Enterprise Application Development

  • Platform support for latest OS versions

  • Expanded native controls support for multi-device development

  • Enhanced Windows 10 platform features

  • Delphi and C++ Language Features

  • IDE Improvements

  • RAD Server Enhancements - security, web architectures

 

Our upcoming updated roadmap will provide a lot of details on each of the themes listed above, plus key research areas the PM and R&D teams are looking at for the future.

 

The goal of this post was to provide you with a glimpse of what we are working on in advance of the updated roadmap being available. Your feedback in our survey will also help us finalize our plans.

 

Please note that themes and features are not committed until completed and GA released.

 

 

The PM team would love to hear from you on our roadmap themes and future plans, and what features are important to you. Please feel free to reach out to us using the email addresses below:

  • Marco dot cantu at embarcadero.com
  • David dot millington at embarcadero.com
  • Sarina dot dupont at embarcadero.com


- RAD Studio Product Management Team: Marco Cantu, Sarina DuPont, David Millington


Read more

FireDAC Video: Moving existing .CDS Data into TFDMemTable & Editing Data at Design Time

$
0
0

In this video, I am going to show you how to move existing TClientDataSet .CDS data into FireDAC's TFDMemTable as well as editing TFDMemTable data at design time. This works with both Delphi and C++Builder with features introduced in 10.2 Tokyo.


[YoutubeButton url='https://www.youtube.com/watch?v=1qwXUJMp5_Q']

 

 

 

[DownloadButton Product='RAD' Caption='Download a RAD Studio 10.2 Trial Today!']


Read more

Enhancements to FDMemTable in 10.2

$
0
0

 

  • Enhancements to the TFDMemTable component to edit the TFDMemTable dataset at design time. Now the TFDMemTable context menu provides the Edit DataSet... item that allows you to edit the component data and save them to the form. The data are available at run time.

 

Note: Before using Edit DataSet..., you should specify the field definitions for a dataset fields TFDMemTable.FieldDefs or create persistent fields.

Read more

ThingConnect IoT Device Components and BeaconFence now available for download in RAD Studio 10.2 Tokyo

$
0
0

You can now access over 50 ThingConnect IoT Device Components via the GetIt Package Manager (Tools > GetIt Package Manager) for download in RAD Studio 10.2 Tokyo. This includes BLE and Z-Wave components, ranging from home automation, to fitness gadgets, medical devices, environmental sensors and more.

 

 

BeaconFence is now also available for download in RAD Studio 10.2 Tokyo:

 

[DownloadButton Product='RAD' Caption='Download a RAD Studio 10.2 Tokyo Trial ']


Read more

FireMonkey and VCL Style Packs from DelphiStyles.com

$
0
0

KSDev, the company behind FMX for Linux, has launched a new site, DelphiStyles.com, focusing on great custom user interface themes for both FireMonkey and VCL. Customers can purchase a number of style packs for quickly customizing the look and feel of their multi-device applications.

They currently offer multiple style packs for sale.


Read more

Creating a profile screen for your mobile application

$
0
0

Many mobile applications today include a profile screen.

Popular music apps display your favorite musician's bio along with song and album details and concert information on the artist's profile page while social media apps display your hometown information, recently visited locations, profile photo, number of followers and more. I decided to create a nice sample that shows how you can easily implement a profile screen in your own FireMonkey application.


Read more

Adding a custom style selector to your VCL application

$
0
0

Adding a style selector menu to your application only takes a couple of lines of code and allows you to quickly update your existing user interface while providing added flexibility to your customers.

To add a style selector, I added a combobox to the form with the following code:

uses VCL.Themes;

procedure TForm9.StyleSelectorChange(Sender: TObject);
begin
  TStyleManager.SetStyle(StyleSelector.Text);
end;

procedure TForm9.FormCreate(Sender: TObject);
var
  StyleName: string;
begin
  for StyleName in TStyleManager.StyleNames do
    StyleSelector.Items.Add(StyleName);
  StyleSelector.ItemIndex := StyleSelector.Items.IndexOf(TStyleManager.ActiveStyle.Name);
end;
end.

 
The combo box will display the styles you've selected via Project > Options > Application > Appearance.

 

In this post, I am highlighting some of our Windows 10 styles that are included in 10.2 Tokyo, along with custom styles from DelphiStyles.com

To use custom styles, you will need to move the .vsf files into the following folder:

C:Users\Public\Documents\Embarcadero\Studio\19.0\Styles 

Shown: Windows 10 Green VCL style, included in 10.2 Tokyo

 

Shown: Windows 10 Slate Gray VCL style, included in 10.2 Tokyo

 

Shown: Madison Dark VCL style, available at DelphiStyles.com

 

Shown: Oxford Blue VCL style, available at DelphiStyles.com

 

Shown: Material White VCL style, available at DelphiStyles.com

 

[DownloadButton Product='Delphi' Caption='Download a RAD Studio 10.2 Trial Today!']


Read more

May 2017 Roadmap Commentary from Product Management

$
0
0

After the 10.2 Tokyo release that introduced Delphi for Linux, we launched our annual developer survey. The survey ran for a couple of weeks and ended at the end of April. Participation in our survey was exceptional (50% higher participation than in the past), providing lots of invaluable feedback to the product management team. We’d like to thank everyone who took the time to participate in our survey. The survey results were very helpful for finalizing our roadmap plans.

 


Read more
Viewing all 112 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>