40 m_statusBar.setMaximumHeight (60);
49void StatusBar::createGroupUnits ()
52 m_cmbUnits->setEnabled (
false);
53 m_cmbUnits->addItem (labelCoordsScreen (),
QVariant (STATUS_BAR_UNITS_COORDS_SCREEN));
54 m_cmbUnits->addItem (labelCoordsGraph (),
QVariant (STATUS_BAR_UNITS_COORDS_GRAPH));
55 m_cmbUnits->addItem (labelResolutionGraph (),
QVariant (STATUS_BAR_UNITS_RESOLUTION_GRAPH));
56 m_cmbUnits->setCurrentText (labelCoordsGraph ());
58 m_cmbUnits->setToolTip (
tr (
"Select cursor coordinate values to display."));
59 m_cmbUnits->setWhatsThis (
tr(
"Select Cursor Coordinate Values\n\n"
60 "Values at cursor coordinates to display. Coordinates are in screen (pixels) or "
61 "graph units. Resolution (which is the number of graph units per pixel) is "
62 "in graph units. Graph units are only available after axis points have been defined."));
66 m_editCoords->setEnabled (
false);
67 m_editCoords->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
68 m_editCoords->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
71 m_editCoords->setReadOnly(
true);
72 m_editCoords->setToolTip (
tr (
"Cursor coordinate values."));
73 m_editCoords->setWhatsThis (
tr (
"Cursor Coordinate Values\n\n"
74 "Values at cursor coordinates. Coordinates are in screen (pixels) or "
75 "graph units. Resolution (which is the number of graph units per pixel) is "
76 "in graph units. Graph units are only available after axis points have been defined."));
79 m_groupUnits->setFrameStyle (QFrame::Box);
81 palette.setColor (QPalette::Foreground, Qt::gray);
82 m_groupUnits->setPalette (
palette);
91 m_statusBar.addPermanentWidget (m_groupUnits);
94void StatusBar::createZoom ()
97 m_cmbZoom->setEnabled (
false);
126 m_cmbZoom->setMaximumWidth (80);
127 m_cmbZoom->setToolTip (
tr (
"Select zoom."));
128 m_cmbZoom->setWhatsThis (
tr(
"Select Zoom\n\n"
129 "Points can be more accurately placed by zooming in."));
133 m_statusBar.addPermanentWidget (m_cmbZoom);
136void StatusBar::createZoomLabels ()
167void StatusBar::createZoomMaps ()
224QString StatusBar::labelCoordsGraph ()
const
226 return QString (
"%1:").arg (QObject::tr (
"Coordinates (graph)"));
229QString StatusBar::labelCoordsScreen ()
const
231 return QString (
"%1:").arg (QObject::tr (
"Coordinates (pixels)"));
234QString StatusBar::labelResolutionGraph ()
const
236 return QString (
"%1:").arg (QObject::tr (
"Resolution (graph)"));
248 if (m_cmbUnits->isEnabled ()) {
272 <<
" message=" <<
message.toLatin1 ().data ();
280 m_timer->setSingleShot(
true);
287void StatusBar::slotComboUnits (
const QString &
text)
312void StatusBar::slotTimeout()
329 m_cmbZoom->setCurrentText (m_zoomMapToLabel [
zoomFactor]);
332void StatusBar::updateCoordsText()
334 if (m_cmbUnits->currentText() == labelCoordsScreen ()) {
335 m_editCoords->setText (m_coordsScreen);
336 }
else if (m_cmbUnits->currentText() == labelCoordsGraph ()) {
337 m_editCoords->setText (m_coordsGraph);
339 m_editCoords->setText (m_resolutionGraph);
345 if (!m_cmbUnits->isEnabled ()) {
348 m_cmbZoom->setEnabled (
true);
349 m_cmbUnits->setEnabled (
true);
350 m_editCoords->setEnabled (
true);
const int INNER_RADIUS_MIN
#define ENGAUGE_ASSERT(cond)
Drop in replacement for Q_ASSERT if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS) define ENGAUGE...
log4cpp::Category * mainCat
QString statusBarModeToString(StatusBarMode statusBarMode)
@ STATUS_BAR_MODE_TEMPORARY
const int MIN_SIZE_EDIT_COORDS
const int MAX_HEIGHT_EDIT_COORDS
const int TEMPORARY_MESSAGE_LIFETIME
const int MIN_WIDTH_COMBO_UNITS
ZoomFactor
Zoom factors ordered by zoom level so next one above/below is the next zoom level.
const QString * LABEL_ZOOM_1_TO_4
const QString * LABEL_ZOOM_4_TO_1_FARTHER
const QString * LABEL_ZOOM_16_TO_1
const QString * LABEL_ZOOM_1_TO_2
const QString * LABEL_ZOOM_4_TO_1_CLOSER
const QString * LABEL_ZOOM_1_TO_8
const QString * LABEL_ZOOM_1_TO_1
const QString * LABEL_ZOOM_1_TO_8_FARTHER
const QString * LABEL_ZOOM_1_TO_4_CLOSER
const QString * LABEL_ZOOM_8_TO_1_FARTHER
const QString * LABEL_ZOOM_1_TO_1_CLOSER
const QString * LABEL_ZOOM_1_TO_2_CLOSER
const QString * LABEL_ZOOM_2_TO_1
const QString * LABEL_ZOOM_1_TO_16_CLOSER
const QString * LABEL_ZOOM_16_TO_1_FARTHER
const QString * LABEL_ZOOM_8_TO_1
const QString * LABEL_ZOOM_4_TO_1
const QString * LABEL_ZOOM_8_TO_1_CLOSER
const QString * LABEL_ZOOM_1_TO_8_CLOSER
const QString * LABEL_ZOOM_2_TO_1_FARTHER
const QString * LABEL_ZOOM_PREVIOUS
const QString * LABEL_ZOOM_FILL
const QString * LABEL_ZOOM_1_TO_4_FARTHER
const QString * LABEL_ZOOM_2_TO_1_CLOSER
const QString * LABEL_ZOOM_1_TO_2_FARTHER
const QString * LABEL_ZOOM_1_TO_1_FARTHER
const QString * LABEL_ZOOM_1_TO_16
void wakeUp()
Enable all widgets in the status bar. This is called just after a Document becomes active.
void setStatusBarMode(StatusBarMode statusBarMode)
Set the status bar visibility mode.
void signalZoom(int)
Send zoom factor, that was just selected in the status bar, to MainWindow.
StatusBarMode statusBarMode() const
Current mode for status bar visibility. This is tracked locally so this class knows when to hide/show...
void showTemporaryMessage(const QString &message)
Show temporary message in status bar. After a short interval the message will disappear.
StatusBar(QStatusBar &statusBar)
Single constructor that accepts the previously-constructed standard QStatusBar.
void slotZoom(int)
Receive zoom selection from MainWindow.
void setCoordinates(const QString &coordsScreen, const QString &coordsGraph, const QString &resolutionGraph)
Populate the coordinates fields. Unavailable values are empty. Html-encoding to highlight with colors...
#define LOG4CPP_INFO_S(logger)
#define LOG4CPP_DEBUG_S(logger)