/*! Lazy loading when view layout has been loaded */ void NmViewerView::viewReady() { if (!mViewReady){ // Set mailbox name to title setMailboxName(); // Create toolbar if needed if (mToolbarEnabled) { createToolBar(); } else { // Connect options menu about to show to create options menu function QObject::connect(menu(), SIGNAL(aboutToShow()), this, SLOT(createOptionsMenu())); // Menu needs one dummy item so that aboutToShow signal is emitted. NmAction *dummy = new NmAction(0); menu()->addAction(dummy); } if (mHeaderWidget) { QPointF contentWidgetPos = mScrollArea->pos(); qreal headerHeight = mHeaderWidget->geometry().height(); if (mMainWindow->orientation() == Qt::Horizontal) { const QPointF pointToWebView(contentWidgetPos.x(), headerHeight+NmHeaderMargin); mScrollArea->scrollContentsTo(pointToWebView,0); } } // Run fetchmessage in queue QMetaObject::invokeMethod(this, "fetchMessage", Qt::QueuedConnection); // Set view ready mViewReady = true; } }
// Create and initialize the UI. FeaturesUI::FeaturesUI ( QWidget * parent ) : QMainWindow ( parent ) { doc = new FeaturesDoc ( this ); QStatusBar * statusBar = new QStatusBar ( this ); setStatusBar ( statusBar ); QObject::connect ( doc, SIGNAL ( alert ( QString ) ), statusBar, SLOT ( showMessage ( const QString & ) ) ); // Create the main window. setFixedSize ( minWidth, minHeight ); setWindowTitle ( "Features" ); // Create the menu bar. QMenuBar * menuBar = new QMenuBar ( this ); menuBar->addMenu ( createFileMenu ( menuBar ) ); menuBar->addMenu ( createImageMenu ( menuBar ) ); menuBar->addMenu ( createOptionsMenu ( menuBar ) ); menuBar->addMenu ( createHelpMenu ( menuBar ) ); setMenuBar ( menuBar ); QWidget * widget = new QWidget ( this ); QHBoxLayout * layout = new QHBoxLayout ( widget ); // Create the subwindows for viewing the query and result images. queryView = new ImageView ( this ); layout->addWidget ( queryView ); resultView = new ImageView ( this ); layout->addWidget ( resultView ); widget->setLayout ( layout ); setCentralWidget ( widget ); }