Noutați

Learn Ultra-Fast Database App Development With Delphi LiveBindings Sample App

Connecting to database and data-aware controls was no more a time consuming task for Delphi/C++Builder developers. With Absolute no code you can just and drop components and bind visually to show case your valuable data to the user interface controls faster. BindGridLinkVCL Sample demonstrates the use of a TBindGridLink. You can find Delphi and C++ code samples in GitHub Repositories. Search by name into the samples repositories according to your RAD Studio version. Components used in BindGridLinkVCL App: TStringGrid represents a grid control designed to simplify the handling of strings and associated objects. TBindGridLink: Used when binding controls to grids. TBindGridLink is built on the TCustomBindGridLink class TBindingsList: Built on the TCustomBindingsList component and publishes additional properties that can be accessed from within the Object Inspector. Add a new binding and select TBindGridLink under Quick Bindings.  TBindingSourceDB:  Nonvisual component that provides a way to make data contained by the specified data source available to all components that want to access it, using LiveBindings. Along with these TDBNavigator, TDataSource,TClientDataset and other UI components such as TLabel, TEdit ,TImage were used. Implementation Details : When you run the application, it shows a string grid with data rows from the connected database. DBNavigator is to navigate among the records in the StringGrid. When you select a record the corresponding fish category and image is populated. Create TBindGridLink Bindings to link the StringGrid Control and TBindSourceDB. Also other bind links such as label, image were made. Set the BindSourceDB’s Dataset with TClientDataset created. Activate the client dataset. Check out the full article in the DocWiki about the BindGridLinkVCL Sample. BindGridLinkVCL Sample App Check out the full source code for the BindGridLinkVCL projects for Delphi and C++Builder over on GitHub.

Read More

Learn How To Embed C Source Code To Delphi FireMonkey Applications

In this CodeRage session, you can explore how to embed C code into a Delphi FireMonkey project. The demo was demonstrated by Marion Candau. How to compile C code to embed into Delphi project How to link the C objects to the Delphi units How to call C functions To compile C source code you can go with C++ Builder or other tools for instance Visual Studio. We have 2 options for the resulting format, they are object files and shared libraries. You can use object files for Windows 32 and 64 bits, also macOS 32 and 64 bits. And a shared library for Linux, Android, and iOS. How to link the C objects to the Delphi units? We need to link the C object files for Windows and macOS 32 platforms For mobile platforms, we link each function with its shared library file and need to add the path to the shared library into the Search path. To learn more about how to embed C code on different platforms, be sure to watch the full CodeRage session! Head over and watch the Embed C Source Delphi video on YouTube!

Read More

Learn About Quickly Building REST Applications Using The Powerful RAD Server In Delphi/C++ Builder

Over a period of years lot of Web Architectural styles were introduced like, Pipe and filter, Uniform Pipe Filter and some hierarchical styles like client server, Client server stateless, cache, etc. But each style has equal strength and limitations which leads to a modern, scalable, stateless architectural style called REST which is widely adopted. The Word REST is the Abbreviation of the Phase ‘Representational State Transfer’ is the Architectural Design Style introduced in year 2000 presentation by Roy Thomas Fielding one of the Co-founder of HTTP Specification.  Web services that conform to the REST architectural style, called RESTful Web services, provide interoperability between computer systems on the internet. REST is not a standard or Protocol. Its a style of architecting a Application. REST provides a set of architectural constraints that, when applied as a whole, emphasizes scalability of component interactions, generality of interfaces, independent deployment of components, and intermediary components to reduce interaction latency, enforce security, and encapsulate legacy systems. The constraints are, Client-Server: Separation of Concern is the principle behind this constraint. Separating the user interface concerns from the data storage concerns, can improve the portability of the user interface across multiple platforms and improve scalability by simplifying the server components. Also it allows the components evolve independently. Stateless communication: Client Server communication should be stateless in nature. Each request from client to server must contain all of the information necessary to understand the request, and cannot take advantage of any stored context on the server. Session state is therefore kept entirely on the client. This constraint induces the properties of visibility, reliability, and scalability. Uniform Interface: Implementations are decoupled from the services they provide, which encourages independent evolvability. The trade-off, though, is that a uniform interface degrades efficiency, since information is transferred in a standardized form rather than one which is specific to an application’s needs. The CRUD Operations Create, Read, Update, Delete are the key methods which is reused across all types of objects. Layered System: To improve behavior for Internet-scale requirements, layered system constraints is added.  It Allows an architecture to be composed of hierarchical layers by constraining component behavior such that each component cannot “see” beyond the immediate layer with which they are interacting.  REST Elements : The key abstraction of information in REST is a resource.  More precisely, a resource R is a temporally varying membership function MR(t), which for time t maps to a set of entities, or values, which are equivalent. The values in the set may be resource representations and/or resource identifiers. A resource can map to the empty set, which allows references to be made to a concept before any realization of that concept exist. REST uses a resource identifier to identify the particular resource involved in an interaction between components. REST connectors provide a generic interface(CURD) for accessing and manipulating the value set of a resource, regardless of how the membership function is defined or the type of software that is handling the request.  A representation is a sequence of bytes, plus representation metadata to describe those bytes. Other commonly used but less precise names for a representation include: document, file, and HTTP message entity, instance, or variant. Individual resources are identified in requests, for example using URIs in RESTful Web services. The resources themselves are conceptually separate from the representations that are returned to the client. For example, the server could send data from […]

Read More

Learn To Use Styles To Create Visual Stunning VCL And FireMonkey Apps With Delphi/C++ Builder

What is a Style: A set of graphical details that define the look and feel of a VCL application/FireMonkey Application, Similar to a theme in Windows. A style permits you to change the appearance of every part and state of a control. For instance, a scroll bar has the following parts: frame, slider, and the two side buttons for each direction. The side buttons, for example, have the following states: pressed, disabled, hot, normal. How to apply styles for an VCL Application: To set a style for your VCL application, select the style in Project > Options > Application > Appearance. See Application Appearance for more details. Note: The VCL style changes the appearance of the application in run-time. However, the Form Designer does not show this changes. Location of Style Files (.vsf Files): The VCL styles that ship with the product are available in C:UsersPublicDocumentsEmbarcaderoStudio21.0Styles. Use the Vcl.Themes.TStyleManager class to load, register, and select styles or to get, register, and unregister a style engine. FireMonkey: Uses lightweight GUI controls on top of a cross-platform abstraction, which is implemented for Windows and other platforms. Lightweight controls mean that every pixel is drawn by FireMonkey, no native (heavyweight) controls are used.FireMonkey controls are arrangements of a tree composed of sub controls, primitive shapes, and brushes, decorated with effects. These compositions are defined as styles, stored in a style book. The individual elements of a style are internally called resources; because that term has several other meanings, the term style-resource is used for clarity. Styles provide a great deal of customizations without sub classing. The FireMonkey styles that are provided with the product are saved in .Style files located in C:Program Files (x86)EmbarcaderoStudio21.0RediststylesFmx. You can load these styles with FireMonkey Style Designer. FireMonkey Style Designer: The FireMonkey Style Designer window, in combination with the Structure view and the Object Inspector, helps you create, edit, and test FireMonkey styles. To work with Platform styles, in the Form Designer or Structure View, double-click a style book component. To work with Custom styles, use the following commands of the shortcut menu displayed when you right-clicked a styled component: Edit Default Style: Opens a new FireMonkey Style Designer window in which you can modify the style for the component class. For example, if you right-clicked a button, you can modify the “buttonStyle” object (a default style for the TButton class) . Edit Custom Style: Opens a new FireMonkey Style Designer window in which you can modify the selected control style. For example, if you right-clicked a button, you can modify the “button1Style” object (a style for this button only). Bitmap Style Designer for VCL and FireMonkey: The Bitmap Style Designer enables you to: Create, edit, and test FireMonkey styles (.style files) Create, edit, and test VCL styles (.vsf files) Convert a VCL style (.vsf file) into a FireMonkey style by saving the VCL style as a FireMonkey style (.style file) Watch this video to check Windows 10 look and feel for VCL and FMX. Windows 10 Look and Feel for VCL and FMX

Read More

Start Building Apps for Single Board Computers With Delphi or C++ Builder Now!

In this webinar, you can learn about other possibilities of Delphi and C++ Builder on Raspberry Pi and SBC. What is SBC? It stands for Single Board Computer.  Overview of the webinar: SBC and use cases Exploring CPU Architectures Linux vs. Android vs. Windows  Examples, Demonstration, and Resources to follow SBC is usually a very small form factor and you get all the hardware on the board. Maybe you can extend with other tiny hardware like Wifi adapters. Raspberry Pi is one of the popular board computers that you can create your projects or make you a small server with that. Usually runs on Linux or Windows 10 IoT. And as I said before, it could be ideal for embedded systems or IoT projects. Use Cases: Electronic Kiosk Dedicated data collectors Automation control systems Point of Sales systems Hobby projects Home media centers Edgeware & EdgePoints Smart Beacons and e.t.c Moreover, you might find amazing other single board computers and lots of available options to develop projects with SBCs. Be sure to watch the whole session and share it!

Read More

Only few days left…

And the last week of this promotion starts today… Get extra time of free updates and/or win a limited edition book! 20% longer updates and support Purchase your license before October 28th and receive 20% EXTRA time of free updates and free support! So, products that come with free 1 year of updates and support, you now receive 20% more, or 438 days instead of 365 days (1 year). It is offered to anyone, also loyal existing customers can purchase a renewal and will get an extra 20% renewal time. WIN a limited edition “Delphi Hands-on with TMS FNC Maps” For our 20th anniversary we are producing a hyper limited run of 20 pieces only of a full color version of the “Delphi Hands-on with TMS FNC Maps” book. This book will have a special preface with a retrospective of the company written by Bruno Fierens and will be hand signed by the Belgian team. To get a chance to win one of these limited edition books, share an anecdote about the TMS team, the TMS products, TMS events or share a screenshot of your product, your favorite blog article… in the comments section under this blog or on our social media and win the brand new and limited edition TMS FNC Maps hands-on book in color! Twitter: Tag @TMSsoftwareNews & use following hashtags: #tmssoftware , #delphi and #embarcadero Facebook: Tag @tmssoftware & use following hashtags: #tmssoftware , #delphi and #embarcadero YouTube: Tag @tmssoftwareTV & use following hashtags: #tmssoftware , #delphi and #embarcadero Our team will choose from the most extraordinary or special anecdotes/comments found on this blog comment section or on our social media channels and give send the limited edition of the book to your home. There are only a few days left, take advantage of it now!

Read More

Quickly And Easily Build A REST Based Notes App With RAD Server In Delphi And C++

EMS.NotesResource Sample is a server-client EMS demo. 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. InterBase is used to store the information with the server connections. Use the RAD Server Console to display the statistics. The first part consists of creating an EMS Package with a new ResourceName (Notes). Once you run the package, the resource is registered on the EMS server and can be accessed by a client application using REST. The client needs a TEMSProvider to connect to the EMS Server and to retrieve the JSON data. How to Use the Sample Run the EMS Package When you run the NotesResourcePackage project, the EMSDevServer starts automatically. If the configuration file is missing, a wizard launches. Navigate to the location given above and open: Delphi: NotesResourcePackage.dpk C++: NotesResourcePackageCpp.cbproj Press Shift+Ctrl+F9 or choose Run > Run Without Debugging. The EMS Development Server opens. If it is the first time you are using EMS on the machine, you need to run the configuration wizard in order to create the EMS server configuration file. When the Confirm dialog opens, click Yes. Leave all the parameters by default and go through the different windows by clicking Next. Click Finish to close the wizard. An Information window appears. Click OK. The server starts automatically. Minimize it. Run the Client Application The client expects the EMSDevServer to be running at localhost:8080. If you are running the server at a different address, modify the properties of the TEMSProvider component. The Delphi supported platforms for this sample are: 32-bit, 64-bit Windows, and iOS Simulator. To run the sample on iOS Simulator, change the URLHost property of the TEMSProvider component to the IP address from the machine you are launching the sample and running the server.Note: The TEMSProvider component is placed in the NotesClientModule unit. The C++ Supported platforms for this sample are: 32-bit and 64-bit. On the Project Manager, right-click on ProjectGroup1. Click Add Existing Project…. Navigate to: Delphi: Start | Programs | Embarcadero RAD Studio Sydney | SamplesObject PascalDataBaseEMSNotesResourceNotesClientProject.dproj. C++: Start | Programs | Embarcadero RAD Studio Sydney | SamplesCPPDatabaseEMSNotesResourceNotesClientProjectCpp.cbproj. Press F9 or choose Run > Run. Insert a User name and Password and click Signup, or Login if you previously created an account. Click Add to add a new note. Write the note and click Save. Implementation EMS Package The Resource Module has code to register a REST OverView API resource. The resource is called “Notes”. The resource defines a Get, GetItem, Post, PutItem, and DeleteItem method. Once you run the package and have the EMS server running, as a test, you can invoke the GET method by using the browser http://localhost:8080/Notes.Note: An error message appears informing that you need to be logged in to access this information. The NotesStorageU file defines the path of the notes.ini file where the created notes are saved. Client Application The client application has a TEMSProvider component. This component identifies the address of the RAD Server Engine (EMS Server) (http://localhost:8080). The client application also has a TBackendEndPoint for each method. This component identifies the name of a resource (Notes), the method used, and the ResourceSuffix. The information is managed with TJSONObject and TJSONArray. You can find attached a link below with the original post: http://docwiki.embarcadero.com/CodeExamples/Sydney/en/EMS.NotesResource_Sample

Read More

Take Your Delphi VCL Apps To The Next Level With The Delphi Universal Component Library UWP Controls

Delphi Universal Component Library is the UWP controls for Delphi VCL. With this Delphi Universal Component Library, you can create UWP like programs easily. Delphi UCL gives you the ability to design modern user interfaces within Delphi VCL. The library is free and open-source on GitHub. The main library lies over on this repository, but according to the author of the project, there is a new version of it and the older version is depreciated. There are tens of UWP like controls available to you. Moreover, there is an ability to change the theme of the programs. Some of the features of Delphi UCL: Light and Dark themes Control of the styles Ability to set custom accent colors to controls Support for HighDPI Ability to set the splash screen So if you are looking for a way to change the UI of Delphi VCL apps, this is a solution for you. Head over and check out the full source code and download the Delphi UCL

Read More

Quickly And Easily Add MAPI Support Using Winsoft’s MAPI for Delphi on Windows

Embarcadero Tech Partner WINSOFT provides an easy to use MAPI suite for Delphi. What makes MAPI hard? MAPI is hard. There is lack of clear and consistent coding, different answers provide different solutions, the solution is not in Delphi, there has to be various work-arounds, or the code-snipplet was built for very old non-Unicode version of Delphi. You eventually tear your hair out or get exasperated with partial or non-working solutions. C#, VB.NET users are left out in the cold: if you look around, using MAPI in C# is out of the question as you’ll get all kind of errors as, Extended MAPI is not supported for use with .NET MAPI is supported in native-languages, such as C++ Builder and Delphi. MAPI is an interface for, nearly all email clients on the Windows platform. TheBat – an independent email client, ThunderBird – the FireFox competitor to Outlook, HCL Lotus Notes (formerly IBM, formerly Lotus Notes) and Outlook. MAPI works in both 32-bit and 64-bits, and is installed on Windows 10 as 64-bit MAPI, with 32-bit MAPI compatible DLL. Installation Installation takes less than 1 minute Steps: Go to https://www.winsoft.sk/smapi.htm for the download link Download the trial version Unzip smapi.zip Simple MAPI Demonstration I will send an email with attachment. The code-behind the form, is less than 10 lines: begin with SMapiSendMail do begin SendTo := EditTo.Text; Cc := EditCc.Text; Subject := EditSubject.Text; Body.Assign(MemoBody.Lines); Send; end; ShowMessage(‘Message was sent’); end; begin   with SMapiSendMail do   begin     SendTo := EditTo.Text;     Cc := EditCc.Text;     Subject := EditSubject.Text;     Body.Assign(MemoBody.Lines);     Send;   end;     ShowMessage(‘Message was sent’); end; And successfully sends an email via Outlook: Email Sent The code attaches an email to be sent, with attachment. Outlook Draft Email Make Winsoft’s Simple MAPI Component Suite part of your Delphi arsenal.

Read More

Explore User-Friendly uniGUI Web Framework With Ultra-Modern Components For Delphi/C++Builder

Looking for a Web framework for your Delphi/C++ Builder Applications? How about having a framework which supports both server side and client side with minimal effort to build beautiful web applications ? UniGUI is a Full Stack focused Web Framework which give web development experience to a new dimension for Delphi/C++ builder users. Features : It allows developers to focus on Application business logic rather than working on web application details such as working directly with HTML, CSS, JavaScript, XML Templates and other web Technologies. It offers a separate set of visual controls for Desktop and Mobile applications. Mobile application controls are available in uniGUI Complete Pro Edition. It is based on Sencha Ext JS, one of the industry’s most advanced JavaScript Libraries(uniGUI includes OEM License for Sencha Ext JS). Complete IDE support for creating projects, designing forms, frames , handling data modules. Advanced support for client side Javascript event handlers It offers a Unified GUI which provides a similar user experience over various Hardware and Software platforms. Support all major deployment options( Windows Service and ISAPI Module) How to Create a UniGui Web Application in RAD Studio. File->New->Other->UniGUI for Delphi-> Application Wizard -> Select Project type options to start Standalone/Windows Service/ISAPI. For Mobile Application, File->New->Other->UniGUI for Delphi-> Mobile Application Wizard. Main form : Include uniGui UI components such as UniPopupMenu, UniPanel, UniSplitter,UniStatusBar according to your need. MainModule : Include database connections related components. You can use FireDAC Manager component. ServerModule : TUniServerModule is single class which helps to customize the behavior of your server such as port configuration, SessionTimeout, SSl, AjaxTimeout etc. Event handling can done in both Server side and Client side( Ext Js events) as well. Use mobile visual components for Mobile Applications. To access we need to hit the URL as localhost:8077/m in the browser. Check out the full demonstration in this below Video For Future Roadmap, Latest versions and pricing details check here.

Read More