mirror of
https://github.com/leozide/leocad
synced 2024-11-17 07:47:55 +01:00
67 lines
1.3 KiB
C++
67 lines
1.3 KiB
C++
#pragma once
|
|
|
|
#include <QObject>
|
|
|
|
QString lcFormatValue(float Value, int Precision);
|
|
QString lcFormatValueLocalized(float Value);
|
|
float lcParseValueLocalized(const QString& Value);
|
|
|
|
class lcQTreeWidgetColumnStretcher : public QObject
|
|
{
|
|
public:
|
|
lcQTreeWidgetColumnStretcher(QTreeWidget *treeWidget, int columnToStretch);
|
|
|
|
virtual bool eventFilter(QObject *obj, QEvent *ev);
|
|
|
|
const int m_columnToStretch;
|
|
};
|
|
|
|
class lcTransformLineEdit : public QLineEdit
|
|
{
|
|
public:
|
|
lcTransformLineEdit()
|
|
: QLineEdit()
|
|
{
|
|
}
|
|
|
|
virtual QSize sizeHint() const override
|
|
{
|
|
QFontMetrics FontMetrics(font());
|
|
|
|
int Width = FontMetrics.width(QLatin1Char('x')) * 10;
|
|
|
|
return QLineEdit::sizeHint() - QSize(Width, 0);
|
|
}
|
|
|
|
protected:
|
|
virtual bool event(QEvent* Event) override
|
|
{
|
|
if (Event->type() == QEvent::ShortcutOverride)
|
|
{
|
|
QKeyEvent* KeyEvent = (QKeyEvent*)Event;
|
|
int Key = KeyEvent->key();
|
|
|
|
if (KeyEvent->modifiers() == Qt::NoModifier && Key >= Qt::Key_A && Key <= Qt::Key_Z)
|
|
Event->accept();
|
|
|
|
switch (Key)
|
|
{
|
|
case Qt::Key_Down:
|
|
case Qt::Key_Up:
|
|
case Qt::Key_Left:
|
|
case Qt::Key_Right:
|
|
case Qt::Key_Home:
|
|
case Qt::Key_End:
|
|
case Qt::Key_PageUp:
|
|
case Qt::Key_PageDown:
|
|
case Qt::Key_Plus:
|
|
case Qt::Key_Minus:
|
|
case Qt::Key_Enter:
|
|
Event->accept();
|
|
break;
|
|
}
|
|
}
|
|
|
|
return QLineEdit::event(Event);
|
|
}
|
|
};
|