How can I distinguish an objectUI dialog box from other types of dialog boxes?

Build 1501 on 14/Nov/2017  This topic last edited on: 24/Oct/2016, at 12:53

Actually, it is not easy to distinguish an objectUI dialog box from other types of dialog boxes (e.g. created by InputDlg, VB.Net or internal code).

Look at the following examples:

sampledlg1

The Split in columns dialog box is an internally generated dialog box. You cannot re-configure it, nor do any change.

Looking at it, you can notice that it has complex layout (its controls appear in multiple columns, for example).

Just by using that fact, you can tell it cannot be a XAML based dialog - as XAML based dialog boxes typically have one column only.

Such dialog boxes are stored in the GN4 core code, and if you need a change, it is likely you will have to wait for the next release.

sampledlg2

The Fred preferences dialog box is a mixture of an internally generated multi-tabbed dialog box with a custom VB.Net addition on the Extra tab.

Again, its complex layout could make you believe it is an internally coded dialog box, but in this case there is also a VB.Net component.

However, mative VB.Net dialog boxes may have very complex layout and functionalities (events, validation, etc), and require VB.Net programming skills and familiarity with the  compilation of the code.

Such dialog boxes are stored in the add-ins DLL files, and also in the appropriate section of the GN4 database.

If you need a change in the VB.Net part of the dialog, you can do it by yourself, and then you need to reload the DLLs in the database.

sampledlg3

This dialog box is generated by the Tera InputDlg method, so neither this is a XAML based dialog box.

However, it has a similar look and feel - also the InputDlg generated dialog boxes have a single-column layout. However, dialog boxes generated by InputDlg require VB.Net programming skills and familiarity with the compilation of the code.

Such dialog boxes are stored in the add-ins DLL files, and also in the appropriate section of the GN4 database.

If you need a change in the VB.Net part of the dialog, you can do it by yourself, and then you need to reload the DLLs in the database.

sampledlg4

Here is, finally, an example of a simple XAML generated dialog box. To create it, you don't need to do any programming, but you need to know the names of the page object attributes (as specified in the GN4 schema).

Such dialog is defined by simply adding not very complicated lines of code to a configuration file that later has to be loaded in the database.

No programming skills are needed and there is no compilation of the code.

Such dialog boxes are entirely stored in the database.

sampledlg5

Here is an example of a multi-tabbed XAML generated dialog box. To create it, you don't need to do any programming, but you need to know the names of the page object attributes (as specified in the GN4 schema).

Such dialog is defined by simply adding not very complicated lines of code to a configuration file that later has to be loaded in the database.

No programming skills are needed and there is no compilation of the code.

Such dialog boxes are entirely stored in the database.

sampledlg6

Here is an example of a complex XAML generated dialog box with embedded lists (Categories) and controls to add and delete items, autocomplete for Keywords field, drop-down lists and more.

Again, to create it, you don't need to do any programming, but you need to know the names of the article object attributes (as specified in the GN4 schema).

Such dialog is defined by simply adding not very complicated lines of code to a configuration file that later has to be loaded in the database.

No programming skills are needed and there is no compilation of the code.

Such dialog boxes are entirely stored in the database.

See also (but later)

TASK: Learn how to locate where is defined the specific dialog box