FMX

Lazarus Linux support for FNC webbrowser

Intro Up until now, the only way to use the TTMSFNCWebBrowser in a Linux environment was through FMXLinux. Today, we can proudly announce official Linux support through Lazarus as well. A couple of FNC products were already working in Linux, but the browser based components, such as the TTMSFNCWebBrowser and the TTMSFNCMaps components (& descendants) were not working. We have been working hard the past months to make our browser based products ready for Linux. With Linux support through Lazarus, we add yet again a new platform to the wide variety of already supported platforms in FNC. TMS FNC Components can be used simultaneously on these frameworks TMS FNC Components can be used simultaneously on these operating systems/browsers TMS FNC Controls can be used simultaneously on these IDEs Getting Started The components have been tested and deployed on a Linux environment (Ubuntu 20.04) after properly setting up Lazarus and other dependencies required for various parts of FNC. To setup your Linux environment please execute the following commands sudo apt install joe wget p7zip-full curl openssh-server build-essential zlib1g-dev libcurl4-gnutls-dev libncurses5 sudo apt-get install zlib1g-dev sudo apt install libgl1-mesa-glx libglu1-mesa libgtk-3-common libgstreamer1.0-0 libgstreamer-plugins-base1.0-0 sudo apt install libwebkit2gtk-4.0-dev Uninstall previously installed FNC packages and rebuild the Lazarus IDE. Remove LIB folders generated in the source directory. During compilation of dependant packages, checksum errors might appear. If this is the case, follow the exact steps below. LCLTMSFNCCorePkg.lpk >> Install LCLTMSFNCCorePkgDE.lpk >> Install >> Error LCLTMSFNCCorePkg.lpk >> Only compile LCLTMSFNCCorePkgDE.lpk >> Install >> OK LCLTMSFNCMapsPkg.lpk >> Install LCLTMSFNCMapsPkgDE.lpk >> Install >> Error LCLTMSFNCMapsPkg.lpk>> Only compile LCLTMSFNCMapsPkgDE.lpk >> Install >> OK Repeat steps 5-8 for other FNC products if necessary GTK 3.0 Note that the TTMSFNCWebBrowser is relying on GTK 3.0 as a minimum. By default Lazarus applications target GTK 2.0. To change this, select “Project Options”, go to “Additions and Overrides”, and change the default “LCLWidgetType” to GTK 3.0 Start the application to explore the capabilities of the TTMSFNCWebBrowser TMS FNC Maps Lazarus Linux support for TTMSFNCWebBrowser also means the TMS FNC Maps component set is available. Below is a screenshot of one of the demos in action. Stay tuned! With Linux support through Lazarus we add yet another major and exciting platform to the already huge amount of platforms FNC has to offer. Stay tuned for more FNC improvements and features coming up in the near future!.

Read More

TMS FNC Maps v2.1: Introducing OverlayViews

The new TMS FNC Maps update includes support for OverlayViews. This is a heavily improved equivalent of the Marker Labels functionality in TMS VCL WebGMaps and TMS FMX WebGMaps. OverlayViews are a Google Maps API specific functionality and therefore currently only available in TTMSFNCGoogleMaps. OverlayViews can be positioned anywhere on the map and support HTML tags. 3 ways to use OverlayViews 1. Connected to a Marker The OverlayView is automatically displayed below an existing Marker and functions as a Marker Label.  In code, adding a call to AddOverlayView on an existing Marker with the text that goes in to the OverlayView as a parameter value is all that is needed. var m: TTMSFNCGoogleMapsMarker; begin TMSFNCGoogleMaps1.BeginUpdate; m := TTMSFNCGoogleMapsMarker(TMSFNCGoogleMaps1.AddMarker(TMSFNCGoogleMaps1.Options.DefaultLatitude, TMSFNCGoogleMaps1.Options.DefaultLongitude)); m.AddOverlayView(‘Hello World!This is an OverlayView.’); TMSFNCGoogleMaps1.EndUpdate; 2. Positioned at a fixed Coordinate The OverlayView is positioned at a fixed coordinate on the map. The size of the OverlayView remains fixed regardless of the map’s zoom level. In code, setting the Latitude and Longitude coordinates will position the OverlayView at that exact location on the map. var ov: TTMSFNCGoogleMapsOverlayView; begin TMSFNCGoogleMaps1.BeginUpdate; ov := TMSFNCGoogleMaps1.AddOverlayView; ov.CoordinatePosition := cpCenterCenter; ov.Coordinate.Latitude := TMSFNCGoogleMaps1.Options.DefaultLatitude; ov.Coordinate.Longitude := TMSFNCGoogleMaps1.Options.DefaultLongitude; ov.Padding := 5; ov.Width := 500; ov.Text := ” + ‘Uluru’+ ”+ ‘Uluru, also referred to as Ayers Rock, is a large ‘ + ‘sandstone rock formation in the southern part of the ‘+ ‘Northern Territory, central Australia. It lies 335 km (208 mi) ‘+ ‘south west of the nearest large town, Alice Springs; 450 km ‘+ ‘(280 mi) by road. Kata Tjuta and Uluru are the two major ‘+ ‘features of the Uluru – Kata Tjuta National Park. Uluru is ‘+ ‘sacred to the Pitjantjatjara and Yankunytjatjara, the ‘+ ‘Aboriginal people of the area. It has many springs, waterholes, ‘+ ‘rock caves and ancient paintings. Uluru is listed as a World ‘+ ‘Heritage Site.’+ ” + ‘Attribution: Uluru, ‘+ ‘https://en.wikipedia.org/w/index.php?title=Uluru ‘+ ‘(last visited June 22, 2021).’+ ”; TMSFNCGoogleMaps1.EndUpdate; 3. Positioned between preset Bounds The OverlayView is positioned between fixed Bounds coordinates on the map and the size changes depending on the map’s zoom level. When the map is zoomed out, the size of the OverlayView image automatically adapts to keep it inside the Bounds coordinates. In code, set the OverlayView Mode to omBounds to keep it positioned and sized between the Bounds coordinates.In this example an image is used to display a different style of map at that location. To make sure the image fills the entire available space,  it’s width and height must be set to 100%. Optionally the Padding, BackgroundColor, BorderColor and other configuration settings can be added. var ov: TTMSFNCGoogleMapsOverlayView; begin TMSFNCGoogleMaps1.BeginUpdate; ov := TMSFNCGoogleMaps1.AddOverlayView; ov.Mode := omBounds; ov.Text := ”; ov.Bounds.NorthEast.Latitude := 40.773941; ov.Bounds.NorthEast.Longitude := -74.12544; ov.Bounds.SouthWest.Latitude := 40.712216; ov.Bounds.SouthWest.Longitude := -74.22655; ov.Padding := 0; ov.BackgroundColor := gcNull; ov.BorderColor := gcNull; TMSFNCGoogleMaps1.EndUpdate; Available now The TMS FNC Maps v2.1 update is available now. You can download the latest version and start using the new OverlayViews feature right away!

Read More

Opening an exciting new world full of amazing resources for Delphi developers

Imagine Imagine your access to functionally useful libraries, components, controls that are hard to find in the Delphi developer community suddenly became easily available. Visualize Visualize you had no more concerns what platform or what framework to choose for developing your next solution for your customers. Dream Dream you can start adding seamlessly exciting new functionality to your existing applications. That is exactly the core goal of the brand new WX concept we reveal today with TMS FNC WX Pack. In a nutshell, WX means “Packaging Web technology in easy-to-use components for integration in any type of Delphi application“. With WX Pack, you can leverage existing Web libraries in VCL Windows applications, FMX cross-platform applications for Windows, macOS, iOS, Android & Linux, or TMS WEB Core Web applications for any device running a modern browser.   How does it work? The foundation of the WX concept is our powerful TMS FNC Browser component with its accompanying bridge technology. The FNC browser wraps the native operating system browser for the VCL, FMX, or LCL framework and offers a sort of virtual embedded browser in a TMS WEB Core Web application. This FNC browser is used to host a Web library with the choice to host it for offline or for online use. You can opt for online use to make the component lighter or offline use which means that the component will take up somewhat more size in your executable (depending on the component of course) but with the guarantee it will run fine without an Internet connection. Thanks to the FNC bridge technology, the native application-level component can communicate with the browser hosted library and vice versa. As a Delphi developer, this is all abstracted and you only deal with it at Object Pascal level as a component and its properties, methods, and events. Where do we start? There is an abundance of existing Web libraries, so where to start was the big question. The answer was simply listening to you, the user. For quite some time, among the most popular requests for new components were a barcode generator component, a QR code generating component, an HTML editor, a PDF viewer, … And so, that is exactly where we started our research and initial development to bring these components as part of the WX concept. It enables us to deliver these kinds of components in a fraction of the time otherwise needed to build them from the ground up, and it is an opportunity to leverage proven, well-tested, and widely popular existing libraries.   The first group of components In the first beta build of TMS FNC WX Pack, we have: TTMSFNCWXBarCodeThis components offers close to hundred different barcode types with lots of customization properties for these barcode types. TTMSFNCWXQRCodeComponent to generate QR codes of different type and with several customizations like logo in QR code for example TTMSFNCWXHTMLMemoEdit HTML directly with the TTMSFNCWXHTMLMemo component. It has an optional embedded format toolbar or can be used with external toolbar. Programmatic access to all formatting capabilities is available. Content is loaded and saved directly as HTML. TTMSFNCWXPDFViewer With this component on the form, you can display PDF files in your applications, including page thumbnails. There is programmatic access to navigate through pages, search text, … TTMSFNCWXCamera Access your device camera with the […]

Read More

Coming up in TMS Web Academy 2.0

The TMS Web Academy is designed to allow you to learn about our products online from your preferred place. First released in February 2021, TMS Web Academy has already come a long way since then. Focusing on giving our viewers the best experience possible, we are now ready to release TMS Web Academy v2.0. With this release there are a ton of exciting features coming your way, making our webinars the best experience they can be.  Polls Our biggest new feature is the introduction of the new Poll functionality. During a webinar we will be able to launch polls live and ask questions to our viewers. When applicable we can use this information to share it with other viewers or use feedback to improve and steer upcoming webinars. This will ensure that we continue to offer you the best experience and content possible. For now, there are 5 poll types available: Multiple Choice Single Choice Multi line Text Single line Text Rating This gives us enough freedom for now to ask tons of questions. Don’t be afraid to give us your unsalted opinion and feedback. Every answer remains strictly anonymous. After a poll, the results can be shared with the viewers if the host wishes so. This makes it more interactive and gives you an idea of what your fellow programmers are into. Think of the standard questions like what browser do you use. This will make sure the webinars are a bit more interactive. Already introduced in 1.5 is the new resources tab. Here you will find resources we share during the webinar. You can download them directly from the TMS Web Academy. This allows us to share everything you need for the webinar like presentations, projects, source code, …   With the new version 2.0 it is also possible to get a list of our viewers per country. Also this data is completely anonymous, and we can use it to pour into a map. This can be fun to share with people to see where our viewers are coming from. Yes, TMS Web Academy is an “eat your own dog food” project! It is entirely built using TMS WEB Core for Visual Studio Code. It is not only an excellent showcase of the power of TMS WEB Core but also a great learning experience for us to continue to improve the product to make it the most productive web client development tool for us Object Pascal developers. Explore and get started with TMS WEB Core for Delphi, Lazarus or Visual Studio Code today.

Read More

Your components for the new RAD Studio 11

RAD Studio 11 is here Our team has been working around the clock to get our product installers ready with support for RAD Studio 11!  This is no light task given the amount of products we have for RAD Studio users. It is with pleasure that we can announce that for active registered users there is already a large number of products ready now with support for RAD Studio 11!  You can get the list of products with support now and track when new updates come available in the coming days with support at this page. High DPI The main new feature of RAD Studio 11 is of course that it runs now in high DPI. The source code is now rendered nicer on high DPI displays and for the form designer, there are a couple of configurations how it can be rendered on high DPI displays. It is not clear yet to us what form designer configuration will be your favorite. Of course, this impacts also our visual component design-time rendering (and we have a lot 😉) so we look forward to your feedback and it will be an ongoing process for us to fine-tune the components for the various design-time high DPI configurations. Stay tuned. Product trial versions From today, our team will also start working on adding product trial versions specifically for RAD Studio 11. You will see these trial downloads appearing on our various product pages shortly.

Read More

Let’s talk about tests!

The Behind the scenes series continues! The next one will happen next Thursday, September 9th, 4PM UTC. You voted for it, and the theme for the next webinar will be Unit Testing and Integration Testing. In the next “Behind the Scenes” session, Wagner Landgraf will give an overview about how testing is implemented in TMS Business framework, how TDD has influenced TMS Aurelius development and show some tools and techniques used for the setting up all tests in the whole product line. Let’s talk about tests: behind the scenes with Wagner Landgraf.  Thursday, September 9th, 4PM UTC. REGISTER NOW for free! Also, don’t forget to subscribe to the Behind the Scenes topic in the Support Center to vote for the subject of upcoming webinars! (*) Photo by Agence Olloweb on Unsplash Wagner R. Landgraf

Read More

Cook your own navigation system with us

Thursday Aug 19, at 15h00 UTC, we invite you to join us for the free webinar where we will show you step by step how to create your own DIY navigation system. At the end of the cooking session, you will have the full source code of the DIY navigation system. Ingredients that will be used during this cooking session are: What you will learn: Get started with TMS WEB Core Create a PWA from Delphi Work with Bootstrap Use Geolocation Call the free openrouteservice service Do REST requests Parse JSON Use Speech Synthesis Use Google Maps with polylines, directions, rotation Deploy a TMS WEB Core client app Your chef in the kitchen during this cooking session is Bruno Fierens, CTO at TMS software and architect of TMS WEB Core. Register now Take advantage of this unique opportunity and be present live during the webinar, use the ability to ask live questions and receive the free full source code of the project! Register here  See you on Thursday!

Read More

New ‘Behind the scenes” webinar series

From next week, we start a new webinar series for you with the working title “Behind the scenes“.With this new series, we want to step out of the box and offer you the chance to dive deeper in what is behind the products you use on a daily basis: Who are the architects, developers, team behind a product? What is the history behind a product? What are the core ideas and architecture behind a product? Why did we decide to develop a specific product? Where is the product going to in the future? What feature we think you should use more? What is a possible use of the product you might not yet have discovered? This is -your- webinar! Within the scope of the webinar, no question will be left unanswered. The Interaction with the webinar host and among webinar attendees will be encouraged (we are actually working hard on the TMS Web Academy infrastructure to facilitate this even more: stay tuned for TMS Web Academy v2.0!). So, take advantage of it to be directly and live in touch with the people behind our products and behind our support and consulting services.  First ‘Behind the scenes’ on Aug 26, 16h00 UTC On Aug 26, 16h00 UTC, we have the first webinar in this series : ‘TMS BIZ: Behind the scenes with Wagner Landgraf’. Our colleague, expert and architect of products like TMS Aurelius, TMS XData will kick-off with a session to have literally a look behind the scenes of what these TMS BIZ products can do for you, why we created them, what features we think you should know about and so much more… Prepare your questions and register! You can register now for this webinar here. To get the maximum value out of this “Behind the scenes” webinar, prepare your questions or you can already discuss and share questions in our Support Center!  More ‘Behind the scenes’ We are eager to learn where your interest is in content for more ‘Behind the scenes’ webinars. Leave your ideas here in the comments section or get in touch and we will get the developer, export, architect, consultant behind your favorite product from behind his work desk and let you take with him a peek behind the scenes of the product.

Read More

Summertime DIY project webinar!

“Learning while having fun”, is what our upcoming webinar is about! In about one hour, you will learn how to build your very own navigation system for your summertime hikes, bicycle tours or old-timer car trips! The webinar is planned for Aug 19, 15h00 UTC (17h00 CET)  and you can register here A PWA DIY navigation system for your smartphone or tablet The DIY navigation system will be built as a PWA (progressive web application) with TMS WEB Core. This means you write the code once and you can install the application on any modern iOS or Android mobile device from an URL. No app stores to get approval from, no delays with deploying updates, all is installed in seconds after open the URL.         Giving the 1996 Mercedes SLK R170 Youngtimer a Tesla touch with the TMS DIY Navigation system Delphi project During the webinar, we will build and explain the application step by step. You’ll learn about using Google Maps, the Openroute directions REST API, access to your device geo-location + orientation and take advantage of the browser speech synthesis to give you directions by voice during the trip. Get the entire project will full source code Exclusively for all attendees of the webinar we offer at the end of the webinar the full source code. You will receive the source code via the TMS Web Academy during the webinar itself. Yes, we have meanwhile also introduced a couple of new features to the TMS Web Academy that will allow this file distribution live during the webinar!  With the full source code, you can further fine-tune the DIY navigation system and add your own cool features to it. Requirements The DIY navigation system uses only the TMS WEB Core framework latest version either for Delphi, Lazarus or TMS WEB Core for Visual Studio Code. You will be able to build the project even with the trial version. So, if you haven’t tried TMS WEB Core yet, download and install it now in your preferred IDE!

Read More

Built with XData: HealthLy App for iOS and Android

A couple of weeks ago I received an awesome e-mail from a customer, Vladimir Atanackovic. We have exchanged e-mails before. As a TMS Business customer, he was using TMS XData and naturally asking for help here and there with technical issues. Our previous e-mail conversation was four months before, just a regular support question, but this one was different. He sent a kind e-mail for letting me know that his company has finally released their application, HealthLy, built with TMS XData. About HealthLy HealthLy is a mobile application, available for iOS and Android, that help users to manage their health life: track health data, provide reminders for taking medicines and injections, monitor health indicators, organize doctor appointments, offer information about drug interactions, etc. In this blog post we added some screenshots of the application, but of course you are invited to visit the following links to know more about it, or even download and use it, it never hurts to take better care of your health! HealthLy for iOS (App Store): https://apps.apple.com/us/app/healthly/id1536292632 HealthLy for Android (Play Store): https://play.google.com/store/apps/details?id=com.healthcarecentral.healthly HealthLy web site: https://HealthLyApp.com It was so nice to receive a personal message as a feedback from a customer, and even nicer to see our product, TMS XData, helping to build such a well built, well regarded, professional product like HealthLy (I has received 5 stars in both Apple and Google stores). Vladimir shares his experience After that, I asked Vladimir if he could share more technical information for the readers of this blog. He kindly agreed, and I sent him some questions. The pace of the “interview” or the questions might look a little strange, but it’s just because all the questions were made in advance without a previous answer. If you are a TMS XData user, I hope you will find encouraging to see how many nice things can be built with it. If you are not a TMS XData user, well I can only invite you to join the family! I hope you like what Vladimir has to say about his development process, XData and, of course, HealthLy. Wagner Landgraf: Can you please say in a few words for our audience what is your application for? Who can benefit from it? Vladimir Atanackovic: Managing all the aspects of health development and history can be a big task. Even more challenging is when a person is struggling with a chronic condition or is helping someone else in that struggle. Personalized health management depends heavily on health data analysis and well-organized health-related activities. HealthLy is a health management system and a companion. It is encompassing the crucial health improving and monitoring tools together with personal health data to create a platform for individuals, families, and physicians, or pharmacists. Two years ago, in order to validate our idea, we created a mobile app Tableta, designed only for a local market and with limited features. Through the organic growth and no marketing money, we have managed to reach 3,000 users and achieve 4.8 stars ratings on both PlayStore and AppStore. WL: I see your app has 5 stars score in both App Store and Google Play. Congratulations about that! What do you consider are the strong points of your app and what makes it so appreciated by your customers? VA: HealthLy has 5 […]

Read More