Skip to main content

Controls

All controls from Team Developer are replicated in the PPJ Framework with the same name but with the "Sal" prefix.

In the table below you can find the list of all the supported equivalent controls:

Control TypeClass name in the PPJ FrameworkBase .NET control
Data FieldSalDataFieldTextBox
Multiline FieldSalMultilineFieldTextBox
Combo BoxSalComboBoxComboBox
List BoxSalListBoxListBox
Check BoxSalCheckBoxCheckBox
Radio ButtonSalRadioButtonRadioButton
Option ButtonSalOptionButtonCheckBox
PushbuttonSalPushbuttonButton
Child TableSalTableWindowUserControl
ColumnSalTableColumnControl
PictureSalPicturePictureBox
Horizontal Scroll BarSalHorizontalScrollBarHScrollBar
Vertical Scroll BarSalVerticalScrollBarVScrollBar
Custom ControlSalCustomControlControl
ActiveX ControlSalActiveXAxHost
LineSalLineControl
FrameSalFrameControl
Group BoxSalGroupBoxGroupBox
Background TextSalBackgroundTextLabel
Form Window

SalFormWindow

SalRibbonBarForm

Form
MDI Window

SalMDIWindow

SalRibbonBarMDI

Form
Table WindowSalFormTableWindowForm
Dialog BoxSalDialogBoxForm

All the controls in the PPJ Framework are directly derived from the equivalent control in .NET: WinForms for desktop solutions, and Wisej for web solutions.

All PPJ controls implement one or more special interfaces used by the PPJ Framework to recognize PPJ controls and correctly redirect specialized functionality.

The table below lists all the control's interfaces:

InterfaceDescription
ISalWindowAll PPJ controls implement this interface.
ISalControlOnly controls that can hold a value implement this interface. Like SalRadioButton, SalDataField, SalVerticalScrollBar. Controls that cannot hold a value, like SalGroupBox or SalLine, do not implement this interface. These controls can also be bound in a SQL statement as bind variables.
ISalEditControlEditable controls implement this interface.
ISalListControlAll list controls implement this interface. This is used to normalize also controls like VisOutlineListBox that should respond to SalList* functions as if they were list boxes.
ISalPictureControlControls that can show an image implement this interface.
ISalRadioButtonControls that behave as a radio button implement this interface. Typically these are SalRadioButton, SalCheckBox and SalOptionButton.
ISalAccessoryAccessories controls like SalFormToolBar, SalFormStatusBar and SalFormClientArea implement this interface.

All the controls implementing ISalWindow expose a new event MessageActions. This is where all events that are compatible to the original Team Developer messages are dispatched to as events.