defuze.me  Client
listswidget.cpp
00001 /**************************************************************************
00002 ** defuze.me Epitech Innovative Project
00003 **
00004 ** Copyright 2010-2012
00005 **   Athena Calmettes - Jocelyn De La Rosa - Francois Gaillard
00006 **   Adrien Jarthon - Alexandre Moore - Luc Peres - Arnaud Sellier
00007 **
00008 ** All rights reserved.
00009 **************************************************************************/
00010 
00011 #include "listswidget.hpp"
00012 #include "listsdelegate.hpp"
00013 #include "listsplugin.hpp"
00014 
00015 using namespace Lists;
00016 
00017 ListsWidget::ListsWidget(ListsPlugin *lists, QWidget *parent) :
00018     ModuleWidget(parent), lists(lists)
00019 {
00020     setupUi(this);
00021 
00022     QPalette palette;
00023     palette.setColor(QPalette::Background, QColor::fromRgb(132,130,128));
00024     palette.setColor(QPalette::Base, QColor::fromRgb(192,192,192));
00025     palette.setColor(QPalette::AlternateBase, QColor::fromRgb(177,177,177));
00026 
00027     treeView->setListsPlugin(lists);
00028     treeView->setPalette(palette);
00029     treeView->setHeaderHidden(true);
00030     treeView->setItemDelegate(new ListsDelegate);
00031     treeView->itemDelegate()->setParent(this);
00032     QObject::connect(treeView, SIGNAL(clicked(const QModelIndex &)), this, SLOT(toogleItem(QModelIndex)));
00033 }
00034 
00035 ListsTreeView *ListsWidget::getTreeViewWidget() const
00036 {
00037     return treeView;
00038 }
00039 
00040 void ListsWidget::toogleItem(const QModelIndex &index)
00041 {
00042     if (treeView->isExpanded(index))
00043         treeView->collapse(index);
00044     else
00045         treeView->expand(index);
00046 }
00047 
00048 void ListsWidget::changeEvent(QEvent *e)
00049 {
00050     QWidget::changeEvent(e);
00051     switch (e->type()) {
00052     case QEvent::LanguageChange:
00053         retranslateUi(this);
00054         break;
00055     default:
00056         break;
00057     }
00058 }