Open CASCADE Technology 6.6.0
|
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>
Public Member Functions | |
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 | |
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_Integer | NbValues () const |
Returns the count of Typed Values | |
Handle_Interface_TypedValue | TypedValue (const Standard_Integer num) const |
Returns a Typed Value from its ident | |
Standard_Boolean | IsList (const Standard_Integer num) const |
Tells if a parameter is a list | |
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_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 | |
IFSelect_EditValue | EditMode (const Standard_Integer num) const |
Returns the edit mode of a Value | |
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 | |
void | PrintNames (const Handle< Message_Messenger > &S) const |
void | PrintDefs (const Handle< Message_Messenger > &S, const Standard_Boolean labels=Standard_False) const |
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 TCollection_AsciiString | Label () const =0 |
Returns the specific label | |
virtual 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_Boolean | Recognize (const Handle< IFSelect_EditForm > &form) const =0 |
Tells if this Editor can work on this EditForm and its content (model, entity ?) | |
virtual 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 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 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_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_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_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_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 | |
Protected Member Functions | |
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 | |
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 |
IFSelect_Editor::IFSelect_Editor | ( | const Standard_Integer | nbval | ) | [protected] |
virtual Standard_Boolean IFSelect_Editor::Apply | ( | const Handle< IFSelect_EditForm > & | form, |
const Handle< Standard_Transient > & | ent, | ||
const Handle< Interface_InterfaceModel > & | model | ||
) | const [pure virtual] |
IFSelect_EditValue IFSelect_Editor::EditMode | ( | const Standard_Integer | num | ) | const |
virtual Handle_IFSelect_EditForm IFSelect_Editor::Form | ( | const Standard_Boolean | readonly, |
const Standard_Boolean | undoable = Standard_True |
||
) | const [virtual] |
Standard_Boolean IFSelect_Editor::IsList | ( | const Standard_Integer | num | ) | const |
virtual TCollection_AsciiString IFSelect_Editor::Label | ( | ) | const [pure virtual] |
virtual Handle_IFSelect_ListEditor IFSelect_Editor::ListEditor | ( | const Standard_Integer | num | ) | const [virtual] |
virtual Handle_TColStd_HSequenceOfHAsciiString IFSelect_Editor::ListValue | ( | const Handle< IFSelect_EditForm > & | form, |
const Standard_Integer | num | ||
) | const [virtual] |
virtual Standard_Boolean IFSelect_Editor::Load | ( | const Handle< IFSelect_EditForm > & | form, |
const Handle< Standard_Transient > & | ent, | ||
const Handle< Interface_InterfaceModel > & | model | ||
) | const [pure virtual] |
Standard_Integer IFSelect_Editor::MaxList | ( | const Standard_Integer | num | ) | const |
Standard_Integer IFSelect_Editor::MaxNameLength | ( | const Standard_Integer | what | ) | const |
Standard_CString IFSelect_Editor::Name | ( | const Standard_Integer | num, |
const Standard_Boolean | isshort = Standard_False |
||
) | const |
Standard_Integer IFSelect_Editor::NameNumber | ( | const Standard_CString | name | ) | const |
Standard_Integer IFSelect_Editor::NbValues | ( | ) | const |
void IFSelect_Editor::PrintDefs | ( | const Handle< Message_Messenger > & | S, |
const Standard_Boolean | labels = Standard_False |
||
) | const |
void IFSelect_Editor::PrintNames | ( | const Handle< Message_Messenger > & | S | ) | const |
virtual Standard_Boolean IFSelect_Editor::Recognize | ( | const Handle< IFSelect_EditForm > & | form | ) | const [pure virtual] |
void IFSelect_Editor::SetList | ( | const Standard_Integer | num, |
const Standard_Integer | max = 0 |
||
) |
void IFSelect_Editor::SetNbValues | ( | const Standard_Integer | nbval | ) | [protected] |
void IFSelect_Editor::SetValue | ( | const Standard_Integer | num, |
const Handle< Interface_TypedValue > & | typval, | ||
const Standard_CString | shortname = "" , |
||
const IFSelect_EditValue | accessmode = IFSelect_Editable |
||
) |
virtual Handle_TCollection_HAsciiString IFSelect_Editor::StringValue | ( | const Handle< IFSelect_EditForm > & | form, |
const Standard_Integer | num | ||
) | const [pure virtual] |
Handle_Interface_TypedValue IFSelect_Editor::TypedValue | ( | const Standard_Integer | num | ) | const |
virtual 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_EditHeader, and IGESSelect_EditDirPart.
virtual 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] |