IconEdit Graph Custom Pane (Panel Edit)


The Graph control is usually used to edit patch envelopes. Each envelope supports up to 10 editable points where each point can be grabbed and dragged with the mouse.

This control is unique in the it simultaneous edits more than one parameter. As a result, the Common Pane contains 20 sets of common parameters to support the 10 different two-directional points. In order for the control to function properly, each of the points that are active must have their common parameters correctly entered.


An envelope editing control can have up to 10 points, a typical ADSR envelope has 4. This window contain the global parameters necessary to control the envelope. Each point of the envelope also has two sets of gadget parameters, one to control up/down motion of the point and the other to control the left/right motion of the point. There is also an option to add a secondary envelope which is used only to display the current state of envelope which is useful when the actual envelopes are off the main portion or the editing window.

Typically, editing of an envelope will follow these steps:

1.Enter the number of points in the envelope
2.Edit all of the controls for each point in the envelope
3.Save the Template to disk
4.Use "Freedom" to activate each of the envelope points
5.Test the control

The following parameters are used for envelope control:


Envelope Parameters

The following parameters control how the the envelope operates.


Number of Points

specifies the number of active points in the envelope. The graph supports a maximum of 10 editable points.

If you edit this parameter, click on the All or Common tabs and return to correction configure the display



For each point, you can specify the directions of freedom. There are 4 options:

-:indicates that the point is locked in both horizontal and vertical directions

L/R: indicates that the point can be moved horizontally

U/D: indicates that the point can be moved vertically

Both: indicates that the point can be moved both horizontally and vertically

There will be as many point freedom parameters as there as current specified points of freedom.

Entry of a value other than 0 will activate the use of that envelope point. Hence, THE EDITING PARAMETERS OF EACH POINT MUST BE SET UP BEFORE THE POINT IS ACTIVATED. Disastrous results can occur otherwise.


Some envelope points only provide a degree of freedom on one axis. For example, most envelopes have an 'Attack' which starts at zero and a 'Release' where the envelope MUST end at a zero value. At other pointer, the envelope may have to reach a maximum value (by hardware design). As a result, these points are limited to only one direction of movement with the other direction being fixed. Usually the level is fixed.

To accommodate this situation, envelope points which have a limited degree of freedom use the 'Max' value parameter in the Gadget Control Window to determine the position at which the point is to be placed. The position is based on a percentage as follows:

Max = 0 - the level of the point is placed at the gadget top

Max = 100 - the level of the point is the gadget bottom

Max = 50 - the level of the point is at the gadget center

All other parameters are ignored when the direction of a particular point is limited (not editable).



Normally, for instrument envelopes 0 represents a minimum vertical position (no volume) and the shortest time period. In rare cases, these can be reversed so that the maximum value represents the minimum time or level. When this is the case, enable the relative option so that the envelope correctly reflects the values meaning.

For each point, you can specify relative values.There are 4 options:

-:indicates that the point uses normal editing in both horizontal and vertical directions

L/R: indicates that a higher value represents a shorter time period

U/D: indicates that the higher value represents a lower output level

Both: indicates that the value must be inverted in both horizontal and vertical directions

There will be as many point freedom parameters as there as current specified points of freedom.


Center Fill

Fills are performed from the center out


Background Parameter

These parameters control how the envelope is displayed.


Grab Style

For points which are editable, this parameter specifies the type of graphic used for rendering. .



Select the background display used by the control. The options are:

Skin - use the background defined in the Skin currently used by this editor. The skin can specify a bitmap, solid color, see transparent background

Bitmap - the control uses the bitmap specified by the Background Bitmap parameter below as its background

Solid Color - the control uses a solid color for its background as specified by the A Pen

Background - the control uses a transparent background. The control's value is drawn on top of the background



When a bitmap is used for the background of the control, this parameter determines how the bitmap is displayed. The options are:

Skin - use the display style specified in the Skin currently used by the editor. The skin can specify a Stretched or Tiled style

Stretch Bitmap - stretch the bitmap to fill the control

Tile Bitmap - replicate the bitmap enough times to fill the control


Background Bitmap

When the Bitmap is selected for the Background option above, this parameter should specify a path to the bitmap file to display as the background.


Make Transparent

When checked the background bitmap is specified to have a transparency color which allows elements of the background to pass through it


Transparent Color

Transparent Color uses a standard Color Select Dialog to select and specify the color that is considered to be transparent in the background bitmap


Line Thickness

specifies the thickness of the line drawn defining the envelope when the envelope is not created using a bitmap.



When checked, the corners of the control are rounded.


Control Links

The final section of the Graph is called Control Links. This section will save you a lot of time creating envelopes. If you create a knob, numeric, of virtually any other control type to represent a single value of the envelope, enter the ID of that control in the appropriate Control Links position. Once you have made all of the assignments, press the "Copy Controls" button. This will copy all of the necessary parameters out of the individual control into the Graph. Also the appropriate link assignments are made so that editing any of the controls automatically updates the visual display of the related controls.



Envelope Differences

Basically, an envelope is built from 20 individual controls, ten for the horizontal components and ten for the vertical components. In order to access and program each of these points, the common Pane is replicated 20 times with appropriate titles for each. For each free point, the appropriate parameters must be properly configured.

One additional difference with an envelope is that the Gadget Update in the Settings editor does not work for the U/D point component. All gadget updating must be done using the L/R component. Any updating of numeric equivalents for an envelope must be performed using the L/R component. If you check any of the Sound Quest's templates as examples, you will see this to be the case.


Available in:

Midi Quest Pro


Midi Quest


Midi Quest Essentials


Midi Quest one