+ /// Shous popup window under cursor for data editing
+ /// \param theSendSignals a flag whether the signals should be sent or the value
+ /// is to be applyed directly
+ /// \return true if the editor value is accepted
+ bool showPopupEditor(const bool theSendSignals = true);
+
+ /// Set current cursor position
+ /// \param theX the X coordinate
+ /// \param theY the Y coordinate
+ void setCursorPosition(const int theX, const int theY);
+
+protected:
+ /// Returns true if the event is processed.
+ virtual bool processEnter();
+
+ /// Reject the current editor dialog if it is shown and returns true.
+ virtual bool processEscape();
+
+private:
+ /// Show editor
+ /// \param theSpinMinValue a minimal value of popup menu spin box
+ /// \param theSpinMaxValue a maximum value of popup menu spin box
+ /// \param theOutValue a result value
+ /// \param theOutText a result text
+ /// \return true if the editor value is accepted
+ bool editedValue(double theSpinMinValue, double theSpinMaxValue,
+ double& theOutValue, QString& theOutText);