Delphi

Developer Stories: Patrick Gaydecki Talks Through His Vsound 2.7 Application

Patrick Gaydecki started programming in 1987. He has a showcase entry (Vsound 2.7) in the Delphi 26th Showcase Challenge and we got to interview him about his programming experiences. Visit the Vsound website to get more information. When did you start using RAD Studio/Delphi and have long have you been using it? I started using Borland Turbo Pascal back in 1987. In 1996 I migrated to Borland Pascal for Windows, then Delphi when it first appeared in 1995. I am currently using the latest version, Embarcadero RAD Studio 10.4 (Sydney). What was it like building software before you had RAD Studio/Delphi? In my company we have always developed programs with have a graphical user interface. Before RAD studio, we had to develop everything from a low-level, even down to components such as buttons, dialog boxes and of course graphing/charting components. A simple program shell would take days to craft, rather than minutes. How did RAD Studio/Delphi help you create your showcase application? Our customers are musicians – mainly players of electric violins. Vsound includes the user interface and the hardware – called a pedal – that modifies the sound produced by an electric violin (or an acoustic violin fitted with a pickup), producing an output that matches the timbre and voice of a high quality acoustic violin. Our customers need to be able to quickly and easily adjust the parameters of the system to produce the sound that they want, so an intuitive GUI is critical. Delphi has exactly the tools for the job. What made RAD Studio/Delphi stand out from other options? In a word, speed. It is so simple to create attractive, powerful applications. The compiler is also remarkably efficient, generating stand-alone executables in seconds, for both Mac and Windows. What made you happiest about working with RAD Studio/Delphi? Many things, but in particular the speed with which we can create attractive visuals that do the job they are supposed to do. The software is also doing quite a lot of calculations – Fast Fourier transforms for example, and Delphi is very fast at this. What have you been able to achieve through using RAD Studio/Delphi to create your showcase application? A user system that has high visual impact that is also robust and fault tolerant. Using both the VCL and Firemonkey, we have developed platforms for Windows and Mac OSX with a minimum of code conversion. What are some future plans for your showcase application? Wait and see! We have a range of new products in the pipeline, with an amazing new app to support our latest hardware. As ever, we will be focusing on both form and function. RAD Studio allows us a lot of flexibility in this regard. Thank you, Patrick! Check out his showcase entry through the link below. Showcase

Read More

Integration: LFRemote: A Gorgeous Light Remote Mobile App

LFRemote is a visually STUNNING Android and iOS remote app which uses LightFactory and NEO lighting control systems API integration.  Developed by Dream Solutions Ltd who are based in New Zealand their clever use of API integration in addition to the wonderful Delphi themes makes these apps really stand out from the crowd. What sort of integration does the app have? Dream Solutions Ltd have made the remote work in an almost magic way for their users. LFRemote uses automatic discovery of makes connecting to their devices zero extremely easy. Also, they say that there is zero configuration and once connected the app will automatically reconnect if the connection is broken. LFRemote works over a standard WiFi network and uses an integration with the Telnet protocol. According to the Dream Solutions, “The remote provides access to the command line, shortcut pages, submasters and the master cue list playbacks on both phone and tablet devices.” This is a great example of what can be done using Delphi and how RAD Studio’s power really helps give coding talent an extra lift. Dream Solution’s use of FireMonkey is masterful not to mention their integration of low-level communications with the lighting. There is a lot more on their website: https://www.lightfactory.net/LFRemote_for_iPad_and_iPhone.html Apple Store ‎LFRemote on the App Store (apple.com) Google Play LightFactory Remote Screenshot Gallery

Read More

Using Tabbed Maps Visualization In A Windows App is Easy!

This visualization sample demonstrates the use of the TMapView class. We will show how to display and interact with the map, including: Changing between two tabs that display different maps. Showing the coordinates of the map center. Zooming in and zooming out both maps. Location Visualization You can find the Tabbed Map sample project at: Start | Programs | Embarcadero RAD Studio Sydney | Samples and navigate to: Object PascalMulti-Device SamplesDevice Sensors and ServicesMaps CPPMulti-Device SamplesDevice Sensors and ServicesMaps Subversion Repository: You can find Delphi and C++ code samples in GitHub Repositories. Search by name into the samples repositories according to your RAD Studio version. Visualization with Google Maps on Android If you are running this sample on Android, in order to access the Google Maps servers, you have to add a Maps API key to the sample. To acquire the API key and add it in the sample you need to follow these configuration steps: Getting your Google Maps API key: Configuring the sample project options. Once you have the Maps API Key; in RAD Studio: Go to Project > Options > Version Info Select Android platform as Target (either in Debug, Release or All Configurations). Add the Maps API Key value in the apiKey key, and click OK. How Do We Use the Sample? Navigate to one of the locations given above and open: Delphi: TabbedMapProject.dproj. C++: TabMapProject.cbproj. If you are running the sample on Android, ensure you first follow the steps indicated in Using Google Maps on Android Before you run the sample, ensure the device is connected to the Internet. Press F9 or choose Run > Run. When you run the sample, the TMapView loads the map. To interact with the map: Use the Saint-Pétersbourg and San Francisco tabs to change between the two maps. Change the zoom using the Zoom out and Zoom in buttons. Move the map and see the coordinates of the map center in the CameraInfo TLabel, at the button of the app. Files File in Delphi File in C++ Contains TabbedMapProject.dproj TabMapProject.cbproj The project itself. TabbedMap.fmx TabbedMap.fmx The main form where the components are located. TabbedMap.pas TabbedMap.h, TabbedMap.cpp Implementation of the sample. Maps Visualization Implementation The sample uses TMapView to display and manage the maps. TMapCoordinate is used to create the initial coordinates with the indicated latitude and longitude. Then, the center of the maps are set to such coordinates with the TMapView.Location property. The TMapView.Zoom property is used to set the initial zoom of both maps to 10. This same property, is also used to zoom in and zoom out both maps by adding or subtracting 1 to the Zoom property. TMapView.OnCameraChanged updates the CameraInfo TLabel that indicates the Latitude and Longitude of the map Location. If you want to check the original post, follow the link below: http://docwiki.embarcadero.com/CodeExamples/Sydney/en/FMX.Tabbed_Map_Sample

Read More

Powerful Business Processes app works on all platforms

Taurec is a high-performance and powerful business processes app.  Also, thanks to Delphi it works on all platforms including Windows, iOS and Android.  It combines the advantages of multidimensional and relational database systems together to automate a company’s business processes. How does this app help with business processes? According to the developer, “It was developed for the Department to map to business processes. The focus is on the simple condition and a sophisticated security concept. Reports can be set up by the department itself. In addition, the end user can change the predefined views. For example, by filtering, show / hide columns, sort or group.” Website Taurec – Produkt Google Play Taurec Screenshot Gallery Taurec business processes app

Read More

Discover The Powerful Custom ModernListView Library For Cross-Platform Development in Delphi FireMonkey

The website www.fmxexpress.com has an article with some really detailed information about the ModernListView Library. Lets check what they are saying. “Developer rzaripov1990 has a custom ListView component over on Github for Firemonkey in Delphi 10 Berlin. The ListView is the central component for every mobile application, and as a developer you should always choose the one that can be heavily customizable and very easy to use/implement. This modern ListView component is available for Delphi 10 Berlin with FireMonkey on Android, IOS, OSX, and Windows”. What are the features of the ModernListView Library? One nice feature is that it has both horizontal and vertical mode. Thus, using ListView.Horizontal := true ListView.Horizontal := true enables the list to display the cells (items) in a horizontal perspective, while ListView.AutoColumns := true // (default behavior) ListView.AutoColumns := true   // (default behavior) displays the items vertically. If you are an artist when designing your look and feel of the application, this component can customize every graphic aspect such with available events such as: SetColorItemSelected, SetColorItemFill, SetColorBackground, SetColorItemSeparator, SetColorText, SetColorTextSelected, SetColorTextDetail, SetColorHeader, SetColorTextHeader, and many other properties. The properties are self-explanatory, no need to cover them here. With the AutoColumns and ColumnWidth properties, the component will automatically calculate the best fit appearance and position for the items when populating the list (very useful when dealing with large number of items). Apart form the standard behavior events, you have OnColumnClick listener for the ListView. You also have the option to hide/show the scroll bars (ListView.ShowScrollBar), set indent for items separators (ListView.SeparatorLeftOffset and ListView.SeparatorRightOffset). How much does the ModernListView Library cost? The component is free and has some nice demos with it as well. For the moment it is available only for Delphi Berlin using FireMonkey, very useful too if you build multi-device applications. Using ModernListView Library Let’s get a better view of what is this all about. We will now go through some of the components, their design and what they do. Colorizer ListView1.SetColorItemSelected(TAlphaColorRec.Orangered); ListView1.SetColorItemFill(TAlphaColorRec.Whitesmoke); ListView1.SetColorItemFillAlt(TAlphaColorRec.Lightgrey); ListView1.SetColorBackground(TAlphaColorRec.Whitesmoke); ListView1.SetColorItemSeparator(TAlphaColorRec.Red); ListView1.SetColorText(TAlphaColorRec.Darkmagenta); ListView1.SetColorTextSelected(TAlphaColorRec.Blueviolet); ListView1.SetColorTextDetail(TAlphaColorRec.Darksalmon); ListView1.SetColorHeader(TAlphaColorRec.Crimson); ListView1.SetColorTextHeader(TAlphaColorRec.Whitesmoke); ListView1.SetColorTextHeaderShadow(TAlphaColorRec.grey); ListView1.SetColorPullRefresh(TAlphaColorRec.Lime); ListView1.SetColorPullRefreshIndicator(TAlphaColorRec.Limegreen); ListView1.SetColorStretchGlow(TAlphaColorRec.Limegreen); set custom color for item if ListView1.IsCustomColorUsed(ListView1.ItemIndex) then ListView1.SetDefaultColorForItem(ListView1.ItemIndex) else ListView1.SetCustomColorForItem(ListView1.ItemIndex, TAlphaColorF.Create(random(255) / 255, random(255) / 255, random(255) / 255, random(255) / 255).ToAlphaColor);   if ListView1.IsCustomColorUsed(ListView1.ItemIndex) then     ListView1.SetDefaultColorForItem(ListView1.ItemIndex)   else     ListView1.SetCustomColorForItem(ListView1.ItemIndex, TAlphaColorF.Create(random(255) / 255, random(255) / 255, random(255) / 255, random(255) / 255).ToAlphaColor);   Horizontal Mode ListView1.Horizontal := true; Columns Mode (only vertical) ListView1.ColumnWidth := 160; ListView1.AutoColumns := true; Events event for AutoColumn mode procedure OnColumnClick(const Column: Integer; const X, Y: Single; const AItem: TListViewItem; const DrawebleName: string);   procedure OnColumnClick(const Column: Integer; const X, Y: Single; const AItem: TListViewItem; const DrawebleName: string);   called when end of list procedure OnScrollEnd(Sender: TObject);   procedure OnScrollEnd(Sender: TObject);   Methods Style for ListView Columns Mode ListView1.ShowScrollBar – hide/show scrollbar ListView1.ItemsClearTrue – correct delete items ListView1.OffsetTop – indent of the first element ListView1.OffsetBottom – indent of the last element ListView1.getFirstVisibleItemIndex – first visible ItemIndex ListView1.getVisibleCount – amount of visible items ListView1.getLastVisibleItemindex – first visible ItemIndex + amount of visible items ListView1.SeparatorLeftOffset – indent for separator line ListView1.SeparatorRightOffset – indent for separator line ListView1.EnableTouchAnimation – enable/disable touch animation The list is long, so if you want to see all of it and try the library, just go to Github, download and test this package: https://github.com/rzaripov1990/ModernListView Note that the screen shots and some of the text in this article are drawn from the above GitHub repository.

Read More

The Excellent Windows Ribbon Framework For Delphi

The Windows Ribbon framework is a magnificent command presentation system that implements a fresh option to the layered menus, toolbars, and task panes of common Windows applications. This Delphi library allows Delphi developers to utilize the Windows Ribbon Framework in their Delphi applications. This library uses the native Windows Ribbon Framework library to implement the ribbon functionality. It does not emulate the Ribbon user interface as other Delphi component sets do and that’s a good thing. Windows Ribbon Framework Features This Delphi library is much more than a simple header translation. It has the following features: Complete translation of the UI Ribbon header files.  A class library that provides higher-level access to the Ribbon API.  A control for dropping on any existing VCL form that automatically loads the ribbon and maps ribbon commands to equally named VCL Actions. Delphi-versions of the UI Ribbon Samples from the Windows SDK.  A feature-complete semi-visual Ribbon Designer.  The Ribbon Designer comes with a WordPad template that lets you quickly create a Ribbon that looks virtually identical to the WordPad accessory that comes with earlier versions of Microsoft Windows. Check out the Ribbon Framework for Delphi here!

Read More

Incredible Workflow Automation Mobile App For Loggers

This great Android and iOS workflow automation app allows company or third party loggers / loaders to logon to a corporate LIMS database and create loads while loading it to trucks in forest. How does this Delphi app help with workflow automation? According to the developer, “Load can be created by scanning a predefined trip ticket. Each load is then associated with GPS location and along with load information is sent to Central server using Data line or WiFi connection. Loader Loads can then be sent to receiving station which can be matched to received loads for full Chain of Custody.” Using the app allows loaders and loggers to enter and manage details on their load slips without using a pen.  The company also says this “ensures truck loads are shipped and properly tracked“.  Delph’s cross-platform capabilities really help companies like 3Log with this kind of workflow automation and modernization. What sort of workflow automation does “LoaderWiz” provide? Here’s a brief extract from the company’s website.  LoaderWiz can: Create loads and barcoded trip tickets in the woods even when there is no internet connectivity.  load data is stored in local database on device. Synchronize bidirectionally with your corporate LIMS system when connectivity is available to conveniently download sources, trucks, trip tickets, and other key information needed.  You can then create loads and synchronize completed loads back to LIMS. Prove chain of chain of custody using GPS stamp. Print tickets with QR barcodes to portable Zebra printers and hand it to truck drivers. Electronically transfer a ticket with barcode to a truck driver’s device (if driver is using WeighWiz Mobile) which can then be used to expedite weighing in and out at scale site without him/her leaving truck. Lookup and review processed and delivered loads using a smartphone as well as run real-time reports.  Users can also manage trip tickets and scale data faster with less paperwork, more detail, and greater accuracy. Website 3LOG LoaderWiz Google Play 3LOG LoaderWiz Screenshot Gallery

Read More

Learning Programming In Delphi: Use This Astounding App

The developer says in their description that this application will teach learning programming in Delphi together with developing application using the RAD Studio Delphi IDE. How is this app helpful for learning programming in Delphi? There are over 50 Delphi lessons – Delphi.uz articles, a Delphi Programming Tutorial Module, eBooks in addition to free video tutorials, Subjects covered include “Enhanced and Fastest UI”, “Internet Connections using SSL”, “Smaller and bigger code sizes”, “Wrapping code” as well as a whole collection of other great resources for Learning Programming in Delphi. Website Delphi Examples Google Play Delphi Examples Screenshot Gallery Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder. Design. Code. Compile. Deploy.Start Free Trial   Upgrade Today    Free Delphi Community Edition   Free C++Builder Community Edition

Read More

Powered By Delphi: A Dynamic Desktop Search Engine Office Document Finder

Office Document Finder is a desktop search engine intended for quick searching and viewing PDF, Word, Excel and PowerPoint documents from application, browser or mobile and it is developed in Delphi. Built using HTML Component Library and HTML Office Library. There are screenshots here from Windows, macOS, and Linux. Great example of a cross-platform Delphi app! Features All formats – Support for all Word (.doc, .docx, .rtf), Excel (.xls, .xlsx), PowerPoint (.ppt, .pptx), Adobe PDF, HTML and EPUB formats Advanced viewer – View documens in its original layout with all pictures and text decoration No dependencies – MS Office and other applications are not required CJK languages – Indexing and searching for documents in Chinese, Japan and Korean languages OCR – Optical text recognition in scanned documents Cloud access – Access your documents from any PC or mobile PDF export – Download PDF file from browser viewer or application Localization – Web and application interface translation to Deutch, French, Russian and Spanish Suggestions – Autocomplete list for every word with number of documents containing this word Themes – Light and dark themes Duplicates – Detection of duplicated documents (displayed as red number) Query language – Support for “starting with”, “exclude word” and “exact words” Screenshot Gallery    

Read More

Welcome: A Spectacular Mobile App For Travelers Made In Delphi

Welcome – Audio walks with a local is a travel application built in Delphi. According to the developer, “Thousands of multi languages audio walks and museum tours in hundreds of cities and museums around the World.” This is an interesting app because it allows you to do some virtual traveling. It supports a number of different languages and the interface looks pretty good. It has mapping, audio, some rich media, and it’s built-in Delphi! Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.Design. Code. Compile. Deploy.Start Free TrialUpgrade Today

Read More