Try OpenEdge Now
skip to main content
Online Help
Introducing the Progress Developer Studio for OpenEdge Visual Designer : Reference : OpenEdge GUI for .NET wizards : New ABL Inherited Control wizard
 
New ABL Inherited Control wizard
The New ABL Inherited Control wizard lets you create a custom control class derived from an existing control. This wizard appears when you select File > New > ABL Inherited Control.
The following controls are available:
Package root
Specifies a currently open project to contain the class code and other project code. Click Browse if you want to select a project other than the current one (the default value).
Package
Optionally specifies a package name, corresponding to a sub-folder of the package root, to contain the class file. Click Browse or enter the folder path by typing. A period (.) must separate each subfolder from its parent folder in the path name.
Inherited Control name
(Required) Specifies the name of the class. The name must begin with a letter; spaces and most non-alphanumeric characters are not allowed. The .cls extension will be appended automatically.
Final
If checked, specifies that inheritance from this class is disallowed. A FINAL option is included in the generated ABL code. A final class cannot be abstract.
Abstract
If checked, specifies that the class is abstract and cannot be instantiated. An abstract class is designed to serve as a super class from which other classes inherit and implement members. Therefore, an abstract class cannot be final.
Widget pool
If checked, specifies that a USE-WIDGET-POOL option will be included in the generated ABL code.
Inherits
Optionally specifies another class in the current project as a super class from which the new class inherits state and behavior. Click Browse or enter the class path by typing. A period (.) must separate each node from its parent folder in the path name.
Note: The super class cannot be generic. Moreover, even though a control can inherit from an abstract super class, the Visual Designer does not support designing such a control. To design a control that inherits from an abstract parent, you must write the code manually.
Implements
Lets you optionally specify one or more interfaces in the current project that the class implements. Click Add and select the desired interfaces at the Interface Selection dialog. Use the Remove button to remove an interface from the list after adding it.
Note: The class cannot implement a generic interface.
.
Generate default constructor
Specifies that the class is to include a default constructor method. Because this option is required for OpenEdge GUI for .NET forms, it is automatically checked, and the control is disabled.
Generate destructor
Specifies that the class is to include a destructor method. Because this option is required for OpenEdge GUI for .NET forms, it is automatically checked, and the control is disabled.
Generate super class constructors
If checked, specifies that the class is to include all constructor methods declared in the parent class.
Add routine-level error handling
If checked, specifies that the ROUTINE-LEVEL ON ERROR UNDO, THROW statement will be included in the generated ABL code.
Throw a Not Implemented exception
If selected, specifies that "METHOD NOT IMPLEMENTED" error code will be added to stubs for members implemented via interface and stubs for inherited abstract members.
Return a default value
If selected, specifies that default return values will be added to stubs for members implemented via interface and stubs for inherited abstract members.
Description
Lets you optionally enter a description for the class. This text will appear in the file header.
Purpose
Lets you optionally enter an explanation of the purpose of the class. This text will appear in the file header.