annotate widgets/ItemLayerList.cpp @ 56:81921835ddf1

first layer list pre-version
author benoitrigolleau
date Wed, 23 May 2007 13:09:19 +0000
parents
children 4f3e6a09239a
rev   line source
benoitrigolleau@56 1
benoitrigolleau@56 2 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
benoitrigolleau@56 3
benoitrigolleau@56 4 /*
benoitrigolleau@56 5 Sound Access
benoitrigolleau@56 6 EASAIER client application.
benoitrigolleau@56 7 Silogic 2007. Benoit Rigolleau.
benoitrigolleau@56 8
benoitrigolleau@56 9 This program is free software; you can redistribute it and/or
benoitrigolleau@56 10 modify it under the terms of the GNU General Public License as
benoitrigolleau@56 11 published by the Free Software Foundation; either version 2 of the
benoitrigolleau@56 12 License, or (at your option) any later version. See the file
benoitrigolleau@56 13 COPYING included with this distribution for more information.
benoitrigolleau@56 14 */
benoitrigolleau@56 15
benoitrigolleau@56 16 #include "ItemLayerList.h"
benoitrigolleau@56 17
benoitrigolleau@56 18 #include "data/model/LayerItemModel.h"
benoitrigolleau@56 19
benoitrigolleau@56 20 #include <QWidget>
benoitrigolleau@56 21
benoitrigolleau@56 22 #include <QApplication>
benoitrigolleau@56 23 #include <QLabel>
benoitrigolleau@56 24
benoitrigolleau@56 25 ItemLayerList::ItemLayerList(QWidget *parent) : GenericItemList(parent){
benoitrigolleau@56 26 setAcceptDrops(true);
benoitrigolleau@56 27
benoitrigolleau@56 28 /* Init all variables*/
benoitrigolleau@56 29 labelIcon = new QLabel;
benoitrigolleau@56 30 labelName = new QLabel;
benoitrigolleau@56 31 checkBox1 = new QCheckBox;
benoitrigolleau@56 32 checkBox2 = new QCheckBox;
benoitrigolleau@56 33 layoutMain = new QHBoxLayout;
benoitrigolleau@56 34
benoitrigolleau@56 35 /* set the correct widget parameters*/
benoitrigolleau@56 36 labelIcon->setMaximumSize(25,25);
benoitrigolleau@56 37 //labelIcon->setPixmap(QIcon(":icons/layerViewer_btn_config.png").pixmap(20));
benoitrigolleau@56 38
benoitrigolleau@56 39 labelName->setMaximumHeight(25);
benoitrigolleau@56 40 //labelName->setText("ljdh lksdf hl");
benoitrigolleau@56 41
benoitrigolleau@56 42 checkBox1->setLayoutDirection(Qt::RightToLeft);
benoitrigolleau@56 43 checkBox1->setMaximumSize(30,30);
benoitrigolleau@56 44 //checkBox1->setText("");
benoitrigolleau@56 45 checkBox1->setAutoFillBackground(true);
benoitrigolleau@56 46 //QPalette palette;
benoitrigolleau@56 47 //palette.setColor(QPalette::Button,QColor ( 100, 60, 20));
benoitrigolleau@56 48 //checkBox1->setPalette(palette);
benoitrigolleau@56 49
benoitrigolleau@56 50 checkBox2->setMaximumSize(20,30);
benoitrigolleau@56 51
benoitrigolleau@56 52 layoutMain->setSpacing(5);
benoitrigolleau@56 53 layoutMain->setMargin(0);
benoitrigolleau@56 54
benoitrigolleau@56 55 this->setMaximumHeight(30);
benoitrigolleau@56 56 this->setMinimumHeight(30);
benoitrigolleau@56 57 this->setFrameStyle(QFrame::Panel | QFrame::Raised);
benoitrigolleau@56 58 this->setLineWidth(1);
benoitrigolleau@56 59
benoitrigolleau@56 60 /* build the interface*/
benoitrigolleau@56 61 layoutMain->addWidget(checkBox1);
benoitrigolleau@56 62 layoutMain->addWidget(checkBox2);
benoitrigolleau@56 63 layoutMain->addWidget(labelIcon);
benoitrigolleau@56 64 layoutMain->addWidget(labelName);
benoitrigolleau@56 65
benoitrigolleau@56 66 /*add the main layout in this widget*/
benoitrigolleau@56 67 this->setLayout(layoutMain);
benoitrigolleau@56 68
benoitrigolleau@56 69 connect(this, SIGNAL(doubleClicked()), this, SLOT(openPropertyBox()));
benoitrigolleau@56 70 }
benoitrigolleau@56 71
benoitrigolleau@56 72 void ItemLayerList::setIcon(QString &icon){
benoitrigolleau@56 73 labelIcon->setPixmap(QIcon(icon).pixmap(25));
benoitrigolleau@56 74 }
benoitrigolleau@56 75
benoitrigolleau@56 76 void ItemLayerList::setName(QString &name){
benoitrigolleau@56 77 labelName->setText(name);
benoitrigolleau@56 78 }
benoitrigolleau@56 79
benoitrigolleau@56 80 void ItemLayerList::setColor(QColor &color){
benoitrigolleau@56 81 QPalette palette;
benoitrigolleau@56 82 palette.setColor(QPalette::Button,color);
benoitrigolleau@56 83 checkBox1->setPalette(palette);
benoitrigolleau@56 84 }
benoitrigolleau@56 85
benoitrigolleau@56 86 void ItemLayerList::changeCheckBox1State(bool state){
benoitrigolleau@56 87 checkBox1->setChecked(state);
benoitrigolleau@56 88 }
benoitrigolleau@56 89
benoitrigolleau@56 90 void ItemLayerList::changeCheckBox2State(bool state){
benoitrigolleau@56 91 checkBox2->setChecked(state);
benoitrigolleau@56 92 }
benoitrigolleau@56 93
benoitrigolleau@56 94 void ItemLayerList::setPropertyBox(PropertyBox *box){
benoitrigolleau@56 95 m_propertyBox = box;
benoitrigolleau@56 96 }
benoitrigolleau@56 97
benoitrigolleau@56 98 void ItemLayerList::configAction(){
benoitrigolleau@56 99 if(m_propertyBox!=0){
benoitrigolleau@56 100 m_propertyBox->close();
benoitrigolleau@56 101 m_propertyBox->show();
benoitrigolleau@56 102 }
benoitrigolleau@56 103 }
benoitrigolleau@56 104
benoitrigolleau@56 105
benoitrigolleau@56 106 /*********SLOTS ************/
benoitrigolleau@56 107 void ItemLayerList::openPropertyBox(){
benoitrigolleau@56 108 ItemLayerList::configAction();
benoitrigolleau@56 109 }
benoitrigolleau@56 110
benoitrigolleau@56 111
benoitrigolleau@56 112
benoitrigolleau@56 113
benoitrigolleau@56 114
benoitrigolleau@56 115
benoitrigolleau@56 116