kdelibs/kdeui/tests/kstatusbartest.cpp
Ivailo Monev 4d9a11f072 generic: remove qt3 support leftovers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-08-06 22:57:03 +03:00

121 lines
2.8 KiB
C++

#include <QtGui/QWidget>
#include <QtGui/QMessageBox>
#include <QtGui/QTextEdit>
#include <QtGui/QPixmap>
#include <QtGui/QCursor>
#include <stdlib.h>
#include "kstatusbar.h"
#include <kcmdlineargs.h>
#include <kapplication.h>
#include <kmainwindow.h>
#include "kstatusbartest.h"
testWindow::testWindow (QWidget *)
: KXmlGuiWindow (0)
{
// Setup Menus
menuBar = new QMenuBar (this);
fileMenu = new QMenu;
menuBar->addAction ( "&File" );
QAction *action = fileMenu->addAction("&Exit");
action->setShortcut( Qt::ALT + Qt::Key_Q );
connect( action, SIGNAL(triggered()), KApplication::kApplication(), SLOT(quit()) );
statusbar = new KStatusBar (this);
statusbar->insertItem("Zoom: XXXX", 0);
statusbar->insertItem("XXX", 1);
statusbar->insertItem("Line: XXXXX", 2);
statusbar->changeItem("Zoom: 100%", 0);
statusbar->changeItem("INS", 1);
insert = true;
statusbar->changeItem("Line: 13567", 2);
connect (statusbar, SIGNAL(pressed(int)), this, SLOT(slotPress(int)));
connect (statusbar, SIGNAL(released(int)), this, SLOT(slotClick(int)));
widget = new QTextEdit (this);
setCentralWidget(widget);
setCaption( KGlobal::caption() );
smenu = new QMenu;
smenu->addAction("50%");
smenu->addAction("75%");
smenu->addAction("100%");
smenu->addAction("150%");
smenu->addAction("200%");
smenu->addAction("400%");
smenu->addAction("oo%");
connect (smenu, SIGNAL(triggered(QAction*)), this, SLOT(slotMenu(QAction*)));
}
void testWindow::slotClick(int id)
{
switch (id)
{
case 0:
break;
case 1:
if (insert == true)
{
insert = false;
statusbar->changeItem("OVR", 1);
}
else
{
insert = true;
statusbar->changeItem("INS", 1);
}
break;
case 2:
QMessageBox::information(0, "Go to line", "Enter line number:");
statusbar->changeItem("16543", 2);
break;
}
}
void testWindow::slotPress(int id)
{
if (id == 0)
smenu->popup(QCursor::pos()); // This popup should understand keys up and down
}
void testWindow::slotMenu(QAction *action)
{
QString s = "Zoom: ";
s.append (action->text());
statusbar->changeItem(s,0);
}
testWindow::~testWindow ()
{
// I would delete toolbars here, but there are none
delete statusbar;
}
int main( int argc, char *argv[] )
{
KCmdLineArgs::init( argc, argv, "test", 0, ki18n("Test"), "1.0", ki18n("test app"));
KApplication *myApp = new KApplication;
testWindow *test = new testWindow;
test->show();
test->resize(test->width(), test->height()); // I really really really dunno why it doesn't show
int ret = myApp->exec();
delete test;
return ret;
}
#include "moc_kstatusbartest.cpp"