source: vendor/trolltech/current/examples/customlayout/main.cpp

Last change on this file was 2, checked in by dmik, 20 years ago

Imported xplatform parts of the official release 3.3.1 from Trolltech

  • Property svn:keywords set to Id
File size: 3.1 KB
Line 
1/****************************************************************************
2** $Id: main.cpp 2 2005-11-16 15:49:26Z dmik $
3**
4** Main for custom layout example
5**
6** Copyright (C) 1996 by Trolltech AS. All rights reserved.
7**
8** This file is part of an example program for Qt. This example
9** program may be used, distributed and modified without limitation.
10**
11*****************************************************************************/
12
13#include "flow.h"
14#include "border.h"
15#include "card.h"
16
17#include <qapplication.h>
18#include <qlabel.h>
19#include <qcolor.h>
20#include <qgroupbox.h>
21#include <qpushbutton.h>
22#include <qmultilineedit.h>
23#include <qcolor.h>
24
25int main( int argc, char **argv )
26{
27 QApplication a( argc, argv );
28
29 QWidget *f = new QWidget;
30 QBoxLayout *gm = new QVBoxLayout( f, 5 );
31
32 SimpleFlow *b1 = new SimpleFlow( gm );
33
34 b1->add( new QPushButton( "Short", f ) );
35 b1->add( new QPushButton( "Longer", f ) );
36 b1->add( new QPushButton( "Different text", f ) );
37 b1->add( new QPushButton( "More text", f ) );
38 b1->add( new QPushButton( "Even longer button text", f ) );
39 QPushButton* qb = new QPushButton( "Quit", f );
40 a.connect( qb, SIGNAL( clicked() ), SLOT( quit() ) );
41 b1->add( qb );
42
43 QWidget *wid = new QWidget( f );
44
45 BorderLayout *large = new BorderLayout( wid );
46 large->setSpacing( 5 );
47 large->addWidget( new QPushButton( "North", wid ), BorderLayout::North );
48 large->addWidget( new QPushButton( "West", wid ), BorderLayout::West );
49 QMultiLineEdit* m = new QMultiLineEdit( wid );
50 m->setText( "Central\nWidget" );
51 large->addWidget( m, BorderLayout::Center );
52 QWidget *east1 = new QPushButton( "East", wid );
53 large->addWidget( east1, BorderLayout::East );
54 QWidget *east2 = new QPushButton( "East 2", wid );
55 large->addWidget( east2 , BorderLayout::East );
56 large->addWidget( new QPushButton( "South", wid ), BorderLayout::South );
57 //Left-to-right tab order looks better:
58 QWidget::setTabOrder( east2, east1 );
59 gm->addWidget( wid );
60
61
62 wid = new QWidget( f );
63 CardLayout *card = new CardLayout( wid, 10 );
64
65 QWidget *crd = new QWidget( wid );
66 crd->setBackgroundColor( Qt::red );
67 card->add( crd );
68 crd = new QWidget( wid );
69 crd->setBackgroundColor( Qt::green );
70 card->add( crd );
71 crd = new QWidget( wid );
72 crd->setBackgroundColor( Qt::blue );
73 card->add( crd );
74 crd = new QWidget( wid );
75 crd->setBackgroundColor( Qt::white );
76 card->add( crd );
77 crd = new QWidget( wid );
78 crd->setBackgroundColor( Qt::black );
79 card->add( crd );
80 crd = new QWidget( wid );
81 crd->setBackgroundColor( Qt::yellow );
82 card->add( crd );
83
84 gm->addWidget( wid );
85
86 QLabel* s = new QLabel( f );
87 s->setText( "outermost box" );
88 s->setFrameStyle( QFrame::Panel | QFrame::Sunken );
89 s->setAlignment( Qt::AlignVCenter | Qt::AlignHCenter );
90 gm->addWidget( s );
91 a.setMainWidget( f );
92 f->setCaption("Qt Example - Custom Layout");
93 f->show();
94
95 int result = a.exec();
96 delete f;
97 return result;
98}
Note: See TracBrowser for help on using the repository browser.