This section describes the Natural object of type resource.
Non-Natural file types, such as HTML files, XML style sheets, etc., supported by Natural for Linux and Cloud are located in the different libraries in the RES directory. Natural delivers some with the product, but you can also save your own resources for your applications in RES.
This document covers the following topics:
Natural distinguishes two kinds of resources:
Shared Resources
A shared
resource is any non-Natural file that is used in a Natural
application and is maintained in the Natural library system.
Private Resources
A private
resource is a file that is assigned to one and only one Natural
object and is considered to be part of that object. An object can have at most
one private resource file. At the moment, only Natural dialogs have private resources.
Both shared and private resources belonging to a Natural library are maintained in a subdirectory named ..\RES in the directory that represents the Natural library in the file system.
A shared resource is any non-Natural file that is used in a Natural application and is maintained in the Natural library system. A non-Natural file that is to be used as a shared resource must be contained in the subdirectory named ..\RES of a Natural library.
The bitmap MYPICTURE.BMP is to be displayed
in a bitmap control in a dialog MYDLG
, contained in a library
MYLIB
. First the bitmap is put into the Natural library
MYLIB
by moving it into the directory
..\MYLIB\RES. The following code snippet from the dialog
MYDLG
shows how it is then assigned to the bitmap control:
DEFINE DATA LOCAL 01 #BM-1 HANDLE OF BITMAP ... END-DEFINE * (Creation of the Bitmap control omitted.) ... #BM-1.BITMAP-FILE-NAME := "MYPICTURE.BMP" ...
The advantages of using the bitmap as a shared resource are:
The file name can be specified in the Natural dialog without a path name.
The file can be kept in a Natural library together with the Natural object that uses it.
Note:
In previous Natural versions non-Natural files were usually
kept in a directory that was defined with the environment variable
NATGUI_BMP
. Existing applications that use this
approach will work in the same way as before, because Natural always searches
for a shared resource file in this directory, if it was not found in the
current library.
Private resources are used internally by Natural to store binary
data that is part of Natural objects. These files are recognized by the file
name extension NR*
, where *
is a character that
depends on the type of the Natural object. Natural maintains private resource
files and their contents automatically. A Natural object can have a maximum of
one private resource file.
Currently, only Natural dialogs have a private resource file. This file is used to store the configuration of ActiveX controls that are defined in a dialog and are configured with their own property pages.
The name of the private resource file of the dialog
MYDLG
is MYDLG.NR3.
Natural creates, modifies and deletes this file automatically as needed, when the dialog is created, modified, deleted, etc.
The private resource file is used to store binary data related to
the dialog MYDLG
.
In the library
SYSEXT
, the following application
programming interface (API) exists, which gives user applications access to
resources' unique user exit routines:
API | Purpose |
---|---|
USR4208N |
Write, read or delete a resource by using short or long name. |