Noutați

Nou în RAD Studio 10.4 VCL Per-Control Styles

In the past, the VCL library allowed a developer to select one style (or no style) for the entire application. Starting with RAD Studio 10.4 VCL library will allow you to use multiple VCL styles at the same time in different forms of your applications, or even different controls of the same form. You can also mixed styles of elements (controls and form) and elements using the Windows default platform theme. This feature is controlled by a new StyleName property for the TControl class. This property takes as value the name of one of the styles active for the application and applies the style to the given control. If the property is empty, the parent control style is used: so if you set the property for a form, all controls in the form take the form style by default. A Quick Demo As the name implies, per-control styling allows a developer to apply different styles for controls and forms in the same application. To start, you need to add multiple styles to an application, and you can use all of them. This feature works only if one of the VCL Styles is active. First, add multiple styles to an app (hint, in RAD Studio 10.4 VCL you can use the new high-dpi styles, that’s for another blog post): Now set different styles names for different controls in a form, like in the following DFM file (I kept only key relevant properties here): object Form2: TForm2  StyleName = ‘Sky’  object Panel1: TPanel    StyleName = ‘Light’    object Button1: TButton…    object Button3: TButton      StyleName = ‘Sky’    end  end  object Button2: TButton    StyleName = ‘Windows’  end  object Button4: TButton    StyleName = ‘Luna’  end  object Button5: TButton    StyleName = ‘Aqua Graphite’  endend Notice that Button1 takes the hosting panel style, while Button2 resets the style to the form one. Finally, ‘Windows’ is a special purpose value, as described below. With this code, here is the UI of a form with 5 buttons using 5 different styles: A Few Rules for RAD Studio 10.4 VCL There are different approaches you can use to to adjust the style of the different forms and controls of a VCL application: 1. Adjust style list in project options (but you can also load styles at runtime). 2. Use the TControl.StyleName property to define the specific style for each control or each form. The StyleName value must be one of the names of the styles in the project options. A control can use the StyleName defined for its parent control, so you can set the StyleName property of a form to have specific style used by all controls on it. Additional cases: By default, TControl.StyleName is empty and control uses a default style. You can set StyleName as ‘Windows’ to disable applying any style for control or form. If you set a style name that is not among the loaded VCL styles, then the control will use default style. 3. You can define a specific style also for common dialogs. Use the property  TStyleManager.DialogsStyleName for that. By default, it is empty and common dialogs use the default style of the application. 4. You can define the application style as ‘Windows’. This means that if some control or form has an empty StyleName property, then it will always use ‘Windows’ style and VCL Style will be always […]

Read More

RAD Studio 10.4 With New VCL TEdgeBrowser Component

RAD Studio 10.4 is going to bring support for working with web content through a new Chromium-based Edge browser control in VCL applications. The new TEdgeBrowser component wraps the Microsoft WebView2 component. TEdgeBrowser supersedes TWebBrowser, which uses the Internet Explorer WebBrowser browser control. However, TWebBrowser remains in the VCL component set, with some notable changes (see below). TEdgeBrowser Requirements Because TWebBrowser uses the Operating System-supplied Internet Explorer WebBrowser browser control there is no preparation required – it will work wherever Windows has the Internet Explorer control available. On the contrary, Microsoft Edge is not an Operating System component (not yet, anyway). Also, it is still not officially released. Because of this, you need to ensure that these items are installed on your computer before you can run an application that uses it: The Microsoft Edge Chromium-based browser is currently available from https://www.microsoftedgeinsider.com/download (Canary channel version whilst the WebView2 SDK is in pre-release).  The WebView2 control, currently available through NuGet at https://www.nuget.org/packages/Microsoft.Web.WebView2 or via a matching GetIt package manager For the time being, Edge Canary is requirement applies to you compiling and executing the application on your development machine and also on the end user’s machine. As for the WebView2, all you need id a DLL that currently needs to be distributed along with your program. Both are Microsoft requirements and binaries, and they might change with the official release. Once you have installed Edge (Canary version) to install the required Microsoft WebView2 package you open the GetIt package manager window in the RAD Studio 10.4 IDE and search for the corresponding entry, as indicated below: Once you have installed the package, it will copy in your RAD Studio redistributable folder the DLL required by your application, one for 32-bit apps and one for 64-bit apps (both are called WebView2Loader.dll). You will need to copy this DLLs in your build target folders or someone on the search path. Using the Edge Browser component You use the TEdgeBrowser component in much the same way as you would use a TWebBrowser, indeed a number of methods and properties are similar to those of TWebBrowser’s methods and properties. Drop the component on a VCL form and size it as appropriate, as in the simple case below: To navigate to a URL simply pass that URL to the Navigate method: EdgeBrowser1.Navigate(‘https://www.embarcadero.com’); That’s all, run the application and you see the following output: And What About TWebBrowser? The VCL TWebBrowser component still performs the same job as always, which is to render web content using the Internet Explorer WebBrowser browser control. However, in addition to this default behavior it has a new property, SelectedEngine, which can be used to ask it to use the newer Edge (Chromium) WebView2 browser control instead if available on the target machine.  The advantage is to have a single browser control that can work on all Windows computers, and also a higher level of compatibility (in terms of browser component of methods and properties used) with the existing code. The advantage of the new Edge control is you have more power to customize this new engine.

Read More

OpenJDK for Android in Delphi Development

You may not know this, but Java comes in many flavors and parts. After Oracle acquired Sun Microsystems, they became the official owner of the Java trademark and the main “official” Java distributions. First off a disclaimer: I’m not a lawyer, nor am I a Java developer. This is a high-level overview of a number of complex issues related to Java, Java development, and licensing. My goal is to give you enough information to move forward and be successful, but I encourage you to do some additional research and consult a lawyer if you need additional information. I know that I will miss details and gloss over important points. Java is made up of the following parts JVM: The Java Virtual Machine is the virtual machine that runs all Java applets. Java applets are usually distributed as Java bytecode in a JAR file. Java bytecode doesn’t run natively on the physical computer. Instead, it runs on the JVM. The JVM is a Just-in-Time compiler (JIT) that converts the Java bytecode into native machine code. The two popular flavors of the JVM are Hotspot (the official JVM used by the Oracle JDK) and OpenJ9. Technically Android doesn’t have a JVM. Instead, the Java bytecode is converted into Dalvik bytecode and run on the DVM (Dalvik Virtual Machine) or compiled by ART (Android Runtime). Both use .dex files, but ART translates the bytecode into .elf (Executable and Linkable Format) files. This article is mostly focused on the Java desktop side for building Android apps with Delphi, but I wanted to add this aside for clarity. JRE: The Java Runtime Environment contains the main libraries a Java applet needs to run, along with the JVM. It includes Java.exe and Javaw.exe that run the applets and other utilities. JDK: The Java Development Kit, or the SDK for Java development. The JDK is a superset of the JRE. This is what you use for building Java (and Android) applications, while it also provides everything you need to run Java applets. It includes a number of utilities like KeyTool.exe and JarSigner.exe used to make  There are 3 variants of the Java platform released by Oracle: Standard Edition (Java SE), Enterprise Edition (Java EE), and Micro Edition (Java ME). This blog post, and most use cases you will encounter, involve the Standard Edition. Where it gets interesting is with the OpenJDK, a free and open-source implementation of the Java Standard Edition (SE) Platform. It is the official reference implementation of Java SE since version 7. The source implementation is licensed under the GNU General Public License version 2 with a linking exception. [wikipedia] Similar to how Chrome is based on the open-source Chromium project, Java SE is based on OpenJDK. Anyone, yourself included, could download the OpenJDK source files and create a binary build. There are a number of organizations that do that, and each one has its own spin on licensing, support, and included components. Here are a few (these are binary distributions of the OpenJDK source). Build Long TermSupport PermissiveLicense Pure Commercial Support AdoptOpenJDK / JClarity / IBM Java SDK Yes Yes Optional Yes Alibaba Dragonwell Yes Yes No Yes Amazon Corretto Yes Yes No No Azul Zulu Yes Yes No Yes BellSoft Liberica JDK Yes Yes No Yes ojdkbuild Yes Yes Yes No Oracle Java SE Yes No No Yes Oracle OpenJDK No Yes […]

Read More

Embarcadero TERM Licenses

Embarcadero TERM Licenses este popunerea poducătorului de IDE Delphi și C++, Embarcadero LTD pentru clienții săi existenți și potențiali pentru optimizarea bugetelor pentru soluții de softwar edevelopment. Când vine vorba de licențiere de produse software, organizațiile doresc să maximizeze flexibilitatea și gestionabilitatea, reducând în același timp costurile. Flexibilitate înseamnă utilizarea software-ului oriunde și oricând, pe o mașină autorizată, de către un utilizator autorizat. Gestionabilitatea necesită controlul, auditul și raportarea privind utilizarea licenței. În plus, cerințele de reglementare și conformitate impun prevederi și restricții suplimentare pentru urmărirea accesului la software. Embarcadero oferă o varietate de opțiuni de licențiere, astfel încât organizațiile să își poată gestiona mai ușor software-ul, asigurându-le în același timp instrumentele de care au nevoie.  Pe lângă tipurile bine cunoscute de licențe, disponibile până acum – Named, Network named și Concurrent, recent a fost adăugată și opțiunea de subscripție anuală numită de către Embarcadero TERM License Named  (1 Year term) Named Embarcadero TERM Licenses prezintă o subscripție limitată în timp pentru o perioadă de un an calendaristic, care oferă dreptul utilizării celei mai recente versiuni a soluțiilor Delphi și C++ Builder cu suportul și mentenanța incluse. La expirarea termenului propus există opțiuni de prelungire anuală la același preț sau anulare utilizare. Opțiunea de TERM License este disponibilă pentru soluțiile Delphi Enterprise și C++ Builder Enterprise. Apelați la echipa noastră de vânzări pentru mai multe informațiii și oferte de pret.

Read More

Oferta Pre-Lansare Embarcadero RAD Studio 10.4 !

Embarcadero RAD Studio 10.4 Sydney este cea mai recentă ediție a soluțiilor noastre cu funcționalități noi avansate care Vă vor ajuta mult în procesul de dezvoltare, testare și implemntare a aplicațiilor moderne și în limitele bugetului alocat. Deoarece sunteți client și membru al comunității de dezvoltatori, am lansat special pentru Dvs o ofertă promoțională pentru soluțiile RAD Studio, Delphi, and C++Builder. Embarcadero RAD Studio 10.4 Sydney include o mulțime de funcționalități și înbunătățiri în cele trei produse principale ale noastre (RAD Studio, Delphi și C ++ Builder), oferind VCL pentru aplicațiile Windows 10, FireMonkey pentru dezvoltarea Delphi pentru mai multe tipuri de dispozitive, îmbunătățiri ale productivității dezvoltatorilor la IDE și multe altele! Nu putem împărtăși până când toate detaliile, dar … Solicitați oferta promo: Acum este momentul potrivit pentru a face upgrade la Embarcadero RAD Studio 10.4! Vă gândiți la modernizarea soluțiilor existente? Platformele de programare continuă să se dezvolte. Tehnologiile la fel nu stau pe loc și permanent se dezvoltă. Aplicațiile Dvs create în trecut mai funcționează, dar cum vor sta în perioadele următoare? Sunteți pregătit pentru viitor? Nu vă lăsați depășit de noile tehnologii c! Lansăm oferta de pre-sales pentru RAD Studio 10.4! Actualizați-vă soluțiile existente sau procurați licențe noi acum la pret special și ve-ți primi ediția 10.4 imediat cum va fi lansată plus orice altă versiune nouă, lansată pe parcursul unui an! Noul Code Insight din Delphi 10.4 rezolvă o mulțime de probleme și face din utilizarea IDE o experiență mult mai plăcută și mai receptivă și pentru dvs. Nu mai vorbim de rezultatele suplimentare, care pot fi extrem de utile. Este planificată și continuarea lucrului pentru a merge mai departe prin obiectivele scrise mai sus. Cu toate acestea, în 10.4, noi și testatorii noștri beta am descoperit că este un plus excelent la IDE. În plus, am adăugat chiar două funcții noi: permițându-vă să explorați codul dvs. prin completarea codului și folosind Code Insight, inclusiv completarea codului și alte funcții Code Insight în timp ce depanați. RAD Studio The ultimate IDE with features both C++ and Delphi developers love: code, debug, test and fast design for cross-platform mobile and desktop deployment. Delphi IDE Trusted for over 24 years, our modern Delphi is the preferred choice of Object Pascal developers worldwide for creating cool apps across devices. C++ Builder IDE The most productive C++ development toolkit, including powerful IDE and frameworks for UI, connectivity, and much more. Build C++ applications 10x faster with less code.

Read More

WebStorm 2020.1 disponibil online.

WebStorm 2020.1, the first major update this year, is now available! It comes with a more polished look and feel, out-of-the-box support for Vuex and Composition API, an option to run Prettier on save, and improvements for JavaScript and TypeScript. If you only have a few minutes to explore what’s new in WebStorm 2020.1, watch this video where Paul Everitt, WebStorm Developer Advocate, reviews the most notable improvements. If you feel like diving a little deeper, read on! The new features and improvements in WebStorm 2020.1 fall into these categories: Look and Feel: a new default editor font, a unified light theme, Zen mode for focused coding, quick documentation on hover, LightEdit mode for quick editing, and a customizable status bar. Frameworks: Vuex and Composition API support, completion for Vue in HTML files with CDN links, improvements to React support, and full support for Angular 9. JavaScript and TypeScript: more useful quick documentation, new smart intentions and inspections, support for TypeScript 3.8 features, and a reworked UI of the Introduce Field refactoring. Tools: run Prettier on save, split terminal sessions, bundled spell checker, Jest enhancements, TypeScript support with Yarn 2, and more flexible sharing of run configurations. Version Control: a reworked dialog for rebasing commits, improved work with branches, changes to the commit flow, and installing Git from the IDE. WebStorm – Look and Feel New default editor font For the last year, we’ve been developing a font that would let you code more comfortably, without straining your eyes too much. The result of our efforts is JetBrains Mono, a new open-source typeface made specifically for coding. Starting v2020.1, WebStorm is shipped with JetBrains Mono selected by default, with the option to set a custom font of your choice should you still want to. Unified light theme for all operating systems To make the UI more consistent across all operating systems, we’ve introduced a unified light theme, IntelliJ Light. From now on, this theme will be available in the Theme dropdown menu in Preferences/Settings | Appearance & Behavior | Appearance. Zen mode for focused coding for WebStorm 2020.1 We’ve added the new Zen mode to help you focus completely on your code. It combines the Distraction Free mode and the Full Screen mode, so that you don’t have to enable or disable both of these modes every time you want to enter or exit them. To enable this new mode, go to View | Appearance | Enter Zen Mode from the main menu, or choose it from the Switch popup. Using WebStorm for quick editing With the new LightEdit mode, you can open a file in a text-like editor window without creating or loading a project. Let’s see how. First, make sure that WebStorm hasn’t been launched yet. If it’s running, the file will be opened in it instead of the text-like editor window. Then, open the file in one of three ways: Go to your project folder, right-click the file you want to edit, and select WebStorm from the list. Create a command-line launcher as described here and open the file from the command line. Click the Open button on the IDE welcome screen, select the file you need and press Open. Ready to switch from editing this single file to working on your entire project? Select File | Open File in Project in the main menu, or right-click anywhere in the editor tab and select Open File in Project from the context menu. Displaying the Documentation popup on hover Starting with WebStorm 2020.1, you […]

Read More

Ext JS Grid – lucru cu date

În acest scurt video de numai 15 minute încercăm să explicăm cum se poate de manipulat datele din Ext JS Grid. Discutam despre sorting, filtering, and grouping care pot fi efectuate fie local fie remote.

Read More

Primii pași cu Ext JS Grid

În acest video d 10 minute se explică care sunt primii pași recomandați cu Sencha Ext JS Grid. Se explică conceptul geenral de grile în JavaScript Framework cu exemple de implementare.

Read More