OCC Main Page | DataExchange | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

DataExchange
TKXSBase
IFSelect


IFSelect_Editor Class Reference

An Editor defines a set of values and a way to edit them, on
an entity or on the model (e.g. on its header)

Each Value is controlled by a TypedValue, with a number (it is
an Integer) and a name under two forms (complete and short)
and an edit mode
.

#include <IFSelect_Editor.hxx>

Inheritance diagram for IFSelect_Editor:

Inheritance graph
[legend]

Public Member Functions

Standard_EXPORT void SetValue (const Standard_Integer num, const Handle(Interface_TypedValue)&typval, const Standard_CString shortname="", const IFSelect_EditValue accessmode=IFSelect_Editable)
 Sets a Typed Value for a given ident and short name, with an
Edit Mode
.
Standard_EXPORT void SetList (const Standard_Integer num, const Standard_Integer max=0)
 Sets a parameter to be a List
max < 0 : not for a list (set when starting)
max = 0 : list with no length limit (default for SetList)
max > 0 : list limited to <max> items
.
Standard_EXPORT Standard_Integer NbValues () const
 Returns the count of Typed Values
.
Standard_EXPORT Handle_Interface_TypedValue TypedValue (const Standard_Integer num) const
 Returns a Typed Value from its ident
.
Standard_EXPORT Standard_Boolean IsList (const Standard_Integer num) const
 Tells if a parameter is a list
.
Standard_EXPORT Standard_Integer MaxList (const Standard_Integer num) const
 Returns max length allowed for a list
= 0 means : list with no limit
< 0 means : not a list
.
Standard_EXPORT Standard_CString Name (const Standard_Integer num, const Standard_Boolean isshort=Standard_False) const
 Returns the name of a Value (complete or short) from its ident
Short Name can be empty
.
Standard_EXPORT IFSelect_EditValue EditMode (const Standard_Integer num) const
 Returns the edit mode of a Value
.
Standard_EXPORT Standard_Integer NameNumber (const Standard_CString name) const
 Returns the number (ident) of a Value, from its name, short or
complete. If not found, returns 0
.
Standard_EXPORT void PrintNames (const Handle(Message_Messenger)&S) const
Standard_EXPORT void PrintDefs (const Handle(Message_Messenger)&S, const Standard_Boolean labels=Standard_False) const
Standard_EXPORT Standard_Integer MaxNameLength (const Standard_Integer what) const
 Returns the MaxLength of, according to what :
<what> = -1 : length of short names
<what> = 0 : length of complete names
<what> = 1 : length of values labels
.
virtual Standard_EXPORT TCollection_AsciiString Label () const =0
 Returns the specific label
.
virtual Standard_EXPORT Handle_IFSelect_EditForm Form (const Standard_Boolean readonly, const Standard_Boolean undoable=Standard_True) const
 Builds and Returns an EditForm, empty (no data yet)
Can be redefined to return a specific type of EditForm
.
virtual Standard_EXPORT Standard_Boolean Recognize (const Handle(IFSelect_EditForm)&form) const =0
 Tells if this Editor can work on this EditForm and its content
(model, entity ?)
.
virtual Standard_EXPORT Handle_TCollection_HAsciiString StringValue (const Handle(IFSelect_EditForm)&form, const Standard_Integer num) const =0
 Returns the value of an EditForm, for a given item
(if not a list. for a list, a Null String may be returned)
.
virtual Standard_EXPORT Handle_IFSelect_ListEditor ListEditor (const Standard_Integer num) const
 Returns a ListEditor for a parameter which is a List
Default returns a basic ListEditor for a List, a Null Handle
if <num> is not for a List. Can be redefined
.
virtual Standard_EXPORT Handle_TColStd_HSequenceOfHAsciiString ListValue (const Handle(IFSelect_EditForm)&form, const Standard_Integer num) const
 Returns the value of an EditForm as a List, for a given item
If not a list, a Null Handle should be returned
Default returns a Null Handle, because many Editors have
no list to edit. To be redefined as required
.
virtual Standard_EXPORT Standard_Boolean Load (const Handle(IFSelect_EditForm)&form, const Handle(Standard_Transient)&ent, const Handle(Interface_InterfaceModel)&model) const =0
 Loads original values from some data, to an EditForm
Remark: <ent> may be Null, this means all <model> is concerned
Also <model> may be Null, if no context applies for <ent>
And both <ent> and <model> may be Null, for a full static
editor
.
virtual Standard_EXPORT Standard_Boolean Update (const Handle(IFSelect_EditForm)&form, const Standard_Integer num, const Handle(TCollection_HAsciiString)&newval, const Standard_Boolean enforce) const
 Updates the EditForm when a parameter is modified
I.E. default does nothing, can be redefined, as follows :
Returns True when done (even if does nothing), False in case
of refuse (for instance, if the new value is not suitable)
<num> is the rank of the parameter for the EDITOR itself
<enforce> True means that protected parameters can be touched

If a parameter commands the value of other ones, when it is
modified, it is necessary to touch them by Touch from EditForm
.
virtual Standard_EXPORT Standard_Boolean UpdateList (const Handle(IFSelect_EditForm)&form, const Standard_Integer num, const Handle(TColStd_HSequenceOfHAsciiString)&newlist, const Standard_Boolean enforce) const
 Acts as Update, but when the value is a list
.
virtual Standard_EXPORT Standard_Boolean Apply (const Handle(IFSelect_EditForm)&form, const Handle(Standard_Transient)&ent, const Handle(Interface_InterfaceModel)&model) const =0
 Applies modified values of the EditForm with some data
Remark: <ent> may be Null, this means all <model> is concerned
Also <model> may be Null, if no context applies for <ent>
And both <ent> and <model> may be Null, for a full static
editor
.
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Protected Member Functions

Standard_EXPORT IFSelect_Editor (const Standard_Integer nbval)
 Prepares the list of Typed Values (gives its count)
This count can be tuned later, to a LOWER value, this allows
to initialize with a "maximum reservation" then cut the extra
.
Standard_EXPORT void SetNbValues (const Standard_Integer nbval)
 Adjusts the true count of values. It can be LOWER or equal to
the initial size (which then acts as a reservation), but never
greater
.

Private Attributes

Standard_Integer thenbval
Standard_Integer themaxsh
Standard_Integer themaxco
Standard_Integer themaxla
Handle_Dico_DictionaryOfInteger thenames
TColStd_Array1OfTransient thevalues
TColStd_Array1OfAsciiString theshorts
TColStd_Array1OfInteger themodes
TColStd_Array1OfInteger thelists

Constructor & Destructor Documentation

Standard_EXPORT IFSelect_Editor::IFSelect_Editor const Standard_Integer  nbval  )  [protected]
 


Member Function Documentation

virtual Standard_EXPORT Standard_Boolean IFSelect_Editor::Apply const Handle(IFSelect_EditForm)&  form,
const Handle(Standard_Transient)&  ent,
const Handle(Interface_InterfaceModel)&  model
const [pure virtual]
 

Implemented in APIHeaderSection_EditHeader, IFSelect_ParamEditor, IGESSelect_EditDirPart, IGESSelect_EditHeader, STEPEdit_EditContext, and STEPEdit_EditSDR.

Standard_EXPORT IFSelect_EditValue IFSelect_Editor::EditMode const Standard_Integer  num  )  const
 

virtual Standard_EXPORT Handle_IFSelect_EditForm IFSelect_Editor::Form const Standard_Boolean  readonly,
const Standard_Boolean  undoable = Standard_True
const [virtual]
 

Standard_EXPORT const IFSelect_Editor::Handle Standard_Type   )  const
 

Reimplemented in APIHeaderSection_EditHeader, IFSelect_ParamEditor, IGESSelect_EditDirPart, IGESSelect_EditHeader, STEPEdit_EditContext, and STEPEdit_EditSDR.

Standard_EXPORT Standard_Boolean IFSelect_Editor::IsList const Standard_Integer  num  )  const
 

virtual Standard_EXPORT TCollection_AsciiString IFSelect_Editor::Label  )  const [pure virtual]
 

Implemented in APIHeaderSection_EditHeader, IFSelect_ParamEditor, IGESSelect_EditDirPart, IGESSelect_EditHeader, STEPEdit_EditContext, and STEPEdit_EditSDR.

virtual Standard_EXPORT Handle_IFSelect_ListEditor IFSelect_Editor::ListEditor const Standard_Integer  num  )  const [virtual]
 

virtual Standard_EXPORT Handle_TColStd_HSequenceOfHAsciiString IFSelect_Editor::ListValue const Handle(IFSelect_EditForm)&  form,
const Standard_Integer  num
const [virtual]
 

virtual Standard_EXPORT Standard_Boolean IFSelect_Editor::Load const Handle(IFSelect_EditForm)&  form,
const Handle(Standard_Transient)&  ent,
const Handle(Interface_InterfaceModel)&  model
const [pure virtual]
 

Implemented in APIHeaderSection_EditHeader, IFSelect_ParamEditor, IGESSelect_EditDirPart, IGESSelect_EditHeader, STEPEdit_EditContext, and STEPEdit_EditSDR.

Standard_EXPORT Standard_Integer IFSelect_Editor::MaxList const Standard_Integer  num  )  const
 

Standard_EXPORT Standard_Integer IFSelect_Editor::MaxNameLength const Standard_Integer  what  )  const
 

Standard_EXPORT Standard_CString IFSelect_Editor::Name const Standard_Integer  num,
const Standard_Boolean  isshort = Standard_False
const
 

Standard_EXPORT Standard_Integer IFSelect_Editor::NameNumber const Standard_CString  name  )  const
 

Standard_EXPORT Standard_Integer IFSelect_Editor::NbValues  )  const
 

Standard_EXPORT void IFSelect_Editor::PrintDefs const Handle(Message_Messenger)&  S,
const Standard_Boolean  labels = Standard_False
const
 

Standard_EXPORT void IFSelect_Editor::PrintNames const Handle(Message_Messenger)&  S  )  const
 

virtual Standard_EXPORT Standard_Boolean IFSelect_Editor::Recognize const Handle(IFSelect_EditForm)&  form  )  const [pure virtual]
 

Implemented in APIHeaderSection_EditHeader, IFSelect_ParamEditor, IGESSelect_EditDirPart, IGESSelect_EditHeader, STEPEdit_EditContext, and STEPEdit_EditSDR.

Standard_EXPORT void IFSelect_Editor::SetList const Standard_Integer  num,
const Standard_Integer  max = 0
 

Standard_EXPORT void IFSelect_Editor::SetNbValues const Standard_Integer  nbval  )  [protected]
 

Standard_EXPORT void IFSelect_Editor::SetValue const Standard_Integer  num,
const Handle(Interface_TypedValue)&  typval,
const Standard_CString  shortname = "",
const IFSelect_EditValue  accessmode = IFSelect_Editable
 

virtual Standard_EXPORT Handle_TCollection_HAsciiString IFSelect_Editor::StringValue const Handle(IFSelect_EditForm)&  form,
const Standard_Integer  num
const [pure virtual]
 

Implemented in APIHeaderSection_EditHeader, IFSelect_ParamEditor, IGESSelect_EditDirPart, IGESSelect_EditHeader, STEPEdit_EditContext, and STEPEdit_EditSDR.

Standard_EXPORT Handle_Interface_TypedValue IFSelect_Editor::TypedValue const Standard_Integer  num  )  const
 

virtual Standard_EXPORT Standard_Boolean IFSelect_Editor::Update const Handle(IFSelect_EditForm)&  form,
const Standard_Integer  num,
const Handle(TCollection_HAsciiString)&  newval,
const Standard_Boolean  enforce
const [virtual]
 

Reimplemented in IGESSelect_EditDirPart, and IGESSelect_EditHeader.

virtual Standard_EXPORT Standard_Boolean IFSelect_Editor::UpdateList const Handle(IFSelect_EditForm)&  form,
const Standard_Integer  num,
const Handle(TColStd_HSequenceOfHAsciiString)&  newlist,
const Standard_Boolean  enforce
const [virtual]
 


Field Documentation

TColStd_Array1OfInteger IFSelect_Editor::thelists [private]
 

Standard_Integer IFSelect_Editor::themaxco [private]
 

Standard_Integer IFSelect_Editor::themaxla [private]
 

Standard_Integer IFSelect_Editor::themaxsh [private]
 

TColStd_Array1OfInteger IFSelect_Editor::themodes [private]
 

Handle_Dico_DictionaryOfInteger IFSelect_Editor::thenames [private]
 

Standard_Integer IFSelect_Editor::thenbval [private]
 

TColStd_Array1OfAsciiString IFSelect_Editor::theshorts [private]
 

TColStd_Array1OfTransient IFSelect_Editor::thevalues [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 14:39:43 2008 for OpenCASCADE by  doxygen 1.4.1