X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Fui%2Fpanelbase.cpp;h=5c1ef3bbb1c3c1fa8e03e8e41b0a38d30e43d4bc;hb=44f1744742766932d4229bb07d6c3c2967b11fb2;hp=a0ebc33d22a47058fdf763be4f492763f492c103;hpb=8bca7dde6166d3c001bac3d17ac3430288f2fb36;p=situare diff --git a/src/ui/panelbase.cpp b/src/ui/panelbase.cpp index a0ebc33..5c1ef3b 100644 --- a/src/ui/panelbase.cpp +++ b/src/ui/panelbase.cpp @@ -3,6 +3,7 @@ Copyright (C) 2010 Ixonos Plc. Authors: Pekka Nissinen - pekka.nissinen@ixonos.com + Sami Rämö - sami.ramo@ixonos.com Situare is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -20,6 +21,8 @@ */ #include +#include +#include #include #include "panelbase.h" @@ -29,27 +32,63 @@ PanelBase::PanelBase(QWidget *parent) { qDebug() << __PRETTY_FUNCTION__; + + // --- GENERIC BUTTONS --- + m_genericButtons = new QWidget; + m_genericButtonsLayout = new QVBoxLayout; + const int CONTEXT_BUTTON_MARGIN_LEFT = 2; const int CONTEXT_BUTTON_MARGIN_TOP = 10; const int CONTEXT_BUTTON_MARGIN_RIGHT = 0; const int CONTEXT_BUTTON_MARGIN_BOTTOM = 0; const int CONTEXT_BUTTON_SPACING = 0; + m_genericButtonsLayout->setContentsMargins(CONTEXT_BUTTON_MARGIN_LEFT, + CONTEXT_BUTTON_MARGIN_TOP, + CONTEXT_BUTTON_MARGIN_RIGHT, + CONTEXT_BUTTON_MARGIN_BOTTOM); + m_genericButtonsLayout->setSpacing(CONTEXT_BUTTON_SPACING); + + m_genericButtons->setLayout(m_genericButtonsLayout); + + // --- ITEM RELATED BUTTONS --- + m_itemButtons = new QWidget(this); + m_itemButtonsLayout = new QHBoxLayout; - m_contextButtons = new QWidget; + const int ITEM_CONTEXT_BUTTON_MARGIN_BOTTOM = 6; + const int ITEM_CONTEXT_BUTTON_MARGIN_LEFT = 6; + const int ITEM_CONTEXT_BUTTON_MARGIN_RIGHT = 6; + const int ITEM_CONTEXT_BUTTON_MARGIN_TOP = 0; + const int ITEM_CONTEXT_BUTTON_SPACING = 0; + m_itemButtonsLayout->setContentsMargins(ITEM_CONTEXT_BUTTON_MARGIN_LEFT, + ITEM_CONTEXT_BUTTON_MARGIN_TOP, + ITEM_CONTEXT_BUTTON_MARGIN_RIGHT, + ITEM_CONTEXT_BUTTON_MARGIN_BOTTOM); + m_itemButtonsLayout->setSpacing(ITEM_CONTEXT_BUTTON_SPACING); - m_contextButtonLayout = new QVBoxLayout; - m_contextButtonLayout->setContentsMargins(CONTEXT_BUTTON_MARGIN_LEFT, - CONTEXT_BUTTON_MARGIN_TOP, - CONTEXT_BUTTON_MARGIN_RIGHT, - CONTEXT_BUTTON_MARGIN_BOTTOM); - m_contextButtonLayout->setSpacing(CONTEXT_BUTTON_SPACING); + m_itemButtons->setLayout(m_itemButtonsLayout); +} + +QWidget* PanelBase::genericPanelButtons() const +{ + qDebug() << __PRETTY_FUNCTION__; + + return m_genericButtons; +} + +QWidget* PanelBase::itemButtons() const +{ + qDebug() << __PRETTY_FUNCTION__; - m_contextButtons->setLayout(m_contextButtonLayout); + return m_itemButtons; } -QWidget* PanelBase::contextButtons() const +void PanelBase::onListItemSelectionChanged() { qDebug() << __PRETTY_FUNCTION__; - return m_contextButtons; + QListWidget *listWidget = dynamic_cast(sender()); + if (listWidget && (listWidget->selectedItems().count() > 0)) + emit listItemSelectionChanged(true); + else + emit listItemSelectionChanged(false); }