Files
qwt/examples/barchart/main.cpp
2023-10-31 09:22:42 +01:00

71 lines
2.0 KiB
C++

/*****************************************************************************
* Qwt Examples - Copyright (C) 2002 Uwe Rathmann
* This file may be used under the terms of the 3-clause BSD License
*****************************************************************************/
#include "BarChart.h"
#include <QApplication>
#include <QMainWindow>
#include <QToolBar>
#include <QToolButton>
#include <QComboBox>
namespace
{
class MainWindow : public QMainWindow
{
public:
MainWindow( QWidget* = NULL );
};
}
MainWindow::MainWindow( QWidget* parent )
: QMainWindow( parent )
{
BarChart* chart = new BarChart();
setCentralWidget( chart );
QToolBar* toolBar = new QToolBar();
QComboBox* typeBox = new QComboBox( toolBar );
typeBox->addItem( "Grouped" );
typeBox->addItem( "Stacked" );
typeBox->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed );
QComboBox* orientationBox = new QComboBox( toolBar );
orientationBox->addItem( "Vertical" );
orientationBox->addItem( "Horizontal" );
orientationBox->setSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed );
QToolButton* btnExport = new QToolButton( toolBar );
btnExport->setText( "Export" );
btnExport->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
connect( btnExport, SIGNAL(clicked()), chart, SLOT(exportChart()) );
toolBar->addWidget( typeBox );
toolBar->addWidget( orientationBox );
toolBar->addWidget( btnExport );
addToolBar( toolBar );
chart->setMode( typeBox->currentIndex() );
connect( typeBox, SIGNAL(currentIndexChanged(int)),
chart, SLOT(setMode(int)) );
chart->setOrientation( orientationBox->currentIndex() );
connect( orientationBox, SIGNAL(currentIndexChanged(int)),
chart, SLOT(setOrientation(int)) );
}
int main( int argc, char* argv[] )
{
QApplication app( argc, argv );
MainWindow window;
window.resize( 600, 400 );
window.show();
return app.exec();
}