#include <qapplication.h>
#include <qstring.h>
#include <qmainwindow.h>
#include <qdockwindow.h>
#include <qtextedit.h>
#include <qtoolbar.h>
#include <qtoolbutton.h>
#include <qpopupmenu.h>
#include <qwidgetstack.h>
#include <qhbox.h>
#include <qlayout.h>
{
public:
MainWindow(const QString& filename );
QDockWindow *toolBarDockWindow;
QWidgetStack *toolBarStack;
QWidgetStack *mainWindowStack;
private:
void init();
};
MainWindow::MainWindow(const QString& filename)
{
int screenW;
int screenH;
this->resize(screenW,screenH);
init();
}
void MainWindow::init()
{
toolBarDockWindow = new QDockWindow (QDockWindow::InDock,this,"toolbardockwindow",0);
toolBarDockWindow->setOrientation(Qt::Horizontal);
toolBarDockWindow->setHorizontallyStretchable(TRUE);
toolBarDockWindow->setVerticallyStretchable(TRUE);
toolBarDockWindow->setMovingEnabled(FALSE);
tbBkgColor.setHsv(205,167,189);
toolBarDockWindow->setPaletteBackgroundColor(tbBkgColor);
this->moveDockWindow(toolBarDockWindow,Qt::DockBottom);
toolBarStack = new QWidgetStack(toolBarDockWindow);
QHBox* editToolBar = new QHBox(toolBarStack);
editToolBar->setSpacing(6);
editToolBar->setMargin(6);
QHBox* graphicToolBar = new QHBox(toolBarStack);
graphicToolBar->setSpacing(6);
graphicToolBar->setMargin(6);
toolBarStack->addWidget(editToolBar,0);
toolBarStack->addWidget(graphicToolBar,1);
fileButton
= new QToolButton(editToolBar,
"filebutton");
fileButton->setUsesTextLabel(TRUE);
fileButton->setTextLabel("File",FALSE);
fileButton
->setFont
(QFont("Times",
20,
QFont::Bold));
fileButton->setPopupDelay(10);
QPopupMenu *fileMenu = new QPopupMenu(this);
fileMenu->insertItem("New File",this,SLOT(fileNew()),Qt::Key_F1);
fileMenu->insertItem("Load File",this,SLOT(fileOpen()),Qt::Key_F2);
fileMenu->insertItem("Save File",this,SLOT(fileSave()),Qt::Key_F3);
fileMenu->insertItem("Save File As...",this,SLOT(fileSaveAs()),Qt::Key_F4);
fileButton->setPopup(fileMenu);
editButton
= new QToolButton(editToolBar,
"editbutton");
editButton->setUsesTextLabel(TRUE);
editButton->setTextLabel("Edit",FALSE);
editButton
->setFont
(QFont("Times",
20,
QFont::Bold));
graphicButton
= new QToolButton(editToolBar,
"graphicButton");
graphicButton->setUsesTextLabel(TRUE);
graphicButton->setTextLabel("Graphic",FALSE);
graphicButton
->setFont
(QFont("Times",
20,
QFont::Bold));
editToolBar->layout()->addItem(editToolBarSpacer);
toolBarStack->raiseWidget(0);
textEdit->setTextFormat(Qt::PlainText);
textEdit->setFocus();
this->setCentralWidget(textEdit);
}
int main(int argc, char *argv[])
{
MainWindow *mainWindow = new MainWindow(filename);
app.setMainWidget(mainWindow);
mainWindow->show();
return app.exec();
}
#include <qapplication.h>
#include <qstring.h>
#include <qmainwindow.h>
#include <qdockwindow.h>
#include <qtextedit.h>
#include <qtoolbar.h>
#include <qtoolbutton.h>
#include <qpopupmenu.h>
#include <qwidgetstack.h>
#include <qhbox.h>
#include <qlayout.h>
class MainWindow:public QMainWindow
{
public:
MainWindow(const QString& filename );
QDockWindow *toolBarDockWindow;
QWidgetStack *toolBarStack;
QWidgetStack *mainWindowStack;
QToolButton* fileButton;
QToolButton* editButton;
QToolButton* graphicButton;
QTextEdit *textEdit;
private:
void init();
QString m_filename;
};
MainWindow::MainWindow(const QString& filename)
:QMainWindow(0,0,WDestructiveClose)
{
int screenW;
int screenH;
screenW = QApplication::desktop()->width();
screenH = QApplication::desktop()->height();
this->resize(screenW,screenH);
m_filename = QString::null;
init();
}
void MainWindow::init()
{
toolBarDockWindow = new QDockWindow (QDockWindow::InDock,this,"toolbardockwindow",0);
toolBarDockWindow->setOrientation(Qt::Horizontal);
toolBarDockWindow->setHorizontallyStretchable(TRUE);
toolBarDockWindow->setVerticallyStretchable(TRUE);
toolBarDockWindow->setMovingEnabled(FALSE);
QColor tbBkgColor;
tbBkgColor.setHsv(205,167,189);
toolBarDockWindow->setPaletteBackgroundColor(tbBkgColor);
this->moveDockWindow(toolBarDockWindow,Qt::DockBottom);
toolBarStack = new QWidgetStack(toolBarDockWindow);
QHBox* editToolBar = new QHBox(toolBarStack);
editToolBar->setSpacing(6);
editToolBar->setMargin(6);
QHBox* graphicToolBar = new QHBox(toolBarStack);
graphicToolBar->setSpacing(6);
graphicToolBar->setMargin(6);
toolBarStack->addWidget(editToolBar,0);
toolBarStack->addWidget(graphicToolBar,1);
fileButton = new QToolButton(editToolBar,"filebutton");
fileButton->setUsesTextLabel(TRUE);
fileButton->setTextLabel("File",FALSE);
fileButton->setFont(QFont("Times",20,QFont::Bold));
fileButton->setPopupDelay(10);
QPopupMenu *fileMenu = new QPopupMenu(this);
fileMenu->insertItem("New File",this,SLOT(fileNew()),Qt::Key_F1);
fileMenu->insertItem("Load File",this,SLOT(fileOpen()),Qt::Key_F2);
fileMenu->insertItem("Save File",this,SLOT(fileSave()),Qt::Key_F3);
fileMenu->insertItem("Save File As...",this,SLOT(fileSaveAs()),Qt::Key_F4);
fileButton->setPopup(fileMenu);
editButton = new QToolButton(editToolBar,"editbutton");
editButton->setUsesTextLabel(TRUE);
editButton->setTextLabel("Edit",FALSE);
editButton->setFont(QFont("Times",20,QFont::Bold));
graphicButton = new QToolButton(editToolBar,"graphicButton");
graphicButton->setUsesTextLabel(TRUE);
graphicButton->setTextLabel("Graphic",FALSE);
graphicButton->setFont(QFont("Times",20,QFont::Bold));
QSpacerItem* editToolBarSpacer = new QSpacerItem(0,0 ,QSizePolicy::Expanding,QSizePolicy::Minimum);
editToolBar->layout()->addItem(editToolBarSpacer);
toolBarStack->raiseWidget(0);
textEdit = new QTextEdit(this,"textedit");
textEdit->setTextFormat(Qt::PlainText);
textEdit->setFocus();
this->setCentralWidget(textEdit);
}
int main(int argc, char *argv[])
{
QApplication app(argc,argv);
QString filename = QString::null;
MainWindow *mainWindow = new MainWindow(filename);
app.setMainWidget(mainWindow);
mainWindow->show();
return app.exec();
}
To copy to clipboard, switch view to plain text mode
Bookmarks