System API Types and Constants

Old Content - visit altium.com/documentation

Parent page: Technical Reference - System API

System API: Types and Constants

Contents of this reference:

Client Enumerated Types Client Constants

TCommandProc procedure type
TDocumentsBarGrouping type
TGetStateProc procedure type
THighlightMethod type
THighlightMethodSet type
TSnippetCreationMode type
TServerModuleFactory function type

General constants
DocumentNotification codes
View Notification codes
Module Notification codes
System Notification codes
Message notification codes
Client Functions

 

Client Enumerated Types

The enumerated types are used for many of the client/server interfaces and methods which are covered in this section.

TCommandProc procedure type

Syntax
TCommandProc  = Procedure(Const AContext : IServerDocumentView; AParameters : PChar);

TDocumentsBarGrouping type

TDocumentsBarGrouping = (dbgNone, dbgByDocKind, dbgByProject);

TGetStateProc procedure type

Syntax
TGetStateProc = Procedure(Const AContext : IServerDocumentView; AParameters : PChar; Var Enabled, Checked, Visible : LongBool; Caption, ImageFile : PChar);

THighlightMethod type

Syntax
THighlightMethod = (eHighlight_Filter,eHighlight_Zoom,eHighlight_Select,eHighlight_Graph,eHighlight_Dim,eHighlight_Thicken, eHighlight_ZoomCursor);

THighlightMethodSet type

Syntax
THighlightMethodSet = Set Of THighlightMethod;

TSnippetCreationMode type

TSnippetCreationMode = (eSnippetCreationBySelection, eSnippetCreationByUnionIndex);

TServerModuleFactory function type

Syntax
TServerModuleFactory = Function (Const AClient : IClient) : IServerModule;

 

Client Constants

General constants

    cDXPHomePage = 'DXP://Home';
    cDXPProcess  = 'DXPProcess';
    cDXPDocument = 'DXPDoc';
    cViewNameParam = 'ViewName';
    cContextHelpDelimiter = '.';
 
{$IFDEF ALTIUMINTERNAL}
   cWebUpdate_DefaultURL            = 'http://intranet.altium.com.au/rd/AltiumDesigner6/Updates/';
{$ELSE}
   cWebUpdate_DefaultURL            = 'http://www.altium.com/webupdate/';
{$ENDIF}
   cWebUpdate_DefaultNetworkPath    = '';
   cWebUpdate_DefaultUseNetworkPath = False;
   cWebUpdate_DefaultCheckFrequency = wucfEveryDay;
 
    cWebUpdate_CheckFrequencyNames : Array[TWebUpdate_CheckFrequency] Of AnsiString =
    (
        'Never',
        'On Altium Designer startup',
        'Every day',
        'Every 3 days',
        'Every week',
        'Every 2 weeks',
        'Every month');

DocumentNotification codes

cDocumentLoading            = 0;
cDocumentOpening            = 1;
cDocumentClosing            = 2;
cDocumentActivating         = 3;
cDocumentNameChanging       = 4;
cDocumentCompiled           = 6;
cDocumentCompiling          = 7;
cDocumentBeforeClose        = 8;
cDocumentProjectChanged     = 9;
cDocumentSaved              = 10;
cDocumentModifiedChanged    = 11;
cDocumentHidden             = 12;
cDocumentProjectActivating  = 15;
cDocumentScrapCompiling     = 16;
cDocumentScrapCompiled      = 17;
cProjectClosing             = 18;
 
cDocumentWorkspaceLoad_Begin = 101;
cDocumentWorkspaceLoad_End   = 102;
cDocumentWorkspaceSave_Begin = 103;
cDocumentWorkspaceSave_End   = 104;
 
cDocumentRouterStarted       = 200;
cDocumentRouterStopped       = 201;
 
cDocumentOwnershipChanged    = 300;

View Notification codes

cDocumentDataInserted            = 0;
cDocumentDataDeleted             = 1;
cDocumentDataModified            = 2;
cDocumentDataRefresh             = 3;
cApplicationStartupComplete      = 6;
cApplicationShutdownStarted      = 7;
cLicenseDetailsChanged           = 8;
cObjectNavigated                 = 150;
cGroupNavigated                  = 155;
cNavigationHistory               = 160;
cRefreshNavigationPanels         = 170;
cObjectCrossprobed               = 180;
cGroupCrossprobed                = 185;
cBeginRefreshNavigationPanels    = 190;

Module Notification codes

cModuleLoaded    = 0;

System Notification codes

cLibrariesUpdated                = 0;
cSystemPreferencesChanged        = 1;
cTextEditPreferencesChanged      = 2;
cPCBPreferencesChanged           = 3;
cSchPreferencesChanged           = 4;
cSchPreferencesChangedWithUpdate = 5;
cCamtasticPreferencesChanged     = 6;
cPCB3DPreferencesChanged         = 7;
cVersionControlPreferencesChanged= 8;
cSchPreferencesChanged_UpdateStringsFont = 10;
cCustomDynamicHelpUpdated                = 11;

Message notification codes

cMessagesAdd              = 0;
cMessagesReplaceLast      = 1;
cMessagesFullUpdate       = 2;
cMessagesClearAll         = 3;

Client Functions

Function Client : IClient;
Function Server : IServerModule;
 
Procedure SetClient (Const AClient : IClient);
Procedure SetServer (Const AServer : IServerModule);
 
Function CreateNewDocumentFromDocumentKind    (Const DocumentKind : AnsiString) : IServerDocument;
 
Function CreateNewFreeDocumentFromDocumentKind(Const DocumentKind : AnsiString) : IServerDocument;
 
Function GetSceneManager : ISceneManager;

You are reporting an issue with the following selected text and/or image within the active document:
ALTIUM DESIGNER FREE TRIAL
Altium Designer Free Trial
Let’s get started. First off, are you or your organization already using Altium Designer?

If would like to speak with a representative, please contact your local Altium office.
Copyright © 2019 Altium Limited

In that case, why do you need an evaluation license?

If would like to speak with a representative, please contact your local Altium office.
Copyright © 2019 Altium Limited

Got it. You actually don’t need an evaluation license for that.

Click the button below to download the latest Altium Designer installer.

Download Altium Designer Installer

If would like to speak with a representative, please contact your local Altium office.
Copyright © 2019 Altium Limited

Please fill out the form below to get a quote for a new seat of Altium Designer.

By clicking “Get Your Free Trial”, you are agreeing to our Privacy Policy.
You may receive communications from Altium and can change your notification preferences at any time.

If you are on Altium Subscription, you don’t need an evaluation license.

If you are not an active Altium Subscription member, please fill out the form below to get your free trial.

By clicking “Get Your Free Trial”, you are agreeing to our Privacy Policy.
You may receive communications from Altium and can change your notification preferences at any time.

Why are you looking to evaluate Altium Designer?

If would like to speak with a representative, please contact your local Altium office.
Copyright © 2019 Altium Limited

You came to the right place! Please fill out the form below to get your free trial started.

By clicking “Get Your Free Trial”, you are agreeing to our Privacy Policy.
You may receive communications from Altium and can change your notification preferences at any time.

Sounds exciting! Did you know we offer special discounted student licenses? For more information, click here.

In the meantime, feel free to request a free trial by filling out the form below.

By clicking “Get Your Free Trial”, you are agreeing to our Privacy Policy.
You may receive communications from Altium and can change your notification preferences at any time.

Got it. You can download a free Altium Designer Viewer license which is valid for a 6 months.

Please fill out the form below to request one.

By clicking “Get Your Free Trial”, you are agreeing to our Privacy Policy.
You may receive communications from Altium and can change your notification preferences at any time.

That’s great! Making things is awesome. We have the perfect program for you.

Upverter is a free community-driven platform designed specifically to meet the needs of makers like you.

Click here to give it a try!

If would like to speak with a representative, please contact your local Altium office.
Copyright © 2019 Altium Limited

Got it. You can download a free Altium Designer Viewer license which is valid for a 6 months.

Please fill out the form below to request one.

By clicking “Get Your Free Trial”, you are agreeing to our Privacy Policy.
You may receive communications from Altium and can change your notification preferences at any time.