Schematic API System Interfaces
Parent page: Technical Reference - Schematic API
Schematic API: System Interfaces Reference
The Schematic API System Interface reference includes the following content:
IConnection Interface
Overview
The IConnection
interface represents whether the wire or bus connection has a manual junction on it or not, with location, wire or bus objects count and the thickness of wire or bus objects.
The object count denotes the number of connections from this connection location for example one end of a capacitor can have two or more wire connections because it is tied to the Ground as well as to other points on the schematic.
A connection that has 3 or more wire / bus objects denotes that a junction (system generated or manually placed) is required to tied the connections together. Thus you can use the IConnection
interface to determine the number of wire or bus connections at the specified location.
The project that has schematics need to be compiled first before IConnection
interfaces can be extracted with valid data.
Notes
The ISch_Sheet
interface has the IConnectionsArray interface which in turn has the IConnection interface.
The ISch_Document
can be either ISch_Sheet
or ISch_Lib
interfaces depending on which document (Schematic Sheet or Schematic Library) you are working with.
A manual junction (placed by an user) may signify a forced connection of at least 3 or more connections on a schematic document.
IConnection Methods and Properties Table
IConnection methods GetState_Location GetState_ObjectsCount GetState_IsManualJunction SetState_Location SetState_ObjectsCount SetState_IsManualJunction | IConnection properties Location ObjectsCount IsManualJunction |
See also
IConnectionsArray interface
ISch_Junction interface
ISch_Sheet interface
IConnection GetState and SetState Methods
GetState_Location method
(ISch_Connection interface)
Syntax
Function GetState_Location : TLocation;
Description
The GetState_Location
method retrieves the X,Y location of the wire or bus connection on the schematic document. This method is used by the Location
property.
See also
ISch_Connection interface
Location Property and Example
TLocation type
GetState_ObjectsCount method
(ISch_Connection interface)
Syntax
Function GetState_ObjectsCount
Description
The GetState_ObjectsCount method reports the number of wire or bus connections at a location on the schematic sheet.
See also
ISch_Connection interface
ObjectsCount Property and Example
GetState_Location method
(ISch_Connection interface)
Syntax
Function GetState_IsManualJunction : Boolean;
Description
The GetState_IsManualJunction
function determines whether the connection has a manual junction or not.
See also
ISch_Connection interface
Location property and example
SetState_Location method
(ISch_Connection interface)
Syntax
Procedure SetState_Location (AValue : TLocation);
Description
The procedure adds a location to the IConnection
object.
See also
ISch_Connection interface
SetState_ObjectsCount method
(ISch_Connection interface)
Syntax
Procedure SetState_ObjectsCount (AValue : Integer);
Description
This procedure sets the objects count for the IConnection
object.
See also
ISch_Connection interface
SetState_IsManualJunction method
(ISch_Connection interface)
Syntax
Procedure SetState_IsManualJunction(AValue : Boolean);
Description
This procedure sets the IsManualJunction Boolean setting for the IConnection
object.
See also
ISch_Connection interface
IConnection Properties
ObjectsCount property
(IConnection interface)
Syntax
Property ObjectsCount : Integer Read GetState_ObjectsCount Write SetState_ObjectsCount;
Description
This property retrieves or sets the Objects Count for Bus or Wire connection represented by the IConnection
object.
Example
Var I,J : Integer; WS : IWorkspace; Prj : IProject; Doc : IDocument; CurrentSch : ISch_Sheet; TheWireConnections : IConnectionsArray; WireConnection : IConnection; Connectionslist : TStringList; FileName : String; FilePath : String; ReportDocument : IServerDocument; Begin WS := GetWorkspace; If WS = Nil Then Exit; Prj := WS.DM_FocusedProject; If Prj = Nil Then Exit; Prj.DM_Compile; Doc := WS.DM_FocusedDocument; ConnectionsList := TStringList.Create; If Doc.DM_DocumentKind = 'SCH' Then Begin CurrentSch := SchServer.GetSchDocumentByPath(Doc.DM_FullPath); If CurrentSch <> Nil Then Begin TheWireConnections := CurrentSch.WireConnections; // Collect data for wire connections (IConnectionArray) ConnectionsList.Add('Wire Connections'); For J := 0 To TheWireConnections.ConnectionsCount - 1 Do Begin WireConnection := TheWireConnections.Connection(J); If WireConnection <> Nil Then Begin ConnectionsList.Add('Wire Connection Count: ' + IntToStr (WireConnection.ObjectsCount)); ConnectionsList.Add('Wire Connection Location: ' + LocationtoStr(WireConnection.Location)); // currently 0,0 ConnectionsList.Add('Wire Connection has a manual junction: ' + BooleantoStr (WireConnection.IsManualJunction)); ConnectionsList.Add('Wire Connection size: ' + SizeToStr (WireConnection.Size)); ConnectionsList.Add(''); End; End; End; End; FilePath := ExtractFilePath(Doc.DM_FullPath); FileName := FilePath + '\ConnectionsReport.Txt';; ConnectionsList.SaveToFile(FileName); ConnectionsList.Free; ReportDocument := Client.OpenDocument('Text', FileName); If ReportDocument <> Nil Then Client.ShowDocument(ReportDocument); End;
See also
IConnection interface
Location property
(IConnection interface)
Syntax
Property Location : TLocation Read GetState_Location Write SetState_Location;
Description
This property retrieves or sets the Location of Bus or Wire connection represented by the IConnection
object.
Example
WS := GetWorkspace; If WS = Nil Then Exit; Prj := WS.DM_FocusedProject; If Prj = Nil Then Exit; Prj.DM_Compile; Doc := WS.DM_FocusedDocument; If Doc.DM_DocumentKind = 'SCH' Then Begin CurrentSch := SchServer.GetSchDocumentByPath(Doc.DM_FullPath); If CurrentSch <> Nil Then Begin TheWireConnections := CurrentSch.WireConnections; For J := 0 To TheWireConnections.ConnectionsCount - 1 Do Begin WireConnection := TheWireConnections.Connection(J); If WireConnection <> Nil Then Begin X := WireConnection.Location.X; Y := WireConnection.Location.Y; End; End; End;
See also
IConnection interface
IsManualJunction property
(IConnection interface)
Syntax
Property IsManualJunction : Boolean Read GetState_IsManualJunction Write SetState_IsManualJunction;
Description
This property retrieves or sets the IsManualJunction setting of Bus or Wire connection represented by the IConnection
object.
Example
WS := GetWorkspace; If WS = Nil Then Exit; Prj := WS.DM_FocusedProject; If Prj = Nil Then Exit; Prj.DM_Compile; Doc := WS.DM_FocusedDocument; If Doc.DM_DocumentKind = 'SCH' Then Begin CurrentSch := SchServer.GetSchDocumentByPath(Doc.DM_FullPath); If CurrentSch <> Nil Then Begin TheWireConnections := CurrentSch.WireConnections; For J := 0 To TheWireConnections.ConnectionsCount - 1 Do Begin WireConnection := TheWireConnections.Connection(J); If WireConnection <> Nil Then Begin ManualJunctionAtConnection := WireConnection.Location.IsManualJunction; //rest of code End; End; End;
See also
IConnection interface
IConnectionsArray Interface
Overview
The IConnectionsArray
represents the bus and wire connections in a schematic document. Bus and wire connections that have more than 3 connections could be connected by an automatic junction or a manual junction (placed by an user).
A schematic with valid buses and wires will have connections. An IConnectionsArray
interface has all the connections for this schematic sheet and each element in the IConnectionsArray
interface is a IConnection
interface type.
IConnectionsArray Methods and Properties Table
IConnectionsArray methods AddConnection AddConnectionXY GetConnectionAt GetState_Connection GetState_ConnectionsCount GraphicallyInvalidate RemoveAllConnectionsAt RemoveAllConnectionsForLine ResetAllConnections | IConnectionsArray properties ConnectionsCount Connection |
See also
IConnection interface
ISch_Sheet interface
IConnectionsArray Methods
AddConnectionXY method
(IConnectionsArray interface)
Syntax
Procedure AddConnectionXY(X, Y : TCoord);
Description
This procedure adds a connection with X,Y parameters into the IConnectionsArray
object.
See also
IConnectionsArray interface
AddConnection method
AddConnection method
(IConnectionsArray interface)
Syntax
Procedure AddConnection (ALocation : TLocation);
Description
This procedure adds a connection with a location parameter into the IConnectionsArray
object.
See also
IConnectionsArray interface
AddConnectionXY method
GetConnectionAt method
(IConnectionsArray interface)
Syntax
Function GetConnectionAt(ALocation : TLocation) : IConnection;
Description
This function retrieves the connection of IConnection type based on the Location parameter.
Example
Connection := Connections.GetConnectionAt(ALocation); If Connection <> Nil Then ShowMessage(IntToStr(Connection.ObjectsCount));
See also
IConnectionsArray interface
GetState_Connection method
(IConnectionsArray interface)
Syntax
Function GetState_Connection(Index : Integer) : IConnection;
Description
This function retrieves the indexed connection of IConnection type from the IConnectionsArray interface.
Example
For J := 0 To TheBusConnections.GetState_ConnectionsCount - 1 Do Begin BusConnection := TheBusConnections.GetState_Connection(J); //IConnection If BusConnection <> Nil Then Begin // statements here End; End;
See also
IConnectionsArray interface
Connection property
GetState_ConnectionsCount method
(IConnectionsArray interface)
Syntax
Function GetState_ConnectionsCount : Integer;
Description
This function returns the number of connections for wires or buses on the schematic sheet. For each
Example
For J := 0 To TheBusConnections.GetState_ConnectionsCount - 1 Do Begin BusConnection := TheBusConnections.GetState_Connection(J); //IConnection If BusConnection <> Nil Then Begin // statements here End; End;
See also
IConnectionsArray interface
ConnectionsCount property
GraphicallyInvalidate method
(IConnectionsArray interface)
Syntax
Procedure GraphicallyInvalidate;
Description
This procedure puts the group of design objects (bus or wire objects in an connection array) in an invalid state. A redraw is required to update the schematic sheet.
Example
TheWireConnections.GraphicallyInvalidate; // puts the wires part of the connection group in an invalid state that requires a graphical redraw
See also
IConnectionsArray interface
RemoveAllConnectionsAt method
(IConnectionsArray interface)
Syntax
Function RemoveAllConnectionsAt(ALocation : TLocation) : Boolean;
Description
This function removes all connections at this specified location on the schematic document.
Example
If BusConnection.ObjectsCount > 1 Then TheBusConnections.RemoveAllConnectionsAt(BusConnection.Location); // BusConnection = IConnection type, TheBusConnections = IConnectionsArray type
See also
IConnectionsArray interface
RemoveAllConnectionsForLine method
(IConnectionsArray interface)
Syntax
Function RemoveAllConnectionsForLine(L1, L2 : TLocation) : Boolean;
Description
This function removes all connections for the specified line with L1 and L2 parameters. If the call was successful, a true value is returned. The Connections can either represent bus or wire connections.
See also
IConnectionsArray interface
ResetAllConnections method
(IConnectionsArray interface)
Syntax
Procedure ResetAllConnections;
Description
This procedure resets all connections (frees all items) in the IConnectionsArray
interface for either wire or bus connections.
Example
TheBusConnections.ResetAllConnections; //TheBusConnections = IConnectionsArray type
See also
IConnectionsArray interface
IConnectionsArray Properties
Connection property
(IConnectionsArray interface)
Syntax
Property Connection[i : Integer] : IConnection Read GetState_Connection;
Description
Example
For J := 0 To TheBusConnections.GetState_ConnectionsCount - 1 Do Begin BusConnection := TheBusConnections.GetState_Connection(J); //IConnection If BusConnection <> Nil Then Begin // statements here End; End;
See also
IConnectionsArray interface
ConnectionsCount property
(IConnectionsArray interface)
Syntax
Property ConnectionsCount : Integer Read GetState_ConnectionsCount;
Description
Example
For J := 0 To TheBusConnections.GetState_ConnectionsCount - 1 Do Begin BusConnection := TheBusConnections.GetState_Connection(J); //IConnection If BusConnection <> Nil Then Begin // statements here End; End;
See also
IConnectionsArray interface
ISch_Document Interface
Overview
This interface is the immediate ancestor interface for ISch_Sheet and ISch_Lib interfaces.
Notes
- You can modify or set the document's preference settings.
- You can iterate design objects in a Schematic or library document, see ISch_Iterator interface for details.
- You can invoke the
ChooseLocationInteractively
orChooseRectangleInteractively
methods to obtain coordinates from the Schematic sheet or library sheet. - You can create a library from a project that has components
- You can check whether objects exist on a particular point on a schematic or library document.
The ISch_Document
interface hierarchy is as follows;
ISch_BasicContainer
ISch_GraphicalObject
ISch_ParameterizedGroup
ISch_Document
ISch_Document Methods and Properties Table
ISch_Document methods BoundingRectangle_Selected ChooseLocationInteractively ChooseRectangleInteractively CountContextMenuObjects CreateHitTest CreateLibraryFromProject Graphical_VirtualRectangle LockViewUpdate ObjectReferenceZone PlaceSchComponent PopupMenuHitTest RedrawToDC RegisterSchObjectInContainer UnLockViewUpdate UnregisterAndFreeAllConnectionLines UnRegisterSchObjectFromContainer UpdateDocumentProperties GetState_BorderOn GetState_CustomMarginWidth GetState_CustomSheetStyle GetState_CustomX GetState_CustomXZones GetState_CustomY GetState_CustomYZones GetState_DocumentBorderStyle GetState_DocumentName GetState_HotSpotGridOn GetState_HotSpotGridSize GetState_InternalTolerance GetState_LoadFormat GetState_ReferenceZonesOn GetState_SheetMarginWidth GetState_SheetSizeX GetState_SheetSizeY GetState_SheetStyle GetState_SheetZonesX GetState_SheetZonesY GetState_ShowTemplateGraphics GetState_SnapGridOn GetState_SnapGridSize GetState_SystemFont GetState_TemplateFileName GetState_TitleBlockOn GetState_Unit GetState_UnitSystem GetState_UseCustomSheet GetState_VisibleGridOn GetState_VisibleGridSize GetState_WorkspaceOrientation SetState_BorderOn SetState_CustomMarginWidth SetState_CustomSheetStyle SetState_CustomX SetState_CustomXZones SetState_CustomY SetState_CustomYZones SetState_DocumentBorderStyle SetState_HotSpotGridOn SetState_HotSpotGridSize SetState_LoadFormat SetState_ReferenceZonesOn SetState_SheetMarginWidth SetState_SheetSizeX SetState_SheetSizeY SetState_SheetStyle SetState_SheetZonesX SetState_SheetZonesY SetState_ShowTemplateGraphics SetState_SnapGridOn SetState_SnapGridSize SetState_SystemFont SetState_TemplateFileName SetState_TitleBlockOn SetState_Unit SetState_UseCustomSheet SetState_VisibleGridOn SetState_VisibleGridSize SetState_WorkspaceOrientation | ISch_Document properties BorderOn CustomMarginWidth CustomSheetStyle CustomX CustomXZones CustomY CustomYZones DisplayUnit DocumentBorderStyle DocumentName HotSpotGridOn HotSpotGridSize InternalTolerance LoadFormat ReferenceZonesOn SheetMarginWidth SheetSizeX SheetSizeY SheetStyle SheetZonesX SheetZonesY ShowTemplateGraphics SnapGridOn SnapGridSize SystemFont TemplateFileName TitleBlockOn UnitSystem UseCustomSheet VisibleGridOn VisibleGridSize WorkspaceOrientation |
See also
ISch_Sheet interface
ISch_Lib interface
ISch_Document Methods
BoundingRectangle_Selected method
(ISch_Document interface)
Syntax
Function BoundingRectangle_Selected : TCoordRect;
Description
The function returns the coordinates of the selected bounding rectangle on the current schematic document.
Example
Rect := Sheet.BoundingRectangle_Selected; MinX := Floor(CoordToMils(Rect.x1)); MinY := Floor(CoordToMils(Rect.y1)); MaxX := Ceil (CoordToMils(Rect.x2)); MaxY := Ceil (CoordToMils(Rect.y2));
See also
ISch_Document interface
TCoordRect type
ChooseLocationInteractively method
(ISch_Document interface)
Syntax
Function ChooseLocationInteractively(Var ALocation : TLocation; Prompt : TDynamicString) : Boolean;
Description
To monitor the mouse movement and clicks from your script, the ISch_Document
document interface and its descendant interfaces, ISch_Lib
and ISch_Sheet
interfaces has several interactive feedback methods. The ChooseLocationInteractively
when invoked prompts the user to set the location (point) on the schematic sheet.
The ChooseLocationinteractively
method can be used to fetch the coordinates of the clicked point on the schematic sheet and can be used for the ISch_HitTest
interface.
Example
If SchServer = Nil Then Exit; CurrentSheet := SchServer.GetCurrentSchDocument; If CurrentSheet = Nil Then Exit; ALocation := TLocation; // //Using the ChooseLocationInteractively method to capture the // location’s coordinates clicked on the sheet by the user. If Not CurrentSheet.ChooseLocationInteractively(ALocation, 'Please select the location') Then Exit;
See also
ISch_Document interface
ISch_HitTest interface
ChooseRectangleInteractively method
(ISch_Document interface)
Syntax
Function ChooseRectangleInteractively(Var ARect : TCoordRect;Prompt1 : TDynamicString;Prompt2 : TDynamicString) : Boolean;
Description
To monitor the mouse movement and clicks from your script, the ISch_Document
document interface and its descendant interfaces, ISch_Lib
and ISch_Sheet
interfaces has several interactive feedback methods. The ChooseRectangleinteractively
when invoked prompts the user to set the two corners of the bounding rectangle on the schematic sheet.
The ChooseRectangleinteractively
method can be used to fetch the coordinates of the bounding rectangle (of TCoordRect
type) for the Spatial iterator where it needs the bounds of a rectangle on the schematic document to search within.
DelphiScript Example
Var CurrentSheet : ISch_Document; SpatialIterator : ISch_Iterator; GraphicalObj : ISch_GraphicalObject; Rect : TCoordRect; Begin If SchServer = Nil Then Exit; CurrentSheet := SchServer.GetCurrentSchDocument; If CurrentSheet = Nil Then Exit; Rect := TCoordRect; If Not CurrentSheet.ChooseRectangleInteractively(Rect, 'Please select the first corner', 'Please select the final corner') Then Exit; SpatialIterator := CurrentSheet.SchIterator_Create; If SpatialIterator = Nil Then Exit; Try SpatialIterator.AddFilter_ObjectSet(MkSet(eJunction,eSchComponent)); SpatialIterator.AddFilter_Area(Rect.left, Rect.bottom, Rect.right, Rect.top); GraphicalObj := SpatialIterator.FirstSchObject; While GraphicalObj <> Nil Do Begin // do what you want with the design object GraphicalObj := SpatialIterator.NextSchObject; End; Finally CurrentSheet.SchIterator_Destroy(SpatialIterator); End; End;
See also
ISch_Document interface
TCoordRect type
CountContextMenuObjects method
(ISch_Document interface)
Syntax
Function CountContextMenuObjects (AObjectSet : TObjectSet) : Integer;
Description
The function counts the contextual objects based on the AObjectSet
parameter of TObjectSet
type.
Example
SchDoc := SchServer.GetCurrentSchDocument; Visible := (SchDoc <> Nil) And (SchDoc.CountContextMenuObjects([eSchComponent]) > 0);
DelphiScript Example
SchDoc := SchServer.GetCurrentSchDocument; ShowMessage(IntToStr(SchDoc.CountContextMenuObjects(MkSet(eSchComponent)) > 0); // DelphiScript cannot handle sets like Borland Delphi does so we need to use MkSet function.
See also
ISch_Document interface
TObjectSet
CreateHitTest method
(ISch_Document interface)
Syntax
Function CreateHitTest (ATestMode : THitTestMode;ALocation : TLocation) : ISch_HitTest;
Description
The CreateHitTest
function creates an hit test object which is represented by the ISch_HitTest
interface with the ATestMode
and ALocation
parameters.
With this ISch_HitTest
interface, the number of objects and the object type at a particular point on the schematic document can be returned.
Example
Doc := SchServer.GetCurrentSchDocument; If Doc = Nil Then Exit; Doc.ChooseLocationInteractively(ALocation,'Choose a location to click'); AHitTestMode := eHitTest_AllObjects; AHitTest := Doc.CreateHitTest(AHitTestMode,ALocation); For I := 0 to AHitTest.HitTestCount - 1 Do Begin APrim := AHitTest.HitObject[I]; ShowMessage(ObjectIdToString(APrim.ObjectId) + #13 + 'Location coordinates - ' + #13 + ' X= ' + IntToStr(ALocation.X) + #13 + ' Y= ' + IntToSTr(ALocation.Y)); End;
See also
ISch_Document interface
ISch_HitTest interface
THitTestMode type
ChooseLocationInteractively method
CreateLibraryFromProject method
(ISch_Document interface)
Syntax
Procedure CreateLibraryFromProject (AddLibToProject : Boolean;FileName : WideString; RunQuiet : Boolean);
Description
This procedure creates a schematic library based on the components on a schematic project. If AddLibToProject
parameter is set to true, then the created library is put in the same project where the components are in. The RunQuiet
parameter set to true avoids the Information dialog from coming up.
Example
CurrentSheet := SchServer.GetCurrentSchDocument; If (CurrentSheet = Nil) or (CurrentSheet.ObjectID = eSchLib) Then Begin ShowError('Please run the script on a schematic document.'); Exit; End; CurrentSheet.CreateLibraryFromProject(True,'NewLibrary.SchLib',False);
See also
ISch_Document interface
Graphical_VirtualRectangle method
(ISch_Document interface)
Syntax
Function Graphical_VirtualRectangle : TCoordRect;
Description
The function returns the coordinates of TCoordRect type of the virtual rectangle of the graphical window in Altium Designer.
Example
Rect := Sheet.Graphical_VirtualRectangle; MinX := Floor(CoordToMils(PrintRect.x1)); MinY := Floor(CoordToMils(PrintRect.y1)); MaxX := Ceil (CoordToMils(PrintRect.x2)); MaxY := Ceil (CoordToMils(PrintRect.y2));
See also
ISch_Document interface
TCoordRect type
LockViewUpdate method
(ISch_Document interface)
Syntax
Procedure LockViewUpdate;
Description
This procedure prevents the views of Schematic documents and panels from being refreshed or updated. This is especially used in the situations when a component is being created in the Schematic Library Editor. See the UnLockViewUpdate
procedure.
Example in Delphi Code
If SchServer = Nil Then Exit; If Not Supports (SchServer.GetCurrentSchDocument, ISch_Lib, CurrentLib) Then Exit; CurrentLib.LockViewUpdate; CurrentComponent := CurrentLib.CurrentSchComponent; SimPortMap := ''; SimModel := CreateSimObject(SimPortMap, ModelName, ModelDescription, FileLocation, CurrentLib); CurrentLib.CurrentSchComponent.AddSchObject(SimModel); CurrentLib.UnLockViewUpdate;
See also
ISch_Document interface
UnLockViewUpdate method
ObjectReferenceZone method
(ISch_Document interface)
Syntax
Function ObjectReferenceZone(AObject : ISch_BasicContainer): WideString;
Description
The function returns the reference zone string for the design object on the schematic sheet. For example, if a sheet entry object is in the vicinity of Reference Zone C (vertically) and 2 (horizontally) for a Standard Style A document then the function will return a 2C for this sheet entry.
Example
SchPort.CrossReference := ChangeFileExt(ExtractFileName(ServerDocument.FileName),'') + '[' + SchDocument.ObjectReferenceZone(SchSheetEntry) + ']' ;
See also
ISch_Document interface
PlaceSchComponent method
(ISch_Document interface)
Syntax
Procedure PlaceSchComponent (ALibraryPath : WideString;ALibRef : WideString;Var SchObject : TSchObjectHandle);
Description
This procedure places a component on a schematic sheet from the schematic library with ALibraryPath
and ALibRef
parameters. The object handle of this component is returned.
Example
Var CurrentSheet : ISch_Document; SchObject : TSchObjectHandle; ALibraryPath : WideString; ALibRef : WideString; Begin CurrentSheet := SchServer.GetCurrentSchDocument; If (CurrentSheet = Nil) or (CurrentSheet.ObjectID = eSchLib) Then Begin ShowError('Please run the script on a schematic document.'); Exit; End; SchObject := 0; ALibraryPath := 'C:\Program Files\Altium Designer\Examples\Reference Designs\4 Port Serial Interface\Libraries\4 Port Serial Interface.SchLib'; ALibRef := 'Crystal'; CurrentSheet.PlaceSchComponent (ALibraryPath, ALibRef, SchObject); ShowMessage(IntToStr(SchObject)); End;
See also
ISch_Document interface
RedrawToDC method
(ISch_Document interface)
Syntax
Procedure RedrawToDC(DC : HDC; PrintKind : Integer; PrintWhat : Integer);
Description
The DC parameter is a Handle of the canvas (a encapsulation of a device context).
PrintKind is an ordinal value of the TPrintKind type, TPrintKind = (ePrintKind_FullColor,ePrintKind_GrayScale,ePrintKind_Monochrome);
PrintWhat is an ordinal value of the TPrintWhat type, TPrintWhat = (ePrintAllDocuments,ePrintActiveDocument,ePrintSelection,ePrintScreenRegion);
Example
SchLibrary.RedrawToDC(DC, Ord(KindToPrint), Ord(PrinterOptions.PrintWhat));
See also
ISch_Document interface
RegisterSchObjectInContainer method
(ISch_Document interface)
Syntax
Procedure RegisterSchObjectInContainer (AObject : ISch_BasicContainer);
Description
The RegisterSchObjectInContainer
procedure registers the object of ISch_BasicContainer
type (including its descendants) in the parent object itself. In this case, the document registers a new design object. For example when you create a new port object, you are required to register the port object in the schematic document.
DelphiScript Example
SchPort := SchServer.SchObjectFactory(ePort,eCreate_GlobalCopy); If SchPort = Nil Then Exit; SchPort.Location := Point(MilsToCoord(1000),MilsToCoord(1000)); SchPort.Style := ePortRight; SchPort.IOType := ePortBidirectional; SchPort.Alignment := eHorizontalCentreAlign; SchPort.Width := MilsToCoord(1000); SchPort.AreaColor := 0; SchPort.TextColor := $FFFFFF; SchPort.Name := 'Test Port'; SchDoc.RegisterSchObjectInContainer(SchPort);
See also
ISch_Document interface
UnLockViewUpdate method
(ISch_Document interface)
Syntax
Procedure UnLockViewUpdate;
Description
This procedure allows the views of Schematic documents and panels from being refreshed or updated after being locked by the LockViewUpdate
method. This is especially used in the situations when a component is being created in the Schematic Library Editor. See the LockViewUpdate
procedure.
Example
If SchServer = Nil Then Exit; If Not Supports (SchServer.GetCurrentSchDocument, ISch_Lib, CurrentLib) Then Exit; CurrentLib.LockViewUpdate; CurrentComponent := CurrentLib.CurrentSchComponent; SimPortMap := ''; SimModel := CreateSimObject(SimPortMap, ModelName, ModelDescription, FileLocation, CurrentLib); CurrentLib.CurrentSchComponent.AddSchObject(SimModel); CurrentLib.UnLockViewUpdate;
See also
ISch_Document interface
LockViewUpdate method
UnRegisterSchObjectFromContainer method
(ISch_Document interface)
Syntax
Procedure UnRegisterSchObjectFromContainer (AObject : ISch_BasicContainer);
Description
When a schematic object is unregistered from the container, it is explicitly freed and cannot be used again.
Example
See also
ISch_Document interface
UnregisterAndFreeAllConnectionLines method
(ISch_Document interface)
Syntax
Procedure UnregisterAndFreeAllConnectionLines;
Description
When this procedure is invoked, the connection lines are unregistered and freed from the database associated with the schematic document.
Example
SchDoc.UnregisterAndFreeAllConnectionLines;
See also
ISch_Document interface
ISch_ConnectionLine interface
UpdateDocumentProperties method
(ISch_Document interface)
Syntax
Procedure UpdateDocumentProperties;
Description
This method forces an update of the document properties after the properties have been modified programmatically.
Example
Document.UpdateDocumentProperties;
See also
ISch_Document interface
ISch_Document GetState and SetState Methods
GetState_BorderOn method
(ISch_Document interface)
Syntax
Function GetState_BorderOn : Boolean;
Description
This BorderOn property determines whether the border on around the outside of the current schematic document will be displayed or not.
The method returns a boolean value whether the Border is displayed or not and is used in the BorderOn property.
Example
See also
ISch_Document interface
GetState_CustomMarginWidth method
(ISch_Document interface)
Syntax
Function GetState_CustomMarginWidth : TCoord;
Description
The CustomMarginWidth property sets the margin from the bounds of the schematic sheet inwards. This method sets the CustomMarginWidth property.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
TCoord type
GetState_CustomSheetStyle method
(ISch_Document interface)
Syntax
Function GetState_CustomSheetStyle : WideString;
Description
This property represents custom sheet style property which values can be inherited from one of the standard sheet styles and customized further. This function sets the custom sheet style.
Example
See also
ISch_Document interface
GetState_CustomX method
(ISch_Document interface)
Syntax
Function GetState_CustomX : TCoord;
Description
The CustomX property determines the width of the custom sheet for the document. This method gets the CustomX value and is used in the CustomX property.
Example
See also
ISch_Document interface
TCoord type
GetState_CustomXZones method
(ISch_Document interface)
Syntax
Function GetState_CustomXZones : TCoord;
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
This method gets the CustomXZones property.
Example
See also
ISch_Document interface
TCoord type
GetState_CustomY method
(ISch_Document interface)
Syntax
Function GetState_CustomY : TCoord;
Description
The CustomY property determines the height of the custom sheet for the document. This method gets the CustomY value and is used in the CustomY property.
Example
See also
ISch_Document interface
TCoord type
GetState_CustomYZones method
(ISch_Document interface)
Syntax
Function GetState_CustomYZones : TCoord;
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
This method sets the CustomYZones property.
Example
See also
ISch_Document interface
TCoord type
GetState_DocumentBorderStyle method
(ISch_Document interface)
Syntax
Function GetState_DocumentBorderStyle : TSheetDocumentBorderStyle;
Description
The DocumentBorderStyle property determines the current document/border style for the schematic sheet - ANSI or Standard block.
The function gets the current document border style and is used in the DocumentBorderStyle property.
Example
See also
ISch_Document interface
TSheetDocumentBorder style
GetState_DocumentName method
(ISch_Document interface)
Syntax
Function GetState_DocumentName : WideString ;
Description
The read only DocumentName property determines the schematic document name. This method is used in the DocumentName property.
Example
See also
ISch_Document interface
GetState_HotSpotGridOn method
(ISch_Document interface)
Syntax
Function GetState_HotSpotGridOn : Boolean;
Description
The electrical grid supports the Schematic Editor's guided wiring feature. When you are moving an electrical object in the workspace, and when it falls within the electrical grid range of another electrical object that you could connect to, the object you are moving will snap to the fixed object and a hot spot or highlight dot will appear. This dot guides you as to where a valid connection can be made. The electrical grid (hot spot) should be set slightly lower than the current snap grid or else it becomes difficult to position electrical objects one snap grid apart.
The procedure gets the boolean value whether the hot spot grid is on or not and is used in the HotSpotGridOn property.
Example
See also
ISch_Document interface
GetState_HotSpotGridSize method
(ISch_Document interface)
Syntax
Function GetState_HotSpotGridSize : TCoord;
Description
The electrical grid supports the Schematic Editor's guided wiring feature. When you are moving an electrical object in the workspace, and when it falls within the electrical grid range of another electrical object that you could connect to, the object you are moving will snap to the fixed object and a hot spot or highlight dot will appear. This dot guides you as to where a valid connection can be made. The electrical grid (hot spot) should be set slightly lower than the current snap grid or else it becomes difficult to position electrical objects one snap grid apart.
The procedure gets the hot spot grid size and is used in the HotSpotGridSize property.
Example
See also
ISch_Document interface
GetState_InternalTolerance method
(ISch_Document interface)
Syntax
Function GetState_InternalTolerance : TCoord;
Description
Example
See also
ISch_Document interface
GetState_LoadFormat method
(ISch_Document interface)
Syntax
Function GetState_LoadFormat : WideString;
Description
Example
See also
ISch_Document interface
GetState_ReferenceZonesOn method
(ISch_Document interface)
Syntax
Function GetState_ReferenceZonesOn : Boolean;
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
The procedure gets the value whether the reference zones can be displayed or not and is used in the ReferenceZonesOn property.
Example
Procedure TurnOffReferenceZones; Var I : Integer; Project : IProject; Doc : IDocument; CurrentSch : ISch_Document; Begin Project := GetWorkspace.DM_FocusedProject; If Project = Nil Then Exit; For I := 0 to Project.DM_LogicalDocumentCount - 1 Do Begin Doc := Project.DM_LogicalDocuments(I); If Doc.DM_DocumentKind = 'SCH' Then Begin CurrentSch := SchServer.GetSchDocumentByPath(Doc.DM_FullPath); If (CurrentSch <> Nil) And CurrentSch.GetState_ReferenceZonesOn Then Begin SchServer.RobotManager.SendMessage(CurrentSch.I_ObjectAddress, c_BroadCast, SCHM_BeginModify, c_NoEventData); CurrentSch.SetState_ReferenceZonesOn(False); SchServer.RobotManager.SendMessage(CurrentSch.I_ObjectAddress, c_BroadCast, SCHM_EndModify , c_NoEventData); End; End; End; End;
See also
ISch_Document interface
GetState_SheetMarginWidth method
(ISch_Document interface)
Syntax
Function GetState_SheetMarginWidth : TCoord;
Description
The SheetMarginWidth property determines the margin from the bounds of the schematic sheet inwards.
The SheetMarginWidth function gets the width of the sheet margin and is used in the SheetMarginWidth property.
Notes
The UseCustomSheet property must be set to False before you can massage the attributes for the schematic sheet.
Example
See also
ISch_Document interface
GetState_SheetSizeX method
(ISch_Document interface)
Syntax
Function GetState_SheetSizeX : TCoord;
Description
Example
See also
ISch_Document interface
GetState_SheetSizeY method
(ISch_Document interface)
Syntax
Function GetState_SheetSizeY : TCoord;
Description
Example
See also
ISch_Document interface
GetState_SheetStyle method
(ISch_Document interface)
Syntax
Function GetState_SheetStyle : TSheetStyle;
Description
The SheetStyle property determines the document standard style. One of the document sheet styles are A4, Letter and imperial/metric sized sheets.
The procedure obtains the sheet style and is used in the SheetStyle property.
Example
See also
ISch_Document interface
TSheetStyle type
GetState_SheetZonesX method
(ISch_Document interface)
Syntax
Function GetState_SheetZonesX : Integer;
Description
Example
See also
ISch_Document interface
GetState_SheetZonesY method
(ISch_Document interface)
Syntax
Function GetState_SheetZonesY : Integer;
Description
Example
See also
ISch_Document interface
GetState_ShowTemplateGraphics method
(ISch_Document interface)
Syntax
Function GetState_ShowTemplateGraphics : Boolean;
Description
The template is usually placed on the bottom right of the schematic sheet. The template files have a DOT extension and are located in the \Templates\
folder of Altium Designer software installation.
The procedure determines whether the template graphics can be displayed or not and is used in the ShowTemplateGraphics property.
Example
See also
ISch_Document interface
GetState_SnapGridOn method
(ISch_Document interface)
Syntax
Function GetState_SnapGridOn : Boolean;
Description
The snap grid is the grid that the cursor is locked to when placing or manipulating objects on the sheet. This grid should be left on at all times except when specifically placing or moving objects that need to be off grid such as text objects. The visible grid is the grid you see on the grid which acts as a visual grid and typically it is set to be the same as or a multiple of the snap grid.
The procedure gets a boolean value whether the SnapGrid is active or not and is used in the SnapGridOn property.
Example
See also
ISch_Document interface
GetState_SnapGridSize method
(ISch_Document interface)
Syntax
Function GetState_SnapGridSize : TCoord;
Description
The snap grid is the grid that the cursor is locked to when placing or manipulating objects on the sheet. This grid should be left on at all times except when specifically placing or moving objects that need to be off grid such as text objects. The visible grid is the grid you see on the grid which acts as a visual grid and typically it is set to be the same as or a multiple of the snap grid.
The procedure gets the size value of the snap grid and is used in the SnapGridSize property.
Example
See also
ISch_Document interface
GetState_SystemFont method
(ISch_Document interface)
Syntax
Function GetState_SystemFont : TCoord;
Description
Example
See also
ISch_Document interface
GetState_TemplateFileName method
(ISch_Document interface)
Syntax
Function GetState_TemplateFileName : WideString;
Description
Example
See also
ISch_Document interface
GetState_TitleBlockOn method
(ISch_Document interface)
Syntax
Function GetState_TitleBlockOn : Boolean;
Description
Example
See also
ISch_Document interface
GetState_Unit method
(ISch_Document interface)
Syntax
Function GetState_Unit : TUnit;
Description
This property determines the system unit used for the schematic project. The available imperial units are Mils, inches, DXP default and Auto imperial as well as available metric units which are mm,cm, metres and auto-metric.
Example
See also
ISch_Document interface
TUnit type
GetState_UnitSystem method
(ISch_Document interface)
Syntax
Function GetState_UnitSystem : TUnitSystem;
Description
Example
See also
ISch_Document interface
GetState_UseCustomSheet method
(ISch_Document interface)
Syntax
Function GetState_UseCustomSheet : Boolean;
Description
The property determines whether a custom sheet is used instead of a standard sheet. If the UseCustomSheet is true, then the CustomMarginWidth, CustomSheetStyle, CustomX and CustomY properties can be set for this custom sheet property.
This procedure gets the value whether the custom sheet is used instead of a standard sheet and is used in the UseCustomSheet property.
Example
See also
ISch_Document interface
GetState_VisibleGridOn method
(ISch_Document interface)
Syntax
Function GetState_VisibleGridOn : Boolean;
Description
The electrical grid supports the Schematic Editor's guided wiring feature. When you are moving an electrical object in the workspace, and when it falls within the electrical grid range of another electrical object that you could connect to, the object you are moving will snap to the fixed object and a hot spot or highlight dot will appear. This dot guides you as to where a valid connection can be made. The electrical grid (hot spot) should be set slightly lower than the current snap grid or else it becomes difficult to position electrical objects one snap grid apart.
Example
See also
ISch_Document interface
GetState_VisibleGridSize method
(ISch_Document interface)
Syntax
Function GetState_VisibleGridSize : TCoord;
Description
Example
See also
ISch_Document interface
GetState_WorkspaceOrientation method
(ISch_Document interface)
Syntax
Function GetState_WorkspaceOrientation : TSheetOrientation;
Description
Example
See also
ISch_Document interface
SetState_BorderOn method
(ISch_Document interface)
Syntax
Procedure SetState_BorderOn (AValue : Boolean);
Description
This BorderOn property determines whether the border on around the outside of the current schematic document will be displayed or not.
The method sets a boolean value whether the Border is displayed or not and is used in the BorderOn property.
Example
See also
ISch_Document interface
SetState_CustomMarginWidth method
(ISch_Document interface)
Syntax
Procedure SetState_CustomMarginWidth (AValue : TCoord);
Description
The CustomMarginWidth property sets the margin from the bounds of the schematic sheet inwards. This method sets the CustomMarginWidth property.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
SetState_CustomSheetStyle method
(ISch_Document interface)
Syntax
Procedure SetState_CustomSheetStyle (AValue : WideString);
Description
This property represents custom sheet style property which values can be inherited from one of the standard sheet styles and customized further. This method defines the custom sheet style and then can be customized further.
Example
See also
ISch_Document interface
SetState_CustomX method
(ISch_Document interface)
Syntax
Procedure SetState_CustomX (AValue : TCoord);
Description
The CustomX property sets the width of the custom sheet for the document. This method sets the CustomX value and is used in the CustomX property.
Example
See also
ISch_Document interface
SetState_CustomXZones method
(ISch_Document interface)
Syntax
Procedure SetState_CustomXZones (AValue : TCoord);
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
This method sets the CustomXZones property.
Example
See also
ISch_Document interface
SetState_CustomY method
(ISch_Document interface)
Syntax
Procedure SetState_CustomY (AValue : TCoord);
Description
The CustomY property sets the width of the custom sheet for the document. This method sets the CustomY value and is used in the CustomY property.
Example
See also
ISch_Document interface
SetState_CustomYZones method
(ISch_Document interface)
Syntax
Procedure SetState_CustomYZones (AValue : TCoord);
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
This method sets the CustomYZones property.
Example
See also
ISch_Document interface
SetState_DocumentBorderStyle method
(ISch_Document interface)
Syntax
Procedure SetState_DocumentBorderStyle (AValue : TSheetDocumentBorderStyle);
Description
The DocumentBorderStyle property determines the current document/border style for the schematic sheet - ANSI or standard blocks.
The function sets the current document border style and is used in the DocumentBorderStyle property.
Example
See also
ISch_Document interface
SetState_HotSpotGridOn method
(ISch_Document interface)
Syntax
Procedure SetState_HotSpotGridOn (AValue : Boolean);
Description
The electrical grid supports the Schematic Editor's guided wiring feature. When you are moving an electrical object in the workspace, and when it falls within the electrical grid range of another electrical object that you could connect to, the object you are moving will snap to the fixed object and a hot spot or highlight dot will appear. This dot guides you as to where a valid connection can be made. The electrical grid (hot spot) should be set slightly lower than the current snap grid or else it becomes difficult to position electrical objects one snap grid apart.
Example
See also
ISch_Document interface
SetState_HotSpotGridSize method
(ISch_Document interface)
Syntax
Procedure SetState_HotSpotGridSize (AValue : TCoord);
Description
The electrical grid supports the Schematic Editor's guided wiring feature. When you are moving an electrical object in the workspace, and when it falls within the electrical grid range of another electrical object that you could connect to, the object you are moving will snap to the fixed object and a hot spot or highlight dot will appear. This dot guides you as to where a valid connection can be made. The electrical grid (hot spot) should be set slightly lower than the current snap grid or else it becomes difficult to position electrical objects one snap grid apart.
The procedure sets the hot spot grid size and is used in the HotSpotGridSize property.
Example
See also
ISch_Document interface
HotSpotGridOn method
TCoord type
SetState_LoadFormat method
(ISch_Document interface)
Syntax
Procedure SetState_LoadFormat (AValue : WideString);
Description
Example
See also
ISch_Document interface
SetState_ReferenceZonesOn method
(ISch_Document interface)
Syntax
Procedure SetState_ReferenceZonesOn (AValue : Boolean);
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
The procedure sets whether the reference zones can be displayed or not and is used in the ReferenceZonesOn property.
Example
Procedure TurnOffReferenceZones; Var I : Integer; Project : IProject; Doc : IDocument; CurrentSch : ISch_Document; Begin Project := GetWorkspace.DM_FocusedProject; If Project = Nil Then Exit; For I := 0 to Project.DM_LogicalDocumentCount - 1 Do Begin Doc := Project.DM_LogicalDocuments(I); If Doc.DM_DocumentKind = 'SCH' Then Begin CurrentSch := SchServer.GetSchDocumentByPath(Doc.DM_FullPath); If (CurrentSch <> Nil) And CurrentSch.GetState_ReferenceZonesOn Then Begin SchServer.RobotManager.SendMessage(CurrentSch.I_ObjectAddress, c_BroadCast, SCHM_BeginModify, c_NoEventData); CurrentSch.SetState_ReferenceZonesOn(False); SchServer.RobotManager.SendMessage(CurrentSch.I_ObjectAddress, c_BroadCast, SCHM_EndModify , c_NoEventData); End; End; End; End;
See also
ISch_Document interface
SetState_SheetMarginWidth method
(ISch_Document interface)
Syntax
Procedure SetState_SheetMarginWidth (AValue : TCoord);
Description
The SheetMarginWidth property determines the margin from the bounds of the schematic sheet inwards.
The SheetMarginWidth procedure sets the width of the sheet margin and is used in the SheetMarginWidth property.
Notes
The UseCustomSheet property must be set to False before you can massage the attributes for the schematic sheet.
Example
See also
ISch_Document interface
SetState_SheetSizeX method
(ISch_Document interface)
Syntax
Procedure SetState_SheetSizeX (AValue : TCoord);
Description
Example
See also
ISch_Document interface
SetState_SheetSizeY method
(ISch_Document interface)
Syntax
Procedure SetState_SheetSizeY (AValue : TCoord);
Description
Example
See also
ISch_Document interface
SetState_SheetStyle method
(ISch_Document interface)
Syntax
Procedure SetState_SheetStyle (AValue : TSheetStyle);
Description
The SheetStyle property determines the document standard style. One of the document sheet styles are A4, Letter and imperial/metric sized sheets.
The procedure defines the sheet style and is used in the SheetStyle property.
Example
See also
ISch_Document interface
SetState_SheetZonesX method
(ISch_Document interface)
Syntax
Procedure SetState_SheetZonesX (AValue : Integer);
Description
Example
See also
ISch_Document interface
SetState_SheetZonesY method
(ISch_Document interface)
Syntax
Procedure SetState_SheetZonesY (AValue : Integer);
Description
Example
See also
ISch_Document interface
SetState_ShowTemplateGraphics method
(ISch_Document interface)
Syntax
Procedure SetState_ShowTemplateGraphics(AValue : Boolean);
Description
The template is usually placed on the bottom right of the schematic sheet. The template files have a DOT extension and are located in the in the \Templates\
folder of the Altium Designer software installation.
The procedure sets whether the template graphics can be displayed or not and is used in the ShowTemplateGraphics property.
Example
See also
ISch_Document interface
SetState_SnapGridOn method
(ISch_Document interface)
Syntax
Procedure SetState_SnapGridOn (AValue : Boolean);
Description
The snap grid is the grid that the cursor is locked to when placing or manipulating objects on the sheet. This grid should be left on at all times except when specifically placing or moving objects that need to be off grid such as text objects. The visible grid is the grid you see on the grid which acts as a visual grid and typically it is set to be the same as or a multiple of the snap grid.
The procedure sets a boolean value whether the SnapGrid is active or not and is used in the SnapGridOn property.
Example
See also
ISch_Document interface
SetState_SnapGridSize method
(ISch_Document interface)
Syntax
Procedure SetState_SnapGridSize (AValue : TCoord);
Description
The snap grid is the grid that the cursor is locked to when placing or manipulating objects on the sheet. This grid should be left on at all times except when specifically placing or moving objects that need to be off grid such as text objects. The visible grid is the grid you see on the grid which acts as a visual grid and typically it is set to be the same as or a multiple of the snap grid.
The procedure sets the size value of the snap grid and is used in the SnapGridSize property.
Example
See also
ISch_Document interface
SetState_SystemFont method
(ISch_Document interface)
Syntax
Procedure SetState_SystemFont (AValue : TFontId);
Description
Example
See also
ISch_Document interface
SetState_TemplateFileName method
(ISch_Document interface)
Syntax
Procedure SetState_TemplateFileName (AValue : WideString);
Description
The template filename is the filename of the template that is placed usually on the bottom right of the schematic sheet. The template files have a DOT
extension and are located in the \Templates\
folder of the Altium Designer installation.
The procedure sets the template filename and is used in the TemplateFilename
property.
Example
See also
ISch_Document interface
SetState_TitleBlockOn method
(ISch_Document interface)
Syntax
Procedure SetState_TitleBlockOn (AValue : Boolean);
Description
Example
See also
ISch_Document interface
SetState_Unit method
(ISch_Document interface)
Syntax
Procedure SetState_Unit (AValue : TUnit);
Description
This property determines the system unit used for the schematic project. The available imperial units are Mils, inches, DXP default and Auto imperial as well as available metric units which are mm,cm, metres and auto-metric.
This method sets the Unit system and is used in the DisplayUnit property.
Example
See also
ISch_Document interface
TUnit type
SetState_UseCustomSheet method
(ISch_Document interface)
Syntax
Procedure SetState_UseCustomSheet (AValue : Boolean);
Description
The property determines whether a custom sheet is used instead of a standard sheet. If the UseCustomSheet is true, then the CustomMarginWidth, CustomSheetStyle, CustomX and CustomY properties can be set for this custom sheet property.
This procedure sets whether the custom sheet is used instead of a standard sheet and is used in the UseCustomSheet property.
Example
See also
ISch_Document interface
SetState_VisibleGridOn method
(ISch_Document interface)
Syntax
Procedure SetState_VisibleGridOn (AValue : Boolean);
Description
Example
See also
ISch_Document interface
SetState_VisibleGridSize method
(ISch_Document interface)
Syntax
Procedure SetState_VisibleGridSize (AValue : TCoord);
Description
Example
See also
ISch_Document interface
SetState_WorkspaceOrientation method
(ISch_Document interface)
Syntax
Procedure SetState_WorkspaceOrientation(AValue : TSheetOrientation);
Description
This procedure sets the orientation of the workspace - either as a portrait or as a landscape format.
Example
See also
ISch_Document interface
TSheetOrientation type
ISch_Document Properties
BorderOn property
(ISch_Document interface)
Syntax
Property BorderOn : Boolean Read GetState_BorderOn Write SetState_BorderOn;
Description
This BorderOn property determines whether the border on around the outside of the current schematic document will be displayed or not.
Example
See also
ISch_Document interface
CustomMarginWidth property
(ISch_Document interface)
Syntax
Property CustomMarginWidth : TCoord Read GetState_CustomMarginWidth Write SetState_CustomMarginWidth;
Description
The CustomMarginWidth property sets the margin from the bounds of the schematic sheet inwards. This property is supported by the GetState_CustomMarginWidth and SetState_CustomMarginWidth methods.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
UseCustomSheet property
CustomSheetStyle property
(ISch_Document interface)
Syntax
Property CustomSheetStyle : WideString Read GetState_CustomSheetStyle Write SetState_CustomSheetStyle;
Description
This property represents custom sheet style property which values can be inherited from one of the standard sheet styles and customized further.
This property is supported by the GetState_CustomSheetStyle and SetState_CustomSheetStyle methods.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
CustomX property
(ISch_Document interface)
Syntax
Property CustomX : TCoord Read GetState_CustomX Write SetState_CustomX;
Description
This property sets the width of the custom sheet for the document. This property is supported by the GetState_CustomX and SetState_CustomX methods.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
CustomXZones property
(ISch_Document interface)
Syntax
Property CustomXZones : TCoord Read GetState_CustomXZones Write SetState_CustomXZones;
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
This property is supported by the GetState_CustomXZones and SetState_CustomXZones methods.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
CustomY property
(ISch_Document interface)
Syntax
Property CustomY : TCoord Read GetState_CustomY Write SetState_CustomY;
Description
This property sets the height of the custom sheet for the document. This property is supported by the GetState_CustomY and SetState_CustomY methods.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
CustomYZones property
(ISch_Document interface)
Syntax
Property CustomYZones : TCoord Read GetState_CustomYZones Write SetState_CustomYZones;
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
This property is supported by the GetState_CustomYZones and SetState_CustomYZones methods.
Notes
The UseCustomSheet property must be set to true before you can massage the attributes for the custom style of the schematic sheet.
Example
See also
ISch_Document interface
DocumentBorderStyle property
(ISch_Document interface)
Syntax
Property DocumentBorderStyle : TSheetDocumentBorderStyle Read GetState_DocumentBorderStyle Write SetState_DocumentBorderStyle;
Description
The DocumentBorderStyle property determines the current document/border style for the schematic sheet - whether it is a standard or an ANSI title block.
This property is supported by the GetState_DocumentBorderStyle and SetState_DocumentBorderStyle methods.
Example
See also
ISch_Document interface
TSheetDocumentBorderStyle type
DisplayUnit property
(ISch_Document interface)
Syntax
Property DisplayUnit : TUnit Read GetState_Unit Write SetState_Unit;
Description
This property determines the system unit used for the schematic project. The available imperial units are Mils, inches, DXP default and Auto imperial as well as available metric units which are mm,cm,metres and autometric.
This DisplayUnit property is supported by the GetState_Unit and SetState_Unit methods.
Example
See also
ISch_Document interface
TUnit type
DocumentName property
(ISch_Document interface)
Syntax
Property DocumentName : WideString Read GetState_DocumentName;
Description
This read only property determines the schematic document name. This property is supported by the GetState_DocumentName;
Example
See also
ISch_Document interface
HotSpotGridOn property
(ISch_Document interface)
Syntax
Property HotSpotGridOn : Boolean Read GetState_HotSpotGridOn Write SetState_HotSpotGridOn;
Description
The property determines whether the hot spot grid is displayed or not. The electrical grid supports the Schematic Editor's guided wiring feature. When you are moving an electrical object in the workspace, and when it falls within the electrical grid range of another electrical object that you could connect to, the object you are moving will snap to the fixed object and a hot spot or highlight dot will appear. This dot guides you as to where a valid connection can be made. The electrical grid (hot spot) should be set slightly lower than the current snap grid or else it becomes difficult to position electrical objects one snap grid apart.
This property is supported by the GetState_HotSpotGridOn and SetState_HotSpotGridOn methods.
Example
See also
ISch_Document interface
HotSpotGridSize property
(ISch_Document interface)
Syntax
Property HotSpotGridSize : TCoord Read GetState_HotSpotGridSize Write SetState_HotSpotGridSize;
Description
The electrical grid supports the Schematic Editor's guided wiring feature. When you are moving an electrical object in the workspace, and when it falls within the electrical grid range of another electrical object that you could connect to, the object you are moving will snap to the fixed object and a hot spot or highlight dot will appear. This dot guides you as to where a valid connection can be made. The electrical grid (hot spot) should be set slightly lower than the current snap grid or else it becomes difficult to position electrical objects one snap grid apart.
The HotSpotGridSize property determines the size of the hot spot (electrical grid) in TCoord units.
Example
See also
ISch_Document interface
HotSpotGridOn
SnapGridOn
SnapGridSize
TCoord type
InternalTolerance property
(ISch_Document interface)
Syntax
Property InternalTolerance : TCoord Read GetState_InternalTolerance;
Description
Example
See also
ISch_Document interface
LoadFormat property
(ISch_Document interface)
Syntax
Property LoadFormat : WideString Read GetState_LoadFormat Write SetState_LoadFormat;
Description
Example
See also
ISch_Document interface
PopupMenuHitTest method
(ISch_Document interface)
Syntax
Function PopupMenuHitTest : ISch_HitTest;
Description
Example
See also
ISch_Document interface
ISch_HitTest interface
ReferenceZonesOn property
(ISch_Document interface)
Syntax
Property ReferenceZonesOn : Boolean Read GetState_ReferenceZonesOn Write SetState_ReferenceZonesOn;
Description
This property determines the number of regions or reference zones that are displayed along the horizontal and vertical borders. The reference zones form a reference grid along the border of your schematic. This reference grid is only for display purposes and does not affect the Snap, Visible or Electrical Grids that are used when placing schematic objects.
This property determines whether the reference zones can be displayed or not and is supported by the GetState_ReferenceZonesOn and SetState_ReferenceZonesOn methods.
Example
Procedure TurnOffReferenceZones; Var I : Integer; Project : IProject; Doc : IDocument; CurrentSch : ISch_Document; Begin Project := GetWorkspace.DM_FocusedProject; If Project = Nil Then Exit; For I := 0 to Project.DM_LogicalDocumentCount - 1 Do Begin Doc := Project.DM_LogicalDocuments(I); If Doc.DM_DocumentKind = 'SCH' Then Begin CurrentSch := SchServer.GetSchDocumentByPath(Doc.DM_FullPath); If (CurrentSch <> Nil) And CurrentSch.ReferenceZonesOn Then Begin SchServer.RobotManager.SendMessage(CurrentSch.I_ObjectAddress, c_BroadCast, SCHM_BeginModify, c_NoEventData); CurrentSch.ReferenceZonesOn := False; SchServer.RobotManager.SendMessage(CurrentSch.I_ObjectAddress, c_BroadCast, SCHM_EndModify , c_NoEventData); End; End; End; End;
See also
ISch_Document interface
SheetMarginWidth property
(ISch_Document interface)
Syntax
Property SheetMarginWidth : TCoord Read GetState_SheetMarginWidth Write SetState_SheetMarginWidth;
Description
The SheetMarginWidth property sets the margin from the bounds of the schematic sheet inwards. This property is supported by the GetState_MarginWidth and SetState_MarginWidth methods.
Notes
The UseCustomSheet property must be set to False before you can massage the attributes for the schematic sheet.
Example
See also
ISch_Document interface
SheetStyle property
(ISch_Document interface)
Syntax
Property SheetStyle : TSheetStyle Read GetState_SheetStyle Write SetState_SheetStyle;
Description
The SheetStyle property determines the document standard style. One of the document sheet styles are A4, Letter and imperial/metric sized sheets.
This property is supported by the GetState_SheetStyle and SetState_SheetStyle methods.
Example
See also
ISch_Document interface
TSheetStyle type
SheetSizeX property
(ISch_Document interface)
Syntax
Property SheetSizeX : TCoord Read GetState_SheetSizeX Write SetState_SheetSizeX;
Description
The SheetSizeX property defines the width of the sheet. This property is supported by the GetState_SheetSizeX and GetState_SheetSizeX methods.
Example
See also
ISch_Document interface
SheetSizeY method
SheetSizeY property
(ISch_Document interface)
Syntax
Property SheetSizeY : TCoord Read GetState_SheetSizeY Write SetState_SheetSizeY;
Description
The SheetSizeY property defines the height of the sheet. This property is supported by the GetState_SheetSizeY and GetState_SheetSizeY methods.
Example
See also
ISch_Document interface
SheetZonesX property
(ISch_Document interface)
Syntax
Property SheetZonesX : Integer Read GetState_SheetZonesX Write SetState_SheetZonesX;
Description
Example
See also
ISch_Document interface
SheetZonesY property
(ISch_Document interface)
Syntax
Property SheetZonesY : Integer Read GetState_SheetZonesY Write SetState_SheetZonesY;
Description
Example
See also
ISch_Document interface
ShowTemplateGraphics property
(ISch_Document interface)
Syntax
Property ShowTemplateGraphics : Boolean Read GetState_ShowTemplateGraphics Write SetState_ShowTemplateGraphics;
Description
The template is usually placed on the bottom right of the schematic sheet. The template files have a DOT
extension and are located in the \Templates\
folder of the Altium Designer software installation.
The property determines whether the template graphics are displayed or not.
Example
See also
ISch_Document interface
SnapGridOn property
(ISch_Document interface)
Syntax
Property SnapGridOn : Boolean Read GetState_SnapGridOn Write SetState_SnapGridOn;
Description
The snap grid is the grid that the cursor is locked to when placing or manipulating objects on the sheet. This grid should be left on at all times except when specifically placing or moving objects that need to be off grid such as text objects. The visible grid is the grid you see on the grid which acts as a visual grid and typically it is set to be the same as or a multiple of the snap grid.
This property is supported by the GetState_SnapGridOn and SetState_SnapGridOn methods.
Example
See also
ISch_Document interface
SnapGridSize property
(ISch_Document interface)
Syntax
Property SnapGridSize : TCoord Read GetState_SnapGridSize Write SetState_SnapGridSize;
Description
The snap grid is the grid that the cursor is locked to when placing or manipulating objects on the sheet. This grid should be left on at all times except when specifically placing or moving objects that need to be off grid such as text objects. The visible grid is the grid you see on the grid which acts as a visual grid and typically it is set to be the same as or a multiple of the snap grid.
The property defines the snap grid size and is supported by the GetState_SnapGridSize and SetState_SnapGridSize methods.
Example
See also
ISch_Document interface
SystemFont property
(ISch_Document interface)
Syntax
Property SystemFont : TFontId Read GetState_SystemFont Write SetState_SystemFont;
Description
Example
See also
ISch_Document interface
TFontID type
TemplateFileName property
(ISch_Document interface)
Syntax
Property TemplateFileName : WideString Read GetState_TemplateFileName Write SetState_TemplateFileName;
Description
The template filename is the filename of the template that is placed usually on the bottom right of the schematic sheet. The template files have a DOT extension and are located in the \Templates\
folder of Altium Designer software installation.
This TemplateFileName property is supported by the GetState_TemplateFileName
and SetState_TemplateFileName
methods.
Example
See also
ISch_Document interface
ShowTemplateGraphics method
TitleBlockOn property
(ISch_Document interface)
Syntax
Property TitleBlockOn : Boolean Read GetState_TitleBlockOn Write SetState_TitleBlockOn;
Description
The property determines whether the title block is displayed or not and is supported by the GetState_TitleBlockOn and SetState_TitleBlockOn methods.
Example
See also
ISch_Document interface
DocumentBorderStyle method
VisibleGridOn property
(ISch_Document interface)
Syntax
Property VisibleGridOn : Boolean Read GetState_VisibleGridOn Write SetState_VisibleGridOn;
Description
Example
See also
ISch_Document interface
UnitSystem property
(ISch_Document interface)
Syntax
Property UnitSystem : TUnitSystem Read GetState_UnitSystem;
Description
Example
See also
ISch_Document interface
UseCustomSheet property
(ISch_Document interface)
Syntax
Property UseCustomSheet : Boolean Read GetState_UseCustomSheet Write SetState_UseCustomSheet;
Description
The property determines whether a custom sheet is used instead of a standard sheet. If the UseCustomSheet is true, then the CustomMarginWidth, CustomSheetStyle, CustomX and CustomY properties can be set for this custom sheet property.
The UseCustomSheet property is supported by the GetState_UseCustomSheet and SetState_UseCustomSheet methods.
Example
See also
ISch_Document interface
CustomX property
CustomY property
CustomSheetStyle property
CustomMarginWidth property
VisibleGridSize property
(ISch_Document interface)
Syntax
Property VisibleGridSize : TCoord Read GetState_VisibleGridSize Write SetState_VisibleGridSize;
Description
Example
See also
ISch_Document interface
WorkspaceOrientation property
(ISch_Document interface)
Syntax
Property WorkspaceOrientation : TSheetOrientation Read GetState_WorkspaceOrientation Write SetState_WorkspaceOrientation;
Description
Example
See also
ISch_Document interface
ISch_Sheet Interface
Overview
The ISch_Sheet interface represents an existing schematic document open in Altium Designer. A schematic document can have bus and wiring connections which are represented by the IConnectionsArray interface.
- You can modify or set the document's preference settings.
- You can iterate design objects in a Schematic or library document, see ISch_Iterator interface for details.
- You can invoke the ChooseLocationInteractively or ChooseRectangleInteractively methods to obtain coordinates from the Schematic sheet or library sheet.
- You can create a library from a project that has components
- You can check whether objects exist on a particular point on a schematic or library document.
Notes
The ISch_Sheet interface hierarchy is as follows;
ISch_BasicContainer
ISch_GraphicalObject
ISch_ParameterizedGroup
ISch_Document
ISch_Sheet
ISch_Sheet methods GetState_WireConnections GetState_BusConnections OptimizeUseOfPolylines GetState_HarnessDefinitionsChanged Reset_HarnessDefinitionsChanged Raise_HarnessDefinitionsChanged | ISch_Sheet properties WireConnections BusConnections HarnessDefinitionsChanged |
See also
ISch_Document interface
ISch_Lib interface
ISch_Sheet Methods
GetState_BusConnections method
(ISch_Sheet interface)
Syntax
Function GetState_BusConnections : IConnectionsArray;
Description
This function fetches the connections of the busses on a schematic document. This method is used in the BusConnections property.
Example
See also
ISch_Sheet interface
GetState_WireConnections method
(ISch_Sheet interface)
Syntax
Function GetState_WireConnections : IConnectionsArray;
Description
This function fetches the connections of the wires on a schematic document. This method is used in the WireConnections property.
Example
See also
ISch_Sheet interface
OptimizeUseOfPolylines method
(ISch_Sheet interface)
Syntax
Procedure OptimizeUseOfPolylines;
Description
This procedure forces the optimal connection of polylines graphically and in the datastructure.
Example
See also
ISch_Sheet interface
GetState_HarnessDefinitionsChanged
(ISch_Sheet interface)
Syntax
Function GetState_HarnessDefinitionsChanged : Boolean;
Description
Example
See also
ISch_Sheet interface
Reset_HarnessDefinitionsChanged
(ISch_Sheet interface)
Syntax
Procedure Reset_HarnessDefinitionsChanged;
Description
Example
See also
ISch_Sheet interface
Raise_HarnessDefinitionsChanged
(ISch_Sheet interface)
Syntax
Procedure Raise_HarnessDefinitionsChanged;
Description
Example
See also
ISch_Sheet interface
ISch_Sheet Properties
BusConnections property
(ISch_Sheet interface)
Syntax
Property BusConnections : IConnectionsArray Read GetState_BusConnections;
Description
This property fetches the connections of busses on the schematic document. This property is supported by the GetState_BusConnections method.
Example
See also
ISch_Sheet interface
WireConnections property
(ISch_Sheet interface)
Syntax
Property WireConnections : IConnectionsArray Read GetState_WireConnections;
Description
This property fetches the connections of wires on the schematic document. This property is supported by the GetState_WireConnections method.
Example
See also
ISch_Sheet interface
HarnessDefinitionsChanged property
(ISch_Sheet interface)
Syntax
Property HarnessDefinitionsChanged : Boolean Read GetState_HarnessDefinitionsChanged;
Description
This property is supported by the GetState_HarnessDefinitionsChanged method.
Example
See also
ISch_Sheet interface
ISch_Lib Interface
Overview
This interface represents an existing library document open in Altium Designer. A library is composed of library pages and each page represents the symbol (schematic library component).
- You can modify or set the document's preference settings.
- You can invoke the ChooseLocationInteractively or ChooseRectangleInteractively methods to obtain coordinates from the Schematic sheet or library sheet.
- You can check whether objects exist on a particular point on a schematic or library document.
- You can iterate design objects in a library document, with the library iterator. This iterator is created by the SchLibIterator_Create function.
- You can invoke the LibIsEmpty method to check if the library is empty (ie no symbols in the library) or not.
Notes
Due to the nature of a library document, all symbols (library components) are displayed on their library pages, so you iterate through the library to fetch symbols.
The ISch_Lib interface hierarchy is as follows;
ISch_BasicContainer
ISch_GraphicalObject
ISch_ParameterizedGroup
ISch_Document
ISch_Lib
ISch_Lib methods AddSchComponent LibIsEmpty RemoveSchComponent Sch_LibraryRuleChecker_Create Sch_LibraryRuleChecker_Destroy SchLibIterator_Create TransferComponentsPrimitivesBackFromEditor TransferComponentsPrimitivesToEditor GetState_Current_SchComponent GetState_CurrentSchComponentDisplayMode GetState_CurrentSchComponentPartId GetState_Description GetState_ShowHiddenPins SetState_Current_SchComponent SetState_CurrentSchComponentAddDisplayMode SetState_CurrentSchComponentAddPart SetState_CurrentSchComponentDisplayMode SetState_CurrentSchComponentPartId SetState_CurrentSchComponentRemoveDisplayMode SetState_CurrentSchComponentRemovePart SetState_Description SetState_ShowHiddenPins | ISch_Lib properties CurrentSchComponent Description ShowHiddenPins |
See also
ISch_Iterator interface
ILibCompInfoReader interface
IComponentINfo interface
ISch_Lib Methods
AddSchComponent method
(ISch_Lib interface)
Syntax
Procedure AddSchComponent (Const AComponent : ISch_Component);
Description
Example
See also
ISch_Lib interface
LibIsEmpty method
(ISch_Lib interface)
Syntax
Function LibIsEmpty : Boolean;
Description
Example
See also
ISch_Lib interface
SchLibIterator_Create method
(ISch_Lib interface)
Syntax
Function SchLibIterator_Create : ISch_Iterator;
Description
Example
See also
ISch_Lib interface
RemoveSchComponent method
(ISch_Lib interface)
Syntax
Procedure RemoveSchComponent(Const AComponent : ISch_Component);
Description
Example
See also
ISch_Lib interface
Sch_LibraryRuleChecker_Create method
(ISch_Lib interface)
Syntax
Function Sch_LibraryRuleChecker_Create : ISch_LibraryRuleChecker;
Description
Example
See also
ISch_Lib interface
Sch_LibraryRuleChecker_Destroy method
(ISch_Lib interface)
Syntax
Procedure Sch_LibraryRuleChecker_Destroy (Var ARuleChecker : ISch_LibraryRuleChecker);
Description
Example
See also
ISch_Lib interface
TransferComponentsPrimitivesToEditor method
(ISch_Lib interface)
Syntax
Procedure TransferComponentsPrimitivesToEditor;
Description
Example
See also
ISch_Lib interface
TransferComponentsPrimitivesBackFromEditor method
(ISch_Lib interface)
Syntax
Procedure TransferComponentsPrimitivesBackFromEditor;
Description
Example
See also
ISch_Lib interface
GetState_Current_SchComponent method
(ISch_Lib interface)
Syntax
Function GetState_Current_SchComponent: ISch_Component;
Description
Example
See also
ISch_Lib interface
GetState_CurrentSchComponentDisplayMode method
(ISch_Lib interface)
Syntax
Function GetState_CurrentSchComponentDisplayMode : TDisplayMode;
Description
Example
See also
ISch_Lib interface
GetState_CurrentSchComponentPartId method
(ISch_Lib interface)
Syntax
Function GetState_CurrentSchComponentPartId : Integer;
Description
Example
See also
ISch_Lib interface
GetState_Description method
(ISch_Lib interface)
Syntax
Function GetState_
Description : WideString;
Description
Example
See also
ISch_Lib interface
GetState_ShowHiddenPins method
(ISch_Lib interface)
Syntax
Function GetState_ShowHiddenPins : Boolean;
Description
Example
See also
ISch_Lib interface
SetState_Current_SchComponent method
(ISch_Lib interface)
Syntax
Procedure SetState_Current_SchComponent(AValue : ISch_Component);
Description
Example
See also
ISch_Lib interface
SetState_CurrentSchComponentAddDisplayMode method
(ISch_Lib interface)
Syntax
Procedure SetState_CurrentSchComponentAddDisplayMode;
Description
Example
See also
ISch_Lib interface
SetState_CurrentSchComponentAddPart method
(ISch_Lib interface)
Syntax
Procedure SetState_CurrentSchComponentAddPart;
Description
Example
See also
ISch_Lib interface
SetState_CurrentSchComponentDisplayMode method
(ISch_Lib interface)
Syntax
Procedure SetState_CurrentSchComponentDisplayMode(ADisplayMode : TDisplayMode);
Description
Example
See also
ISch_Lib interface
SetState_CurrentSchComponentPartId method
(ISch_Lib interface)
Syntax
Procedure SetState_CurrentSchComponentPartId(APartId : Integer);
Description
Example
See also
ISch_Lib interface
SetState_CurrentSchComponentRemoveDisplayMode method
(ISch_Lib interface)
Syntax
Procedure SetState_CurrentSchComponentRemoveDisplayMode;
Description
Example
See also
ISch_Lib interface
SetState_CurrentSchComponentRemovePart method
(ISch_Lib interface)
Syntax
Procedure SetState_CurrentSchComponentRemovePart;
Description
Example
See also
ISch_Lib interface
SetState_Description method
(ISch_Lib interface)
Syntax
Procedure SetState_Description (AValue : WideString);
Description
Example
See also
ISch_Lib interface
SetState_ShowHiddenPins method
(ISch_Lib interface)
Syntax
Procedure SetState_ShowHiddenPins (AValue : Boolean);
Description
Example
See also
ISch_Lib interface
Properties
Description property
(ISch_Lib interface)
Syntax
Property Description : WideString Read GetState_Description Write SetState_Description;
Description
This property gets or sets the description
of the library document. This property is supported by its GetState_Description
and SetState_Description
methods.
Example
See also
ISch_Lib interface
ShowHiddenPins property
(ISch_Lib interface)
Syntax
Property ShowHiddenPins : Boolean Read GetState_ShowHiddenPins Write SetState_ShowHiddenPins;
Description
This property gets or sets the visible property of hidden pins of the component in the library document. This property is supported by its GetState_ShowHiddenPins and SetState_ShowHiddenPins methods.
Example
See also
ISch_Lib interface
CurrentSchComponent property
(ISch_Lib interface)
Syntax
Property CurrentSchComponent : ISch_Component Read GetState_Current_SchComponent Write SetState_Current_SchComponent;
Description
This property gets or sets the component as the current component in the library document. This property is supported by its GetState_CurrentSchComponent and SetState_CurrentSchComponent methods.
Example
See also
ISch_Lib interface
ISch_BasicContainer Interface
Overview
The ISch_BasicContainer interface represents as a parent object or a child object for a schematic object in Altium Designer.
- A sheet symbol object for example is a parent object, and its child objects are sheet entries, thus to fetch the sheet entries, you would create an iterator for the sheet symbol and iterate for sheet entry objects.
- A schematic document is a parent object as well thus you also create an iterator for this document and iterate for objects on this document.
Notes
ISch_BasicContainer is the ancestor interface object for schematic object interfaces.
ISch_BasicContainer is the ancestor interface object for ISch_MapDefiner and ISch_Implementation interfaces.
ISch_Document is inherited from ISch_BasicContainer and is a container for storing design objects and in turn each design object is inherited from the ISch_BasicContainer interface.
ISch_Iterator fetches design objects which are inherited from the ISch_BasicContainer interface.
ISch_BasicContainer methods GetState_ObjectId GetState_SchBasicContainer GetState_OwnerSchDocument GetState_Text GetState_IdentifierString GetState_DescriptionString Setstate_Default SetState_Text I_ObjectAddress AddSchObject AddAndPositionSchObject RemoveSchObject SchIterator_Create SchIterator_Destroy DeleteAll FreeAllContainedObjects Import_FromUser Replicate | ISch_BasicContainer properties Container ObjectId OwnerDocument |
See also
ISch_GraphicalObject interface
ISch_Document interface
ISch_Implementation interface
ISch_MapDefiner interface
ISch_BasicContainer Methods
AddAndPositionSchObject method
(ISch_BasicContainer interface)
Syntax
Procedure AddAndPositionSchObject(AObject : ISch_BasicContainer);
Description
The AddSchObject procedure adds and positions a child object into the parent object that the AddSchObject is associated with. For example adding sheet entries in a sheet symbol, you would use this method.
Example
See also
ISch_BasicContainer interface
AddSchObject method
AddSchObject method
(ISch_BasicContainer interface)
Syntax
Procedure AddSchObject (AObject : ISch_BasicContainer);
Description
The AddSchObject procedure adds a child object into the parent object that the AddSchObject is associated with.
DelphiScript Example
// Create a parameter object and add it to the new pin object. Try SchServer.ProcessControl.PreProcess(SchDoc, ''); // Add the parameter to the pin with undo stack also enabled Param.Name := 'Added Parameter'; Param.Text := 'Param added to the pin. Press Undo and this will disappear. Press undo twice to remove the component'; Param.Location := Point(InchesToCoord(3), InchesToCoord(2.4)); Pin.AddSchObject(Param); SchServer.RobotManager.SendMessage(Component.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, Param.I_ObjectAddress); Finally SchServer.ProcessControl.PostProcess(SchDoc, ''); End;
See also
ISch_BasicContainer interface
DeleteAll method
(ISch_BasicContainer interface)
Syntax
Procedure DeleteAll;
Description
The DeleteAll procedure removes the contained objects from the container of ISch_BasicContainer type. For example, if you just want to get a list of contained objects, and make small changes to them and then move them to a new container. In this case, you do not want to free and recreate all the contained objects, so you use the DeleteAll method. To have a clean container, you need to call the FreeAllContainedObjects method instead.
Example
See also
ISch_BasicContainer interface
FreeAllContainedObjects method
FreeAllContainedObjects method
(ISch_BasicContainer interface)
Syntax
Procedure FreeAllContainedObjects;
Description
The FreeAllContainedObjects procedure removes the contained objects from the container of ISch_BasicContainer type and the container ends up clean. To have container that can be reused with the same elements in another container, you need to call the DeleteAll method instead.
Example
See also
ISch_BasicContainer interface
DeleteAll method
GetState_DescriptionString method
(ISch_BasicContainer interface)
Syntax
Function GetState_DescriptionString : WideString;
Description
This function returns you the description string for this object.
Example
See also
ISch_BasicContainer interface
GetState_IdentifierString method
(ISch_BasicContainer interface)
Syntax
Function GetState_IdentifierString : WideString;
Description
This function returns you the identifier string.
Example
See also
ISch_BasicContainer interface
GetState_ObjectId method
(ISch_BasicContainer interface)
Syntax
Function GetState_ObjectId : TObjectId;
Description
The ObjectID property determines what object type the object in question is. For example when iterating for objects on a schematic document, you would want to modify all objects but update the port objects' locations only, thus you check for the object's ObjectId and if it is a ePort type, then take action.
The function retrieves the ObjectId type and this function is used as a getter in the ObjectID property.
DelphiScript Example
AnObject := Iterator.FirstSchObject; While AnObject <> Nil Do Begin SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_BeginModify, c_NoEventData); Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End; SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_EndModify , c_NoEventData); AnObject := Iterator.NextSchObject; End;
See also
ISch_BasicContainer interface
GetState_OwnerSchDocument method
(ISch_BasicContainer interface)
Syntax
Function GetState_OwnerSchDocument : ISch_Document;
Description
This property returns the ISch_Document interface that the object is associated with. It is also said that the document owns the object when the Object has a valid OwnerDocument property.
The function returns the ISch_Document interface that the object is associated with.
Example
See also
ISch_BasicContainer interface
ISch_Document interface
ISch_GraphicalObject interface
GetState_SchBasicContainer method
(ISch_BasicContainer interface)
Syntax
Function GetState_SchBasicContainer : ISch_BasicContainer;
Description
This function obtains the container of child objects from the parent object itself. This function is used in the Container property.
Example
See also
ISch_BasicContainer interface
GetState_Text method
(ISch_BasicContainer interface)
Syntax
Function GetState_Text : WideString;
Description
This function retrieves the text string for this object.
Example
See also
ISch_BasicContainer interface
I_ObjectAddress method
(ISch_BasicContainer interface)
Syntax
Function I_ObjectAddress : TSCHObjectHandle;
Description
This function retrieves the object address (a pointer type) of the object in question which is of TSchObjectHandle type. This function is mainly used for the SendMessge method from the ISch_RobotManager interface.
DelphiScript Example
SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_BeginModify, c_NoEventData); AnObject.Color := $0000FF; //red color in bgr format SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_EndModify , c_NoEventData);
See also
ISch_BasicContainer interface
ISch_RobotManager interface
Import_FromUser method
(ISch_BasicContainer interface)
Syntax
Function Import_FromUser : Boolean;
Description
The Import_FromUser function invokes the Properties dialog for the object. This is equivalent to when you double click on an object on the schematic document and the Object Properties dialog appears. This function returns a True value when the User clicks okay otherwise a False value is returned.
An example of using this method is to pop up the Properties dialog programmatically so that the user can modify the object and then the script or the server code can do more processing.
Example
See also
ISch_BasicContainer interface
RemoveSchObject method
(ISch_BasicContainer interface)
Syntax
Procedure RemoveSchObject (AObject : ISch_BasicContainer);
Description
The RemoveSchObject method removes the Schematic object from the database associated with the document or the parent object but it is not removed from memory. Therefore an Undo action will be able to restore this object only if the RobotManager's SendMessage methods are invoked.
DelphiScript Example
// Initialize the robots in Schematic editor. SchServer.ProcessControl.PreProcess(CurrentSheet, ''); // Set up iterator to look for Port objects only Iterator := CurrentSheet.SchIterator_Create; If Iterator = Nil Then Exit; Iterator.AddFilter_ObjectSet(MkSet(ePort)); Try Port := Iterator.FirstSchObject; While Port <> Nil Do Begin OldPort := Port; Port := Iterator.NextSchObject; CurrentSheet.RemoveSchObject(OldPort); SchServer.RobotManager.SendMessage(CurrentSheet.I_ObjectAddress,c_BroadCast, SCHM_PrimitiveRegistration,OldPort.I_ObjectAddress); End; Finally CurrentSheet.SchIterator_Destroy(Iterator); End; // Clean up robots in Schematic editor. SchServer.ProcessControl.PostProcess(CurrentSheet, '');
See also
ISch_BasicContainer interface
Replicate method
(ISch_BasicContainer interface)
Syntax
Function Replicate : ISch_BasicContainer;
Description
This functions makes another copy of this object but with an unique object address (a new memory location) but with same attributes as this object.
Example
See also
ISch_BasicContainer interface
SchIterator_Create method
(ISch_BasicContainer interface)
Syntax
Function SchIterator_Create : ISch_Iterator;
Description
The SchIterator_Create function creates an iterator for the parent object (such as the document, component or the sheet symbol) and with this iterator, you have the ability to iterate the child objects within, such as pins of a component. Once you have finished using the iterator, invoke the SchIterator_Destroy method to free the iterator from memory.
Example
Try SheetSymbol := ParentIterator.FirstSchObject; While SheetSymbol <> Nil Do Begin // Look for sheet entries (child objects) within a sheet symbol object. ChildIterator := SheetSymbol.SchIterator_Create; If ChildIterator <> Nil Then Begin ChildIterator.AddFilter_ObjectSet(MkSet(eSheetEntry)); Try SheetEntry := ChildIterator.FirstSchObject; While SheetEntry <> Nil Do Begin EntriesNames := SheetEntry.Name + #13 + EntriesNames; SheetEntry := ChildIterator.NextSchObject; End; Finally SheetSymbol.SchIterator_Destroy(ChildIterator); End; End; SheetSymbol := ParentIterator.NextSchObject; End; Finally CurrentSheet.SchIterator_Destroy(ParentIterator); End;
See also
ISch_BasicContainer interface
ISch_Iterator interface
SchIterator_Destroy
SchIterator_Destroy method
(ISch_BasicContainer interface)
Syntax
Procedure SchIterator_Destroy(Var AIterator : ISch_Iterator);
Description
The SchIterator_Destroy function destroys the iterator from the parent object (such as the document, component or the sheet symbol). This iterator once created with the SchIterator_Create method, has the ability to iterate the child objects within, such as pins of a component.
DelphiScript Example
Try SheetSymbol := ParentIterator.FirstSchObject; While SheetSymbol <> Nil Do Begin // Look for sheet entries (child objects) within a sheet symbol object. ChildIterator := SheetSymbol.SchIterator_Create; If ChildIterator <> Nil Then Begin ChildIterator.AddFilter_ObjectSet(MkSet(eSheetEntry)); Try SheetEntry := ChildIterator.FirstSchObject; While SheetEntry <> Nil Do Begin EntriesNames := SheetEntry.Name + #13 + EntriesNames; SheetEntry := ChildIterator.NextSchObject; End; Finally SheetSymbol.SchIterator_Destroy(ChildIterator); End; End; SheetSymbol := ParentIterator.NextSchObject; End; Finally CurrentSheet.SchIterator_Destroy(ParentIterator); End;
See also
ISch_BasicContainer interface
SchIterator_Create;
Setstate_Default method
(ISch_BasicContainer interface)
Syntax
Procedure Setstate_Default(AUnit : TUnitSystem);
Description
This procedure sets the default unit system for this object.
Example
See also
ISch_BasicContainer interface
TUnitSystem type
SetState_Text method
(ISch_BasicContainer interface)
Syntax
Procedure SetState_Text (AValue : WideString);
Description
This procedure sets the text string for this object.
Example
See also
ISch_BasicContainer interface
ISch_BasicContainer Properties
Container property
(ISch_BasicContainer interface)
Syntax
Property Container : ISch_BasicContainer Read GetState_SchBasicContainer;
Description
This property represents the container within the parent object (such as a document, component or sheet symbol). This property is supported by the GetState_SchBasicContainer method. If the container is empty it implies that this object itself is a standalone or child object.
Example
See also
ISch_BasicContainer interface
ObjectId property
(ISch_BasicContainer interface)
Syntax
Property ObjectId : TObjectId Read GetState_ObjectId;
Description
The ObjectID property determines what object type the object in question is. For example when iterating for objects on a schematic document, you would want to modify all objects but update the port objects' locations only, thus you check for the object's ObjectId and if it is a ePort type, then take action.
DelphiScript Example
AnObject := Iterator.FirstSchObject; While AnObject <> Nil Do Begin SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_BeginModify, c_NoEventData); Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End; SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_EndModify , c_NoEventData); AnObject := Iterator.NextSchObject; End;
See also
ISch_BasicContainer interface
TObjectID type
OwnerDocument property
(ISch_BasicContainer interface)
Syntax
Property OwnerDocument : ISch_Document Read GetState_OwnerSchDocument;
Description
This property returns the ISch_Document interface that the object is associated with. It is also said that the document owns the object when the Object has a valid OwnerDocument property.
This property is supported by the GetState_OwnerSchDocument method.
Example
See also
ISch_BasicContainer interface
ISch_Document interface
ISch_GraphicalObject Interface
Overview
The ISch_GraphicalObject interface represents the ancestor interface for an object that has graphical properties on a schematic document.
All graphic objects such as arcs, ports, rectangles etc have bounding rectangles of TCoordRect type.
Notes
ISch_BasicContainer interface
ISch_GraphicalObject interface
The ISch_GraphicalObject interface hierarchy is as follows;
ISch_GraphicalObject methods GetState_AreaColor GetState_Color GetState_CompilationMasked GetState_Dimmed GetState_Disabled GetState_DisplayError GetState_EnableDraw GetState_ErrorColor GetState_ErrorKind GetState_ErrorString GetState_LiveHighlightValue GetState_Location GetState_OwnerPartDisplayMode GetState_OwnerPartId GetState_Selection SetState_AreaColor SetState_Color SetState_CompilationMasked SetState_Dimmed SetState_Disabled SetState_DisplayError SetState_EnableDraw SetState_ErrorColor SetState_ErrorKind SetState_ErrorString SetState_LiveHighlightValue SetState_Location SetState_OwnerPartDisplayMode SetState_OwnerPartId SetState_Selection AddErrorString BoundingRectangle BoundingRectangle_Full GraphicallyInvalidate Mirror MoveByXY MoveToXY ResetErrorFields RotateBy90 SetState_xSizeySize | ISch_GraphicalObject properties AreaColor Color CompilationMasked Dimmed Disabled DisplayError EnableDraw ErrorColor ErrorKind ErrorString LiveHighlightValue Location OwnerPartDisplayMode OwnerPartId Selection |
ISch_GraphicalObject Methods
AddErrorString method
(ISch_GraphicalObject interface)
Syntax
Procedure AddErrorString(Const AErrorString : WideString; AtEnd : LongBool);
Description
This procedure adds an error string to the string whether it is at end or not.
Example
See also
ISch_GraphicalObject interface
GetState_AreaColor method
(ISch_GraphicalObject interface)
Syntax
Function GetState_AreaColor : TColor;
Description
The AreaColor property denotes the filled color region of a closed object. The AreaColor value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
This method obtains the color for the area color of an object and is used in the AreaColor property.
Example
Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End;
See also
ISch_GraphicalObject interface
TColor type
GetState_Color method
(ISch_GraphicalObject interface)
Syntax
Function GetState_Color : TColor;
Description
The Color property denotes the color region of a closed object which is usually the border. The Color value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
This method obtains the color for the color of the boundary of an object and is used in the Color property.
Example
Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End;
See also
ISch_GraphicalObject interface
TColor type
GetState_CompilationMasked method
(ISch_GraphicalObject interface)
Syntax
Function GetState_CompilationMasked : Boolean;
Description
The CompilationMasked property determines whether the object is masked by the Compiler. The CompileMask object can be placed on a group of objects on the schematic sheet, and these objects have their CompilationMasked property set to true.
This method obtains the boolean value whether the CompilationMasked is true or not and is used in the CompilationMasked property.
Example
See also
ISch_GraphicalObject interface
GetState_Dimmed method
(ISch_GraphicalObject interface)
Syntax
Function GetState_Dimmed : Boolean;
Description
This Dimmed property is true when this object is not part of the filter mechanism (by the Filter panel for example). When objects are found by the Filter mechanism, they stay as is (Dimmed is false), and the objects that are not found are dimmed (Dimmed is true).
This procedure gets the boolean value of the Dimmed property and is this method used in the Dimmed property.
Example
See also
ISch_GraphicalObject interface
GetState_Disabled method
(ISch_GraphicalObject interface)
Syntax
Function GetState_Disabled : Boolean;
Description
This Disabled property is true when this object is not part of the filter mechanism (by the Filter panel for example). When objects are found by the Filter mechanism, they stay as is (Disabled is false), and the objects that are not found are disabled (Disabled is true).
Example
See also
ISch_GraphicalObject interface
GetState_DisplayError method
(ISch_GraphicalObject interface)
Syntax
Function GetState_DisplayError : Boolean;
Description
This property determines whether the DisplayError is displayed or not. When true, the red squiggly line underneath the graphical object appears when it is subject to a compilation error in Altium Designer.
This procedure gets the boolean value for the DisplayError property and is used in the DisplayError property.
Example
See also
ISch_GraphicalObject interface
GetState_EnableDraw method
(ISch_GraphicalObject interface)
Syntax
Function GetState_EnableDraw : Boolean;
Description
This property merely determines whether the object can be drawn on the screen or not. This procedure gets the value for the EnableDraw property and is used as a getter for the EnableDraw property.
Example
See also
ISch_GraphicalObject interface
GetState_ErrorColor method
(ISch_GraphicalObject interface)
Syntax
Function GetState_ErrorColor : TColor;
Description
The ErrorColor property determines the error color value that the object is associated with. The Color value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
The function sets the color for the ErrorColor property and is also used as a setter function in the ErrorColor property.
Example
See also
ISch_GraphicalObject interface
GetState_ErrorKind method
(ISch_GraphicalObject interface)
Syntax
Function GetState_ErrorKind : TErrorKind;
Description
This property determines the error kind that the object is associated with, when it is subject to the Compiler in Altium Designer. This procedure is used for the ErrorKind property.
Example
See also
ISch_GraphicalObject interface
GetState_ErrorString method
(ISch_GraphicalObject interface)
Syntax
Function GetState_ErrorString : WideString;
Description
This property returns the Error string that the object is associated with when it is subject to the Compiler in Altium Designer.
This procedure is used for the ErrorString property.
Example
See also
ISch_GraphicalObject interface
GetState_LiveHighlightValue method
(ISch_GraphicalObject interface)
Syntax
Function GetState_LiveHighlightValue : WideString;
Description
This property toggles the highlight value (text string) of the object when it is subject to the probe process in Altium Designer during the Live Design mode. This method is used for the LiveHighlightValue property.
Example
See also
ISch_GraphicalObject interface
GetState_Location method
(ISch_GraphicalObject interface)
Syntax
Function GetState_Location : TLocation;
Description
The Location property defines the reference point of the object (not necessarily the center of the object). Use the BoundingRectangle and BoundingRectangle_Full methods to determine the bounding regions of the object.
This procedure retrieves the location or the reference point of the object. This method is used for the Location property.
Example
See also
ISch_GraphicalObject interface
TLocation type
GetState_OwnerPartDisplayMode method
(ISch_GraphicalObject interface)
Syntax
Function GetState_OwnerPartDisplayMode : TDisplayMode;
Description
This property represents schematic components in various graphical representations only. A schematic component can have up to 255 different graphical representations and a component can be composed of different parts that make up the whole. A child object is part of the parent object and thus the child object's owner part display mode fetches the parent's (in this case the component) part display mode.
This procedure gets the owner display mode (one of the existing modes only) for the component.
Example
See also
ISch_GraphicalObject interface
GetState_OwnerPartId method
(ISch_GraphicalObject interface)
Syntax
Function GetState_OwnerPartId : Integer;
Description
The OwnerPartId property determines the child object's parent object's part id. A component can be composed of multiple parts. Each part is composed of schematic primitives and thus each primitive associated with the part can be queried for its OwnerPartId property. The owner of the child object is the parent object.
This procedure gets the OwnerPartId from the object as part of the component object.
Example
See also
ISch_GraphicalObject interface
GetState_Selection method
(ISch_GraphicalObject interface)
Syntax
Function GetState_Selection : Boolean;
Description
This property determines whether the object is selected or not. When an object is selected, a crossed line boundary appears around the object. This object can then be moved or edited graphically.
This method can define the selection state of the object and is used for the Selection property.
Example
See also
ISch_GraphicalObject interface
SetState_AreaColor method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_AreaColor (AColor : TColor);
Description
The AreaColor property denotes the filled color region of a closed object. The AreaColor value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
This method defines the color for the area color of an object and is used in the AreaColor property.
Example
Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End;
See also
ISch_GraphicalObject interface
TColor type
SetState_Color method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_Color (AColor : TColor);
Description
The Color property denotes the color region of a closed object which is usually the border. The Color value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
This method defines the color for the color of the boundary of an object and is used in the Color property.
Example
Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End;
See also
ISch_GraphicalObject interface
TColor type
SetState_CompilationMasked method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_CompilationMasked (AValue : Boolean);
Description
The CompilationMasked property determines whether the object is masked by the Compiler. The CompileMask object can be placed on a group of objects on the schematic sheet, and these objects have their CompilationMasked property set to true.
This method sets the CompilationMasked to true or not and is used in the CompilationMasked property.
Example
See also
ISch_GraphicalObject interface
SetState_Dimmed method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_Dimmed (B : Boolean);
Description
This Dimmed property is true when a parent object is not part of the navigation mechanism (Navigator panel). When objects are found by the Navigation mechanism, they stay as is (Dimmed is false), and the objects that are not part of the Navigation are dimmed (Dimmed is true).
This procedure sets the boolean value of the Dimmed property and is this method used in the Dimmed property.
Example
See also
ISch_GraphicalObject interface
SetState_Disabled method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_Disabled (B : Boolean);
Description
This Disabled property is true when this object is not part of the filter mechanism (by the Filter panel for example). When objects are found by the Filter mechanism, they stay as is (Disabled is false), and the objects that are not found are disabled (Disabled is true).
Example
See also
ISch_GraphicalObject interface
SetState_DisplayError method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_DisplayError (AValue : Boolean);
Description
This property determines whether the DisplayError is displayed or not. When true, the red squiggly line underneath the graphical object appears when it is subject to a compilation error in Altium Designer.
This procedure sets the boolean value for the DisplayError property and is used in the DisplayError property.
Example
See also
ISch_GraphicalObject interface
SetState_EnableDraw method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_EnableDraw (B : Boolean);
Description
This property merely determines whether the object can be drawn on the screen or not. This procedure sets the value for the EnableDraw property and is used as a setter for the EnableDraw property.
Example
See also
ISch_GraphicalObject interface
SetState_ErrorColor method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_ErrorColor (AValue : TColor);
Description
The ErrorColor property determines the error color value that the object is associated with.
The Color value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
This procedure obtains the color of the error and this procedure is used as a getter method for the ErrorColor property.
Example
See also
ISch_GraphicalObject interface
SetState_ErrorKind method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_ErrorKind (AValue : TErrorKind);
Description
This property determines the error kind that the object is associated with, when it is subject to the Compiler in Altium Designer. This procedure is used for the ErrorKind property.
Example
See also
ISch_GraphicalObject interface
SetState_ErrorString method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_ErrorString (Const AValue : WideString);
Description
This property returns the Error string that the object is associated with when it is subject to the Compiler in Altium Designer.
This procedure is used for the ErrorString property.
Example
See also
ISch_GraphicalObject interface
SetState_LiveHighlightValue method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_LiveHighlightValue (AValue : WideString);
Description
This property toggles the highlight value (text string) of the object when it is subject to the probe process in Altium Designer during the Live Design mode. This method is used for the LiveHighlightValue property.
Example
See also
ISch_GraphicalObject interface
SetState_Location method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_Location (ALocation : TLocation);
Description
The Location property defines the reference point of the object (not necessarily the center of the object). Use the BoundingRectangle and BoundingRectangle_Full methods to determine the bounding regions of the object.
This procedure sets the location or the reference point of the object. This method is used for the Location property.
Example
See also
ISch_GraphicalObject interface
SetState_OwnerPartDisplayMode method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_OwnerPartDisplayMode (AValue : TDisplayMode);
Description
This property represents schematic components in various graphical representations only. A schematic component can have up to 255 different graphical representations and a component can be composed of different parts that make up the whole. A child object is part of the parent object and thus the child object's owner part display mode fetches the parent's (in this case the component) part display mode.
This procedure sets the display mode (one of the existing modes only) for the component.
Example
See also
ISch_GraphicalObject interface
ISch_Component interface
SetState_OwnerPartId method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_OwnerPartId (AValue : Integer);
Description
The OwnerPartId property determines the child object's parent object's part id. A component can be composed of multiple parts. Each part is composed of schematic primitives and thus each primitive associated with the part can be queried for its OwnerPartId property. The owner of the child object is the parent object.
This procedure sets the OwnerPartId for the object as part of the component object.
Example
See also
ISch_GraphicalObject interface
SetState_Selection method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_Selection (B : Boolean);
Description
This property determines whether the object is selected or not. When an object is selected, a crossed line boundary appears around the object. This object can then be moved or edited graphically.
This method can define the selection state of the object and is used for the Selection property.
Example
See also
ISch_GraphicalObject interface
SetState_xSizeySize method
(ISch_GraphicalObject interface)
Syntax
Procedure SetState_xSizeySize;
Description
This method sets the X size and the ySize of the graphical bounds of the object.
Example
See also
ISch_GraphicalObject interface
BoundingRectangle method
(ISch_GraphicalObject interface)
Syntax
Function BoundingRectangle : TCoordRect;
Description
This function returns the coordinates of the bounds of the parent object itself (not including the children objects if any). To determine the full bounding rectangle of the object (including the children object), invoke the BoundingRectangle_Full method instead.
For example a Schematic component would typically have a rectangle as the outline, the pins and parameters as the children objects.
Example
See also
ISch_GraphicalObject interface
BoundingRectangle_Full method
TCoordRect type
BoundingRectangle_Full method
(ISch_GraphicalObject interface)
Syntax
Function BoundingRectangle_Full : TCoordRect;
Description
This function returns the coordinates of the bounds of the parent object itself and including the children objects if any.. To determine the bounding rectangle of the parent object (excluding the children object), invoke the BoundingRectangle method instead.
For example a Schematic component would typically have a rectangle as the outline, the pins and parameters as the children objects.
Example
See also
ISch_GraphicalObject interface
BoundingRectangle method
TCoordRect type
GraphicallyInvalidate method
(ISch_GraphicalObject interface)
Syntax
Procedure GraphicallyInvalidate;
Description
This procedure when invoked invalidates the object graphically prompting the system to do a system re-draw to refresh the screen.
Example
See also
ISch_GraphicalObject interface
Mirror method
(ISch_GraphicalObject interface)
Syntax
Procedure Mirror (Axis : TLocation);
Description
The Mirror method flips the object across the axis (TLocaiton Type)
Example
See also
ISch_GraphicalObject interface
ISch_Label interface
ISch_Component interface
TLocation Type
MoveByXY method
(ISch_GraphicalObject interface)
Syntax
Procedure MoveByXY (x,y : TCoord);
Description
This MoveByXY procedure moves the object in a linear distance specified by the X,Y coordinates relative to the reference point of the object.
Example
// Add rectangle and pin objects to the component object. Component.AddSchObject(Rect); Component.AddSchObject(Pin); // Add the new component to the schematic document. SchDoc.AddSchObject(Component); Component.Comment.IsHidden := True; Component.Designator.IsHidden := True; // Move component by 1,1 inch in respect to document's origin. Component.MoveByXY(InchesToCoord(1), InchesToCoord(1));
See also
ISch_GraphicalObject interface
TCoord type
UndoRedo script example in \Examples\Scripts\DelphiScript Scripts\Sch folder.
MoveToXY method
(ISch_GraphicalObject interface)
Syntax
Procedure MoveToXY (x,y : TCoord);
Description
This MoveToXY procedure moves the object to a new location specified by the X,Y coordinates.
Example
// Add rectangle and pin objects to the component object. Component.AddSchObject(Rect); Component.AddSchObject(Pin); // Add the new component to the schematic document. SchDoc.AddSchObject(Component); Component.Comment.IsHidden := True; Component.Designator.IsHidden := True; // Move component to 1,1 inch in respect to document's origin. Component.MoveToXY(InchesToCoord(1), InchesToCoord(1));
See also
ISch_GraphicalObject interface
TCoord type
UndoRedo script example in \Examples\Scripts\DelphiScript Scripts\Sch folder.
ResetErrorFields method
(ISch_GraphicalObject interface)
Syntax
Procedure ResetErrorFields;
Description
This procedure resets the error fields of the object.
Example
See also
ISch_GraphicalObject interface
RotateBy90 method
(ISch_GraphicalObject interface)
Syntax
Procedure RotateBy90(Center : TLocation; A : TRotationBy90);
Description
The RotateBy90 procedure forces the rotation of the object by its center or a defined location on the schematic sheet and the rotation is done in 90 degree increments (0, 90, 180, 270).
Example
See also
ISch_GraphicalObject interface
TLocation type
TRotationBy90 type
ISch_GraphicalObject Properties
AreaColor property
(ISch_GraphicalObject interface)
Syntax
Property AreaColor : TColor Read GetState_AreaColor Write SetState_AreaColor;
Description
The AreaColor property denotes the filled color region of a closed object. The AreaColor value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
This property is supported by the GetState_AreaColor and SetState_AreaColor methods.
Example
Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End;
See also
ISch_GraphicalObject interface
ISch_Port interface
ISch_Pie interface
ISch_Rectangle interface
ISch_RoundRectangle interface
ISch_TextFrame interface
Color property
(ISch_GraphicalObject interface)
Syntax
Property Color : TColor Read GetState_Color Write SetState_Color;
Description
The Color property denotes the color region of a closed object which is usually the border outline. The Color value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
The Color property is supported by the GetState_Color and SetState_Color methods.
Notes
The color format is in blue,green,red (b,g,r) primary color format and each primary color has a value of 0 to 255.
Example
Case AnObject.ObjectId Of eWire : AnObject.Color := $0000FF; //red color in bgr format ePort : AnObject.AreaColor := $00FF00; //green color in bgr format End;
See also
ISch_GraphicalObject interface
TColor type
CompilationMasked property
(ISch_GraphicalObject interface)
Syntax
Property CompilationMasked : Boolean Read GetState_CompilationMasked Write SetState_CompilationMasked;
Description
The CompilationMasked property determines whether the object is masked by the Compiler. The CompileMask object can be placed on a group of objects on the schematic sheet, and these objects have their CompilationMasked property set to true.
This property is supported by the GetState_CompilationMasked and SetState_CompilationMasked methods.
Example
See also
ISch_GraphicalObject interface
Dimmed property
(ISch_GraphicalObject interface)
Syntax
Property Dimmed : Boolean Read GetState_Dimmed Write SetState_Dimmed;
Description
This Dimmed property is true when a parent object is not part of the navigation mechanism (Navigator panel). When objects are found by the Navigation mechanism, they stay as is (Dimmed is false), and the objects that are not part of the Navigation are dimmed (Dimmed is true).
This property is supported by the GetState_Dimmed and SetState_Dimmed methods.
Notes
The Disabled / Dimmed states of a parent object (say a component), all its children (pins, lines, etc...) will be also set to this state. Thus when the Disabled/Dimmed property of a child object is being queried, the Disabled/Dimmed state of the parent object will be returned.
Example
See also
ISch_GraphicalObject interface
Disabled property
(ISch_GraphicalObject interface)
Syntax
Property Disabled : Boolean Read GetState_Disabled Write SetState_Disabled;
Description
The Disabled property determines whether the object is disabled (due to not being part of the collected objects by the filter mechanism ie the Filter panel)
Notes
The Disabled / Dimmed states of a parent object (say a component), all its children (pins, lines, etc...) will be also set to this state. Thus when the Disabled/Dimmed property of a child object is being queried, the Disabled/Dimmed state of the parent object will be returned.
Example
See also
ISch_GraphicalObject interface
DisplayError property
(ISch_GraphicalObject interface)
Syntax
Property DisplayError : Boolean Read GetState_DisplayError Write SetState_DisplayError;
Description
This property determines whether the DisplayError is displayed or not. When true, the red squiggly line underneath the graphical object appears when it is subject to a compilation error in Altium Designer.
This property is supported by the GetState_DisplayError and SetState_DisplayError methods.
Example
See also
ISch_GraphicalObject interface
EnableDraw property
(ISch_GraphicalObject interface)
Syntax
Property EnableDraw : Boolean Read GetState_EnableDraw Write SetState_EnableDraw;
Description
This property merely determines whether the object can be drawn on the screen or not. This property is supported by the GetState_EnableDraw and SetState_EnableDraw methods.
Example
See also
ISch_GraphicalObject interface
ErrorColor property
(ISch_GraphicalObject interface)
Syntax
Property ErrorColor : TColor Read GetState_ErrorColor Write SetState_ErrorColor;
Description
The ErrorColor property determines the error color value that the object is associated with.
The Color value is defined as a TColor type from the Borland Delphi's Graphics Unit and has a color range from $00000000 (black) to $00FFFFFF (white).
The Color property is supported by the GetState_ErrorColor and SetState_ErrorColor methods.
Example
See also
ISch_GraphicalObject interface
ErrorKind property
(ISch_GraphicalObject interface)
Syntax
Property ErrorKind : TErrorKind Read GetState_ErrorKind Write SetState_ErrorKind;
Description
This property determines the error kind that the object is associated with, when it is subject to the Compiler in Altium Designer. This property is supported by the GetState_ErrorKind and the SetState_ErrorKind methods.
Example
See also
ISch_GraphicalObject interface
TErrorKind type from Workspace Manager API
ErrorString property
(ISch_GraphicalObject interface)
Syntax
Property ErrorString : WideString Read GetState_ErrorString Write SetState_ErrorString;
Description
This property returns the Error string that the object is associated with when it is subject to the Compiler in Altium Designer. This property is supported by the GetState_ErrorString and SetState_ErrorString methods.
Example
See also
ISch_GraphicalObject interface
LiveHighlightValue property
(ISch_GraphicalObject interface)
Syntax
Property LiveHighlightValue : WideString Read GetState_LiveHighlightValue Write SetState_LiveHighlightValue;
Description
This property toggles the highlight value (text string) of the object when it is subject to the probe process in Altium Designer during the Live Design mode. This property is supported by the GetState_LiveHighlightValue and SetState_LIveHighlightValue methods.
Example
See also
ISch_GraphicalObject interface
Location property
(ISch_GraphicalObject interface)
Syntax
Property Location : TLocation Read GetState_Location Write SetState_Location;
Description
The Location property defines the reference point of the object (not necessarily the center of the object). Use the BoundingRectangle and BoundingRectangle_Full methods to determine the bounding regions of the object.
This property is supported by the GetState_Location and SetState_Location methods.
Example
See also
ISch_GraphicalObject interface
BoundingRectangle method
BoundingRectangle_Full method
TLocation type
OwnerPartDisplayMode property
(ISch_GraphicalObject interface)
Syntax
Property OwnerPartDisplayMode : TDisplayMode Read GetState_OwnerPartDisplayMode Write SetState_OwnerPartDisplayMode;
Description
This property represents schematic components in various graphical representations only. A schematic component can have up to 255 different graphical representations and a component can be composed of different parts that make up the whole. A child object is part of the parent object and thus the child object's owner part display mode fetches the parent's (in this case the component) part display mode.
This property is supported by the GetState_OwnerPartDisplayMode and SetState_OwnerPartDisplayMode methods.
Example
See also
ISch_GraphicalObject interface
ISch_Component interface
TDisplayMode type (byte type) from Workspace Manager API
OwnerPartId property
(ISch_GraphicalObject interface)
Syntax
Property OwnerPartId : Integer Read GetState_OwnerPartId Write SetState_OwnerPartId;
Description
The OwnerPartId property determines the child object's parent object's part id. A component can be composed of multiple parts. Each part is composed of schematic primitives and thus each primitive associated with the part can be queried for its OwnerPartId property. The owner of the child object is the parent object. This property is supported by the GetState_OwnerPartId and SetState_OwnerPartId methods.
Example
See also
ISch_GraphicalObject interface
Selection property
(ISch_GraphicalObject interface)
Syntax
Property Selection : Boolean Read GetState_Selection Write SetState_Selection;
Description
This property determines whether the object is selected or not. When an object is selected, a crossed line boundary appears around the object. This object can then be moved or edited graphically.
This property is supported by the GetState_Selection and SetState_Selection methods.
Example
See also
ISch_GraphicalObject interface
ISch_RobotManager Interface
Overview
The ISch_RobotManager interface represents an object that can send Schematic messages into the Schematic Editor server from a script to update the sub-systems such as the Undo system.
Notes
Part of ISch_ServerInterface object interface
MessageID table
SCHM_NullMessage = 0;
SCHM_PrimitiveRegistration = 1;
SCHM_BeginModify = 2;
SCHM_EndModify = 3;
SCHM_YieldToRobots = 4;
SCHM_CancelModify = 5;
SCHM_Create = 6;
SCHM_Destroy = 7;
SCHM_ProcessStart = 8;
SCHM_ProcessEnd = 9;
SCHM_ProcessCancel = 10;
SCHM_CycleEnd = 11;
SCHM_CycleStart = 12;
SCHM_SystemInvalid = 13;
SCHM_SystemValid = 14;
Message types table
c_BroadCast = Nil;
c_NoEventData = Nil;
c_FromSystem = Nil;
The ISch_RobotManager interface hierarchy is as follows;
ISch_RobotManager methods SendMessage | ISch_RobotManager properties |
See also
ISch_ServerInterface interface
SendMessage method
(ISch_RobotManager interface)
Syntax
Procedure SendMessage(Source,Destination : Pointer; MessageID : Word; MessageData : Pointer);
Description
The SendMessage method sends a message into Schematic Editor notifying that the data structures need to be updated and synchronized. It could be an object being modified, added or deleted from the schematic document.
Normally when an object is being modified:
- The Source parameter, the current sheet's I_ObjectAddress value.
- The Destination parameter has the c_Broadcast value
- The MessageID parameter has the SchM_PrimitiveRegistration value
- The MessageData parameter has the new object's I_ObjectAddress value.
Normally when a new object is being added:
- The Source parameter, the I_ObjectAddress of an object needs to be invoked.
- The Destination parameter has the c_Broadcast value
- The MessageID parameter has the SchM_BeginModify and SchM_EndModify values.
- The MessageData parameter has the c_noEventData value
Normally when an object is being removed:
- The Source parameter, the current sheet's I_ObjectAddress value.
- The Destination parameter normally has the c_Broadcast value
- The MessageID parameter has the SchM_PrimitiveRegistration value.
- The MessageData parameter has the deleted object's I_ObjectAddress value.
DelphiScript example of an object being modified
// Initialize the robots in Schematic editor. SchServer.ProcessControl.PreProcess(Doc, ''); Iterator := Doc.SchIterator_Create; Iterator.AddFilter_ObjectSet(MkSet(ePort, eWire)); If Iterator = Nil Then Exit; Try AnObject := Iterator.FirstSchObject; While AnObject <> Nil Do Begin Case AnObject.ObjectId Of SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_BeginModify, c_NoEventData); eWire : AnObject.Color := $0000FF; //red color in bgr format SchServer.RobotManager.SendMessage(AnObject.I_ObjectAddress, c_BroadCast, SCHM_EndModify , c_NoEventData); End; AnObject := Iterator.NextSchObject; End; Finally Doc.SchIterator_Destroy(Iterator); End; // Clean up the robots in Schematic editor SchServer.ProcessControl.PostProcess(Doc, '');
DelphiScript example of an object being removed
Try Port := Iterator.FirstSchObject; While Port <> Nil Do Begin OldPort := Port; Port := Iterator.NextSchObject; CurrentSheet.RemoveSchObject(OldPort); SchServer.RobotManager.SendMessage (CurrentSheet.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, OldPort.I_ObjectAddress); End; Finally CurrentSheet.SchIterator_Destroy(Iterator); End;
See also
ISch_RobotManager interface
ISch_ServerInterface Interface
Overview
This interface is an entry interface to the schematic server loaded in Altium Designer. You can fetch the Preferences, Robot Manager (for sending messages into the schematic system), the font manager for managing fonts on a schematic document. You can also create or delete schematic design objects from this interface.
The Sch_Server
function in the Rt_Schematic
unit (which is embedded in the scripting engine) returns the ISch_ServerInterface
interface.
The ISch_ServerInterface as the composite interface has the following aggregate object interfaces:
Example
// Grab current schematic document. SchDoc := SchServer.GetCurrentSchDocument; If SchDoc = Nil Then Exit; // Component is a container that has child objects // Create component, and its rectangle, pin and parameter objects. Component := SchServer.SchObjectFactory (eSchComponent, eCreate_Default);
Example 2
Try SchServer.ProcessControl.PreProcess(SchDoc, ''); // Add the parameter to the pin with undo stack also enabled Param.Name := 'Added Parameter'; Param.Text := 'Param added to the pin. Press Undo and this will disappear. Press undo twice to remove the component'; Param.Location := Point(InchesToCoord(3), InchesToCoord(2.4)); Pin.AddSchObject(Param); SchServer.RobotManager.SendMessage(Component.I_ObjectAddress, c_BroadCast, SCHM_PrimitiveRegistration, Param.I_ObjectAddress); Finally SchServer.ProcessControl.PostProcess(SchDoc, ''); End;
Notes
Note that these IServerModule
interfaces represent loaded servers in Altium Designer. This application manages single instances of different server modules. Each server can have multiple server document kinds, for example the Schematic server supports two server document kinds – SCH and SCHLIB design documents. A loaded server typically hosts documents and each document in turn hosts a document view and panel views. Thus a Schematic Editor server also has the IServerModule
interface along with the ISch_ServerInterface
interface.
Invoke the SchServer
function to obtain the ISch_ServerInterface
object interface which represents the Schematic Editor server.
ISch_ServerInterface methods GetState_SchPreferences GetState_RobotManager GetState_FontManager GetState_ProbesTimerEnabled SetState_ProbesTimerEnabled GetState_JunctionConvertSettings GetSchDocumentByPath GetCurrentSchDocument SchObjectFactory LoadComponentFromLibrary LoadComponentFromDatabaseLibrary DestroySchObject ReportSchObjectsDifferences CreateLibCompInfoReader DestroyCompInfoReader CreateComponentPainter CreateComponentMetafilePainter CreateDocumentPainter UpdateSignalValueDisplay | ISch_ServerInterface properties Preferences RobotManager FontManager JunctionConvertSettings ProbesTimerEnabled |
Example
See also
Sch_Server function
ISch_Preferences interface
ISch_RobotManager interface
ISch_FontManager interface
ILibCompInfoReader interface
IServerModule interface
ISch_ServerInterface Methods
CreateComponentMetafilePainter method
(ISch_ServerInterface interface)
Syntax
Function CreateComponentMetafilePainter : IComponentMetafilePainter;
Description
Example
See also
ISch_ServerInterface interface
IComponentMetafilePainter interface
CreateComponentPainter method
(ISch_ServerInterface interface)
Syntax
Function CreateComponentPainter : IComponentPainterView;
Description
A IComponentPainterView interface represents the surface that a component can be painted on.
This interface is a IExternalForm type which represents the TExternalFormComponent object. The TExternalForm class is defined in the ExternalForm unit from the DXP Run Time Library.
Notes
This IComponentPainterView interface is not supported in the scripting system.
This IComponentPainterView interface is for server development purposes and you need to have RT_IntegratedLIbrary, RT_Schematic, ExternalForms and the RT_ClientServerINterfaces units in a server project.
Example
See also
ISch_ServerInterface interface
IComponentPainterView interface
CreateDocumentPainter method
(ISch_ServerInterface interface)
Syntax
Function CreateDocumentPainter : IDocumentPainterView;
Description
This function retrieves the IDocumentPainterView interface that represents the Mini Viewer object in the Schematic Editor.
Example
See also
ISch_ServerInterface interface
IDocumentPainterView interface
CreateLibCompInfoReader method
(ISch_ServerInterface interface)
Syntax
Function CreateLibCompInfoReader (ALibFileName : WideString) : ILibCompInfoReader;
Description
The function returns a ILibCompInfoReader interface that represents a library component information reader object.
Invoke the CreateLibCompInfoReader function with the path to a schematic library and to obtain the number of components in this library, invoke the ILibCompInfoReader.NumComponentsInfos method and then to obtain the information for each component in this library invoke the ComponentInfos[] method. When you are done, invoke the DestroyCompInfoReader method.
DelphiScript Example
Procedure LibraryCompInfoReader; Var CurrentLib : ISch_Lib; ALibCompReader : ILibCompInfoReader; CompInfo : IComponentInfo; FileName : String; CompNum, J : Integer; ReportInfo : TStringList; Document : IServerDocument; Begin If SchServer = Nil Then Exit; CurrentLib := SchServer.GetCurrentSchDocument; If CurrentLib = Nil Then Exit; // CHeck if CurrentLib is a Library document or not If CurrentLib.ObjectID <> eSchLib Then Begin ShowError('Please open schematic library.'); Exit; End; FileName := CurrentLib.DocumentName; // Set up Library Component Reader object. ALibCompReader := SchServer.CreateLibCompInfoReader(FileName); If ALibCompReader = Nil Then Exit; ALibCompReader.ReadAllComponentInfo; ReportInfo := TStringList.Create; // Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(''); End; SchServer.DestroyCompInfoReader(ALibCompReader); ReportInfo.Add(''); ReportInfo.Insert(0,'Schematic Libraries and Their Components Report'); ReportInfo.Insert(1,'-----------------------------------------------'); ReportInfo.Insert(2,''); ReportInfo.SaveToFile('C:\SchLibCompReport.txt'); // Open and display the Component data in DXP. If Client = Nil Then Exit; Document := Client.OpenDocument('Text','c:\SchLibCompReport.txt'); If Document <> Nil Then Client.ShowDocument(Document); ReportInfo.Free; End;
See also
ISch_ServerInterface interface
ILibCompInfoReader interface
DestroyCompInfoReader method
(ISch_ServerInterface interface)
Syntax
Procedure DestroyCompInfoReader (Var ALibCompReader : ILibCompInfoReader);
Description
The function destroys an library component information reader object that is represented by the ILibCompInfoReader interface.
Example
See also
ISch_ServerInterface interface
CreateLibCompInfoReader method
ILibCompInfoReader interface
GetCurrentSchDocument method
(ISch_ServerInterface interface)
Syntax
Function GetCurrentSchDocument : ISch_Document;
Description
This function returns the ISch_Document interface that represents the current schematic document open in Altium Designer.
Example
See also
ISch_ServerInterface interface
ISch_Document interface
GetSchDocumentByPath method
(ISch_ServerInterface interface)
Syntax
Function GetSchDocumentByPath(APath : WideString) : ISch_Document;
Description
Example
See also
ISch_ServerInterface interface
GetState_FontManager method
(ISch_ServerInterface interface)
Syntax
Function GetState_FontManager : ISch_FontManager;
Description
This function retrieves the ISch_Font interface which represents the Font Manager object in the Schematic Editor.
Example
See also
ISch_ServerInterface interface
ISch_Font interface
GetState_JunctionConvertSettings method
(ISch_ServerInterface interface)
Syntax
Function GetState_JunctionConvertSettings : ISch_JunctionConvertSettings;
Description
The JunctionConvertSettings property represents a crossing of wiring on a schematic sheet. When an addition of a wire would create a four-way junction, this is converted to into two adjacent three way junctions. If it is disabled and when a four way junction is created, the two wires crossing at the intersection are not joined electrically and if the Display Cross Overs option is enabled, a cross over is shown on this intersection.
This property is supported by the GetState_JunctionConvertSettings method.
Example
See also
ISch_ServerInterface interface
GetState_ProbesTimerEnabled method
(ISch_ServerInterface interface)
Syntax
Function GetState_ProbesTimerEnabled : Boolean;
Description
The ProbesTimerEnabled property determines whether the Probes are active or not. This feature is used in the LiveDesign process in Altium Designer.
This property is supported by the GetState_ProbesTimerEnabled and SetState_ProbesTimerEnabled methods.
Example
See also
ISch_ServerInterface interface
GetState_RobotManager method
(ISch_ServerInterface interface)
Syntax
Function GetState_RobotManager : ISch_RobotManager;
Description
The RobotManager property returns the ISch_RobotManager interface. This interface deals with sending Schematic notification messages in the system. To have the ability to send a specific message when a specific event in the Schematic Editor occurs can be achieved with the ISch_RobotManager interface.
This property is supported by the GetState_RobotManager method.
Example
See also
ISch_ServerInterface interface
GetState_SchPreferences method
(ISch_ServerInterface interface)
Syntax
Function GetState_SchPreferences : ISch_Preferences;
Description
The Preferences property retrieves the ISch_Preferences interface which represents the Preferences object for the Schematic Editor.
This read only property is supported by the GetState_SchPreference method.
Example
See also
ISch_ServerInterface interface
LoadComponentFromLibrary method
(ISch_ServerInterface interface)
Syntax
Function LoadComponentFromLibrary(ALibReference : WideString;ALibraryName : WideString) : ISch_Component;
Description
Example
See also
ISch_ServerInterface interface
LoadComponentFromDatabaseLibrary method
(ISch_ServerInterface interface)
Syntax
Function LoadComponentFromDatabaseLibrary(ALibraryName : WideString;
ADatabaseTableName : WideString;
ADatabaseKeys : WideString) : ISch_Component;
Description
Example
See also
ISch_ServerInterface interface
ReportSchObjectsDifferences method
(ISch_ServerInterface interface)
Syntax
Function ReportSchObjectsDifferences(Const AObject1, AObject2 : ISch_BasicContainer;AIgnoreSpatialAttributes : Boolean;ADiffDescription : PChar) : Integer;
Description
Example
See also
ISch_ServerInterface interface
SchObjectFactory method
(ISch_ServerInterface interface)
Syntax
Function SchObjectFactory(AObjectId : TObjectId;ACreationMode : TObjectCreationMode) : ISch_BasicContainer;
Description
The SchObjectFactory
function creates a new object based on TObjectID
and TObjectCreationMode
values.
When you wish to create a new design object with the ISch_ServerInterface
’s SchObjectFactory
method, you will need to have a specific design object type, assign this object with new attribute values and register this object with in the schematic document with the ISch_Document’s RegisterSchObjectInContainer method.
Example
Var SchPort : ISch_Port; FSchDoc : ISch_Document; CurView : IServerDocumentView; Begin // Check if Schematic server exists or not. If SchServer = Nil Then Exit; // Obtain the Schematid sheet interfac.e FSchDoc := SchServer.GetCurrentSchDocument; If FSchDoc = Nil Then Exit; // Create a new port object SchPort := SchServer.SchObjectFactory(ePort,eCreate_GlobalCopy); If SchPort = Nil Then Exit; // Set up parameters for the port object. // the port is placed at 500,500 mils respectively. SchPort.Location := Point(MilsToCoord(500),MilsToCoord(500)); SchPort.Style := ePortRight; SchPort.IOType := ePortBidirectional; SchPort.Alignment := eHorizontalCentreAlign; SchPort.Width := MilsToCoord(1000); SchPort.AreaColor := 0; SchPort.TextColor := $FFFFFF; SchPort.Name := 'A new port with no net.'; // Add a port object onto the existing schematic document FSchDoc.RegisterSchObjectInContainer(SchPort); // Refresh the schematic sheet. FSchDoc.GraphicallyInvalidate; End;
See also
ISch_ServerInterface interface
TObjectCreationMode type
DestroySchObject method
(ISch_ServerInterface interface)
Syntax
Procedure DestroySchObject(Var ASchObject : ISch_BasicContainer);
Description
Example
See also
ISch_ServerInterface interface
SetState_ProbesTimerEnabled method
(ISch_ServerInterface interface)
Syntax
Procedure SetState_ProbesTimerEnabled(AValue : Boolean);
Description
The ProbesTimerEnabled property determines whether the Probes are active or not. This feature is used in the LiveDesign process in Altium Designer.
This property is supported by the GetState_ProbesTimerEnabled and SetState_ProbesTimerEnabled methods.
Example
See also
ISch_ServerInterface interface
UpdateSignalValueDisplay method
(ISch_ServerInterface interface)
Syntax
Function UpdateSignalValueDisplay(DMObject : IDMObject; Value : Integer; BitIndex : Integer) : LongBool;
Description
Example
See also
ISch_ServerInterface interface
ISch_ServerInterface Properties
FontManager property
(ISch_ServerInterface interface)
Syntax
Property FontManager : ISch_FontManager Read GetState_FontManager;
Description
This property retrieves the Font manager object which is represented by the ISch_FontManager interface. The property is supported by the GetState_FontManager method.
Example
See also
ISch_Font interface
ISch_FontManager2 interface
ISch_ServerInterface interface
JunctionConvertSettings property
(ISch_ServerInterface interface)
Syntax
Property JunctionConvertSettings : ISch_JunctionConvertSettings Read GetState_JunctionConvertSettings;
Description
The JunctionConvertSettings property represents a crossing of wiring on a schematic sheet. When an addition of a wire would create a four-way junction, this is converted to into two adjacent three way junctions. If it is disabled and when a four way junction is created, the two wires crossing at the intersection are not joined electrically and if the Display Cross Overs option is enabled, a cross over is shown on this intersection.
This property is supported by the GetState_JunctionConvertSettings method.
Example
See also
ISch_ServerInterface interface
ISch_JunctionConvertSettings interface
Preferences property
(ISch_ServerInterface interface)
Syntax
Property Preferences : ISch_Preferences Read GetState_SchPreferences;
Description
This Preferences property retrieves the ISch_Preferences interface which represents the Preferences object for the Schematic Editor. This read only property is supported by the GetState_SchPreference method.
Example
Preferences := SchServer.Preferences; Preferences.WatermarkDeviceSheet.True; Preferences.WatermarkReadOnlySheet := True;
See also
ISch_Preferences interface
ISch_ServerInterface interface
ProbesTimerEnabled property
(ISch_ServerInterface interface)
Syntax
Property ProbesTimerEnabled : Boolean Read GetState_ProbesTimerEnabled Write SetState_ProbesTimerEnabled;
Description
The ProbesTimerEnabled property determines whether the Probes are active or not. This feature is used in the LiveDesign process in Altium Designer.
This property is supported by the GetState_ProbesTimerEnabled and SetState_ProbesTimerEnabled methods.
Example
See also
ISch_ServerInterface interface
RobotManager property
(ISch_ServerInterface interface)
Syntax
Property RobotManager : ISch_RobotManager Read GetState_RobotManager;
Description
This property returns the ISch_RobotManager interface. This interface deals with sending Schematic notification messages in the system. To have the ability to send a specific message when a specific event in the Schematic Editor occurs can be achieved with the ISch_RobotManager interface.
This property is supported by the GetState_RobotManager method.
DelphiScript Example
SchPort := SchServer.SchObjectFactory(ePort,eCreate_GlobalCopy); If SchPort = Nil Then Exit; SchPort.Location := Point(MilsToCoord(2500),MilsToCoord(2500)); SchPort.Style := ePortRight; SchPort.IOType := ePortBidirectional; SchPort.Alignment := eHorizontalCentreAlign; SchPort.Width := MilsToCoord(500); SchPort.AreaColor := 0; SchPort.TextColor := $FF00FF; SchPort.Name := 'New Port 4'; // Add a new port object in the existing Schematic document. Doc.RegisterSchObjectInContainer(SchPort); SchServer.RobotManager.SendMessage(Doc.I_ObjectAddress,c_BroadCast, SCHM_PrimitiveRegistration,SchPort.I_ObjectAddress);
See also
ISch_ServerInterface interface
ISch_RobotManager interface
ISch_Preferences Interface
Overview
The ISch_Preferences interface represents the global preferences for the Schematic Editor and the settings are the same for any PCB project that has schematics in Altium Designer.
The ISch_ServerInterface interface represents the Schematic Editor and this interface has an ISch_Preferences aggregate object interface.
ISch_Preferences Methods and Properties Table
ISch_Preferences methods Import_FromUser Get_SelectionColor Get_MultiSelectionColor Get_ResizeColor Get_TranslateRotateColor Get_VisibleGridColor Get_VisibleGridStyle Get_GraphicsCursorStyle Get_OrcadFootPrint Get_SnapToCenter Get_UseOrcadPortWidth Get_AutoBackupTime Get_AutoBackupFileCount Get_SelectionReference Get_UndoRedoStackSize Get_ConvertSpecialStrings Get_MaintainOrthogonal Get_DisplayPrinterFonts Get_AutoZoom Get_HotSpotGridDistance Get_SnapToHotSpot Get_OptimizePolylines Get_ComponentsCutWires Get_AddTemplateToClipBoard Get_AutoPanStyle Get_AutoPanJumpDistance Get_AutoPanShiftJumpDistance Get_PinNameMargin Get_PinNumberMargin Get_DefaultPrimsPermanent Get_IgnoreSelection Get_ClickClearsSelection Get_DoubleClickRunsInspector Get_MultiPartNamingMethod Get_Sensitivity Get_SingleSlashNegation Get_RunInPlaceEditing Get_DefaultPowerGndName Get_DefaultSignalGndName Get_DefaultEarthName Get_DefaultTemplateFileName Get_BufferedPainting Get_Metafile_NoERCMarkers Get_Metafile_ParameterSets Get_Metafile_Probes Get_DocumentScope Get_LibraryScope Get_ConfirmSelectionMemoryClear Get_LastModelType Get_StringIncA Get_StringIncB Get_MarkManualParameters Get_CtrlDbleClickGoesDown Get_SheetStyle_XSize Get_SheetStyle_YSize Get_SheetStyle_XZones Get_SheetStyle_YZones Get_SheetStyle_MarginWidth Get_PolylineCutterMode Get_CutterGridSizeMultiple Get_CutterFixedLength Get_ShowCutterBoxMode Get_ShowCutterMarkersMode Get_ViolationDisplayByLevel Get_ViolationColorByLevel Get_AlwaysDrag Get_DocMenuID Get_LibMenuID Get_DefaultSheetStyle Get_WireAutoJunctionsColor Get_ManualJunctionsColor Get_BusAutoJunctionsColor Get_DefaultUnit Get_DefaultUnitSystem Set_SelectionColor Set_MultiSelectionColor Set_ResizeColor Set_TranslateRotateColor Set_VisibleGridColor Set_VisibleGridStyle Set_GraphicsCursorStyle Set_OrcadFootPrint Set_SnapToCenter Set_UseOrcadPortWidth Set_AutoBackupTime Set_AutoBackupFileCount Set_SelectionReference Set_UndoRedoStackSize Set_ConvertSpecialStrings Set_MaintainOrthogonal Set_DisplayPrinterFonts Set_AutoZoom Set_HotSpotGridDistance Set_SnapToHotSpot Set_OptimizePolylines Set_ComponentsCutWires Set_AddTemplateToClipBoard Set_AutoPanStyle Set_AutoPanJumpDistance Set_AutoPanShiftJumpDistance Set_PinNameMargin Set_PinNumberMargin Set_DefaultPrimsPermanent Set_IgnoreSelection Set_ClickClearsSelection Set_DoubleClickRunsInspector Set_MultiPartNamingMethod Set_Sensitivity Set_SingleSlashNegation Set_RunInPlaceEditing Set_DefaultPowerGndName Set_DefaultSignalGndName Set_DefaultEarthName Set_DefaultTemplateFileName Set_BufferedPainting Set_Metafile_NoERCMarkers Set_Metafile_ParameterSets Set_Metafile_Probes Set_DocumentScope Set_LibraryScope Set_ConfirmSelectionMemoryClear Set_LastModelType Set_StringIncA Set_StringIncB Set_MarkManualParameters Set_CtrlDbleClickGoesDown Set_PolylineCutterMode Set_CutterGridSizeMultiple Set_CutterFixedLength Set_ShowCutterBoxMode Set_ShowCutterMarkersMode Set_ViolationDisplayByLevel Set_ViolationColorByLevel Set_AlwaysDrag Set_DocMenuID Set_LibMenuID Set_DefaultSheetStyle Set_WireAutoJunctionsColor Set_ManualJunctionsColor Set_BusAutoJunctionsColor Set_DefaultUnit GridPresetsCount GridPresetAt | ISch_Preferences properties SelectionColor MultiSelectionColor ResizeColor TranslateRotateColor VisibleGridColor VisibleGridStyle GraphicsCursorStyle OrcadFootPrint SnapToCenter UseOrcadPortWidth AutoBackupTime AutoBackupFileCount SelectionReference UndoRedoStackSize ConvertSpecialStrings MaintainOrthogonal DisplayPrinterFonts AutoZoom HotSpotGridDistance SnapToHotSpot OptimizePolylines ComponentsCutWires AddTemplateToClipBoard AutoPanStyle AutoPanJumpDistance AutoPanShiftJumpDistance PinNameMargin PinNumberMargin DefaultPrimsPermanent IgnoreSelection ClickClearsSelection DoubleClickRunsInspector MultiPartNamingMethod Sensitivity SingleSlashNegation RunInPlaceEditing DefaultPowerGndName DefaultSignalGndName DefaultEarthName DefaultTemplateFileName BufferedPainting Metafile_NoERCMarkers Metafile_ParameterSets Metafile_Probes DocumentScope LibraryScope ConfirmSelectionMemoryClear LastModelType StringIncA StringIncB MarkManualParameters CtrlDbleClickGoesDown SheetStyle_XSize SheetStyle_YSize SheetStyle_XZones SheetStyle_YZones SheetStyle_MarginWidth PolylineCutterMode CutterGridSizeMultiple CutterFixedLength ShowCutterBoxMode ShowCutterMarkersMode ViolationDisplay ViolationColor AlwaysDrag DocMenuID LibMenuID DefaultSheetStyle WireAutoJunctionsColor ManualJunctionsColor BusAutoJunctionsColor DefaultDisplayUnit DefaultUnitSystem |
See also
ISch_ServerInterface interface
ISch_Document interface
ISch_Preferences Methods
Get_AddTemplateToClipBoard method
(ISch_Preferences interface)
Syntax
Function Get_AddTemplateToClipBoard : Boolean;
Description
The Get_AddTemplateToClipBoard function when true, adds the current sheet template to the clipboard when you copy or cut from the current schematic sheet.
Example
AddTemp := Prefs.Get_AddTemplateToClipBoard;
See also
ISch_Preferences interface
Get_AlwaysDrag method
(ISch_Preferences interface)
Syntax
Function Get_AlwaysDrag : Boolean;
Description
The Get_AlwaysDrag function returns true if you can drag a group of objects on a schematic document and the electrical wiring stay connected. Note, to keep the connections clean while dragging, press the spacebar to cycle through the different corner modes in Altium Designer.
The function returns false if if wiring are left alone and become disconnected when previously connected objects are being dragged.
Example
AlwaysDrag := Prefs.Get_AlwaysDrag;
See also
ISch_Preferences interface
Get_AutoPanJumpDistance method
(ISch_Preferences interface)
Syntax
Function Get_AutoPanJumpDistance : TCoord;
Description
The Get_AutoPanJumpDistance function gets the size of each auto-panning step. The step size determines how fast the document pans when auto-panning is enabled. The smaller the value, the slower or finer the auto-panning movement.
Example
PanJumpDist := CoordToDxps(Prefs.Get_AutoPanJumpDistance);
See also
ISch_Preferences interface
Get_AutoPanShiftJumpDistance method
(ISch_Preferences interface)
Syntax
Function Get_AutoPanShiftJumpDistance : TCoord;
Description
The Get_AutoPanShiftJumpDistance function returns a value of TCoord type which determines the size of each step when the SHIFT key is held during auto-panning in Altium Designer. The shift step size determines how fast the document pans when auto-panning is enabled and the SHIFT key is pressed. The smaller the value, the slower or finer the auto-panning movement.
Example
JumpDist := Prefs.GetAutoPanShiftJumpDistance;
See also
ISch_Preferences interface
Get_AutoPanStyle method
(ISch_Preferences interface)
Syntax
Function Get_AutoPanStyle : TAutoPanStyle;
Description
Example
See also
ISch_Preferences interface
Get_AutoZoom method
(ISch_Preferences interface)
Syntax
Function Get_AutoZoom : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_BufferedPainting method
(ISch_Preferences interface)
Syntax
Function Get_BufferedPainting : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_BusAutoJunctionsColor method
(ISch_Preferences interface)
Syntax
Function Get_BusAutoJunctionsColor : TColor;
Description
Example
See also
ISch_Preferences interface
Get_ClickClearsSelection method
(ISch_Preferences interface)
Syntax
Function Get_ClickClearsSelection : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_ComponentsCutWires method
(ISch_Preferences interface)
Syntax
Function Get_ComponentsCutWires : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_ConfirmSelectionMemoryClear method
(ISch_Preferences interface)
Syntax
Function Get_ConfirmSelectionMemoryClear : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_ConvertSpecialStrings method
(ISch_Preferences interface)
Syntax
Function Get_ConvertSpecialStrings : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_CtrlDbleClickGoesDown method
(ISch_Preferences interface)
Syntax
Function Get_CtrlDbleClickGoesDown : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_CutterFixedLength method
(ISch_Preferences interface)
Syntax
Function Get_CutterFixedLength : TCoord;
Description
Example
See also
ISch_Preferences interface
Get_CutterGridSizeMultiple method
(ISch_Preferences interface)
Syntax
Function Get_CutterGridSizeMultiple : Integer;
Description
Example
See also
ISch_Preferences interface
Get_DefaultEarthName method
(ISch_Preferences interface)
Syntax
Function Get_DefaultEarthName : WideString;
Description
The DefaultEarthName property denotes the default signal ground name to be used for objects on the schematic document. The default name is EARTH.
The Get_DefaultEarthName function retrieves the earth name string.
Example
See also
ISch_Preferences interface
Get_DefaultPowerGndName method
(ISch_Preferences interface)
Syntax
Function Get_DefaultPowerGndName : WideString;
Description
The DefaultPowerGndName property denotes the default power ground name to be used for objects on the schematic document. The default name is GND.
The Get_DefaultPowerGndName function retrieves the power ground name string.
Example
See also
ISch_Preferences interface
Get_DefaultPrimsPermanent method
(ISch_Preferences interface)
Syntax
Function Get_DefaultPrimsPermanent : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_DefaultSheetStyle method
(ISch_Preferences interface)
Syntax
Function Get_DefaultSheetStyle : TSheetStyle;
Description
Example
See also
ISch_Preferences interface
Get_DefaultSignalGndName method
(ISch_Preferences interface)
Syntax
Function Get_DefaultSignalGndName : WideString;
Description
The DefaultSignalGndName property denotes the default signal ground name to be used for objects on the schematic document. The default name is SGND.
The Get_DefaultSignalGndName function retrieves the signal ground name string.
Example
See also
ISch_Preferences interface
Get_DefaultTemplateFileName method
(ISch_Preferences interface)
Syntax
Function Get_DefaultTemplateFileName : WideString;
Description
Example
See also
ISch_Preferences interface
Get_DefaultUnit method
(ISch_Preferences interface)
Syntax
Function Get_DefaultUnit : TUnit;
Description
Example
See also
ISch_Preferences interface
Get_DefaultUnitSystem method
(ISch_Preferences interface)
Syntax
Function Get_DefaultUnitSystem : TUnitSystem;
Description
Example
See also
ISch_Preferences interface
Get_DisplayPrinterFonts method
(ISch_Preferences interface)
Syntax
Function Get_DisplayPrinterFonts : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_DocMenuID method
(ISch_Preferences interface)
Syntax
Function Get_DocMenuID : Widestring;
Description
The DocMenuID property determines which pop up menu to pop up depending on whether it is a schematic or a library document. The property returns a widestring format which can be either PUSCHMENU or PUSCHLIBMENU strings and they correspond to the entries in the Schematic Editor's resources file (ADVSCH.RCS file).
Example
See also
ISch_Preferences interface
Get_DocumentScope method
(ISch_Preferences interface)
Syntax
Function Get_DocumentScope : TChosenDocumentScope;
Description
The DocumentScope property determines the scope for filtering and selection to be applied to the current document or to any open document in Altium Designer. The Get_DocumentScope method sets the Chosen Document scope.
Example
See also
ISch_Preferences interface
Get_DoubleClickRunsInspector method
(ISch_Preferences interface)
Syntax
Function Get_DoubleClickRunsInspector : Boolean;
Description
This method represents the option to bring up the Inspector dialog instead of the design object's properties dialog when you double click on a design object.
Invoke this function to check if design object's properties dialog is invoked (False) or the Inspector dialog (True) when you double click on a design object.
Example
See also
ISch_Preferences interface
Get_GraphicsCursorStyle method
(ISch_Preferences interface)
Syntax
Function Get_GraphicsCursorStyle : TCursorShape;
Description
Example
See also
ISch_Preferences interface
Get_HotSpotGridDistance method
(ISch_Preferences interface)
Syntax
Function Get_HotSpotGridDistance : Integer;
Description
Example
See also
ISch_Preferences interface
Get_IgnoreSelection method
(ISch_Preferences interface)
Syntax
Function Get_IgnoreSelection : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_LastModelType method
(ISch_Preferences interface)
Syntax
Function Get_LastModelType : WideString;
Description
Example
See also
ISch_Preferences interface
Get_LibMenuID method
(ISch_Preferences interface)
Syntax
Function Get_LibMenuID : Widestring;
Description
Example
See also
ISch_Preferences interface
Get_LibraryScope method
(ISch_Preferences interface)
Syntax
Function Get_LibraryScope : TLibraryScope;
Description
Example
See also
ISch_Preferences interface
Get_MaintainOrthogonal method
(ISch_Preferences interface)
Syntax
Function Get_MaintainOrthogonal : Boolean;
Description
The MaintainOrthogonal property if set to true then when you drag components, any wiring that is dragged with the component is kept orthogonal (i.e. corners at 90 degrees). If this option is disabled, wiring dragged with a component will be repositioned obliquely.
This method gets the property true or false and is used in the MaintainOrthogonal property.
Example
See also
ISch_Preferences interface
Get_ManualJunctionsColor method
(ISch_Preferences interface)
Syntax
Function Get_ManualJunctionsColor : TColor;
Description
Example
See also
ISch_Preferences interface
Get_MarkManualParameters method
(ISch_Preferences interface)
Syntax
Function Get_MarkManualParameters : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_Metafile_NoERCMarkers method
(ISch_Preferences interface)
Syntax
Function Get_Metafile_NoERCMarkers : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_Metafile_ParameterSets method
(ISch_Preferences interface)
Syntax
Function Get_Metafile_ParameterSets : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_MetaFile_Probes method
(ISch_Preferences interface)
Syntax
Function Get_Metafile_Probes : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_MultiPartNamingMethod method
(ISch_Preferences interface)
Syntax
Function Get_MultiPartNamingMethod : Integer;
Description
Example
See also
ISch_Preferences interface
Get_MultiSelectionColor method
(ISch_Preferences interface)
Syntax
Function Get_MultiSelectionColor : TColor;
Description
Example
See also
ISch_Preferences interface
Get_OptimizePolylines method
(ISch_Preferences interface)
Syntax
Function Get_OptimizePolylines : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_OrcadFootPrint method
(ISch_Preferences interface)
Syntax
Function Get_OrcadFootPrint : TOrcadFootPrint;
Description
Example
See also
ISch_Preferences interface
Get_PinNameMargin method
(ISch_Preferences interface)
Syntax
Function Get_PinNameMargin : Integer;
Description
Example
See also
ISch_Preferences interface
Get_PinNumberMargin method
(ISch_Preferences interface)
Syntax
Function Get_PinNumberMargin : Integer;
Description
Example
See also
ISch_Preferences interface
Get_PolylineCutterMode method
(ISch_Preferences interface)
Syntax
Function Get_PolylineCutterMode : TPolylineCutterMode;
Description
Example
See also
ISch_Preferences interface
Get_ResizeColor method
(ISch_Preferences interface)
Syntax
Function Get_ResizeColor : TColor;
Description
Example
See also
ISch_Preferences interface
Get_RunInPlaceEditing method
(ISch_Preferences interface)
Syntax
Function Get_RunInPlaceEditing : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_SelectionColor method
(ISch_Preferences interface)
Syntax
Function Get_SelectionColor : TColor;
Description
Example
See also
ISch_Preferences interface
Get_SelectionReference method
(ISch_Preferences interface)
Syntax
Function Get_SelectionReference : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_Sensitivity method
(ISch_Preferences interface)
Syntax
Function Get_Sensitivity : Integer;
Description
Example
See also
ISch_Preferences interface
Get_SheetStyle_MarginWidth method
(ISch_Preferences interface)
Syntax
Function Get_SheetStyle_MarginWidth (S : TSheetStyle) : TCoord;
Description
Example
See also
ISch_Preferences interface
Get_SheetStyle_XSize method
(ISch_Preferences interface)
Syntax
Function Get_SheetStyle_XSize (S : TSheetStyle) : TCoord;
Description
Example
See also
ISch_Preferences interface
Get_SheetStyle_XZones method
(ISch_Preferences interface)
Syntax
Function Get_SheetStyle_XZones (S : TSheetStyle) : TCoord;
Description
Example
See also
ISch_Preferences interface
Get_SheetStyle_YSize method
(ISch_Preferences interface)
Syntax
Function Get_SheetStyle_YSize (S : TSheetStyle) : TCoord;
Description
Example
See also
ISch_Preferences interface
Get_SheetStyle_YZones method
(ISch_Preferences interface)
Syntax
Function Get_SheetStyle_YZones (S : TSheetStyle) : TCoord;
Description
Example
See also
ISch_Preferences interface
Get_ShowCutterBoxMode method
(ISch_Preferences interface)
Syntax
Function Get_ShowCutterBoxMode : TShowCutterBoxMode;
Description
Example
See also
ISch_Preferences interface
Get_ShowCutterMarkersMode method
(ISch_Preferences interface)
Syntax
Function Get_ShowCutterMarkersMode : TShowCutterMarkersMode;
Description
Example
See also
ISch_Preferences interface
Get_SingleSlashNegation method
(ISch_Preferences interface)
Syntax
Function Get_SingleSlashNegation : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_SnapToCenter method
(ISch_Preferences interface)
Syntax
Function Get_SnapToCenter : Boolean;
Description
This property represents the action where you hold the object being moved or dragged by its reference point (for objects that have one, such as library components or ports), or its center (for objects which do not have a reference point such as a rectangle).
This function returns a boolean value whether the you can snap to the center of a object or not before being moved or dragged by its reference point.
Example
See also
ISch_Preferences interface
Get_SnapToHotSpot method
(ISch_Preferences interface)
Syntax
Function Get_SnapToHotSpot : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_StringIncA method
(ISch_Preferences interface)
Syntax
Function Get_StringIncA : WideString;
Description
Example
See also
ISch_Preferences interface
Get_StringIncB method
(ISch_Preferences interface)
Syntax
Function Get_StringIncB : WideString;
Description
Example
See also
ISch_Preferences interface
Get_TranslateRotateColor method
(ISch_Preferences interface)
Syntax
Function Get_TranslateRotateColor : TColor;
Description
Example
See also
ISch_Preferences interface
Get_UndoRedoStackSize method
(ISch_Preferences interface)
Syntax
Function Get_UndoRedoStackSize : Integer;
Description
Example
See also
ISch_Preferences interface
Get_UseOrcadPortWidth method
(ISch_Preferences interface)
Syntax
Function Get_UseOrcadPortWidth : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_ViolationColorByLevel method
(ISch_Preferences interface)
Syntax
Function Get_ViolationColorByLevel (ALevel : TErrorLevel) : TColor;
Description
Example
See also
ISch_Preferences interface
Get_ViolationDisplayByLevel method
(ISch_Preferences interface)
Syntax
Function Get_ViolationDisplayByLevel (ALevel : TErrorLevel) : Boolean;
Description
Example
See also
ISch_Preferences interface
Get_VisibleGridColor method
(ISch_Preferences interface)
Syntax
Function Get_VisibleGridColor : TColor;
Description
Example
See also
ISch_Preferences interface
Get_VisibleGridStyle method
(ISch_Preferences interface)
Syntax
Function Get_VisibleGridStyle : TVisibleGrid;
Description
Example
See also
ISch_Preferences interface
Get_WireAutoJunctionsColor method
(ISch_Preferences interface)
Syntax
Function Get_WireAutoJunctionsColor : TColor;
Description
Example
See also
ISch_Preferences interface
GridPresetsCount method
(ISch_Preferences interface)
Syntax
Function GridPresetsCount(AUnit : TUnitSystem) : Integer;
Description
Example
See also
ISch_Preferences interface
GridPresetAt method
(ISch_Preferences interface)
Syntax
Function GridPresetAt (AUnit : TUnitSystem; AnIndex : Integer) : IGridSetting;
Description
Example
See also
ISch_Preferences interface
Set_AddTemplateToClipBoard method
(ISch_Preferences interface)
Syntax
Procedure Set_AddTemplateToClipBoard (AValue : Boolean);
Description
The Set_AddTemplateToClipBoard procedure adds the current sheet template to the clipboard when you copy or cut from the current schematic sheet if the True value is passed in as a parameter. Otherwise the template is not copied ot the clipboard when the value is False.
Example
Prefs.Set_AddTemplateToClipBoard(True);
See also
ISch_Preferences interface
Set_AlwaysDrag method
(ISch_Preferences interface)
Syntax
Procedure Set_AlwaysDrag (AValue : Boolean);
Description
The Set_AlwaysDrag procedure if set true you can drag a group of objects on a schematic document and the electrical wiring stay connected. Note, to keep the connections clean while dragging, press the spacebar to cycle through the different corner modes in Altium Designer. Set a false value to leave wiring alone and become disconnected when previously connected objects are being dragged.
Example
Prefs.Set_AlwaysDrag(True);
See also
ISch_Preferences interface
Set_AutoBackupFileCount method
(ISch_Preferences interface)
Syntax
Procedure Set_AutoBackupFileCount (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_AutoBackupTime method
(ISch_Preferences interface)
Syntax
Procedure Set_AutoBackupTime (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_AutoPanJumpDistance method
(ISch_Preferences interface)
Syntax
Procedure Set_AutoPanJumpDistance (AValue : TCoord);
Description
The Set_AutoPanJumpDistance function sets the size of each auto-panning step with a TCoord value. The step size determines how fast the document pans when auto-panning is enabled. The smaller the value, the slower or finer the auto-panning movement.
Example
Prefs.Set_AutoPanJumpDistance(CoordToDxps(Value));
See also
ISch_Preferences interface
Set_AutoPanShiftJumpDistance method
(ISch_Preferences interface)
Syntax
Procedure Set_AutoPanShiftJumpDistance (AValue : TCoord);
Description
The Set_AutoPanShiftJumpDistance sets a value of TCoord type which determines the size of each step when the SHIFT key is held during auto-panning in Altium Designer. The shift step size determines how fast the document pans when auto-panning is enabled and the SHIFT key is pressed. The smaller the value, the slower or finer the auto-panning movement.
Example
Prefs.Set_AutoPanShiftJumpDistance(DxpsToCoord(100));
See also
ISch_Preferences interface
Set_AutoPanStyle method
(ISch_Preferences interface)
Syntax
Procedure Set_AutoPanStyle (AValue : TAutoPanStyle);
Description
Example
See also
ISch_Preferences interface
Set_AutoZoom method
(ISch_Preferences interface)
Syntax
Procedure Set_AutoZoom (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_BufferedPainting method
(ISch_Preferences interface)
Syntax
Procedure Set_BufferedPainting (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_BusAutoJunctionsColor method
(ISch_Preferences interface)
Syntax
Procedure Set_BusAutoJunctionsColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_ClickClearsSelection method
(ISch_Preferences interface)
Syntax
Procedure Set_ClickClearsSelection (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_ComponentsCutWires method
(ISch_Preferences interface)
Syntax
Procedure Set_ComponentsCutWires (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_ConfirmSelectionMemoryClear method
(ISch_Preferences interface)
Syntax
Procedure Set_ConfirmSelectionMemoryClear (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_ConvertSpecialStrings method
(ISch_Preferences interface)
Syntax
Procedure Set_ConvertSpecialStrings (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_CtrlDbleClickGoesDown method
(ISch_Preferences interface)
Syntax
Procedure Set_CtrlDbleClickGoesDown (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_CutterFixedLength method
(ISch_Preferences interface)
Syntax
Procedure Set_CutterFixedLength (AValue : TCoord);
Description
Example
See also
ISch_Preferences interface
Set_CutterGridSizeMultiple method
(ISch_Preferences interface)
Syntax
Procedure Set_CutterGridSizeMultiple (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_DefaultEarthName method
(ISch_Preferences interface)
Syntax
Procedure Set_DefaultEarthName (AValue : WideString);
Description
Example
See also
ISch_Preferences interface
Set_DefaultPowerGndName method
(ISch_Preferences interface)
Syntax
Procedure Set_DefaultPowerGndName (AValue : WideString);
Description
Example
See also
ISch_Preferences interface
Set_DefaultPrimsPermanent method
(ISch_Preferences interface)
Syntax
Procedure Set_DefaultPrimsPermanent (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_DefaultSheetStyle method
(ISch_Preferences interface)
Syntax
Procedure Set_DefaultSheetStyle (AValue : TSheetStyle);
Description
Example
See also
ISch_Preferences interface
Set_DefaultSignalGndName method
(ISch_Preferences interface)
Syntax
Procedure Set_DefaultSignalGndName (AValue : WideString);
Description
Example
See also
ISch_Preferences interface
Set_DefaultTemplateFileName method
(ISch_Preferences interface)
Syntax
Procedure Set_DefaultTemplateFileName (AValue : WideString);
Description
Example
See also
ISch_Preferences interface
Set_DefaultUnit method
(ISch_Preferences interface)
Syntax
Procedure Set_DefaultUnit (AValue : TUnit);
Description
Example
See also
ISch_Preferences interface
Set_DisplayPrinterFonts method
(ISch_Preferences interface)
Syntax
Procedure Set_DisplayPrinterFonts (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_DocMenuID method
(ISch_Preferences interface)
Syntax
Procedure Set_DocMenuID (Const AValue : Widestring);
Description
The DocMenuID property determines which pop up menu to pop up depending on whether it is a schematic or a library document. The property returns a widestring format which can be either PUSCHMENU or PUSCHLIBMENU strings and they correspond to the entries in the Schematic Editor's resources file (ADVSCH.RCS file).
The procedure sets the new Document Menu ID value.
Example
See also
ISch_Preferences interface
Set_DocumentScope method
(ISch_Preferences interface)
Syntax
Procedure Set_DocumentScope (AValue : TChosenDocumentScope);
Description
The DocumentScope property determines the scope for filtering and selection to be applied to the current document or to any open document in Altium Designer. The Set_DocumentScope method sets the Chosen Document scope.
Example
See also
ISch_Preferences interface
Set_DoubleClickRunsInspector method
(ISch_Preferences interface)
Syntax
Procedure Set_DoubleClickRunsInspector (AValue : Boolean);
Description
This method represents the option to bring up the Inspector dialog instead of the design object's properties dialog when you double click on a design object.
Assign false to this AValue parameter to disable this option if you want to see the design object's properties dialog when you double click on a design object.
Example
See also
ISch_Preferences interface
Set_GraphicsCursorStyle method
(ISch_Preferences interface)
Syntax
Procedure Set_GraphicsCursorStyle (AValue : TCursorShape);
Description
Example
See also
ISch_Preferences interface
Set_HotSpotGridDistance method
(ISch_Preferences interface)
Syntax
Procedure Set_HotSpotGridDistance (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_IgnoreSelection method
(ISch_Preferences interface)
Syntax
Procedure Set_IgnoreSelection (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_LastModelType method
(ISch_Preferences interface)
Syntax
Procedure Set_LastModelType (AValue : WideString);
Description
Example
See also
ISch_Preferences interface
Set_LibMenuID method
(ISch_Preferences interface)
Syntax
Procedure Set_LibMenuID (Const AValue : Widestring);
Description
Example
See also
ISch_Preferences interface
Set_LibraryScope method
(ISch_Preferences interface)
Syntax
Procedure Set_LibraryScope (AValue : TLibraryScope);
Description
Example
See also
ISch_Preferences interface
Set_MaintainOrthogonal method
(ISch_Preferences interface)
Syntax
Procedure Set_MaintainOrthogonal (AValue : Boolean);
Description
The MaintainOrthogonal property if set to true then when you drag components, any wiring that is dragged with the component is kept orthogonal (i.e. corners at 90 degrees). If this option is disabled, wiring dragged with a component will be repositioned obliquely.
This method sets the property true or false and is used in the MaintainOrthogonal property.
Example
See also
ISch_Preferences interface
Set_ManualJunctionsColor method
(ISch_Preferences interface)
Syntax
Procedure Set_ManualJunctionsColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_MarkManualParameters method
(ISch_Preferences interface)
Syntax
Procedure Set_MarkManualParameters (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_Metafile_NoERCMarkers method
(ISch_Preferences interface)
Syntax
Procedure Set_Metafile_NoERCMarkers (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_Metafile_ParameterSets method
(ISch_Preferences interface)
Syntax
Procedure Set_Metafile_ParameterSets (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_MetaFile_Probes method
(ISch_Preferences interface)
Syntax
Procedure Set_Metafile_Probes(AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_MultiPartNamingMethod method
(ISch_Preferences interface)
Syntax
Procedure Set_MultiPartNamingMethod (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_MultiSelectionColor method
(ISch_Preferences interface)
Syntax
Procedure Set_MultiSelectionColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_OptimizePolylines method
(ISch_Preferences interface)
Syntax
Procedure Set_OptimizePolylines (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_OrcadFootPrint method
(ISch_Preferences interface)
Syntax
Procedure Set_OrcadFootPrint (AValue : TOrcadFootPrint);
Description
Example
See also
ISch_Preferences interface
Set_PinNameMargin method
(ISch_Preferences interface)
Syntax
Procedure Set_PinNameMargin (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_PinNumberMargin method
(ISch_Preferences interface)
Syntax
Procedure Set_PinNumberMargin (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_PolylineCutterMode method
(ISch_Preferences interface)
Syntax
Procedure Set_PolylineCutterMode (AValue : TPolylineCutterMode);
Description
Example
See also
ISch_Preferences interface
Set_ResizeColor method
(ISch_Preferences interface)
Syntax
Procedure Set_ResizeColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_RunInPlaceEditing method
(ISch_Preferences interface)
Syntax
Procedure Set_RunInPlaceEditing (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_SelectionColor method
(ISch_Preferences interface)
Syntax
Procedure Set_SelectionColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_SelectionReference method
(ISch_Preferences interface)
Syntax
Procedure Set_SelectionReference (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_Sensitivity method
(ISch_Preferences interface)
Syntax
Procedure Set_Sensitivity (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_ShowCutterBoxMode method
(ISch_Preferences interface)
Syntax
Procedure Set_ShowCutterBoxMode (AValue : TShowCutterBoxMode);
Description
Example
See also
ISch_Preferences interface
Set_ShowCutterMarkersMode method
(ISch_Preferences interface)
Syntax
Procedure Set_ShowCutterMarkersMode (AValue : TShowCutterMarkersMode);
Description
Example
See also
ISch_Preferences interface
Set_SingleSlashNegation method
(ISch_Preferences interface)
Syntax
Procedure Set_SingleSlashNegation (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_SnapToCenter method
(ISch_Preferences interface)
Syntax
Procedure Set_SnapToCenter (AValue : Boolean);
Description
This SnapToCenter property represents the action where you hold the object being moved or dragged by its reference point (for objects that have one, such as library components or ports), or its center (for objects which do not have a reference point such as a rectangle).
The procedure sets whether you can snap to center of the objects or not.
Example
See also
ISch_Preferences interface
Set_SnapToHotSpot method
(ISch_Preferences interface)
Syntax
Procedure Set_SnapToHotSpot (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_StringIncA method
(ISch_Preferences interface)
Syntax
Procedure Set_StringIncA (AValue : WideString);
Description
The Set_StringIncA method represents a value to auto-increment on pin designators of a component when you are placing pins for a component. This is used for building components in the Library editor. Normally you would use a positive increment value for pin designators and negative increment value for pin names. Eg 1, 2,3 for pin designators and D8, D7, D6 for pin names. Thus Primary = 1 and Secondary = -1 and set Display Name to D8 and Designator to 1 in the Pin Properties dialog before you place the first pin.
This method sets the increment value for the pin designators and the StringIncB method sets the increment value for the pin names.
This method is used by the StringIncA property.
Example
See also
ISch_Preferences interface
Set_StringIncB method
(ISch_Preferences interface)
Syntax
Procedure Set_StringIncB (AValue : WideString);
Description
The Set_StringIncB method represents a value to auto-increment on pin designators of a component when you are placing pins for a component. This is used for building components in the Library editor. Normally you would use a positive increment value for pin designators and negative increment value for pin names. Eg 1, 2,3 for pin designators and D8, D7, D6 for pin names. Thus Primary = 1 and Secondary = -1 and set Display Name to D8 and Designator to 1 in the Pin Properties dialog before you place the first pin.
This method sets the increment value for the pin names and the StringIncA method sets the increment value for the pin designators.
This method is used by the StringIncB property.
Example
See also
ISch_Preferences interface
Set_TranslateRotateColor method
(ISch_Preferences interface)
Syntax
Procedure Set_TranslateRotateColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_UndoRedoStackSize method
(ISch_Preferences interface)
Syntax
Procedure Set_UndoRedoStackSize (AValue : Integer);
Description
Example
See also
ISch_Preferences interface
Set_UseOrcadPortWidth method
(ISch_Preferences interface)
Syntax
Procedure Set_UseOrcadPortWidth (AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_ViolationColorByLevel method
(ISch_Preferences interface)
Syntax
Procedure Set_ViolationColorByLevel (ALevel : TErrorLevel;AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_ViolationDisplayByLevel method
(ISch_Preferences interface)
Syntax
Procedure Set_ViolationDisplayByLevel (ALevel : TErrorLevel;AValue : Boolean);
Description
Example
See also
ISch_Preferences interface
Set_VisibleGridColor method
(ISch_Preferences interface)
Syntax
Procedure Set_VisibleGridColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
Set_VisibleGridStyle method
(ISch_Preferences interface)
Syntax
Procedure Set_VisibleGridStyle (AValue : TVisibleGrid);
Description
Example
See also
ISch_Preferences interface
Set_WireAutoJunctionsColor method
(ISch_Preferences interface)
Syntax
Procedure Set_WireAutoJunctionsColor (AValue : TColor);
Description
Example
See also
ISch_Preferences interface
ISch_Preferences Properties
WireAutoJunctionsColor property
(ISch_Preferences interface)
Syntax
Property WireAutoJunctionsColor : TColor Read Get_WireAutoJunctionsColor Write Set_WireAutoJunctionsColor;
Description
This property determines the color of the auto generated junctions on the schematic document. This property is supported by the GetState_WireAutoJunctionsColor and SetState_WireAutoJunctionsColor methods.
Example
See also
ISch_Preferences interface
TColor type
VisibleGridStyle property
(ISch_Preferences interface)
Syntax
Property VisibleGridStyle : TVisibleGrid Read Get_VisibleGridStyle Write Set_VisibleGridStyle ;
Description
This property determines the lined or dotted style of the visible grid on the schematic document.
Example
See also
ISch_Preferences interface
TVisibleGrid type
VisibleGridColor property
(ISch_Preferences interface)
Syntax
Property VisibleGridColor : TColor Read Get_VisibleGridColor Write Set_VisibleGridColor ;
Description
This property determines the color of the visible grid on schematic sheets.
Example
See also
ISch_Preferences interface
TColor type
ViolationDisplay property
(ISch_Preferences interface)
Syntax
Property ViolationDisplay [L : TErrorLevel] : Boolean Read Get_ViolationDisplayByLevel Write Set_ViolationDisplayByLevel;
Description
This ViolationDisplay property determines the error level for the violation display.
Example
See also
ISch_Preferences interface
TErrorLevel type from Workspace Manager API
ViolationColor property
(ISch_Preferences interface)
Syntax
Property ViolationColor [L : TErrorLevel] : TColor Read Get_ViolationColorByLevel Write Set_ViolationColorByLevel ;
Description
This ViolationColor property determines the color of the violation depending on the error level. This property is supported by the Get_ViolationColorByLevel and Set_ViolationColorByLevel methods.
Example
See also
ISch_Preferences interface
TColor type
TErrorLevel type in Workspace Manager API
UseOrcadPortWidth property
(ISch_Preferences interface)
Syntax
Property UseOrcadPortWidth : Boolean Read Get_UseOrcadPortWidth Write Set_UseOrcadPortWidth;
Description
The UseOrcadPortWidth property determines whether the ports can be re-sized in the Schematic Editor. This is important if the design has to go back to Orcad(TM) (which does not support re-sizing ports).
This property is supported by the Get_UseOrcadPortWidth and Set_UseOrcadPortWidth methods.
Example
See also
ISch_Preferences interface
UndoRedoStackSize property
(ISch_Preferences interface)
Syntax
Property UndoRedoStackSize : Integer Read Get_UndoRedoStackSize Write Set_UndoRedoStackSize ;
Description
This property shows the number of actions held in the Undo Buffer. The default value is 50. Define a value to set the Undo Buffer size. There is no limit to the size of the Undo Buffer, however, the larger the size, the more main memory is used to store undo information.
Example
See also
ISch_Preferences interface
TranslateRotateColor property
(ISch_Preferences interface)
Syntax
Property TranslateRotateColor : TColor Read Get_TranslateRotateColor Write Set_TranslateRotateColor ;
Description
This property sets or gets the color associated with translation or rotation.
Example
See also
ISch_Preferences interface
TColor type
StringIncB property
(ISch_Preferences interface)
Syntax
Property StringIncB : WideString Read Get_StringIncB Write Set_StringIncB ;
Description
This property represents a value to auto-increment on pin names of a component when you are placing pins for a component. This can be used for building components in the Library editor.
Normally you would use a positive increment value for pin designators and negative increment value for pin names. Eg 1, 2,3 for pin designators and D8, D7, D6 for pin names. Thus Primary = 1 and Secondary = -1 and set Display Name to D8 and Designator to 1 in the Pin Properties dialog before you place the first pin.
This property is supported by the Get_StringIncB and Set_StringIncB methods.
Example
See also
ISch_Preferences interface
StringIncA property
(ISch_Preferences interface)
Syntax
Property StringIncA : WideString Read Get_StringIncA Write Set_StringIncA ;
Description
This property represents a value to auto-increment on pin designators of a component when you are placing pins for a component. This is used for building components in the Library editor. Normally you would use a positive increment value for pin designators and negative increment value for pin names. Eg 1, 2,3 for pin designators and D8, D7, D6 for pin names. Thus Primary = 1 and Secondary = -1 and set Display Name to D8 and Designator to 1 in the Pin Properties dialog before you place the first pin.
This property is supported by the Get_StringIncA and Set_StringIncA methods.
Example
See also
ISch_Preferences interface
SnapToHotSpot property
(ISch_Preferences interface)
Syntax
Property SnapToHotSpot : Boolean Read Get_SnapToHotSpot Write Set_SnapToHotSpot ;
Description
This property represents the action where you hold the object being moved or dragged by the nearest electrical hot spot (eg, the end of a pin) when moving or dragging.
Example
See also
ISch_Preferences interface
SnapToCenter property
(ISch_Preferences interface)
Syntax
Property SnapToCenter : Boolean Read Get_SnapToCenter Write Set_SnapToCenter ;
Description
This property represents the action where you hold the object being moved or dragged by its reference point (for objects that have one, such as library components or ports), or its center (for objects which do not have a reference point such as a rectangle).
Example
See also
ISch_Preferences interface
SingleSlashNegation property
(ISch_Preferences interface)
Syntax
Property SingleSlashNegation : Boolean Read Get_SingleSlashNegation Write Set_SingleSlashNegation ;
Description
Example
See also
ISch_Preferences interface
ShowCutterMarkersMode property
(ISch_Preferences interface)
Syntax
Property ShowCutterMarkersMode : TShowCutterMarkersMode Read Get_ShowCutterMarkersMode Write Set_ShowCutterMarkersMode ;
Description
Example
See also
ISch_Preferences interface
ShowCutterBoxMode property
(ISch_Preferences interface)
Syntax
Property ShowCutterBoxMode : TShowCutterBoxMode Read Get_ShowCutterBoxMode Write Set_ShowCutterBoxMode ;
Description
Example
See also
ISch_Preferences interface
SheetStyle_YZones property
(ISch_Preferences interface)
Syntax
Property SheetStyle_YZones [S : TSheetStyle]: TCoord Read Get_SheetStyle_YZones;
Description
Example
See also
ISch_Preferences interface
SheetStyle_YSize property
(ISch_Preferences interface)
Syntax
Property SheetStyle_YSize [S : TSheetStyle]: TCoord Read Get_SheetStyle_YSize;
Description
Example
See also
ISch_Preferences interface
SheetStyle_XZones property
(ISch_Preferences interface)
Syntax
Property SheetStyle_XZones [S : TSheetStyle]: TCoord Read Get_SheetStyle_XZones;
Description
Example
See also
ISch_Preferences interface
SheetStyle_XSize property
(ISch_Preferences interface)
Syntax
Property SheetStyle_XSize [S : TSheetStyle]: TCoord Read Get_SheetStyle_XSize;
Description
Example
See also
ISch_Preferences interface
SheetStyle_MarginWidth[S property
(ISch_Preferences interface)
Syntax
Property SheetStyle_MarginWidth[S : TSheetStyle]: TCoord Read Get_SheetStyle_MarginWidth;
Description
Example
See also
ISch_Preferences interface
Sensitivity property
(ISch_Preferences interface)
Syntax
Property Sensitivity : Integer Read Get_Sensitivity Write Set_Sensitivity ;
Description
Example
See also
ISch_Preferences interface
SelectionReference property
(ISch_Preferences interface)
Syntax
Property SelectionReference : Boolean Read Get_SelectionReference Write Set_SelectionReference ;
Description
Example
See also
ISch_Preferences interface
SelectionColor property
(ISch_Preferences interface)
Syntax
Property SelectionColor : TColor Read Get_SelectionColor Write Set_SelectionColor ;
Description
Example
See also
ISch_Preferences interface
RunInPlaceEditing property
(ISch_Preferences interface)
Syntax
Property RunInPlaceEditing : Boolean Read Get_RunInPlaceEditing Write Set_RunInPlaceEditing ;
Description
This property if set to true, then the focused text field may be directly edited within the Schematic Editor, rather than in a dialog box. After focusing the field you wish to modify, clicking upon it again or pressing the F2 shortcut key will open the field for editing.
If this property is set to false, you cannot edit the text directly and you have to edit it from the Parameter Properties dialog. You can just graphically move this text field.
Example
See also
ISch_Preferences interface
ResizeColor property
(ISch_Preferences interface)
Syntax
Property ResizeColor : TColor Read Get_ResizeColor Write Set_ResizeColor ;
Description
Example
See also
ISch_Preferences interface
TColor type
PolylineCutterMode property
(ISch_Preferences interface)
Syntax
Property PolylineCutterMode : TPolylineCutterMode Read Get_PolylineCutterMode Write Set_PolylineCutterMode ;
Description
Example
See also
ISch_Preferences interface
PinNumberMargin property
(ISch_Preferences interface)
Syntax
Property PinNumberMargin : Integer Read Get_PinNumberMargin Write Set_PinNumberMargin ;
Description
Normally, component pin numbers are displayed outside the body of the component, directly above the corresponding pin line. This property controls the placement of the pin numbers. It specifies the distance (in hundredths of an inch) from the component outline to the start of the pin number text. The default is 8.
Example
See also
ISch_Preferences interface
PinNameMargin property
(ISch_Preferences interface)
Syntax
Property PinNameMargin : Integer Read Get_PinNameMargin Write Set_PinNameMargin ;
Description
Normally, component pin names are displayed inside the body of the component, adjacent to the corresponding pin. This property controls the placement of component pin names. It specifies the distance (in hundredths of an inch) from the component outline to the start of the pin name text. The default is 5.
Example
See also
ISch_Preferences interface
OrcadFootPrint property
(ISch_Preferences interface)
Syntax
Property OrcadFootPrint : TOrcadFootPrint Read Get_OrcadFootPrint Write Set_OrcadFootPrint ;
Description
Example
See also
ISch_Preferences interface
OptimizePolylines property
(ISch_Preferences interface)
Syntax
Property OptimizePolylines : Boolean Read Get_OptimizePolylines Write Set_OptimizePolylines ;
Description
If this property is set to true, then extra wires, poly-lines or buses are prevented from overlapping on top of each other and the overlapping wires, poly-lines or busses are removed automatically.
Note: You need to enable this option to have the ability to automatically cut a wire and terminate onto any two pins of this component when this component is dropped onto this wire.
Example
See also
ISch_Preferences interface
MultiSelectionColor property
(ISch_Preferences interface)
Syntax
Property MultiSelectionColor : TColor Read Get_MultiSelectionColor Write Set_MultiSelectionColor ;
Description
This property determines the color of the multi_selection, that is multiple objects on the schematic object is being selected.
Example
See also
ISch_Preferences interface
TColor type
MultiPartNamingMethod property
(ISch_Preferences interface)
Syntax
Property MultiPartNamingMethod : Integer Read Get_MultiPartNamingMethod Write Set_MultiPartNamingMethod ;
Description
Example
See also
ISch_Preferences interface
Metafile_ParameterSets property
(ISch_Preferences interface)
Syntax
Property Metafile_ParameterSets : Boolean Read Get_Metafile_ParameterSets Write Set_Metafile_ParameterSets ;
Description
This property if set to true includes Parameter Sets design objects when copying to the clipboard or when printing a schematic document.
Example
See also
ISch_Preferences interface
Metafile_NoERCMarkers property
(ISch_Preferences interface)
Syntax
Property Metafile_NoERCMarkers : Boolean Read Get_Metafile_NoERCMarkers Write Set_Metafile_NoERCMarkers ;
Description
Example
See also
ISch_Preferences interface
MarkManualParameters property
(ISch_Preferences interface)
Syntax
Property MarkManualParameters : Boolean Read Get_MarkManualParameters Write Set_MarkManualParameters;
Description
The MarkManualParameters property denotes whether the dots will be displayed or not when parameters of components for example are auto positioned. If true, the dot for the parameter will appear when its associated component has been rotated/moved on the schematic document.
This property is supported by the Get_MarkManualParameters and Set_MarkManualParameters methods.
Example
See also
ISch_Preferences interface
ManualJunctionsColor property
(ISch_Preferences interface)
Syntax
Property ManualJunctionsColor : TColor Read Get_ManualJunctionsColor Write Set_ManualJunctionsColor;
Description
Example
See also
ISch_Preferences interface
TColor type
MaintainOrthogonal property
(ISch_Preferences interface)
Syntax
Property MaintainOrthogonal : Boolean Read Get_MaintainOrthogonal Write Set_MaintainOrthogonal ;
Description
This property if set to true then when you drag components, any wiring that is dragged with the component is kept orthogonal (i.e. corners at 90 degrees). If this option is disabled, wiring dragged with a component will be repositioned obliquely.
This property is supported by the Get_MaintainOrthogonal and Set_MaintainOrthogonal methods.
Example
See also
ISch_Preferences interface
LibraryScope property
(ISch_Preferences interface)
Syntax
Property LibraryScope : TLibraryScope Read Get_LibraryScope Write Set_LibraryScope ;
Description
This property represents scope for filtering and selection to be applied to the current component on a library sheet or to all components of an open library in Altium Designer.
Example
See also
ISch_Preferences interface
TLibraryScope type
LibMenuID property
(ISch_Preferences interface)
Syntax
Property LibMenuID : Widestring Read Get_LibMenuID Write Set_LibMenuID;
Description
Example
See also
ISch_Preferences interface
LastModelType property
(ISch_Preferences interface)
Syntax
Property LastModelType : WideString Read Get_LastModelType Write Set_LastModelType ;
Description
Example
See also
ISch_Preferences interface
Import_FromUser method
(ISch_Preferences interface)
Syntax
Function Import_FromUser : Boolean;
Description
Example
See also
ISch_Preferences interface
IgnoreSelection property
(ISch_Preferences interface)
Syntax
Property IgnoreSelection : Boolean Read Get_IgnoreSelection Write Set_IgnoreSelection ;
Description
Example
See also
ISch_Preferences interface
HotSpotGridDistance property
(ISch_Preferences interface)
Syntax
Property HotSpotGridDistance : Integer Read Get_HotSpotGridDistance Write Set_HotSpotGridDistance ;
Description
Example
See also
ISch_Preferences interface
GraphicsCursorStyle property
(ISch_Preferences interface)
Syntax
Property GraphicsCursorStyle : TCursorShape Read Get_GraphicsCursorStyle Write Set_GraphicsCursorStyle ;
Description
Example
See also
ISch_Preferences interface
AddTemplateToClipBoard property
(ISch_Preferences interface)
Syntax
Property AddTemplateToClipBoard : Boolean Read Get_AddTemplateToClipBoard Write Set_AddTemplateToClipBoard ;
Description
The AddTemplateToClipBoard property determines whether the current sheet template can be added to to the clipboard when you copy or cut from the current schematic sheet.
Example
Prefs.AddTemplateToClipBoard := True;
See also
ISch_Preferences interface
AlwaysDrag property
(ISch_Preferences interface)
Syntax
Property AlwaysDrag : Boolean Read Get_AlwaysDrag Write Set_AlwaysDrag;
Description
This property represents the AlwaysDrag option and every time you are dragging a group of objects on a schematic document, the electrical wiring stay connected if it is true. Note, to keep the connections clean while dragging, press the spacebar to cycle through the different corner modes.
Set it to false and the wiring are left alone and become disconnected when previously connected objects are being dragged.
Example
Prefs.AlwaysDrag := True;
See also
ISch_Preferences interface
AutoPanJumpDistance property
(ISch_Preferences interface)
Syntax
Property AutoPanJumpDistance : TCoord Read Get_AutoPanJumpDistance Write Set_AutoPanJumpDistance ;
Description
This property represents the value to set/get the size of each auto-panning step. The step size determines how fast the document pans when auto-panning is enabled. The smaller the value, the slower or finer the auto-panning movement.
This property is supported by the GetState_AutoPanJumpDistance and SetState_AutoPanJumpDistance methods.
Example
Prefs.AutoPanJumpDistance := CoordToDxps(10);
See also
ISch_Preferences interface
AutoPanShiftJumpDistance property
(ISch_Preferences interface)
Syntax
Property AutoPanShiftJumpDistance : TCoord Read Get_AutoPanShiftJumpDistance Write Set_AutoPanShiftJumpDistance ;
Description
This property represents a value to get/set the size of each step when the SHIFT key is held during auto-panning. The shift step size determines how fast the document pans when auto-panning is enabled and the SHIFT key is pressed. The smaller the value, the slower or finer the auto-panning movement. This property is supported by the Get_AutoPanShiftJumpDistance and Set_AutoPanShiftJumpDistance methods.
Example
Prefs.AutoPanShiftJumpDistance := DxpsToCoord(100);
See also
ISch_Preferences interface
AutoPanStyle property
(ISch_Preferences interface)
Syntax
Property AutoPanStyle : TAutoPanStyle Read Get_AutoPanStyle Write Set_AutoPanStyle ;
Description
Example
See also
ISch_Preferences interface
AutoZoom property
(ISch_Preferences interface)
Syntax
Property AutoZoom : Boolean Read Get_AutoZoom Write Set_AutoZoom ;
Description
This property if set to true the schematic sheet is automatically zoomed when jumping to a component. Zoom level remains as it was if this option is not enabled.
Example
See also
ISch_Preferences interface
BufferedPainting property
(ISch_Preferences interface)
Syntax
Property BufferedPainting : Boolean Read Get_BufferedPainting Write Set_BufferedPainting ;
Description
Example
See also
ISch_Preferences interface
BusAutoJunctionsColor property
(ISch_Preferences interface)
Syntax
Property BusAutoJunctionsColor : TColor Read Get_BusAutoJunctionsColor Write Set_BusAutoJunctionsColor;
Description
Example
See also
ISch_Preferences interface
TColor type
ClickClearsSelection property
(ISch_Preferences interface)
Syntax
Property ClickClearsSelection : Boolean Read Get_ClickClearsSelection Write Set_ClickClearsSelection ;
Description
If this property is set to true, then all design objects are de-selected by clicking any where on the schematic workspace. Set this property to false if you do not want to have this click anywhere to deselect all ability and the selection is cumulative.
Note: regardless of the setting, you can de-select a selected design object by clicking on it.
Example
See also
ISch_Preferences interface
ComponentsCutWires property
(ISch_Preferences interface)
Syntax
Property ComponentsCutWires : Boolean Read Get_ComponentsCutWires Write Set_ComponentsCutWires ;
Description
Set the property to true so you can drop a component onto a schematic wire and then the wire is cut into two segments and the segments are terminated onto any two hot pins of this component automatically. You will need to set the Optimize Wires & Buses option to true first.
Example
See also
ISch_Preferences interface
ConfirmSelectionMemoryClear property
(ISch_Preferences interface)
Syntax
Property ConfirmSelectionMemoryClear : Boolean Read Get_ConfirmSelectionMemoryClear Write Set_ConfirmSelectionMemoryClear;
Description
The selection memories can be used to store the selection state of a set of objects. To prevent inadvertent overwriting of a selection memory, set the property to true.
Example
See also
ISch_Preferences interface
ConvertSpecialStrings property
(ISch_Preferences interface)
Syntax
Property ConvertSpecialStrings : Boolean Read Get_ConvertSpecialStrings Write Set_ConvertSpecialStrings ;
Description
This property when set to true, the contents of the special strings on screen are displayed, as they appear on a printout.
Example
See also
ISch_Preferences interface
CtrlDbleClickGoesDown property
(ISch_Preferences interface)
Syntax
Property CtrlDbleClickGoesDown : Boolean Read Get_CtrlDbleClickGoesDown Write Set_CtrlDbleClickGoesDown ;
Description
This property when set to true, the sub-sheet of its associated sheet symbol by double clicking on this sheet symbol opens in Altium Designer.
Set it to false and when you double-click on a sheet symbol, the change properties dialog is displayed instead.
Example
See also
ISch_Preferences interface
CutterFixedLength property
(ISch_Preferences interface)
Syntax
Property CutterFixedLength : TCoord Read Get_CutterFixedLength Write Set_CutterFixedLength ;
Description
Example
See also
ISch_Preferences interface
CutterGridSizeMultiple property
(ISch_Preferences interface)
Syntax
Property CutterGridSizeMultiple : Integer Read Get_CutterGridSizeMultiple Write Set_CutterGridSizeMultiple ;
Description
Example
See also
ISch_Preferences interface
DefaultDisplayUnit property
(ISch_Preferences interface)
Syntax
Property DefaultDisplayUnit : TUnit Read Get_DefaultUnit Write Set_DefaultUnit;
Description
Example
See also
ISch_Preferences interface
DefaultEarthName property
(ISch_Preferences interface)
Syntax
Property DefaultEarthName : WideString Read Get_DefaultEarthName Write Set_DefaultEarthName ;
Description
The DefaultEarthName denotes the default signal ground name to be used for objects on the schematic document. The default name is EARTH.
This property is supported by the Get_DefaultEarthName and Set_DefaultEarthName methods.
Example
See also
ISch_Preferences interface
DefaultPowerGndName property
(ISch_Preferences interface)
Syntax
Property DefaultPowerGndName : WideString Read Get_DefaultPowerGndName Write Set_DefaultPowerGndName ;
Description
Example
See also
ISch_Preferences interface
DefaultPrimsPermanent property
(ISch_Preferences interface)
Syntax
Property DefaultPrimsPermanent : Boolean Read Get_DefaultPrimsPermanent Write Set_DefaultPrimsPermanent ;
Description
Example
See also
ISch_Preferences interface
DefaultSheetStyle property
(ISch_Preferences interface)
Syntax
Property DefaultSheetStyle : TSheetStyle Read Get_DefaultSheetStyle Write Set_DefaultSheetStyle;
Description
The DefaultSheetStyle property denotes the sheet style used for the workspace.
There are various sheet styles; A4,A3,A2,A1,A0, A,C,D,E,Letter, Legal, Tabloid, Orcad A, Orcad B, Orcad C, Orcad D, Orcad E.
Example
See also
ISch_Preferences interface
TSheetStyle type
DefaultSignalGndName property
(ISch_Preferences interface)
Syntax
Property DefaultSignalGndName : WideString Read Get_DefaultSignalGndName Write Set_DefaultSignalGndName ;
Description
The DefaultSignalGndName denotes the default signal ground name to be used for objects on the schematic document. The default name is SGND.
Example
See also
ISch_Preferences interface
DefaultTemplateFileName property
(ISch_Preferences interface)
Syntax
Property DefaultTemplateFileName : WideString Read Get_DefaultTemplateFileName Write Set_DefaultTemplateFileName ;
Description
Example
See also
ISch_Preferences interface
DefaultUnitSystem property
(ISch_Preferences interface)
Syntax
Property DefaultUnitSystem : TUnitSystem Read Get_DefaultUnitSystem;
Description
Example
See also
ISch_Preferences interface
DisplayPrinterFonts property
(ISch_Preferences interface)
Syntax
Property DisplayPrinterFonts : Boolean Read Get_DisplayPrinterFonts Write Set_DisplayPrinterFonts ;
Description
The DisplayPrinterFonts property denotes whether the printer fonts can be displayed or not.
Example
See also
ISch_Preferences interface
DocMenuID property
(ISch_Preferences interface)
Syntax
Property DocMenuID : Widestring Read Get_DocMenuID Write Set_DocMenuID;
Description
The DocMenuID property determines which pop up menu to pop up depending on whether it is a schematic or a library document. The property returns a widestring format which can be either PUSCHMENU or PUSCHLIBMENU strings and they correspond to the entries in the Schematic Editor's resources file (ADVSCH.RCS file).
Example
See also
ISch_Preferences interface
DocumentScope property
(ISch_Preferences interface)
Syntax
Property DocumentScope : TChosenDocumentScope Read Get_DocumentScope Write Set_DocumentScope ;
Description
The DocumentScope property determines the scope for filtering and selection to be applied to the current document or to any open document in Altium Designer.
Example
See also
ISch_Preferences interface
TChosenDocumentScope type
DoubleClickRunsInspector property
(ISch_Preferences interface)
Syntax
Property DoubleClickRunsInspector : Boolean Read Get_DoubleClickRunsInspector Write Set_DoubleClickRunsInspector ;
Description
This property represents the option to bring up the Inspector dialog instead of the design object's properties dialog when you double click on a design object.
Assign false to this property to disable this option if you want to see the design object's properties dialog when you double click on a design object. Invoke this property to check if design object's properties dialog is invoked (False) or the Inspector dialog (True) when you double click on a design object.
Example
See also
ISch_Preferences interface
IGridSetting interface
Overview
The IGridSetting interface represents the grid settings for the Schematic documents part of a project.
The IGridSetting interface hierarchy is a standalone.
IGridSetting methods GetState_SnapGridOn GetState_HotspotGridOn GetState_VisibleGridOn GetState_SnapGridSize GetState_HotspotGridSize GetState_VisibleGridSize SetState_SnapGridOn SetState_HotspotGridOn SetState_VisibleGridOn SetState_SnapGridSize SetState_HotspotGridSize SetState_VisibleGridSize I_ObjectAddress CopyTo SameAs | IGridSetting properties SnapGridOn HotspotGridOn VisibleGridOn SnapGridSize HotspotGridSize VisibleGridSize |
See also
ISch_Preferences interface
IGridSetting Methods
CopyTo method
(IGridSetting interface)
Syntax
Procedure CopyTo(AGridSetting : IGridSetting);
Description
Example
See also
IGridSetting interface
GetState_HotspotGridOn method
(IGridSetting interface)
Syntax
Function GetState_HotspotGridOn : Boolean;
Description
This function determines whether the hot spot grid is enabled or not and returns a True or False value.
Example
If GridSetting.GetState_HotspotGridOn = True Then HotspotGridSize := MilsToCoord(4);
See also
IGridSetting interface
GetState_HotspotGridSize method
(IGridSetting interface)
Syntax
Function GetState_HotspotGridSize : TCoord;
Description
This function determines the size of the hot spot grid size.
Example
If GridSetting.GetState_HotspotGridOn = True Then HotspotGridSize := MilsToCoord(4);
See also
IGridSetting interface
GetState_SnapGridOn method
(IGridSetting interface)
Syntax
Function GetState_SnapGridOn : Boolean;
Description
Example
See also
IGridSetting interface
GetState_SnapGridSize method
(IGridSetting interface)
Syntax
Function GetState_SnapGridSize : TCoord;
Description
Example
See also
IGridSetting interface
GetState_VisibleGridOn method
(IGridSetting interface)
Syntax
Function GetState_VisibleGridOn : Boolean;
Description
Example
See also
IGridSetting interface
GetState_VisibleGridSize method
(IGridSetting interface)
Syntax
Function GetState_VisibleGridSize : TCoord;
Description
Example
See also
IGridSetting interface
I_ObjectAddress method
(IGridSetting interface)
Syntax
Function I_ObjectAddress : Pointer;
Description
This function returns the object address of the IGridSetting interface as a pointer type.
Example
If GridSetting.I_ObjectAddress <> Nil Then ShowMessage(IntToStr(GridSetting.I_ObjectAddress));
See also
IGridSetting interface
SameAs method
(IGridSetting interface)
Syntax
Function SameAs(AGridSetting : IGridSetting) : Boolean;
Description
Example
See also
IGridSetting interface
SetState_HotspotGridOn method
(IGridSetting interface)
Syntax
Procedure SetState_HotspotGridOn (B : Boolean);
Description
Example
See also
IGridSetting interface
SetState_HotspotGridSize method
(IGridSetting interface)
Syntax
Procedure SetState_HotspotGridSize (C : TCoord);
Description
Example
See also
IGridSetting interface
SetState_SnapGridOn method
(IGridSetting interface)
Syntax
Procedure SetState_SnapGridOn (B : Boolean);
Description
Example
See also
IGridSetting interface
SetState_SnapGridSize method
(IGridSetting interface)
Syntax
Procedure SetState_SnapGridSize (C : TCoord);
Description
Example
See also
IGridSetting interface
SetState_VisibleGridOn method
(IGridSetting interface)
Syntax
Procedure SetState_VisibleGridOn (B : Boolean);
Description
Example
See also
IGridSetting interface
SetState_VisibleGridSize method
(IGridSetting interface)
Syntax
Procedure SetState_VisibleGridSize (C : TCoord);
Description
Example
See also
IGridSetting interface
IGridSetting Properties
HotspotGridOn property
(IGridSetting interface)
Syntax
Property HotspotGridOn : Boolean Read GetState_HotspotGridOn Write SetState_HotspotGridOn ;
Description
Example
See also
IGridSetting interface
HotspotGridSize property
(IGridSetting interface)
Syntax
Property HotspotGridSize : TCoord Read GetState_HotspotGridSize Write SetState_HotspotGridSize ;
Description
Example
See also
IGridSetting interface
SnapGridOn property
(IGridSetting interface)
Syntax
Property SnapGridOn : Boolean Read GetState_SnapGridOn Write SetState_SnapGridOn ;
Description
Example
See also
IGridSetting interface
SnapGridSize property
(IGridSetting interface)
Syntax
Property SnapGridSize : TCoord Read GetState_SnapGridSize Write SetState_SnapGridSize ;
Description
Example
See also
IGridSetting interface
VisibleGridOn property
(IGridSetting interface)
Syntax
Property VisibleGridOn : Boolean Read GetState_VisibleGridOn Write SetState_VisibleGridOn ;
Description
Example
See also
IGridSetting interface
VisibleGridSize property
(IGridSetting interface)
Syntax
Property VisibleGridSize : TCoord Read GetState_VisibleGridSize Write SetState_VisibleGridSize ;
Description
Example
See also
IGridSetting interface
ISch_FontManager
ISch_FontManager Interface
Overview
The ISch_FontManager interface represents the internal font manager in Schematic Editor that manages fonts for text based objects on schematic documents.
To have access to the ISch_FontManager interface, you need to invoke the SchServer function;
FontManager := SchServer.FontManager;
ISch_FontManager methods GetState_DefaultHorizontalSysFontId GetState_DefaultVerticalSysFontId GetState_FontCount GetState_Rotation GetState_Size GetState_Italic GetState_Bold GetState_UnderLine GetState_StrikeOut GetState_SaveFlag GetState_FontName GetFontHandle GetFontID GetFontSpec GetFontSize IsFontVertical Import_FromUser | ISch_FontManager properties DefaultHorizontalSysFontId DefaultVerticalSysFontId FontCount Rotation Size Italic Bold UnderLine StrikeOut SaveFlag FontName |
Example
SchLabel.Orientation := eRotate90; SchLabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Times New Roman');
See also
ISch_Label interface
ISch_FontManager Methods
GetFontHandle method
(ISch_FontManager interface)
Syntax
Function GetFontHandle (AnId: Integer; Const CurrentLogFont : TLogFont; ScreenSize : Integer): THandle;
Description
This function retrieves the handle of the font.
Example
See also
ISch_FontManager interface
GetFontID method
(ISch_FontManager interface)
Syntax
Function GetFontID (Size,Rotation : Integer; Underline,Italic,Bold,StrikeOut : Boolean; Const FontName : WideString) : TFontID;
Description
This function retrieves the font ID of TFontID type that can be used to set the font style of a text based object such as a ISch_Label object.
Example
ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Arial');
See also
ISch_FontManager interface
TFontID type
GetFontSpec method
(ISch_FontManager interface)
Syntax
Procedure GetFontSpec (FontID : TFontID; Var Size,Rotation : Integer; Var Underline,Italic,Bold,StrikeOut : Boolean; Var FontName : WideString);
Description
Every font used in the Schematic document has its own FontID. You can invoke the GetFontSpec function to retrieve font specifications for the supplied Font ID.
Example
See also
ISch_FontManager interface
GetFontSize method
(ISch_FontManager interface)
Syntax
Function GetFontSize (FontID : TFontID) : Integer;
Description
Example
See also
ISch_FontManager interface
GetState_Bold method
(ISch_FontManager interface)
Syntax
Function GetState_Bold (AnId : Integer) : Boolean;
Description
This Bold property determines the Bold style for the font. This property is supported by the GetState_Bold method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,True,False,'Times New Roman');
See also
ISch_FontManager interface
GetState_DefaultHorizontalSysFontId method
(ISch_FontManager interface)
Syntax
Function GetState_DefaultHorizontalSysFontId : Integer;
Description
Example
See also
ISch_FontManager interface
GetState_DefaultVerticalSysFontId method
(ISch_FontManager interface)
Syntax
Function GetState_DefaultVerticalSysFontId : Integer;
Description
Example
See also
ISch_FontManager interface
GetState_FontCount method
(ISch_FontManager interface)
Syntax
Function GetState_FontCount : Integer;
Description
The FontCount property returns the number of fonts used in the Altium Designer. This property is supported by the GetState_FontCount method.
Example
See also
ISch_FontManager interface
GetState_FontName method
(ISch_FontManager interface)
Syntax
Function GetState_FontName (AnId : Integer) : TFontName;
Description
This indexed FontName property returns the name of an indexed font as a string. Every computer could have a different table of fonts used. The FontName property is supported by the GetState_FontName method.
Example
See also
ISch_FontManager interface
GetState_Italic method
(ISch_FontManager interface)
Syntax
Function GetState_Italic (AnId : Integer) : Boolean;
Description
This Italic property determines the Italic style for the font. This property is supported by the GetState_Italic method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'
See also
ISch_FontManager interface
GetState_Rotation method
(ISch_FontManager interface)
Syntax
Function GetState_Rotation (AnId : Integer) : Integer;
Description
The Rotation property determines the orientation of the text object. For ISch_Labels, it is necessary to set the Orientation property of these ISch_Labels as well as the Rotation property for the FontID variables. This property is supported by the GetState_Rotation method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Times New Roman'); // Note eRotate90 for the Orientation property, and a 90 value as a parameter for the GetFontID method.
See also
ISch_FontManager interface
GetState_SaveFlag method
(ISch_FontManager interface)
Syntax
Function GetState_SaveFlag (AnId : Integer) : Boolean;
Description
Example
See also
ISch_FontManager interface
GetState_Size method
(ISch_FontManager interface)
Syntax
Function GetState_Size (AnId : Integer) : Integer;
Description
The Size property determines the font size. This property is supported by the GetState_Size method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Times New Roman Font size to 14 points - 1st parameter
See also
ISch_FontManager interface
GetState_StrikeOut method
(ISch_FontManager interface)
Syntax
Function GetState_StrikeOut (AnId : Integer) : Boolean;
Description
The StrikeOut property determines whether the font is striked out or not. This property is supported by the GetState_StrikeOut method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (sixth parameter)
See also
ISch_FontManager interface
GetState_UnderLine method
(ISch_FontManager interface)
Syntax
Function GetState_UnderLine (AnId : Integer) : Boolean;
Description
This UnderLine property determines whether the font is underlined or not. This property is supported by the GetState_UnderLine method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (third parameter)
See also
ISch_FontManager interface
IsFontVertical method
(ISch_FontManager interface)
Syntax
Function IsFontVertical(FontID : TFontID) : Boolean;
Description
This function determines whether the font is vertically orientated or not.
Example
See also
ISch_FontManager interface
ISch_FontManager Properties
Bold property
(ISch_FontManager interface)
Syntax
Property Bold [Id : Integer] : Boolean Read GetState_Bold ;
Description
This Bold property determines the Bold style for the font. This property is supported by the GetState_Bold method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,True,False,'Times New Roman');
See also
ISch_FontManager interface
GetFontID method
DefaultHorizontalSysFontId property
(ISch_FontManager interface)
Syntax
Property DefaultHorizontalSysFontId : Integer Read GetState_DefaultHorizontalSysFontId;
Description
Example
See also
ISch_FontManager interface
DefaultVerticalSysFontId property
(ISch_FontManager interface)
Syntax
Property DefaultVerticalSysFontId : Integer Read GetState_DefaultVerticalSysFontId;
Description
Example
See also
ISch_FontManager interface
FontCount property
(ISch_FontManager interface)
Syntax
Property FontCount : Integer Read GetState_FontCount;
Description
The FontCount property returns the number of fonts used in the computer system that the Altium Designer is currently residing on. This property is supported by the GetState_FontCount method.
Example
See also
ISch_FontManager interface
FontName property
(ISch_FontManager interface)
Syntax
Property FontName [Id : Integer] : TFontName Read GetState_FontName ;
Description
This indexed FontName property returns the name of an indexed font as a string. Every computer could have a different table of fonts used. The FontName property is supported by the GetState_FontName method.
Example
See also
ISch_FontManager interface
Italic property
(ISch_FontManager interface)
Syntax
Property Italic [Id : Integer] : Boolean Read GetState_Italic ;
Description
This Italic property determines the Italic style for the font. This property is supported by the GetState_Italic method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman');
See also
ISch_FontManager interface
GetFontID method
Rotation property
(ISch_FontManager interface)
Syntax
Property Rotation [Id : Integer] : Integer Read GetState_Rotation ;
Description
The Rotation property determines the orientation of the text object. For ISch_Labels, it is necessary to set the Orientation property of these ISch_Labels as well as the Rotation property for the FontID variables. This property is supported by the GetState_Rotation method.
Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Times New Roman'); // Note eRotate90 for the Orientation property, and a 90 value as a parameter for the GetFontID method.
See also
ISch_FontManager interface
SaveFlag property
(ISch_FontManager interface)
Syntax
Property SaveFlag [Id : Integer] : Boolean Read GetState_SaveFlag ;
Description
Example
See also
ISch_FontManager interface
Size property
(ISch_FontManager interface)
Syntax
Property Size [Id : Integer] : Integer Read GetState_Size ;
Description
The Size property determines the font size. This property is supported by the GetState_Size method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Times New Roman Font size to 14 points - 1st parameter
See also
ISch_FontManager interface
GetFontID method
StrikeOut property
(ISch_FontManager interface)
Syntax
Property StrikeOut [Id : Integer] : Boolean Read GetState_StrikeOut;
Description
The StrikeOut property determines whether the font is striked out or not. This property is supported by the GetState_StrikeOut method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (sixth parameter)
See also
ISch_FontManager interface
GetFontID method
UnderLine property
(ISch_FontManager interface)
Syntax
Property UnderLine [Id : Integer] : Boolean Read GetState_UnderLine;
Description
This UnderLine property determines whether the font is underlined or not. This property is supported by the GetState_UnderLine method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (third parameter)
See also
ISch_FontManager interface
GetFontID method
ISch_FontManager2 Interface
Overview
The ISch_FontManager2 interface represents the internal font manager in Schematic Editor that manages fonts for text based objects on schematic documents. The ISch_FontManager2 is the same as ISch_FontManager, but all the methods have the Safecall calling convention which is important for SDK purposes.
To have access to the ISch_FontManager interface, you need to invoke the SchServer function;
FontManager := SchServer.FontManager;
ISch_FontManager2 methods GetState_DefaultHorizontalSysFontId GetState_DefaultVerticalSysFontId GetState_FontCount GetState_Rotation GetState_Size GetState_Italic GetState_Bold GetState_UnderLine GetState_StrikeOut GetState_SaveFlag GetState_FontName GetFontHandle GetFontID GetFontSpec GetFontSize IsFontVertical Import_FromUser | ISch_FontManage2r properties DefaultHorizontalSysFontId DefaultVerticalSysFontId FontCount Rotation Size Italic Bold UnderLine StrikeOut SaveFlag FontName |
Example
SchLabel.Orientation := eRotate90; SchLabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Times New Roman');
See also
ISch_Label interface
ISch_FontManager2 Methods
GetFontHandle method
(ISch_FontManager2 interface)
Syntax
Function GetFontHandle (AnId: Integer; Const CurrentLogFont : TLogFont; ScreenSize : Integer): THandle;
Description
This function retrieves the handle of the font.
Example
See also
ISch_FontManager2 interface
GetFontID method
(ISch_FontManager2 interface)
Syntax
Function GetFontID (Size,Rotation : Integer; Underline,Italic,Bold,StrikeOut : Boolean; Const FontName : WideString) : TFontID;
Description
This function retrieves the font ID of TFontID type that can be used to set the font style of a text based object such as a ISch_Label object.
Example
ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Arial');
See also
ISch_FontManager2 interface
TFontID type
GetFontSpec method
(ISch_FontManager2 interface)
Syntax
Procedure GetFontSpec (FontID : TFontID; Var Size,Rotation : Integer; Var Underline,Italic,Bold,StrikeOut : Boolean; Var FontName : WideString);
Description
Every font used in the Schematic document has its own FontID. You can invoke the GetFontSpec function to retrieve font specifications for the supplied Font ID.
Example
See also
ISch_FontManager2 interface
GetFontSize method
(ISch_FontManager2 interface)
Syntax
Function GetFontSize (FontID : TFontID) : Integer;
Description
Example
See also
ISch_FontManager2 interface
GetState_Bold method
(ISch_FontManager2 interface)
Syntax
Function GetState_Bold (AnId : Integer) : Boolean;
Description
This Bold property determines the Bold style for the font. This property is supported by the GetState_Bold method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,True,False,'Times New Roman');
See also
ISch_FontManager2 interface
GetState_DefaultHorizontalSysFontId method
(ISch_FontManager2 interface)
Syntax
Function GetState_DefaultHorizontalSysFontId : Integer;
Description
Example
See also
ISch_FontManager2 interface
GetState_DefaultVerticalSysFontId method
(ISch_FontManager2 interface)
Syntax
Function GetState_DefaultVerticalSysFontId : Integer;
Description
Example
See also
ISch_FontManager2 interface
GetState_FontCount method
(ISch_FontManager2 interface)
Syntax
Function GetState_FontCount : Integer;
Description
The FontCount property returns the number of fonts used in the Altium Designer. This property is supported by the GetState_FontCount method.
Example
See also
ISch_FontManager2 interface
GetState_FontName method
(ISch_FontManager interface)
Syntax
Function GetState_FontName (AnId : Integer) : TFontName;
Description
This indexed FontName property returns the name of an indexed font as a string. Every computer could have a different table of fonts used. The FontName property is supported by the GetState_FontName method.
Example
See also
ISch_FontManager2 interface
GetState_Italic method
(ISch_FontManager2 interface)
Syntax
Function GetState_Italic (AnId : Integer) : Boolean;
Description
This Italic property determines the Italic style for the font. This property is supported by the GetState_Italic method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'
See also
ISch_FontManager2 interface
GetState_Rotation method
(ISch_FontManager2 interface)
Syntax
Function GetState_Rotation (AnId : Integer) : Integer;
Description
The Rotation property determines the orientation of the text object. For ISch_Labels, it is necessary to set the Orientation property of these ISch_Labels as well as the Rotation property for the FontID variables. This property is supported by the GetState_Rotation method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Times New Roman'); // Note eRotate90 for the Orientation property, and a 90 value as a parameter for the GetFontID method.
See also
ISch_FontManager2 interface
GetState_SaveFlag method
(ISch_FontManager2 interface)
Syntax
Function GetState_SaveFlag (AnId : Integer) : Boolean;
Description
Example
See also
ISch_FontManager2 interface
GetState_Size method
(ISch_FontManager2 interface)
Syntax
Function GetState_Size (AnId : Integer) : Integer;
Description
The Size property determines the font size. This property is supported by the GetState_Size method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Times New Roman Font size to 14 points - 1st parameter
See also
ISch_FontManager2 interface
GetState_StrikeOut method
(ISch_FontManager2 interface)
Syntax
Function GetState_StrikeOut (AnId : Integer) : Boolean;
Description
The StrikeOut property determines whether the font is striked out or not. This property is supported by the GetState_StrikeOut method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (sixth parameter)
See also
ISch_FontManager2 interface
GetState_UnderLine method
(ISch_FontManager2 interface)
Syntax
Function GetState_UnderLine (AnId : Integer) : Boolean;
Description
This UnderLine property determines whether the font is underlined or not. This property is supported by the GetState_UnderLine method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (third parameter)
See also
ISch_FontManager2 interface
IsFontVertical method
(ISch_FontManager2 interface)
Syntax
Function IsFontVertical(FontID : TFontID) : Boolean;
Description
This function determines whether the font is vertically orientated or not.
Example
See also
ISch_FontManager2 interface
ISch_FontManager2 Properties
Bold property
(ISch_FontManager2 interface)
Syntax
Property Bold [Id : Integer] : Boolean Read GetState_Bold ;
Description
This Bold property determines the Bold style for the font. This property is supported by the GetState_Bold method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,True,False,'Times New Roman');
See also
ISch_FontManager interface
GetFontID method
DefaultHorizontalSysFontId property
(ISch_FontManager2 interface)
Syntax
Property DefaultHorizontalSysFontId : Integer Read GetState_DefaultHorizontalSysFontId;
Description
Example
See also
ISch_FontManager2 interface
DefaultVerticalSysFontId property
(ISch_FontManager2 interface)
Syntax
Property DefaultVerticalSysFontId : Integer Read GetState_DefaultVerticalSysFontId;
Description
Example
See also
ISch_FontManager2 interface
FontCount property
(ISch_FontManager2 interface)
Syntax
Property FontCount : Integer Read GetState_FontCount;
Description
The FontCount property returns the number of fonts used in the computer system that the Altium Designer is currently residing on. This property is supported by the GetState_FontCount method.
Example
See also
ISch_FontManager interface
FontName property
(ISch_FontManager2 interface)
Syntax
Property FontName [Id : Integer] : TFontName Read GetState_FontName ;
Description
This indexed FontName property returns the name of an indexed font as a string. Every computer could have a different table of fonts used. The FontName property is supported by the GetState_FontName method.
Example
See also
ISch_FontManager2 interface
Italic property
(ISch_FontManager2 interface)
Syntax
Property Italic [Id : Integer] : Boolean Read GetState_Italic ;
Description
This Italic property determines the Italic style for the font. This property is supported by the GetState_Italic method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman');
See also
ISch_FontManager2 interface
GetFontID method
Rotation property
(ISch_FontManager2 interface)
Syntax
Property Rotation [Id : Integer] : Integer Read GetState_Rotation ;
Description
The Rotation property determines the orientation of the text object. For ISch_Labels, it is necessary to set the Orientation property of these ISch_Labels as well as the Rotation property for the FontID variables. This property is supported by the GetState_Rotation method.
Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,False,False,False,'Times New Roman'); // Note eRotate90 for the Orientation property, and a 90 value as a parameter for the GetFontID method.
See also
ISch_FontManager2 interface
SaveFlag property
(ISch_FontManager2 interface)
Syntax
Property SaveFlag [Id : Integer] : Boolean Read GetState_SaveFlag ;
Description
Example
See also
ISch_FontManager2 interface
Size property
(ISch_FontManager2 interface)
Syntax
Property Size [Id : Integer] : Integer Read GetState_Size ;
Description
The Size property determines the font size. This property is supported by the GetState_Size method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Times New Roman Font size to 14 points - 1st parameter
See also
ISch_FontManager interface
GetFontID method
StrikeOut property
(ISch_FontManager2 interface)
Syntax
Property StrikeOut [Id : Integer] : Boolean Read GetState_StrikeOut;
Description
The StrikeOut property determines whether the font is striked out or not. This property is supported by the GetState_StrikeOut method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (sixth parameter)
See also
ISch_FontManager interface
GetFontID method
UnderLine property
(ISch_FontManager2 interface)
Syntax
Property UnderLine [Id : Integer] : Boolean Read GetState_UnderLine;
Description
This UnderLine property determines whether the font is underlined or not. This property is supported by the GetState_UnderLine method.
DelphiScript Example
ALabel.Orientation := eRotate90; ALabel.FontId := SchServer.FontManager.GetFontID(14,90,False,True,False,False,'Times New Roman'); // Strikeout set to false (third parameter)
See also
ISch_FontManager interface
GetFontID method
ISch_JunctionConvertSettings Interface
Overview
The ISch_JunctionConvertSettings interface hierarchy is as follows;
ISch_JunctionConvertSettings Methods and Properties Table
ISch_JunctionConvertSettings methods GetJunctionConversion SetJunctionConversion GetMiterSize SetMiterSize GetBatchMode SetBatchMode GetShowDialog SetShowDialog Export_ToIniFile Import_FromIniFile | ISch_JunctionConvertSettings properties JunctionConversion MiterSize BatchMode ShowDialog |
ISch_JunctionConvertSettings Methods
SetShowDialog method
(ISch_JunctionConvertSettings interface)
Syntax
Procedure SetShowDialog (Value : Boolean);
Description
Example
See also
ISch_JunctionConvertSettings interface
SetMiterSize method
(ISch_JunctionConvertSettings interface)
Syntax
Procedure SetMiterSize (Value : TDistance);
Description
Example
See also
ISch_JunctionConvertSettings interface
SetJunctionConversion method
(ISch_JunctionConvertSettings interface)
Syntax
Procedure SetJunctionConversion(Value : TJunctionConversionKind);
Description
Example
See also
ISch_JunctionConvertSettings interface
SetBatchMode method
(ISch_JunctionConvertSettings interface)
Syntax
Procedure SetBatchMode (Value : Boolean);
Description
Example
See also
ISch_JunctionConvertSettings interface
Import_FromIniFile method
(ISch_JunctionConvertSettings interface)
Syntax
Procedure Import_FromIniFile(Const OptionsReader : IOptionsReader);
Description
Example
See also
ISch_JunctionConvertSettings interface
GetShowDialog method
(ISch_JunctionConvertSettings interface)
Syntax
Function GetShowDialog : Boolean;
Description
Example
See also
ISch_JunctionConvertSettings interface
GetMiterSize method
(ISch_JunctionConvertSettings interface)
Syntax
Function GetMiterSize : TDistance;
Description
Example
See also
ISch_JunctionConvertSettings interface
GetJunctionConversion method
(ISch_JunctionConvertSettings interface)
Syntax
Function GetJunctionConversion : TJunctionConversionKind;
Description
Example
See also
ISch_JunctionConvertSettings interface
GetBatchMode method
(ISch_JunctionConvertSettings interface)
Syntax
Function GetBatchMode : Boolean;
Description
Example
See also
ISch_JunctionConvertSettings interface
Export_ToIniFile method
(ISch_JunctionConvertSettings interface)
Syntax
Procedure Export_ToIniFile (Const OptionsWriter : IOptionsWriter);
Description
Example
See also
ISch_JunctionConvertSettings interface
ISch_JunctionConvertSettings Properties
MiterSize property
(ISch_JunctionConvertSettings interface)
Syntax
Property MiterSize : TDistance Read GetMiterSize Write SetMiterSize;
Description
Example
See also
ISch_JunctionConvertSettings interface
JunctionConversion property
(ISch_JunctionConvertSettings interface)
Syntax
Property JunctionConversion : TJunctionConversionKind Read GetJunctionConversion Write SetJunctionConversion;
Description
Example
See also
ISch_JunctionConvertSettings interface
BatchMode property
(ISch_JunctionConvertSettings interface)
Syntax
Property BatchMode : Boolean Read GetBatchMode Write SetBatchMode;
Description
Example
See also
ISch_JunctionConvertSettings interface
ShowDialog property
(ISch_JunctionConvertSettings interface)
Syntax
Property ShowDialog : Boolean Read GetShowDialog Write SetShowDialog;
Description
Example
See also
ISch_JunctionConvertSettings interface
ISch_LibraryRuleChecker Interface
Overview
The ISch_LibraryRuleChecker interface represents the internal library rule checker facility that checks the validity of symbols in schematic libraries.
ISch_LIbraryRuleChecker Methods and Properties Table
ISch_LibraryRuleChecker methods GetState_Duplicate_Pins GetState_Duplicate_Component GetState_Missing_Pin_Number GetState_Missing_Default_Designator GetState_Missing_Footprint GetState_Missing_Description GetState_Missing_Pin_Name GetState_Missing_Pins_In_Sequence GetState_ShowReport SetState_Duplicate_Pins SetState_Duplicate_Component SetState_Missing_Pin_Number SetState_Missing_Default_Designator SetState_Missing_Footprint SetState_Missing_Description SetState_Missing_Pin_Name SetState_Missing_Pins_In_Sequence SetState_ShowReport SetState_FromParameters Import_FromUser Run I_ObjectAddress | ISch_LibraryRuleChecker properties Duplicate_Pins Duplicate_Component Missing_Pin_Number Missing_Default_Designator Missing_Footprint Missing_Description Missing_Pin_Name Missing_Pins_In_Sequence ShowReport |
ISch_LibraryRuleChecker Methods
GetState_Duplicate_Component method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Duplicate_Component : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_Duplicate_Pins method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Duplicate_Pins : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_Missing_Default_Designator method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Missing_Default_Designator : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_Missing_Description method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Missing_
Description : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_Missing_Footprint method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Missing_Footprint : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_Missing_Pin_Name method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Missing_Pin_Name : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_Missing_Pin_Number method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Missing_Pin_Number : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_Missing_Pins_In_Sequence method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_Missing_Pins_In_Sequence : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
GetState_ShowReport method
(ISch_LibraryRuleChecker interface)
Syntax
Function GetState_ShowReport : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Duplicate_Component method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Duplicate_Component (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Duplicate_Pins method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Duplicate_Pins (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_FromParameters method
(ISch_LibraryRuleChecker interface)
Syntax
Function SetState_FromParameters(Parameters : PChar) : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Missing_Default_Designator method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Missing_Default_Designator(AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Missing_Description method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Missing_
Description (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Missing_Footprint method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Missing_Footprint (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Missing_Pin_Name method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Missing_Pin_Name (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Missing_Pin_Number method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Missing_Pin_Number (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_Missing_Pins_In_Sequence method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_Missing_Pins_In_Sequence (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
SetState_ShowReport method
(ISch_LibraryRuleChecker interface)
Syntax
Procedure SetState_ShowReport (AValue : Boolean);
Description
Example
See also
ISch_LibraryRuleChecker interface
Import_FromUser method
(ISch_LibraryRuleChecker interface)
Syntax
Function Import_FromUser : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
I_ObjectAddress method
(ISch_LibraryRuleChecker interface)
Syntax
Function I_ObjectAddress : TSCHObjectHandle;
Description
Example
See also
ISch_LibraryRuleChecker interface
Run method
(ISch_LibraryRuleChecker interface)
Syntax
Function Run : Boolean;
Description
Example
See also
ISch_LibraryRuleChecker interface
ISch_LibraryRuleChecker Properties
Duplicate_Component property
(ISch_LibraryRuleChecker interface)
Syntax
Property Duplicate_Component : Boolean Read GetState_Duplicate_Component Write SetState_Duplicate_Component ;
Description
Example
See also
ISch_LibraryRuleChecker interface
Duplicate_Pins property
(ISch_LibraryRuleChecker interface)
Syntax
Property Duplicate_Pins : Boolean Read GetState_Duplicate_Pins Write SetState_Duplicate_Pins ;
Description
Example
See also
ISch_LibraryRuleChecker interface
Missing_Default_Designator property
(ISch_LibraryRuleChecker interface)
Syntax
Property Missing_Default_Designator : Boolean Read GetState_Missing_Default_Designator Write SetState_Missing_Default_Designator;
Description
Example
See also
ISch_LibraryRuleChecker interface
Missing_Description property
(ISch_LibraryRuleChecker interface)
Syntax
Property Missing_
Description : Boolean Read GetState_Missing_
Description Write SetState_Missing_
Description ;
Description
Example
See also
ISch_LibraryRuleChecker interface
Missing_Footprint property
(ISch_LibraryRuleChecker interface)
Syntax
Property Missing_Footprint : Boolean Read GetState_Missing_Footprint Write SetState_Missing_Footprint ;
Description
Example
See also
ISch_LibraryRuleChecker interface
Missing_Pins_In_Sequence property
(ISch_LibraryRuleChecker interface)
Syntax
Property Missing_Pins_In_Sequence : Boolean Read GetState_Missing_Pins_In_Sequence Write SetState_Missing_Pins_In_Sequence ;
Description
Example
See also
ISch_LibraryRuleChecker interface
Missing_Pin_Name property
(ISch_LibraryRuleChecker interface)
Syntax
Property Missing_Pin_Name : Boolean Read GetState_Missing_Pin_Name Write SetState_Missing_Pin_Name ;
Description
Example
See also
ISch_LibraryRuleChecker interface
Missing_Pin_Number property
(ISch_LibraryRuleChecker interface)
Syntax
Property Missing_Pin_Number : Boolean Read GetState_Missing_Pin_Number Write SetState_Missing_Pin_Number ;
Description
Example
See also
ISch_LibraryRuleChecker interface
ShowReport property
(ISch_LibraryRuleChecker interface)
Syntax
Property ShowReport : Boolean Read GetState_ShowReport Write SetState_ShowReport ;
Description
Example
See also
ISch_LibraryRuleChecker interface
ISch_HitTest Interface
Overview
This ISch_HitTest interface returns you the number of objects and object type at a particular point on the schematic document.
Notes
To specify the location where the objects can be checked on the schematic document, pass in the location (of TLocation type) and invoke the CreateHitTest method from the ISchDocument interface. This location parameter can be set either programmatically or by the ChooseLocationInteractively method form the ISch_Document interface.
ISch_HitTest methods GetState_HitTestCount GetState_HitObject | ISch_HitTest properties HitTestCount HitObject |
See also
ISch_Document interface
CreateHitTest method
ChooseLocationInteractively method
ChooseRectangleInteractively method
TLocation type
ISch_HitTest Methods
GetState_HitObject method
(ISch_HitTest interface)
Syntax
Function GetState_HitObject (i : Integer) : ISch_GraphicalObject;
Description
This function returns you the indexed object at the particular point on the schematic document. This method is used in the HitObject property.
Example
See also
ISch_HitTest interface
GetState_HitTestCount method
(ISch_HitTest interface)
Syntax
Function GetState_HitTestCount : Integer;
Description
This function returns you the number of objects at the particular point on the schematic document. This method is used in the HitTestCount property.
Example
See also
ISch_HitTest interface
ISch_HitTest Properties
HitObject property
(ISch_HitTest interface)
Syntax
Property HitObject[i : Integer] : ISch_GraphicalObject Read GetState_HitObject;
Description
This property returns you the indexed object at the particular point on the schematic document. This property is supported by the GetState_HitObject method.
Example
See also
ISch_HitTest interface
HitTestCount property
HitTestCount property
(ISch_HitTest interface)
Syntax
Property HitTestCount : Integer Read GetState_HitTestCount;
Description
This property returns you the number of objects at the particular point on the schematic document. This property is supported by the GetState_HitTestCount method.
Example
See also
ISch_HitTest interface
ISch_Iterator Interface
Overview
An iterator object interface represents an existing iterator object which iterates through a design database to fetch specified objects within a specified region if necessary.
Important Notes
Delphi Script does not support sets. Therefore, to specify the object set or the layer set, you need to use the MkSet function to create a set of objects, for example Iterator.AddFilter_ObjectSet(MkSet(ePort));
The TIterationDepth type denotes how deep the iterator can look - look for first level objects (for example standalone system parameters of the document only, or all levels for example all parameters on the document including system parameters, objects' parameters such as component's parameters. By default, eIterateAllLevels value is used.
SetState_FilterAll denotes that all objects and the whole schematic document is to be searched within. Otherwise, use the following AddFilter_ObjectSet, AddFilter_Area etc methods to set up a restricted search.
The ISch_Iterator interface hierarchy is as follows;
ISch_Iterator Methods and Properties Table
ISch_Iterator methods I_ObjectAddress SetState_FilterAll AddFilter_ObjectSet AddFilter_CurrentPartPrimitives AddFilter_CurrentDisplayModePrimitives AddFilter_PartPrimitives AddFilter_Area SetState_IterationDepth FirstSchObject NextSchObject | ISch_Iterator properties |
See also
ISch_BasicContainer interface
ISch_Lib interface
ISch_Iterator Methods
AddFilter_Area method
(ISch_Iterator interface)
Syntax
Procedure AddFilter_Area(X1, Y1, X2, Y2 : TCoord);
Description
The AddFilter_Area procedure defines the rectangular bounds (X1,Y1 and X2,Y2) of the schematic/library document that the iterator will search within.
Example
See also
ISch_Iterator interface
TCoord type
AddFilter_CurrentDisplayModePrimitives method
(ISch_Iterator interface)
Syntax
Procedure AddFilter_CurrentDisplayModePrimitives;
Description
This procedure sets the iterator to look for current display mode primitives only. A component can be represented by different modes - ie there can be different graphical representations of the same component type.
Example
See also
ISch_Iterator interface
AddFilter_CurrentPartPrimitives method
(ISch_Iterator interface)
Syntax
Procedure AddFilter_CurrentPartPrimitives;
Description
This procedure sets up the filter of the iterator to look for the current primitives of a part only. A component can be composed of multiple parts and each part is identified by its PartID value.
Example
See also
ISch_Iterator interface
AddFilter_ObjectSet method
(ISch_Iterator interface)
Syntax
Procedure AddFilter_ObjectSet(Const AObjectSet : TObjectSet);
Description
This procedure defines which objects the iterator will look for on a schematid document or a library document.
Example
See also
ISch_Iterator interface
TObjectSet type
AddFilter_PartPrimitives method
(ISch_Iterator interface)
Syntax
Procedure AddFilter_PartPrimitives(APartId : Integer; ADisplayMode : TDisplayMode);
Description
This procedure sets up the filter of the iterator to look for primitives of a part (of a component). A component can be a multi-part component, for example a 74LS04 can have four parts and they are identified by the PartID value.
Example
See also
ISch_Iterator interface
TDisplayMode type in Workspace Manager API
FirstSchObject method
(ISch_Iterator interface)
Syntax
Function FirstSchObject : ISch_BasicContainer;
Description
The FirstSchObject function fetches the first object found by the iterator. The FirstSchObject method is to be invoked first and then in a While Nil loop, the NextSchObject is called repeatedly until it returns a nil value where the loop is terminated.
DelphiScript Example
Iterator := CurrentSheet.SchIterator_Create; Iterator.AddFilter_ObjectSet(MkSet(ePort)); If Iterator = Nil Then Exit; Try Port := Iterator.FirstSchObject; While Port <> Nil Do Begin PortNumber := PortNumber + 1; Port := Iterator.NextSchObject; End; Finally CurrentSheet.SchIterator_Detroy(Iterator); End;
See also
ISch_Iterator interface
NextSchObject interface
I_ObjectAddress method
(ISch_Iterator interface)
Syntax
Function I_ObjectAddress : TSCHObjectHandle;
Description
This function obtains the pointer to the iterator object.
Example
See also
ISch_Iterator interface
TSchObjectHandle type
NextSchObject method
(ISch_Iterator interface)
Syntax
Function NextSchObject : ISch_BasicContainer;
Description
The NextSchObject function fetches the next object found by the iterator. The FirstSchObject method is to be invoked first and then in a While Nil loop, the NextSchObject is called repeatedly until it returns a nil value where the loop is terminated.
DelphiScript Example
Iterator := CurrentSheet.SchIterator_Create; Iterator.AddFilter_ObjectSet(MkSet(ePort)); If Iterator = Nil Then Exit; Try Port := Iterator.FirstSchObject; While Port <> Nil Do Begin PortNumber := PortNumber + 1; Port := Iterator.NextSchObject; End; Finally CurrentSheet.SchIterator_Detroy(Iterator); End;
See also
ISch_Iterator interface
FirstSchObject method
SetState_FilterAll method
(ISch_Iterator interface)
Syntax
Procedure SetState_FilterAll;
Description
This procedure sets the iterator to look for everything on a document.
Example
See also
ISch_Iterator interface
SetState_IterationDepth method
(ISch_Iterator interface)
Syntax
Procedure SetState_IterationDepth(AIterationDepth : TIterationDepth);
Description
The TIterationDepth type denotes how deep the iterator can look on a document.
Look for first level objects, for example standalone system parameters of the document only, or all levels for example all parameters on the document including system parameters, objects' parameters such as component's parameters.
By default, eIterateAllLevels value is used.
Example
See also
ISch_Iterator interface
TIterationDepth type
ILibCompInfoReader Interface
Overview
The ILibCompInfoReader interface represents the object which has the list of library components (symbols) of a loaded schematic library.
A Schematic library file with a SchLib extension can be loaded in the object represented by the ILibCompInfoReader interface and to obtain each component (Symbol), invoke the indexed ComponentInfos method. This method fetches the object which is represented by the IComponentInfo interface.
The steps required to load a schematic library and its components.
1. Create an object and pass in the filename of a schematic library file. This object is represented by the ILibCompInfoReader interface. This object is created by the SchServer.CreateLibCompInfoReader(LibraryFileName);
2. Invoke the ReadAllComponentInfo method to load the components specified by the library name.
3. Invoke the NumComponentInfos method to obtain the number of components for this library
4. Obtain the indexed ComponentInfos method. This ComponentInfos method returns the indexed IComponentInfo interface.
ILibCompInfoReader methods GetState_ComponentInfo GetState_FileName ReadAllComponentInfo NumComponentInfos I_ObjectAddress | ILibCompInfoReader properties ComponentInfos FileName |
ILibCompInfoReader Methods
GetState_ComponentInfo method
(ILibCompInfoReader interface)
Syntax
Function GetState_ComponentInfo (i : Integer) : IComponentInfo;
Description
This GetState_ComponentInfo function retrieves the indexed IComponentInfo interface representing the component information datastructure. The ComponentInfo interface contains information such as component name, alias name, part count and offset for the indexed schematic symbol (component) in the library.
Example
Var ALibCompReader : ICompInfoReader; CompInfo : IComponentInfo; CompNum, J : Integer; Begin ALibCompReader := SchServer.CreateLibCompInfoReader(FileName); ALibCompReader.ReadAllComponentInfo; CompNum := ALIbCompReader.NumComponentInfos; For J := 0 To CompNum -1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(' FileName : ' + CompInfo.FileName); ReportInfo.Add(''); End;
See also
ILibCompInfoReader interface
IComponentInfo interface
GetState_FileName method
(ILibCompInfoReader interface)
Syntax
Function GetState_FileName : WideString;
Description
This GetState_FileName function gets the temporary filename of the datastructure.
Example
Var ALibCompReader : ICompInfoReader; CompInfo : IComponentInfo; CompNum, J : Integer; Begin ALibCompReader := SchServer.CreateLibCompInfoReader(FileName); ALibCompReader.ReadAllComponentInfo; ShowMessage(ALibCompReader.GetState_FileName); CompNum := ALIbCompReader.NumComponentInfos; For J := 0 To CompNum -1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(' FileName : ' + CompInfo.FileName); ReportInfo.Add(''); End;
See also
ILibCompInfoReader interface
IComponentInfo interface
I_ObjectAddress method
(ILibCompInfoReader interface)
Syntax
Function I_ObjectAddress : TSCHObjectHandle;
Description
This function obtains the pointer to the ILibCompInfoReader object.
Example
See also
ILibCompInfoReader interface
NumComponentInfos method
(ILibCompInfoReader interface)
Syntax
Function NumComponentInfos : Integer;
Description
This NumComponentInfos function retrieves the number of component information data structures. This method is also used by the ComponentInfos property. The ComponentInfo interface contains information such as component name, alias name, part count and offset for the indexed schematic symbol (component) in the library.
Example
Var ALibCompReader : ICompInfoReader; CompInfo : IComponentInfo; CompNum, J : Integer; Begin ALibCompReader := SchServer.CreateLibCompInfoReader(FileName); ALibCompReader.ReadAllComponentInfo; ShowMessage(ALibCompReader.GetState_FileName); CompNum := ALIbCompReader.NumComponentInfos; For J := 0 To CompNum -1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(' FileName : ' + CompInfo.FileName); ReportInfo.Add(''); End;
See also
ILibCompInfoReader interface
ReadAllComponentInfo method
(ILibCompInfoReader interface)
Syntax
Procedure ReadAllComponentInfo;
Description
The ReadAllComponentInfo retrieves all the IComponentInfo data structures for the ILibCompInfoReader interface. The ComponentInfo interface contains information such as component name, alias name, part count and offset for the indexed schematic symbol (component) in the library.
Example
Var ALibCompReader : ICompInfoReader; CompInfo : IComponentInfo; CompNum, J : Integer; Begin ALibCompReader := SchServer.CreateLibCompInfoReader(FileName); ALibCompReader.ReadAllComponentInfo; ShowMessage(ALibCompReader.GetState_FileName); CompNum := ALIbCompReader.NumComponentInfos; For J := 0 To CompNum -1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(' FileName : ' + CompInfo.FileName); ReportInfo.Add(''); End;
See also
ILibCompInfoReader interface
ILibCompInfoReader Properties
ComponentInfos property
(ILibCompInfoReader interface)
Syntax
Property ComponentInfos[i : Integer] : IComponentInfo Read GetState_ComponentInfo;
Description
This ComponentInfos property retrieves the indexed IComponentInfo data structure. This property is supported by the GetState_ComponentInfo method. The ComponentInfo interface contains information such as component name, alias name, part count and offset for the indexed schematic symbol (component) in the library.
Example
Var ALibCompReader : ICompInfoReader; CompInfo : IComponentInfo; CompNum, J : Integer; Begin ALibCompReader := SchServer.CreateLibCompInfoReader(FileName); ALibCompReader.ReadAllComponentInfo; ShowMessage(ALibCompReader.GetState_FileName); CompNum := ALIbCompReader.NumComponentInfos; For J := 0 To CompNum -1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(' FileName : ' + CompInfo.FileName); ReportInfo.Add(''); End;
See also
ILibCompInfoReader interface
FileName property
(ILibCompInfoReader interface)
Syntax
Property FileName : WideString Read GetState_FileName;
Description
This FileName property gets the temporary filename of the datastructure. The FileName property is supported by the GetState_FileName function.
Example
ShowMessage(ALibCompReader.Filename)
See also
ILibCompInfoReader interface
IComponentInfo Interface
Overview
The IComponentInfo interface is an item within the ILibCompInfoReader interface. This IComponentInfo interface represents a schematic symbol in a specified schematic library file with a SchLib extension.
The steps required to load a schematic library and its components.
1. Create an object and pass in the filename of a schematic library file. This object is represented by the ILibCompInfoReader interface by the SchServer.CreateLibCompInfoReader(FileName);
2. Invoke the ReadAllComponentInfo method to load the library and its components.
3. Invoke the NumComponentInfos method to obtain the number of components for this library
4. Obtain the indexed ComponentInfos method. This ComponentInfos method returns the indexed IComponentInfo interface.
Notes
The IComponentInfo interface is extracted from the ILibCompInfoReader.ComponentInfos[Index] method.
IComponentInfo methods GetState_Offset GetState_AliasName GetState_CompName GetState_PartCount GetState_Description | IComponentInfo properties Offset AliasName CompName PartCount Description |
See also
ILibCompInfoReader interface
IComponentInfo Methods
GetState_AliasName method
(IComponentInfo interface)
Syntax
Function GetState_AliasName : WideString;
Description
This function returns the alias name for this component. Ie a component can be referred to by one of its multiple names.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.GetState_AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
GetState_CompName method
(IComponentInfo interface)
Syntax
Function GetState_CompName : WideString;
Description
This function returns the name string for this component from the IComponentInfo object interface.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.GetState_CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.GetState_AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.GetState_PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Getstate_Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.GetState_Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
GetState_Description method
(IComponentInfo interface)
Syntax
Function GetState_
Description : WideString;
Description
This function returns the description string for this component from the IComponentInfo object interface.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.GetState_CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.GetState_AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.GetStatePartCount)); ReportInfo.Add(' Description : ' + CompInfo.GetState_Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.GetState_Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
GetState_Offset method
(IComponentInfo interface)
Syntax
Function GetState_Offset : Integer;
Description
This function returns the offset as a number - each part of a component whole has an offset to denote its place within the component.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.GetState_CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.GetState_AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.GetState_PartCount)); ReportInfo.Add(' Description : ' + CompInfo.GetState_Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.GetState_Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
GetState_PartCount method
(IComponentInfo interface)
Syntax
Function GetState_PartCount : Integer;
Description
This function obtains the number of parts (multiple types of the same component type as an example). For example an Integrated circuit may have multiple smaller modules, such as a 74LS00 has multiple OR gates.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.GetState_CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.GetState_AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.GetState_PartCount)); ReportInfo.Add(' Description : ' + CompInfo.GetState_Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.GetState_Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
IComponentInfo Properties
AliasName property
(IComponentInfo interface)
Syntax
Property AliasName : WideString Read GetState_AliasName;
Description
This property returns the alias name for this component. Ie a component can be referred to by one of its multiple names. This property is supported by the GetState_AliasName method.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.GetState_ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
CompName property
(IComponentInfo interface)
Syntax
Property CompName : WideString Read GetState_CompName;
Description
This property returns the name string for this component from the IComponentInfo object interface. This property is supported by the GetState_CompName function.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.GetState_ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
Description property
(IComponentInfo interface)
Syntax
Property Description : WideString Read GetState_Description;
Description
This property returns the description string for this component from the IComponentInfo object interface. This property is supported by the GetState_Description method.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.GetState_ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
Offset property
(IComponentInfo interface)
Syntax
Property Offset : Integer Read GetState_Offset;
Description
This property returns the offset as a number - each part of a component whole has an offset to denote its place within the component. This property is supported by the GetState_Offset function.
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.GetState_ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(''); End;
See also
IComponentInfo interface
PartCount property
(IComponentInfo interface)
Syntax
Property PartCount : Integer Read GetState_PartCount;
Description
Example
// Obtain the number of components in the specified sch library. CompNum := ALibCompReader.NumComponentInfos; // Go thru each component obtained by the LibCompReader interface. For J := 0 To CompNum - 1 Do Begin ReportInfo.Add(FileName); CompInfo := ALibCompReader.ComponentInfos[J]; ReportInfo.Add(' Name : ' + CompInfo.CompName); ReportInfo.Add(' Alias Name : ' + CompInfo.AliasName); ReportInfo.Add(' Part Count : ' + IntToStr(CompInfo.PartCount)); ReportInfo.Add(' Description : ' + CompInfo.Description); ReportInfo.Add(' Offset : ' + IntToStr(CompInfo.Offset)); ReportInfo.Add(' Filename : ' + CompInfo.Filename); ReportInfo.Add(''); End;
See also
IComponentInfo interface
IComponentPainterView Interface
Overview
IComponentPainterView Methods and Properties Table
IComponentPainterView methods HideComponentTextualDescriptions; HighLightComponentPins RegisterListener RenameSpecifiedPins SetComponent SetComponentByHandle ShowAllPins ShowPinsAsSelected ShowSpecifiedPinsOnly | IComponentPainterView properties |
See also
ISch_ServerInterface interface
IComponentMetafilePainter interface
IDocumentPainterView interface
IComponentPainterView Methods
SetComponent method
(IComponentPainterView interface)
Syntax
Procedure SetComponent(LibReference, LibraryPath : WideString; APartIndex: Integer);
Description
The SetComponent procedure sets the ComponentPainter object to display the specific part of a component from the library with the specified library path. Note a component can be a multi-part component and the first part is numbered 1 and so on.
A component painter object can also be set with the component's handle of ISch_Component type.
Example
// display Schematic model on the 3d panel // cLibraryPath_Sch = 'C:\Program Files\Altium Designer\Developer Kit\Examples\Sch\View Models\Xilinx CoolRunner II.SchLib'; // cLibraryReference_Sch = 'XC2C32-3CP56C'; FExternalFormComponent_Sch.Visible := True; ComponentPainter := FExternalForm_Sch As IComponentPainterView; ComponentPainter.SetComponent(cLibraryReference_Sch, cLibraryPath_Sch, 1);
See also
IComponentPainterView interface
ViewModel server example in \Developer Kit\Examples\Sch\ViewModel
folder of SDK installation.
SetComponentByHandle method
(IComponentPainterView interface)
Syntax
Procedure SetComponentByHandle(AHandle : ISch_Component; APartIndex : Integer);
Description
The SetComponentByHandle procedure sets the ComponentPainter object to display the specific part of a component. Note a component can be a multi-part component and the first part is numbered 1 and so on.
A component painter object can also be set with the full path to a library and its component.
Example
FExternalFormComponent_Sch.Visible := True; ComponentPainter := FExternalForm_Sch As IComponentPainterView; ComponentPainter.SetComponent(ACompHandle, 1);
See also
IComponentPainterView interface
CreateComponentPainter method
SetComponent method
IExternalForm interface in RT_ClientServerInterface unit.
TExternalFormComponent in ExternalForms unit.
HighLightComponentPins method
(IComponentPainterView interface)
Syntax
Procedure HighLightComponentPins(APinNameList : WideString; AHighlightColor : TColor; ANonHighlightColor : TColor);
Description
Example
See also
IComponentPainterView interface
ShowSpecifiedPinsOnly method
(IComponentPainterView interface)
Syntax
Procedure ShowSpecifiedPinsOnly(APinNameList : WideString);
Description
Example
See also
IComponentPainterView interface
ShowAllPins method
(IComponentPainterView interface)
Syntax
Procedure ShowAllPins;
Description
Example
See also
IComponentPainterView interface
RenameSpecifiedPins method
(IComponentPainterView interface)
Syntax
Procedure RenameSpecifiedPins(APinNamesParam : WideString);
Description
Example
See also
IComponentPainterView interface
HideComponentTextualDescriptions method
(IComponentPainterView interface)
Syntax
Procedure HideComponentTextualDescriptions;
Description
Example
See also
IComponentPainterView interface
ShowPinsAsSelected method
(IComponentPainterView interface)
Syntax
Procedure ShowPinsAsSelected(APinNameList : WideString);
Description
Example
See also
IComponentPainterView interface
RegisterListener method
(IComponentPainterView interface)
Syntax
Procedure RegisterListener (APinSelectionListener : IComponentPinSelectionListener);
Description
Example
See also
IComponentPainterView interface
IComponentPinSelectionListener Interface
Overview
This is for internal use.
IComponentPinSelectionListener methods ComponentPinSelectionChanged | IComponentPinSelectionListener properties |
See also
ISch_ServerInterface interface
IComopnentPainterView interface
Methods
ComponentPinSelectionChanged method
(IComponentPinSelectionListener interface)
Syntax
Procedure (NewPinSelectionList : WideString);
Description
This is for internal use.
Example
See also
IComponentPinSelectionListener interface
IComponentMetafilePainter
Overview
The IComponentMetaFilePainter interface is an internal interface that provides a mechanism to generate images into library reports within the Schematic Library Editor.
The IComponentMetafilePainter interface hierarchy is as follows;
IComponentMetafilePainter methods SetComponent DrawToMetafile | IComponentMetafilePainter properties |
See also
ISch_ServerInterface interface
IComponentPainterView interface
IComponentMetafilePainter interface
Methods
DrawToMetafile method
(IComponentMetafilePainter interface)
Syntax
Procedure DrawToMetafile(APartIndex : Integer; APaintColorMode : TPaintColorMode;AScaleMode : TPaintScaleMode; Const AFileName : WideString);
Description
This is for internal use.
Example
See also
IComponentMetafilePainter interface
TPaintColorMode type
TPaintScaleMode type
SetComponent method
(IComponentMetafilePainter interface)
Syntax
Procedure SetComponent (Const ALibReference, ALibraryPath : WideString);
Description
This is for internal use.
Example
See also
IComponentMetafilePainter interface
IDocumentPainterView Interface
Overview
The IDocumentPainterView interface is an internal interface for the Schematic Editor and it represents the Mini Viewer facility. This is for internal use.
IDocumentPainterView methods DrawCurrentZoomRectangle_Invert PaintSingleObject Redraw Refresh RefreshCurrentZoomWindow SetState_ClickHandler SetState_DbleClickHandler SetState_DocumentToPaint SetState_MouseMoveOverLocationHandler | IDocumentPainterView properties |
See also
ISch_ServerInterface interface
IComponentPainterView interface
IComponentMetafilePainter interface
Methods
SetState_MouseMoveOverLocationHandler method
(IDocumentPainterView interface)
Syntax
Procedure SetState_MouseMoveOverLocationHandler(ALocationProcedure : TLocationProcedure);
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
SetState_DocumentToPaint method
(IDocumentPainterView interface)
Syntax
Procedure SetState_DocumentToPaint(Const ADocument : ISch_Document);
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
SetState_DbleClickHandler method
(IDocumentPainterView interface)
Syntax
Procedure SetState_DbleClickHandler (ALocationProcedure : TLocationProcedure);
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
SetState_ClickHandler method
(IDocumentPainterView interface)
Syntax
Procedure SetState_ClickHandler (ALocationProcedure : TLocationProcedure);
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
RefreshCurrentZoomWindow method
(IDocumentPainterView interface)
Syntax
Procedure RefreshCurrentZoomWindow;
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
Refresh method
(IDocumentPainterView interface)
Syntax
Procedure Refresh;
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
Redraw method
(IDocumentPainterView interface)
Syntax
Procedure Redraw (Const AGraphicalObject : ISch_GraphicalObject);
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
PaintSingleObject method
(IDocumentPainterView interface)
Syntax
Procedure PaintSingleObject (Const AGraphicalObject : ISch_GraphicalObject);
Description
This is for internal use.
Example
See also
IDocumentPainterView interface
DrawCurrentZoomRectangle_Invert method
(IDocumentPainterView interface)
Syntax
Procedure DrawCurrentZoomRectangle_Invert;
Description
This is for internal use.
Example
See also
IDocumentPainterView interface