summaryrefslogtreecommitdiff
path: root/libopie2/examples/opieui/owidgetstack_example
authormickeyl <mickeyl>2004-01-15 15:50:38 (UTC)
committer mickeyl <mickeyl>2004-01-15 15:50:38 (UTC)
commit53fa609d585216173c834cd1f22678a087394cde (patch) (side-by-side diff)
tree750759ec9a94326fc68e3ae573350c47b7aa52fe /libopie2/examples/opieui/owidgetstack_example
parent84bb8c9046007fe2adfaa016aded88b961c65e62 (diff)
downloadopie-53fa609d585216173c834cd1f22678a087394cde.zip
opie-53fa609d585216173c834cd1f22678a087394cde.tar.gz
opie-53fa609d585216173c834cd1f22678a087394cde.tar.bz2
- add oapplicationfactory to opiecore
- add big screen examples
Diffstat (limited to 'libopie2/examples/opieui/owidgetstack_example') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/examples/opieui/owidgetstack_example/.cvsignore6
-rw-r--r--libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.cpp132
-rw-r--r--libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.h28
-rw-r--r--libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.pro13
4 files changed, 179 insertions, 0 deletions
diff --git a/libopie2/examples/opieui/owidgetstack_example/.cvsignore b/libopie2/examples/opieui/owidgetstack_example/.cvsignore
new file mode 100644
index 0000000..8f7300c
--- a/dev/null
+++ b/libopie2/examples/opieui/owidgetstack_example/.cvsignore
@@ -0,0 +1,6 @@
+Makefile*
+moc*
+*moc
+*.o
+~*
+
diff --git a/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.cpp b/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.cpp
new file mode 100644
index 0000000..b1c5e70
--- a/dev/null
+++ b/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.cpp
@@ -0,0 +1,132 @@
+/*
+ * You may use, modify and distribute this example without any limitation
+ */
+
+#include "owidgetstack_example.h"
+
+/* OPIE */
+#include <opie2/oapplicationfactory.h>
+#include <opie2/owidgetstack.h>
+#include <qpe/resource.h>
+
+/* QT */
+#include <qaction.h>
+#include <qtoolbar.h>
+#include <qpopupmenu.h>
+#include <qmenubar.h>
+#include <qlayout.h>
+#include <qlabel.h>
+#include <qpushbutton.h>
+#include <qsignalmapper.h>
+
+using namespace Opie;
+
+OPIE_EXPORT_APP( OApplicationFactory<StackExample> )
+
+StackExample::StackExample( QWidget* parent, const char* name, WFlags fl )
+ : QMainWindow( parent, name, fl )
+{
+ m_stack = new OWidgetStack( this );
+ setCentralWidget( m_stack );
+
+ /* nice Signal Mapper ;) */
+ QSignalMapper *sm = new QSignalMapper(this);
+ connect(sm, SIGNAL(mapped(int) ), m_stack, SLOT(raiseWidget(int)) );
+
+ /* toolbar first but this should be known from the other examples */
+ setToolBarsMovable( false );
+
+ /* only a menubar here */
+ QToolBar* holder = new QToolBar( this );
+ holder->setHorizontalStretchable( true );
+
+ QMenuBar *bar = new QMenuBar( holder );
+ QPopupMenu *menu = new QPopupMenu( this );
+
+ QAction* a = new QAction( tr("Show MainWidget"), Resource::loadPixmap("zoom"),
+ QString::null, 0, this, 0 );
+ sm->setMapping(a, 1 );
+ connect(a, SIGNAL(activated() ),
+ sm, SLOT(map() ) );
+ a->addTo( menu );
+
+ a = new QAction( tr("Show Details Small"), Resource::loadPixmap("zoom"),
+ QString::null, 0, this, 0 );
+ sm->setMapping(a, 2 );
+ connect(a, SIGNAL(activated() ),
+ sm, SLOT(map() ) );
+ a->addTo( menu );
+
+ a = new QAction( tr("Show Details More"), Resource::loadPixmap("zoom"),
+ QString::null, 0, this, 0 );
+ sm->setMapping(a, 3 );
+ connect(a, SIGNAL(activated() ),
+ sm, SLOT(map() ) );
+ a->addTo( menu );
+
+ a = new QAction( tr("Show Details All"), Resource::loadPixmap("zoom"),
+ QString::null, 0, this, 0 );
+ sm->setMapping(a, 4 );
+ connect(a, SIGNAL(activated() ),
+ sm, SLOT(map() ) );
+
+ bar->insertItem( tr("Actions"), menu );
+
+ /* now the gui */
+
+ /* first widget, main widget */
+ QWidget * wid = new QWidget( m_stack );
+ QGridLayout *grid = new QGridLayout(wid, 2, 2 );
+
+ QPushButton *btn = new QPushButton( tr("Show Details Small"), wid, "details1" );
+ sm->setMapping(btn, 2 );
+ connect(btn, SIGNAL(clicked()), sm, SLOT(map() ) );
+ grid->addWidget( btn, 0, 0 );
+
+ btn = new QPushButton( tr("Show Details Medium"), wid, "details2");
+ sm->setMapping(btn, 3 );
+ connect(btn, SIGNAL(clicked()), sm, SLOT(map() ) );
+ grid->addWidget( btn, 0, 1 );
+
+ btn = new QPushButton( tr("Show Details All"), wid, "details3");
+ sm->setMapping(btn, 4 );
+ connect(btn, SIGNAL(clicked()), sm, SLOT(map() ) );
+ grid->addWidget( btn, 1, 1 );
+
+ m_stack->addWidget( wid, 1 );
+ m_main = wid;
+
+ QLabel *lbl = new QLabel(m_stack );
+ lbl->setText(tr("Only small Details are shown here. Määh") );
+ m_stack->addWidget( lbl, 2 );
+
+ lbl = new QLabel( m_stack );
+ lbl->setText( tr("Some more details....Wo ist das Schaf?") );
+ m_stack->addWidget( lbl, 3 );
+
+ lbl = new QLabel( m_stack );
+ lbl->setText( tr("<qt>Ne nicht in Bayerisch Gmain sondern in Berlin<br>Vermiss und meine Augen werden nicht eckig, da mein Bildschirm abgerundet ist<br>Es lebe Hamburg Süd,weiss du, verstehst du? ;)<br>Susi ist dOOf, es lebe die Ofenecke...", "hard to translate that") );
+ m_stack->addWidget( lbl, 4 );
+
+
+ /* THE signal mapper does all the magic */
+ m_stack->raiseWidget( m_main );
+}
+
+
+StackExample::~StackExample() {
+
+}
+
+
+
+void StackExample::closeEvent( QCloseEvent* ev) {
+ /* if the close even came when we displayed a details */
+ if (m_stack->visibleWidget() != m_main ) {
+ m_stack->raiseWidget( m_main );
+ ev->ignore();
+ return;
+ }
+
+ ev->accept();
+}
diff --git a/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.h b/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.h
new file mode 100644
index 0000000..aea85cb
--- a/dev/null
+++ b/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.h
@@ -0,0 +1,28 @@
+/*
+ * You may use, modify and distribute this example without any limitation
+ */
+
+#ifndef O_STACK_EXAMPLE_SIMPLE_H
+#define O_STACK_EXAMPLE_SIMPLE_H
+
+#include <qmainwindow.h>
+#include <opie2/owidgetstack.h>
+
+using namespace Opie;
+
+class StackExample : public QMainWindow {
+ Q_OBJECT
+public:
+ StackExample( QWidget* paren, const char* name, WFlags fl );
+ ~StackExample();
+ static QString appName() { return QString::fromLatin1("owidgetstack-example"); }
+
+protected:
+ void closeEvent( QCloseEvent* e );
+private:
+ OWidgetStack* m_stack;
+ QWidget* m_main;
+
+};
+
+#endif
diff --git a/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.pro b/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.pro
new file mode 100644
index 0000000..395a4fb
--- a/dev/null
+++ b/libopie2/examples/opieui/owidgetstack_example/owidgetstack_example.pro
@@ -0,0 +1,13 @@
+CONFIG += qt warn_on
+TEMPLATE = app
+TARGET = owidgetstack-example
+
+SOURCES = owidgetstack_example.cpp
+HEADERS = owidgetstack_example.h
+
+INCLUDEPATH += $(OPIEDIR)/include
+DEPENDSPATH += $(OPIEDIR)/include
+
+LIBS += -lqpe -lopieui2
+
+include ( $(OPIEDIR)/include.pro )