MainWindow::MainWindow() { m_main = new MainArea(); QGraphicsView* view = new QGraphicsView(m_main, this); view->setOptimizationFlags( QGraphicsView::DontClipPainter | QGraphicsView::DontSavePainterState | QGraphicsView::DontAdjustForAntialiasing ); // view->setViewportUpdateMode( QGraphicsView::FullViewportUpdate ); view->setCacheMode( QGraphicsView::CacheBackground ); view->setHorizontalScrollBarPolicy ( Qt::ScrollBarAlwaysOff ); view->setVerticalScrollBarPolicy ( Qt::ScrollBarAlwaysOff ); setCentralWidget(view); setupActions(); #ifndef Q_OS_QNX QLayout* l = layout(); Q_ASSERT(l); l->setSizeConstraint(QLayout::SetFixedSize); // setup status bar KStatusBar* bar = statusBar(); Q_ASSERT(bar); m_time_label = new QLabel(""); bar->addPermanentWidget(m_time_label); m_balls_label = new QLabel(""); bar->addWidget(m_balls_label); // bar->setItemAlignment(STATUSBAR_BALLS, Qt::AlignLeft); #endif connect(m_main, SIGNAL(changeGameTime(int)), this, SLOT(setGameTime(int))); connect(m_main, SIGNAL(changeBallNumber(int)), this, SLOT(setBallNumber(int))); connect(m_main, SIGNAL(changeState(bool)), this, SLOT(changeState(bool))); connect(m_main, SIGNAL(pause(bool)), this, SLOT(pause(bool))); #ifndef Q_OS_QNX stateChanged("playing", KXMLGUIClient::StateReverse); #endif connect(m_main, SIGNAL(starting()), this, SLOT(newGame())); connect(m_main, SIGNAL(gameOver(int)), this, SLOT(gameOver(int))); #ifndef Q_OS_QNX KGameDifficulty::init(this, this, SLOT(difficultyChanged(KGameDifficulty::standardLevel))); KGameDifficulty::setRestartOnChange(KGameDifficulty::RestartOnChange); KGameDifficulty::addStandardLevel(KGameDifficulty::Easy); KGameDifficulty::addStandardLevel(KGameDifficulty::Medium); KGameDifficulty::addStandardLevel(KGameDifficulty::Hard); KGameDifficulty::setLevel(KGameDifficulty::standardLevel(KollisionConfig::gameDifficulty())); #endif #ifdef Q_OS_QNX //setMinimumSize(m_main->sceneRect().size().toSize()); #endif }
void KMJobViewer::initActions() { // job actions KAction *hact = new KAction(i18n("&Hold"),"stop",0,this,SLOT(slotHold()),actionCollection(),"job_hold"); KAction *ract = new KAction(i18n("&Resume"),"run",0,this,SLOT(slotResume()),actionCollection(),"job_resume"); KAction *dact = new KAction(i18n("Remo&ve"),"edittrash",Qt::Key_Delete,this,SLOT(slotRemove()),actionCollection(),"job_remove"); KAction *sact = new KAction(i18n("Res&tart"),"redo",0,this,SLOT(slotRestart()),actionCollection(),"job_restart"); KActionMenu *mact = new KActionMenu(i18n("&Move to Printer"),"fileprint",actionCollection(),"job_move"); mact->setDelayed(false); connect(mact->popupMenu(),SIGNAL(activated(int)),SLOT(slotMove(int))); connect(mact->popupMenu(),SIGNAL(aboutToShow()),KMTimer::self(),SLOT(hold())); connect(mact->popupMenu(),SIGNAL(aboutToHide()),KMTimer::self(),SLOT(release())); connect(mact->popupMenu(),SIGNAL(aboutToShow()),SLOT(slotShowMoveMenu())); KToggleAction *tact = new KToggleAction(i18n("&Toggle Completed Jobs"),"history",0,actionCollection(),"view_completed"); tact->setEnabled(m_manager->actions() & KMJob::ShowCompleted); connect(tact,SIGNAL(toggled(bool)),SLOT(slotShowCompleted(bool))); KToggleAction *uact = new KToggleAction(i18n("Show Only User Jobs"), "personal", 0, actionCollection(), "view_user_jobs"); uact->setCheckedState(KGuiItem(i18n("Hide Only User Jobs"),"personal")); connect(uact, SIGNAL(toggled(bool)), SLOT(slotUserOnly(bool))); m_userfield = new QLineEdit(0); m_userfield->setText(getenv("USER")); connect(m_userfield, SIGNAL(returnPressed()), SLOT(slotUserChanged())); connect(uact, SIGNAL(toggled(bool)), m_userfield, SLOT(setEnabled(bool))); m_userfield->setEnabled(false); m_userfield->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); KWidgetAction *ufact = new KWidgetAction(m_userfield, i18n("User Name"), 0, 0, 0, actionCollection(), "view_username"); if (!m_pop) { m_pop = new QPopupMenu(this); connect(m_pop,SIGNAL(aboutToShow()),KMTimer::self(),SLOT(hold())); connect(m_pop,SIGNAL(aboutToHide()),KMTimer::self(),SLOT(release())); hact->plug(m_pop); ract->plug(m_pop); m_pop->insertSeparator(); dact->plug(m_pop); mact->plug(m_pop); m_pop->insertSeparator(); sact->plug(m_pop); } // Filter actions KActionMenu *fact = new KActionMenu(i18n("&Select Printer"), "kdeprint_printer", actionCollection(), "filter_modify"); fact->setDelayed(false); connect(fact->popupMenu(),SIGNAL(activated(int)),SLOT(slotPrinterSelected(int))); connect(fact->popupMenu(),SIGNAL(aboutToShow()),KMTimer::self(),SLOT(hold())); connect(fact->popupMenu(),SIGNAL(aboutToHide()),KMTimer::self(),SLOT(release())); connect(fact->popupMenu(),SIGNAL(aboutToShow()),SLOT(slotShowPrinterMenu())); if (!m_standalone) { KToolBar *toolbar = toolBar(); hact->plug(toolbar); ract->plug(toolbar); toolbar->insertSeparator(); dact->plug(toolbar); mact->plug(toolbar); toolbar->insertSeparator(); sact->plug(toolbar); toolbar->insertSeparator(); tact->plug(toolbar); uact->plug(toolbar); ufact->plug(toolbar); } else { // stand-alone application KStdAction::quit(kapp,SLOT(quit()),actionCollection()); KStdAction::close(this,SLOT(slotClose()),actionCollection()); KStdAction::preferences(this, SLOT(slotConfigure()), actionCollection()); // refresh action new KAction(i18n("Refresh"),"reload",0,this,SLOT(slotRefresh()),actionCollection(),"refresh"); // create status bar KStatusBar *statusbar = statusBar(); m_stickybox = new QCheckBox( i18n( "Keep window permanent" ), statusbar ); statusbar->addWidget( m_stickybox, 1, false ); statusbar->insertItem(" " + i18n("Max.: %1").arg(i18n("Unlimited"))+ " ", 0, 0, true); statusbar->setItemFixed(0); updateStatusBar(); createGUI(); } loadPluginActions(); slotSelectionChanged(); }
void MyFracWindow::createWidgets() { KDockWidget* dockMain = createDockWidget("main", NULL); _tabWidget = new QTabWidget(dockMain); dockMain->setWidget(_tabWidget); _view2D = new ViewWidget(true, _tabWidget); _tabWidget->addTab(_view2D, SmallIconSet("frtab2d"), i18n("2D View")); _view3D = new View3DWidget(_tabWidget); _tabWidget->addTab(_view3D, SmallIconSet("frtab3d"), i18n("3D View")); _dockParams = createDockWidget("params", SmallIcon("frparams"), NULL, i18n("Parameters")); QWidget* params = createParamsDock(_dockParams); _dockParams->setWidget(params); _dockDisplay = createDockWidget("display", SmallIcon("frdisplay"), NULL, i18n("Display")); QWidget* display = createDisplayDock(_dockParams); _dockDisplay->setWidget(display); _dockPreview = createDockWidget("preview", SmallIcon("viewmag"), NULL, i18n("Preview")); ViewWidget* preview = new ViewWidget(false, _dockPreview); _dockPreview->setWidget(preview); dockMain->setDockSite(KDockWidget::DockCorner); dockMain->setEnableDocking(KDockWidget::DockNone); setView(dockMain); setMainDockWidget(dockMain); KDockWidget* dock1 = _dockDisplay->manualDock(_dockParams, KDockWidget::DockCenter); KDockWidget* dock2 = _dockPreview->manualDock(dock1, KDockWidget::DockBottom, 65); dock2->manualDock(dockMain, KDockWidget::DockRight, 65); connect(_tabWidget, SIGNAL(currentChanged(QWidget*)), this, SLOT(tabChanged())); connect(this, SIGNAL(view2DEnabled(bool)), _view2D, SLOT(setVisible(bool))); connect(this, SIGNAL(view3DEnabled(bool)), _view3D, SLOT(setVisible(bool))); connect(this, SIGNAL(previewEnabled(bool)), _view2D, SLOT(enablePreview(bool))); connect(this, SIGNAL(positionChanged(double, double, double, double)), _view2D, SLOT(setPosition(double, double, double, double))); connect(this, SIGNAL(positionChanged(double, double, double, double)), _view3D, SLOT(setPosition(double, double, double, double))); connect(this, SIGNAL(positionChanged(double, double, double, double)), preview, SLOT(setPreviewPosition(double, double, double, double))); connect(this, SIGNAL(modeChangedMandelbrot()), _view2D, SLOT(setMandelbrotMode())); connect(this, SIGNAL(modeChangedMandelbrot()), _view3D, SLOT(setMandelbrotMode())); connect(this, SIGNAL(modeChangedJulia(double, double)), _view2D, SLOT(setJuliaMode(double, double))); connect(this, SIGNAL(modeChangedJulia(double, double)), _view3D, SLOT(setJuliaMode(double, double))); connect(this, SIGNAL(precisionChanged(double, double)), _view2D, SLOT(setQuality(double, double))); connect(this, SIGNAL(precisionChanged(double, double)), _view3D, SLOT(setQuality(double, double))); connect(this, SIGNAL(precisionChanged(double, double)), preview, SLOT(setQuality(double, double))); connect(this, SIGNAL(backgroundChanged(QRgb)), _view2D, SLOT(setBackground(QRgb))); connect(this, SIGNAL(backgroundChanged(QRgb)), _view3D, SLOT(setBackground(QRgb))); connect(this, SIGNAL(backgroundChanged(QRgb)), preview, SLOT(setBackground(QRgb))); connect(this, SIGNAL(gradientChanged(const QRgb*, double, double)), _view2D, SLOT(setGradient(const QRgb*, double, double))); connect(this, SIGNAL(gradientChanged(const QRgb*, double, double)), _view3D, SLOT(setGradient(const QRgb*, double, double))); connect(this, SIGNAL(gradientChanged(const QRgb*, double, double)), preview, SLOT(setGradient(const QRgb*, double, double))); connect(_view2D, SIGNAL(previewVisible(bool)), preview, SLOT(setVisible(bool))); connect(_view2D, SIGNAL(previewPosition(double, double)), preview, SLOT(setJuliaMode(double, double))); connect(_view2D, SIGNAL(positionChanged(double, double, double, double)), this, SLOT(setPosition(double, double, double, double))); connect(_view2D, SIGNAL(previewDoubleClick(double, double)), this, SLOT(setJuliaMode(double, double))); connect(this, SIGNAL(gridSizeChanged(int, int)), _view3D, SLOT(setGridSize(int, int))); connect(this, SIGNAL(heightScaleChanged(double)), _view3D, SLOT(setHeightScale(double))); _view2D->enableTransform(true); KStatusBar* status = statusBar(); status->setSizeGripEnabled(false); QProgressBar* progress = new QProgressBar(100, status); progress->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); progress->setMaximumHeight(status->sizeHint().height() - 2); progress->setMinimumWidth(120); progress->setProgress(100); status->addWidget(progress, 0, true); connect(_view2D, SIGNAL(updateProgress(int)), progress, SLOT(setProgress(int))); connect(_view3D, SIGNAL(updateProgress(int)), progress, SLOT(setProgress(int))); }