![]() |
Home · All Namespaces · All Classes |
#include <statusindicatormenuverticalview.h>


Public Slots | |
| void | setExtensionLayoutPosition (MApplicationExtensionInterface *extension) |
| Sets the tile layout position of the extension's widget to vertical center. | |
Public Member Functions | |
| StatusIndicatorMenuVerticalView (StatusIndicatorMenu *controller) | |
| virtual | ~StatusIndicatorMenuVerticalView () |
A view class for the status indicator menu with the extension area and the settings button in a vertical layout.
Definition at line 39 of file statusindicatormenuverticalview.h.
| StatusIndicatorMenuVerticalView::StatusIndicatorMenuVerticalView | ( | StatusIndicatorMenu * | controller | ) |
Constructs a view for a notification area.
| controller | the controller of this StatusIndicatorMenuVerticalView |
Definition at line 31 of file statusindicatormenuverticalview.cpp.
:
MSceneWindowView(controller),
statusBar(new MStatusBar)
{
// Show status bar
controller->sceneManager()->appearSceneWindowNow(statusBar);
// Create an extension area for the top row plugins
MApplicationExtensionArea *extensionArea = new MApplicationExtensionArea("com.meego.core.MStatusIndicatorMenuExtensionInterface/1.0");
connect(extensionArea, SIGNAL(extensionInstantiated(MApplicationExtensionInterface*)), controller, SLOT(setStatusIndicatorMenuInterface(MApplicationExtensionInterface*)));
connect(extensionArea, SIGNAL(extensionInstantiated(MApplicationExtensionInterface*)), this, SLOT(setExtensionLayoutPosition(MApplicationExtensionInterface*)));
extensionArea->setObjectName("StatusIndicatorMenuExtensionArea");
extensionArea->setInProcessFilter(QRegExp("/statusindicatormenu-(alarms|internetconnection|presence|profile).desktop$"));
extensionArea->setOutOfProcessFilter(QRegExp("$^"));
extensionArea->setOrder((QStringList() << "statusindicatormenu-alarms.desktop" << "statusindicatormenu-internetconnection.desktop" << "statusindicatormenu-presence.desktop" << "statusindicatormenu-profile.desktop"));
extensionArea->init();
// Create a button for accessing the full settings
//% "Settings"
MButton *settingsButton = new MButton(qtTrId("qtn_stat_menu_settings"));
settingsButton->setObjectName("StatusIndicatorMenuTopRowExtensionButton");
settingsButton->setViewType(MButton::iconType);
settingsButton->setIconID("icon-m-status-menu-settings");
settingsButton->setLayoutPosition(M::VerticalBottomPosition);
connect(settingsButton, SIGNAL(clicked()), controller, SLOT(launchControlPanelAndHide()));
// Put the extension area and the settings button to a horizontal layout
QGraphicsLinearLayout *vlayout = new QGraphicsLinearLayout(Qt::Vertical);
vlayout->setContentsMargins(0, 0, 0, 0);
vlayout->setSpacing(0);
vlayout->addItem(extensionArea);
vlayout->addItem(settingsButton);
// Create a container widget for extension area and settings button layout
containerWidget = new MWidgetController(controller);
containerWidget->setView(new MWidgetView(containerWidget));
containerWidget->setObjectName("StatusIndicatorMenuExtensionAreaWidget");
containerWidget->setLayout(vlayout);
QGraphicsLinearLayout *hlayout = new QGraphicsLinearLayout(Qt::Horizontal);
hlayout->setContentsMargins(0, 0, 0, 0);
hlayout->setSpacing(0);
hlayout->addStretch();
hlayout->addItem(containerWidget);
hlayout->addStretch();
controller->setLayout(hlayout);
}

| StatusIndicatorMenuVerticalView::~StatusIndicatorMenuVerticalView | ( | ) | [virtual] |
Destroys the notification area view.
Definition at line 89 of file statusindicatormenuverticalview.cpp.
{
delete containerWidget;
delete statusBar;
}
| void StatusIndicatorMenuVerticalView::setExtensionLayoutPosition | ( | MApplicationExtensionInterface * | extension | ) | [slot] |
Sets the tile layout position of the extension's widget to vertical center.
Definition at line 80 of file statusindicatormenuverticalview.cpp.
{
MWidgetController *widget = dynamic_cast<MWidgetController*>(extension->widget());
if (widget) {
widget->setLayoutPosition(M::VerticalCenterPosition);
}
}
| Copyright © 2010 Nokia Corporation | Generated on Thu Nov 4 2010 18:19:35 Doxygen 1.7.1 |
MeeGo Touch |