Public Methods | |
WXPowderPatternGraph (wxFrame *frame, WXPowderPattern *parent) | |
Constructor. The top frame should have a Status bar with two fields (at least). | |
void | OnPaint (wxPaintEvent &WXUNUSED(event)) |
Redraw the spectrum. | |
void | OnMouse (wxMouseEvent &event) |
Display the Theta and intensity values at the mouse position, in the status bar. | |
void | OnUpdate (wxCommandEvent &WXUNUSED(event)) |
Update the powder spectrum, at the user's request. | |
void | SetPattern (const CrystVector_REAL &obs, const CrystVector_REAL &calc, const REAL tthetaMin, const REAL tthetaStep, const CrystVector_REAL &sigma) |
Update the spectrum. This is called by the WXPowderPattern parent. | |
void | OnRedrawNewPattern (wxUpdateUIEvent &WXUNUSED(event)) |
Redraw the pattern (special function to ensure complete redrawing under windows...). | |
Private Methods | |
void | ResetAxisLimits () |
Reset the limits of the axis to full range. | |
Private Attributes | |
wxMenu * | mpPopUpMenu |
Pop-up menu. | |
bool | mIsDragging |
Are we within a dragging event ? | |
REAL | mDragging2Theta0 |
Remember coordinates at the beginning of the dragging. | |
REAL | mDraggingIntensity0 |
Remember coordinates at the beginning of the dragging. | |
long | mFirst |
Index of the first and last points drawn of the pattern. | |
long | mLast |
Index of the first and last points drawn of the pattern. | |
RefinableObjClock | mClockAxisLimits |
Clock corresponding to when the graph limits where last changed. |
So far only displays calc and obs patterns.
|
Update the powder spectrum, at the user's request. This calls the WXPowderPattern::CrystUpdate(). |
|
Clock corresponding to when the graph limits where last changed. This is compared to PowderPattern::GetClockPowderPatternPar() to know if these parameter need to be reset. |