Using 4D libraries within project databases
4D provides libraries to help you develop applications. One of these libraries is standard and contains preconfigured form objects and widgets, while other libraries are custom. The standard library is “read-only” and its behavior doesn’t change when developing project databases (with the exception of minor, cosmetic interface differences). You also have the ability to create your own custom libraries to save your own form objects or group of objects. In this case, a few changes have been made to make them even more powerful. The following is everything you need to know about these changes:
Coexistence of thread-safe and non-thread-safe commands
Have you ever needed to use methods with both thread-safe and not thread-safe calls, with conditions that skip over commands that are not thread-safe? Currently the compiler prevents doing this and an error is thrown, however there’s a flag that lets you disable this check and this blog post shows you how.
Easily send a 4D Write Pro document containing images as the body of an email!
Want to use 4D Write Pro to create HTML emails with static pictures in the text? Maybe something like a fancy newsletter with pictures of the top ten destinations in the world, or simply include your company logo? Wondering how to accomplish this? Wonder no more because with the 4D v18, you can in three simple steps:
- Export your 4D Write Pro document in MIME format,
- use the MAIL Convert from MIME command to transform the MIME into an email object,
- then send it via the SMTP New transporter command.
Project Databases: Post conversion
In this blog post, we showed you how to convert a binary database into a project database. Once everything is ready and the conversion has successfully completed, you can start working with your project database. However, some questions may arise: are all the files in the database useful? It’s obvious that the”.4DB” structure file is no longer needed. Can I delete other files?
Here’s everything you need to know after the conversion.
Zip/unzip files and folders with these commands
Before exchanging files (by email for example), we often compress them to reduce their size before transmitting them. With 4D v18, you can compress and uncompress your files by programming without the need for external libraries or tools. Here are the new commands that allow you to do so:
Build a custom remote connection dialog
Do you need to build a customized 4D connection dialog? Interested in connecting your client application to different servers? These are two scenarios that 4D v18 lets you to handle. This blog post is for you if you want to create a custom remote connection dialog and connect it to merged 4D servers. Keep reading!
New 4D View Pro form events
As of 4D v18, a new set of 4D View Pro form events are available. They return special information that can be accessed with the new FORM Event command, introduced in this blog post. Say hello to: “On Column Resize”, “On Row Resize”, “On Clicked”, “On Double Clicked”, “On Header Click”, “On Selection Change”, and “On After Edit”.
4D Write Pro – Insertion and deletion of rows and columns
You already know that 4D Write Pro allows you to create tables and append rows to them. With 4D v18, we’ve got more thrilling news! We’re excited to announce that managing the insertion and deletion of rows and columns is not only possible, it’s also very easy. This can be done either by programming, thanks to four new commands, or by using the interface (via the widgets or the contextual menu). Keep reading for more details!
Expanding the abilities of the Form event command
As you may already know, the Form event command identifies the type of form event that has just occurred. It’s typically used within a form or object method.
Some changes have been made in 4D v18, but it’s all good. Here’s what you need to know:
C_VARIANT to store different type of values
Sometimes you want to write code being able to work with different variable types, this is especially true for generic coding. Using pointers can make code more difficult to read and debug. Sometimes it’s not possible at all, for example when you want to assign a generic variable to a form object as the data source.
A new command is now at your disposal to let you to declare a variable that can store different types of values. Say hello to the new C_VARIANT command!
Contact us
Got a question, suggestion or just want to get in touch with the 4D bloggers? Drop us a line!
* Your privacy is very important to us. Please click here to view our Policy