0024947: Redesign OCCT legacy type system
[occt.git] / src / IFSelect / IFSelect_SignMultiple.cdl
CommitLineData
b311480e 1-- Created on: 1998-01-28
2-- Created by: Christian CAILLET
3-- Copyright (c) 1998-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
d5f74e42 8-- This library is free software; you can redistribute it and/or modify it under
9-- the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 10-- by the Free Software Foundation, with special exception defined in the file
11-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12-- distribution for complete text of the license and disclaimer of any warranty.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
17class SignMultiple from IFSelect inherits Signature from IFSelect
18
19 ---Purpose : Multiple Signature : ordered list of other Signatures
20 -- It concatenates on a same line the result of its sub-items
21 -- separated by sets of 3 blanks
22 -- It is possible to define tabulations between sub-items
23 -- Moreover, match rules are specific
24
25uses CString, Transient, AsciiString, InterfaceModel,
26 SequenceOfTransient, SequenceOfInteger
27
28is
29
6e33d3ce 30 Create (name : CString) returns SignMultiple;
7fd59977 31 ---Purpose : Creates an empty SignMultiple with a Name
32 -- This name should take expected tabulations into account
33
34 Add (me : mutable; subsign : Signature;
35 width : Integer = 0; maxi : Boolean = Standard_False);
36 ---Purpose : Adds a Signature. Width, if given, gives the tabulation
37 -- If <maxi> is True, it is a forced tabulation (overlength is
38 -- replaced by a final dot)
39 -- If <maxi> is False, just 3 blanks follow an overlength
40
41 Value (me; ent : any Transient; model : InterfaceModel) returns CString;
42 ---Purpose : Concatenates the values of sub-signatures, with their
43 -- tabulations
44
45 Matches (me; ent : Transient; model : InterfaceModel;
46 text : AsciiString; exact : Boolean)
47 returns Boolean is redefined;
48 ---Purpose : Specialized Match Rule
49 -- If <exact> is False, simply checks if at least one sub-item
50 -- matches
51 -- If <exact> is True, standard match with Value
52 -- (i.e. tabulations must be respected)
53
54fields
55
56 thesubs : SequenceOfTransient;
57 thetabs : SequenceOfInteger;
58
59end SignMultiple;