summaryrefslogtreecommitdiffstats
path: root/kdeui/tests/krulertest.cpp
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commitce4a32fe52ef09d8f5ff1dd22c001110902b60a2 (patch)
tree5ac38a06f3dde268dc7927dc155896926aaf7012 /kdeui/tests/krulertest.cpp
downloadtdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.tar.gz
tdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kdeui/tests/krulertest.cpp')
-rw-r--r--kdeui/tests/krulertest.cpp375
1 files changed, 375 insertions, 0 deletions
diff --git a/kdeui/tests/krulertest.cpp b/kdeui/tests/krulertest.cpp
new file mode 100644
index 000000000..1efe57643
--- /dev/null
+++ b/kdeui/tests/krulertest.cpp
@@ -0,0 +1,375 @@
+
+
+#include "krulertest.h"
+
+#include "kruler.h"
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qgroupbox.h>
+
+/*
+void
+MyCheckBox::mouseReleaseEvent(QMouseEvent *e )
+{
+ QButton::mouseReleaseEvent(e);
+ if ();
+}
+*/
+
+MouseWidget::MouseWidget( QWidget *parent, const char *name, WFlags f )
+ : QFrame(parent, name, f)
+{
+}
+
+void
+MouseWidget::mousePressEvent( QMouseEvent *e )
+{
+ mouseButtonDown = true;
+ emit newXPos(e->x());
+ emit newYPos(e->y());
+}
+
+void
+MouseWidget::mouseReleaseEvent( QMouseEvent * )
+{ mouseButtonDown = false; }
+
+void
+MouseWidget::mouseMoveEvent( QMouseEvent *e )
+{
+ if (mouseButtonDown) {
+ emit newXPos(e->x());
+ emit newYPos(e->y());
+ }
+}
+
+void
+MouseWidget::resizeEvent( QResizeEvent *r )
+{
+ emit newWidth(r->size().width());
+ emit newHeight(r->size().height());
+}
+
+
+KRulerTest::KRulerTest( const char *name )
+ : KMainWindow(0, name)
+{
+ mainframe = new QFrame(this);
+
+ layout = new QGridLayout(mainframe, 2, 2);
+
+ miniwidget = new QFrame(mainframe);
+ miniwidget->setFrameStyle(QFrame::WinPanel | QFrame::Raised);
+ bigwidget = new MouseWidget(mainframe);
+ bigwidget->setFrameStyle(QFrame::WinPanel | QFrame::Sunken);
+
+ // QRect bwrect = bigwidget->frameRect();
+ // qDebug("big rect: top%i left%i bottom%i right%i",
+ // bwrect.top(), bwrect.left(), bwrect.bottom(), bwrect.right());
+ hruler = new KRuler(Horizontal, mainframe);
+ // hruler->setRange( bwrect.left(), bwrect.right() );
+ hruler->setRange( 0, 1000 );
+ // hruler->setOffset( bwrect.left() - bigwidget->frameRect().left() );
+ hruler->setOffset( 0 );
+
+ vruler = new KRuler(Vertical, mainframe);
+ vruler->setFrameStyle(QFrame::WinPanel | QFrame::Sunken);
+ vruler->setOffset( 0 );
+ vruler->setRange( 0, 1000 );
+
+ connect( bigwidget, SIGNAL(newXPos(int)),
+ hruler, SLOT(slotNewValue(int)) );
+ connect( bigwidget, SIGNAL(newYPos(int)),
+ vruler, SLOT(slotNewValue(int)) );
+ connect( bigwidget, SIGNAL(newWidth(int)),
+ SLOT(slotNewWidth(int)) );
+ connect( bigwidget, SIGNAL(newHeight(int)),
+ SLOT(slotNewHeight(int)) );
+
+ layout->addWidget(miniwidget, 0, 0);
+ layout->addWidget(hruler, 0, 1);
+ layout->addWidget(vruler, 1, 0);
+ layout->addWidget(bigwidget, 1, 1);
+
+ mouse_message = new QLabel("Press and hold mouse button\nfor pointer movement", bigwidget);
+ mouse_message->adjustSize();
+ mouse_message->move(4,4);
+
+ showMarks = new QGroupBox("Show which marks ?", bigwidget);
+ showMarks->setFixedSize(140, 160);
+ showMarks->move(330,4);
+ showTM = new QCheckBox("show tiny marks", showMarks);
+ showTM->adjustSize();
+ showTM->move(5,15);
+ showTM->setChecked(true);
+ connect(showTM, SIGNAL(toggled(bool)), SLOT(slotSetTinyMarks(bool)) );
+ showLM = new QCheckBox("show little marks", showMarks);
+ showLM->adjustSize();
+ showLM->move(5,35);
+ showLM->setChecked(true);
+ connect(showLM, SIGNAL(toggled(bool)), SLOT(slotSetLittleMarks(bool)) );
+ showMM = new QCheckBox("show medium marks", showMarks);
+ showMM->adjustSize();
+ showMM->move(5,55);
+ showMM->setChecked(true);
+ connect(showMM, SIGNAL(toggled(bool)), SLOT(slotSetMediumMarks(bool)) );
+ showBM = new QCheckBox("show big marks", showMarks);
+ showBM->adjustSize();
+ showBM->move(5,75);
+ showBM->setChecked(true);
+ connect(showBM, SIGNAL(toggled(bool)), SLOT(slotSetBigMarks(bool)) );
+ showEM = new QCheckBox("show end marks", showMarks);
+ showEM->adjustSize();
+ showEM->move(5,95);
+ showEM->setChecked(true);
+ connect(showEM, SIGNAL(toggled(bool)), SLOT(slotSetEndMarks(bool)) );
+ showPT = new QCheckBox("show ruler pointer", showMarks);
+ showPT->adjustSize();
+ showPT->move(5,115);
+ showPT->setChecked(true);
+ connect(showPT, SIGNAL(toggled(bool)), SLOT(slotSetRulerPointer(bool)) );
+ fixLen = new QCheckBox("fix ruler length", showMarks);
+ fixLen->adjustSize();
+ fixLen->move(5,135);
+ fixLen->setChecked(true);
+ connect(fixLen, SIGNAL(toggled(bool)), SLOT(slotFixRulerLength(bool)) );
+ connect(fixLen, SIGNAL(toggled(bool)), SLOT(slotCheckLength(bool)) );
+
+ lineEdit = new QGroupBox("Value of begin/end", bigwidget);
+ lineEdit->setFixedSize(140, 80);
+ lineEdit->move(330,4+160);
+ beginMark = new KIntNumInput(0, lineEdit);
+ beginMark->setRange(-1000, 1000, 1, false);
+ beginMark->move(5, 15);
+ beginMark->setFixedSize(beginMark->sizeHint());
+ connect(beginMark, SIGNAL(valueChanged(int)),
+ hruler, SLOT(slotNewOffset(int)) );
+ connect(beginMark, SIGNAL(valueChanged(int)),
+ vruler, SLOT(slotNewOffset(int)) );
+ endMark = new KIntNumInput(0, lineEdit);
+ endMark->setRange(-1000, 1000, 1, false);
+ endMark->move(5, 35);
+ endMark->setFixedSize(endMark->sizeHint());
+ connect(endMark, SIGNAL(valueChanged(int)),
+ hruler, SLOT(slotEndOffset(int)) );
+ connect(endMark, SIGNAL(valueChanged(int)),
+ vruler, SLOT(slotEndOffset(int)) );
+ lengthInput = new KIntNumInput(0, lineEdit);
+ lengthInput->setRange(-1000, 1000, 1, false);
+ lengthInput->move(5, 55);
+ lengthInput->setFixedSize(lengthInput->sizeHint());
+ connect(lengthInput, SIGNAL(valueChanged(int)),
+ hruler, SLOT(slotEndOffset(int)) );
+ connect(lengthInput, SIGNAL(valueChanged(int)),
+ vruler, SLOT(slotEndOffset(int)) );
+
+
+ vertrot = new QGroupBox("Value of rotate translate for Vert.", bigwidget);
+ vertrot->setFixedSize(140, 80);
+ vertrot->move(330,4+160+80+4);
+ transX = new KDoubleNumInput(0.0, vertrot);
+ transX->setRange(-1000, 1000, 1, false);
+ transX->move(5, 15);
+ transX->setFixedSize(transX->sizeHint());
+ //transX->setLabel("transx", AlignLeft);
+ connect(transX, SIGNAL(valueChanged(double)),
+ SLOT(slotSetXTrans(double)) );
+ transY = new KDoubleNumInput(-12.0, vertrot);
+ transY->setRange(-1000, 1000, 1, false);
+ transY->move(5, 35);
+ transY->setFixedSize(transY->sizeHint());
+ //transY->setLabel("transy", AlignLeft);
+ connect(transY, SIGNAL(valueChanged(double)),
+ SLOT(slotSetYTrans(double)) );
+ rotV = new KDoubleNumInput(90.0, vertrot);
+ rotV->setRange(-1000, 1000, 1, false);
+ rotV->move(5, 55);
+ rotV->setFixedSize(rotV->sizeHint());
+ //rotV->setLabel("rot", AlignLeft);
+ connect(rotV, SIGNAL(valueChanged(double)),
+ SLOT(slotSetRotate(double)) );
+
+
+ metricstyle = new QButtonGroup("metric styles", bigwidget);
+ metricstyle->setFixedSize(100, 120);
+ metricstyle->move(330-110,4);
+ pixelmetric = new QRadioButton("pixel", metricstyle);
+ pixelmetric->adjustSize();
+ pixelmetric->move(5,15);
+ metricstyle->insert(pixelmetric, (int)KRuler::Pixel);
+ inchmetric = new QRadioButton("inch", metricstyle);
+ inchmetric->adjustSize();
+ inchmetric->move(5,35);
+ metricstyle->insert(inchmetric, (int)KRuler::Inch);
+ mmmetric = new QRadioButton("millimeter", metricstyle);
+ mmmetric->adjustSize();
+ mmmetric->move(5,55);
+ metricstyle->insert(mmmetric, (int)KRuler::Millimetres);
+ cmmetric = new QRadioButton("centimeter", metricstyle);
+ cmmetric->adjustSize();
+ cmmetric->move(5,75);
+ metricstyle->insert(cmmetric, (int)KRuler::Centimetres);
+ mmetric = new QRadioButton("meter", metricstyle);
+ mmetric->adjustSize();
+ mmetric->move(5,95);
+ metricstyle->insert(mmetric, (int)KRuler::Metres);
+ connect ( metricstyle, SIGNAL(clicked(int)), SLOT(slotSetMStyle(int)) );
+
+ setCentralWidget(mainframe);
+
+ slotUpdateShowMarks();
+}
+
+KRulerTest::~KRulerTest()
+{
+ delete layout;
+ delete hruler;
+ delete vruler;
+ delete miniwidget;
+ delete bigwidget;
+ delete mainframe;
+}
+
+void
+KRulerTest::slotNewWidth(int width)
+{
+ hruler->setMaxValue(width);
+}
+
+void
+KRulerTest::slotNewHeight(int height)
+{
+ vruler->setMaxValue(height);
+}
+
+void
+KRulerTest::slotSetTinyMarks(bool set)
+{
+ hruler->setShowTinyMarks(set);
+ vruler->setShowTinyMarks(set);
+}
+
+void
+KRulerTest::slotSetLittleMarks(bool set)
+{
+ hruler->setShowLittleMarks(set);
+ vruler->setShowLittleMarks(set);
+}
+
+void
+KRulerTest::slotSetMediumMarks(bool set)
+{
+ hruler->setShowMediumMarks(set);
+ vruler->setShowMediumMarks(set);
+}
+
+void
+KRulerTest::slotSetBigMarks(bool set)
+{
+ hruler->setShowBigMarks(set);
+ vruler->setShowBigMarks(set);
+}
+
+void
+KRulerTest::slotSetEndMarks(bool set)
+{
+ hruler->setShowEndMarks(set);
+ vruler->setShowEndMarks(set);
+}
+
+void
+KRulerTest::slotSetRulerPointer(bool set)
+{
+ hruler->setShowPointer(set);
+ vruler->setShowPointer(set);
+}
+
+void
+KRulerTest::slotSetRulerLength(int len)
+{
+ hruler->setLength(len);
+ vruler->setLength(len);
+}
+
+void
+KRulerTest::slotFixRulerLength(bool fix)
+{
+ hruler->setLengthFixed(fix);
+ vruler->setLengthFixed(fix);
+}
+
+void
+KRulerTest::slotSetMStyle(int style)
+{
+ hruler->setRulerMetricStyle((KRuler::MetricStyle)style);
+ vruler->setRulerMetricStyle((KRuler::MetricStyle)style);
+ slotUpdateShowMarks();
+}
+
+
+void
+KRulerTest::slotUpdateShowMarks()
+{
+ showTM->setChecked(hruler->showTinyMarks());
+ showLM->setChecked(hruler->showLittleMarks());
+ showMM->setChecked(hruler->showMediumMarks());
+ showBM->setChecked(hruler->showBigMarks());
+ showEM->setChecked(hruler->showEndMarks());
+}
+
+void
+KRulerTest::slotCheckLength(bool fixlen)
+{
+ beginMark->setValue(hruler->offset());
+ endMark->setValue(hruler->endOffset());
+ lengthInput->setValue(hruler->length());
+}
+
+void
+KRulerTest::slotSetRotate(double d)
+{
+#ifdef KRULER_ROTATE_TEST
+ vruler->rotate = d;
+ vruler->update();
+ //debug("rotate %.1f", d);
+#endif
+}
+
+void
+KRulerTest::slotSetXTrans(double d)
+{
+#ifdef KRULER_ROTATE_TEST
+ vruler->xtrans = d;
+ vruler->update();
+ //debug("trans x %.1f", d);
+#endif
+}
+
+void
+KRulerTest::slotSetYTrans(double d)
+{
+#ifdef KRULER_ROTATE_TEST
+ vruler->ytrans = d;
+ vruler->update();
+ //debug("trans y %.1f", d);
+#endif
+}
+
+
+/* --- MAIN -----------------------*/
+int main(int argc, char **argv)
+{
+ KApplication *testapp;
+ KRulerTest *window;
+
+ testapp = new KApplication(argc, argv,"krulertest");
+ testapp->setFont(QFont("Helvetica",12),true);
+
+ window = new KRulerTest("main");
+ testapp->setMainWidget(window);
+ window->setCaption("KRulerTest");
+ window->show();
+ return testapp->exec();
+}
+
+#include "krulertest.moc"
+