예제 #1
0
/*!
    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;
    }
}
예제 #2
0
// 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 );
}