FOX/ObjCryst++
1.10.X (development)
|
A field for a RefinablePar. More...
Public Member Functions | |
WXFieldRefPar (wxWindow *parent, const string &label, RefinablePar *refpar, const int hsize=65, const bool enableFixButton=true, const bool enableLimitedButton=true) | |
~WXFieldRefPar () | |
When a new value is entered (must type it and then hit the 'enter' key). More... | |
void | OnEnter (wxCommandEvent &WXUNUSED(event)) |
void | OnText (wxCommandEvent &WXUNUSED(event)) |
Records when text is entered (either from self-updating or user input) | |
void | OnToggleFix (wxCommandEvent &WXUNUSED(event)) |
Toggle the 'fixed' status of the parameter. | |
void | OnToggleLimited (wxCommandEvent &WXUNUSED(event)) |
Toggle the 'limited' status of the parameter. | |
void | OnPopupMenu (wxMouseEvent &event) |
Opens the popu menu, to allow changing limits. | |
void | OnPopupMenuChoice (wxCommandEvent &event) |
Opens the popu menu, to allow changing limits. | |
virtual void | CrystUpdate (const bool updateUI=false, const bool mutexlock=false) |
Get new values to be displayed from the underlying object, and raise flag if an UI update is necessary. More... | |
virtual void | UpdateUI (const bool mutexlock=false) |
Update the User Interface, if necessary. More... | |
RefinablePar & | GetRefPar () |
Get the RefinablePar associated to this field. | |
void | Revert () |
After a user entry, this allows to go back to the last value, if for some reason the entry was rejected (because the object is currently busy, ...) | |
virtual void | ValidateUserInput () |
This function shall be called when a new value has been entered. | |
virtual void | SetToolTip (const wxString &tip) |
Set tooltip for this window. It will be activated when going over the entry field. | |
void | SetFormat (const wxString &format) |
Set Format. | |
Public Member Functions inherited from ObjCryst::WXField | |
WXField (wxWindow *parent, const string &label, const int field_id) | |
Constructor, specifying the label of the field. | |
void | SetLabel (const string &) |
Change the field's label. | |
virtual bool | SetForegroundColour (const wxColour &colour) |
Change the colour of the field's title. More... | |
virtual void | SetSize (int width, int height) |
Change the size of the field (excluding the title) | |
Public Member Functions inherited from ObjCryst::WXCrystObjBasic | |
WXCrystObjBasic (wxWindow *parent) | |
Constructor. | |
virtual | ~WXCrystObjBasic () |
Destructor. | |
wxDEPRECATED (virtual void BottomLayout(WXCrystObjBasic *pChild)) | |
Redo the Layout for the object and ask parent to take it into account. More... | |
virtual void | AddChild (WXCrystObjBasic *pChild, bool doBottomLayout=true) |
Notify that a new children has been added, also adding it to the correct sizer (which can be the top sizer or not). More... | |
void | AddedToList (WXCrystObjBasicList *list) |
void | RemovedFromList (WXCrystObjBasicList *list) |
virtual bool | Layout () |
Protected Attributes | |
REAL | mValue |
wxCheckBox * | mpButtonFix |
wxCheckBox * | mpButtonLimited |
wxTextCtrl * | mpField |
RefinablePar * | mpRefPar |
REAL | mValueOld |
bool | mIsSelfUpdating |
wxString | mFormat |
Format to be used, default = _T("%8f") | |
Protected Attributes inherited from ObjCryst::WXField | |
wxBoxSizer * | mpSizer |
The horizontal sizer in which the title, button, fields, are put. | |
wxStaticText * | mpLabel |
The label. | |
const int | mId |
The Id of this field. | |
Protected Attributes inherited from ObjCryst::WXCrystObjBasic | |
WXCrystObjBasic * | mWXCrystParent |
Parent, if a WXCrystObjBasic itself. | |
bool | mIsShown |
Is the the window currently shown ? | |
bool | mNeedUpdateUI |
Do we need to update the display ? | |
CrystMutex | mMutex |
Mutex used to lock data when preparing to update the UI in non-main thread. | |
std::set< WXCrystObjBasicList * > | mvpList |
WXCrystObjBasicList which are aware of this object, and which should be told on destruction. More... | |
A field for a RefinablePar.
This shows the 'human' value of the parameter, and allows the modification of the parameter. A button allows to fix/unfix the parameter.
Definition at line 58 of file wxRefinableObj.h.
ObjCryst::WXFieldRefPar::~WXFieldRefPar | ( | ) |
When a new value is entered (must type it and then hit the 'enter' key).
The Field reads the new value, and directly changes the RefinablePar value (contrary to what happens for WXFieldName)by using RefinablePar::SetHumanValue().
Definition at line 113 of file wxRefinableObj.cpp.
|
virtual |
Get new values to be displayed from the underlying object, and raise flag if an UI update is necessary.
The actual GUI update is not made here. UpdateUI() should be called separately, from the main thread.
updateUI | if true, this will call UpdateUI, either directly (if in the main thread), or by sending a message. |
mutexlock | if true, a Mutex will be used to lock the data shared between main and background thread. The idea is to only use a few Mutexes to lock data from the top objects (wxRefinableObj,...), when calling CrystUpdate() and UpdateUI(). As sub-objects (WXField,...) are only updated from within a top object, the mutex lock in the top object will also lock the data in the sub-objects. |
Implements ObjCryst::WXCrystObjBasic.
Definition at line 204 of file wxRefinableObj.cpp.
|
virtual |
Update the User Interface, if necessary.
mutexlock | if true, a Mutex will be used to lock the data shared between main and background thread. |
The idea is to only use a few Mutexes to lock data from the top objects (wxRefinableObj,...), when calling CrystUpdate() and UpdateUI(). As sub-objects (WXField,...) are only updated from within a top object, the mutex lock in the top object will also lock the data in the sub-objects.
Implements ObjCryst::WXCrystObjBasic.
Definition at line 228 of file wxRefinableObj.cpp.