Projects
Genero Studio uses projects to manage the source files, resources, environment variables, and rules for building and executing programs.
The Projects view displays the project file as a tree, as seen in Figure 1. The Projects view is a logical representation of the files in your project; it does not reflect the structure of the files on disk.
At the top of the project tree is the project node. The project node name is the same as the project filename, to include the .4pw extension.
Within a project, you organize its components by using group nodes, application nodes, library nodes, package nodes, and so on. Table 1 lists the type of nodes that may appear in a project.
Take care not to use special characters in node names, file names, and paths; the use of special characters can make the project non-portable. Create a naming convention that takes into account your environments. For example, some environments are case-sensitive and the case must be an exact match.
Node | Description |
---|---|
Group |
As the name suggests, a group node allows you organize other nodes by grouping nodes together. One advanges of using group nodes is property inheritence. Some properties defined by the group node are inherited by its child nodes, to include the properties Target directory and Language. It is common to set these properties at the group level. |
Application | An application node is designed to hold application source files. The
Language property set for the application node defines the build rules used
to generate the executable files.
For more information about language selection and its impact on build rules, see Languages. An application node whose name displays in boldface will contain the default Configuration node for the project. See also Organizing projects. |
Configuration |
A configuration node executes an application. Set the BinaryName property to specify which application to execute. Enter any command line arguments to pass to the runtime system and specify whether the application is a web service. A configuration node can run the application in debug mode, run the application and gather runtime statistics using the profiler, or execute with trace turned on.
To quickly create a configuration node, right click a source module name and select BinaryName property is populated with the name of the source module. . A configuration node is added and theThe default configuration node displays in boldface. |
Virtual folder |
A virtual folder organizes the files under an application, library, or other virtual folder node. Virtual folders can contain files or other folders. They exist only in the logical view in Project Manager, not in the physical file structure. |
Library |
A library node is designed to enable reuse by grouping files together. Libraries can be used when creating a set of features having a common goal, such as the logic of an application or a library of mathematical functions. A library can also be used to group other project files together, such as images, styles, or other resources.
See also Organizing projects. |
File | A file node is a link to a file in the file system that has the same name as the node. Renaming a file node renames the file stored on the disk. Project Manager accepts any type of file. Opening a file opens the corresponding Genero Studio module, such as Code Editor. If there is no corresponding Genero Studio module, the operating system opens it. |
Intermediate Files | An intermediate files node contains files that are created based on commands defined in the
build rules for the file type and language. These files are typically intermediary files, needed to
complete the build process. For example, if you are using the Business Application Modeler (BAM) and your model contains a Program entity (with a .4prg extension), by default the BAM generates four intermediate files (three .4gl files and one .xml file) during the build process. These files are then used to build the program module (.42m). These generated files are visible in (and accessible from) an Intermediate Files node. |
Package |
A package node is created for an application and used for deployment to a mobile device or for distribution to users. See Packaging, deploying, and distributing applications. |
The nodes contain properties that can be set in the Properties view. See Properties of nodes in the Projects view.