Public Member Functions

QmitkWorkbenchWindowAdvisor Class Reference

#include <QmitkWorkbenchWindowAdvisor.h>

Inheritance diagram for QmitkWorkbenchWindowAdvisor:
Inheritance graph
[legend]
Collaboration diagram for QmitkWorkbenchWindowAdvisor:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 QmitkWorkbenchWindowAdvisor (berry::IWorkbenchWindowConfigurer::Pointer configurer)
berry::ActionBarAdvisor::Pointer CreateActionBarAdvisor (berry::IActionBarConfigurer::Pointer configurer)
void PostWindowCreate ()

Detailed Description

Definition at line 25 of file QmitkWorkbenchWindowAdvisor.h.


Constructor & Destructor Documentation

QmitkWorkbenchWindowAdvisor::QmitkWorkbenchWindowAdvisor ( berry::IWorkbenchWindowConfigurer::Pointer  configurer )

Definition at line 42 of file QmitkWorkbenchWindowAdvisor.cpp.


Member Function Documentation

berry::ActionBarAdvisor::Pointer QmitkWorkbenchWindowAdvisor::CreateActionBarAdvisor ( berry::IActionBarConfigurer::Pointer  configurer ) [virtual]

Reimplemented from berry::WorkbenchWindowAdvisor.

Definition at line 49 of file QmitkWorkbenchWindowAdvisor.cpp.

{
  berry::ActionBarAdvisor::Pointer actionBarAdvisor(new QmitkActionBarAdvisor(configurer));
  return actionBarAdvisor;
}
void QmitkWorkbenchWindowAdvisor::PostWindowCreate (  ) [virtual]

Reimplemented from berry::WorkbenchWindowAdvisor.

Definition at line 56 of file QmitkWorkbenchWindowAdvisor.cpp.

References berry::IViewRegistry::GetViews(), berry::WorkbenchWindowAdvisor::GetWindowConfigurer(), berry::PlatformUI::GetWorkbench(), and QmitkStatusBar::SetSizeGripEnabled().

{
  // very bad hack...
  berry::IWorkbenchWindow::Pointer window = this->GetWindowConfigurer()->GetWindow();
  QMainWindow* mainWindow = static_cast<QMainWindow*>(window->GetShell()->GetControl());

  QMenuBar* menuBar = mainWindow->menuBar();

  QMenu* fileMenu = menuBar->addMenu("&File");

  fileMenu->addAction(new QmitkFileOpenAction(window));
  fileMenu->addSeparator();
  fileMenu->addAction(new QmitkFileExitAction(window));

  berry::IViewRegistry* viewRegistry = berry::PlatformUI::GetWorkbench()->GetViewRegistry();
  const std::vector<berry::IViewDescriptor::Pointer>& viewDescriptors = viewRegistry->GetViews();

  QMenu* viewMenu = menuBar->addMenu("Show &View");

  // sort elements (converting vector to map...)
  std::vector<berry::IViewDescriptor::Pointer>::const_iterator iter;
  std::map<std::string, berry::IViewDescriptor::Pointer> VDMap;

  for (iter = viewDescriptors.begin(); iter != viewDescriptors.end(); ++iter)
  {
    if ((*iter)->GetId() == "org.blueberry.ui.internal.introview")
      continue;
    std::pair<std::string, berry::IViewDescriptor::Pointer> p((*iter)->GetLabel(), (*iter)); 
    VDMap.insert(p);
  }

  QToolBar* qToolbar = new QToolBar;
  
  std::map<std::string, berry::IViewDescriptor::Pointer>::const_iterator MapIter;
  for (MapIter = VDMap.begin(); MapIter != VDMap.end(); ++MapIter)
  {
    berry::QtShowViewAction* viewAction = new berry::QtShowViewAction(window, (*MapIter).second);
    //m_ViewActions.push_back(viewAction);
    viewMenu->addAction(viewAction);
    qToolbar->addAction(viewAction);
  }
  
  mainWindow->addToolBar(qToolbar);

  QStatusBar* qStatusBar = new QStatusBar();

  //creating a QmitkStatusBar for Output on the QStatusBar and connecting it with the MainStatusBar
  QmitkStatusBar *statusBar = new QmitkStatusBar(qStatusBar);
  //disabling the SizeGrip in the lower right corner
  statusBar->SetSizeGripEnabled(false);

  QmitkProgressBar *progBar = new QmitkProgressBar();
  qStatusBar->addPermanentWidget(progBar, 0);
  progBar->hide();
  mainWindow->setStatusBar(qStatusBar);

  QmitkMemoryUsageIndicatorView* memoryIndicator = new QmitkMemoryUsageIndicatorView();
  qStatusBar->addPermanentWidget(memoryIndicator, 0);
}

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines