benoitrigolleau@73
|
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
|
benoitrigolleau@73
|
2
|
benoitrigolleau@73
|
3 /*
|
benoitrigolleau@73
|
4 Sound Access
|
benoitrigolleau@73
|
5 EASAIER client application.
|
benoitrigolleau@73
|
6 Silogic 2007. Benoit Rigolleau.
|
benoitrigolleau@73
|
7
|
benoitrigolleau@73
|
8 This program is free software; you can redistribute it and/or
|
benoitrigolleau@73
|
9 modify it under the terms of the GNU General Public License as
|
benoitrigolleau@73
|
10 published by the Free Software Foundation; either version 2 of the
|
benoitrigolleau@73
|
11 License, or (at your option) any later version. See the file
|
benoitrigolleau@73
|
12 COPYING included with this distribution for more information.
|
benoitrigolleau@73
|
13 */
|
benoitrigolleau@73
|
14
|
benoitrigolleau@73
|
15 //#include "data/model/LayerItemModel.h"
|
benoitrigolleau@73
|
16 #include "AudioFilterViewerWidget.h"
|
benoitrigolleau@73
|
17 #include <iostream>
|
benoitrigolleau@73
|
18
|
benoitrigolleau@73
|
19 AudioFilterViewerWidget::AudioFilterViewerWidget(QWidget *parent) : QFrame(parent){
|
benoitrigolleau@73
|
20 /* Init all variables*/
|
benoitrigolleau@73
|
21 m_pushButtonCONFIG = new QPushButton;
|
benoitrigolleau@73
|
22 m_pushButtonUP = new QPushButton;
|
benoitrigolleau@73
|
23 m_pushButtonDOWN = new QPushButton;
|
benoitrigolleau@73
|
24 m_pushButtonREMOVE = new QPushButton;
|
benoitrigolleau@73
|
25 m_pushButtonNEW = new QPushButton;
|
benoitrigolleau@73
|
26
|
benoitrigolleau@73
|
27 m_layoutACTION = new QHBoxLayout;
|
benoitrigolleau@73
|
28 m_layoutMAIN = new QVBoxLayout;
|
benoitrigolleau@73
|
29
|
benoitrigolleau@73
|
30 m_widgetLIST = new ItemContainer();
|
benoitrigolleau@73
|
31
|
benoitrigolleau@73
|
32 /* set the correct widget parameters*/
|
benoitrigolleau@73
|
33 m_pushButtonCONFIG->setMaximumSize(20,20);
|
benoitrigolleau@73
|
34 m_pushButtonCONFIG->setIcon(QIcon(":icons/layerViewer_btn_config.png"));
|
benoitrigolleau@73
|
35 m_pushButtonUP->setMaximumSize(20,20);
|
benoitrigolleau@73
|
36 m_pushButtonUP->setIcon(QIcon(":icons/layerViewer_btn_up.png"));
|
benoitrigolleau@73
|
37 m_pushButtonDOWN->setMaximumSize(20,20);
|
benoitrigolleau@73
|
38 m_pushButtonDOWN->setIcon(QIcon(":icons/layerViewer_btn_down.png"));
|
benoitrigolleau@73
|
39 m_pushButtonREMOVE->setMaximumSize(20,20);
|
benoitrigolleau@73
|
40 m_pushButtonREMOVE->setIcon(QIcon(":icons/layerViewer_btn_remove.png"));
|
benoitrigolleau@73
|
41 m_pushButtonNEW->setMaximumSize(20,20);
|
benoitrigolleau@73
|
42 m_pushButtonNEW->setIcon(QIcon(":icons/layerViewer_btn_new.png"));
|
benoitrigolleau@73
|
43
|
benoitrigolleau@73
|
44 //the action one:
|
benoitrigolleau@73
|
45 m_layoutACTION->addWidget(m_pushButtonCONFIG);
|
benoitrigolleau@73
|
46 m_layoutACTION->addStretch();
|
benoitrigolleau@73
|
47 m_layoutACTION->addWidget(m_pushButtonUP);
|
benoitrigolleau@73
|
48 m_layoutACTION->addWidget(m_pushButtonDOWN);
|
benoitrigolleau@73
|
49 m_layoutACTION->addWidget(m_pushButtonNEW);
|
benoitrigolleau@73
|
50 m_layoutACTION->addSpacing(10);
|
benoitrigolleau@73
|
51 m_layoutACTION->addWidget(m_pushButtonREMOVE);
|
benoitrigolleau@73
|
52
|
benoitrigolleau@73
|
53 //the main one:
|
benoitrigolleau@73
|
54 m_layoutMAIN->addWidget(m_widgetLIST);
|
benoitrigolleau@73
|
55 m_layoutMAIN->addLayout(m_layoutACTION);
|
benoitrigolleau@73
|
56
|
benoitrigolleau@73
|
57 /* connect pushButtons*/
|
benoitrigolleau@73
|
58 connect(m_pushButtonUP,SIGNAL(clicked()),m_widgetLIST,SLOT(upCurrentItem()));
|
benoitrigolleau@73
|
59 connect(m_pushButtonDOWN,SIGNAL(clicked()),m_widgetLIST,SLOT(downCurrentItem()));
|
benoitrigolleau@73
|
60 connect(m_pushButtonCONFIG,SIGNAL(clicked()),m_widgetLIST,SLOT(openConfigBoxForCurrentItem()));
|
lbajardsilogic@79
|
61 //connect(m_pushButtonREMOVE,SIGNAL(clicked()),this,SLOT(removeSelectedItemRequested()));
|
lbajardsilogic@79
|
62 connect(m_pushButtonREMOVE,SIGNAL(clicked()),this,SLOT(removeFilterRequested()));
|
benoitrigolleau@73
|
63
|
benoitrigolleau@73
|
64 /*connect the list of items */
|
benoitrigolleau@73
|
65 connect(m_widgetLIST,SIGNAL(currentChanged(int)),this,SLOT(newItemSelected(int)));
|
benoitrigolleau@73
|
66
|
benoitrigolleau@73
|
67
|
benoitrigolleau@73
|
68 /*add the main layout in this widget*/
|
benoitrigolleau@73
|
69 this->setLayout(m_layoutMAIN);
|
benoitrigolleau@73
|
70 this->setFrameStyle(QFrame::StyledPanel | QFrame::Sunken);
|
benoitrigolleau@73
|
71 this->setLineWidth(2);
|
benoitrigolleau@73
|
72 }
|
benoitrigolleau@73
|
73
|
benoitrigolleau@73
|
74 void AudioFilterViewerWidget::addItem(ItemAudioFilterList *item){
|
lbajardsilogic@79
|
75 if (m_widgetLIST)
|
benoitrigolleau@73
|
76 m_widgetLIST->addItem(item);
|
benoitrigolleau@73
|
77 }
|
benoitrigolleau@73
|
78
|
benoitrigolleau@73
|
79 void AudioFilterViewerWidget::removeAllItems(){
|
lbajardsilogic@79
|
80 if (m_widgetLIST)
|
lbajardsilogic@79
|
81 m_widgetLIST->removeAllItems();
|
benoitrigolleau@73
|
82 }
|
benoitrigolleau@73
|
83
|
benoitrigolleau@73
|
84 void AudioFilterViewerWidget::setCurrentIndex(int i){
|
benoitrigolleau@73
|
85
|
benoitrigolleau@73
|
86 }
|
benoitrigolleau@73
|
87
|
benoitrigolleau@73
|
88 /************** SLOTS ********/
|
benoitrigolleau@73
|
89 void AudioFilterViewerWidget::newItemSelected(int i){
|
benoitrigolleau@73
|
90 emit currentChanged(i);
|
benoitrigolleau@73
|
91 }
|
benoitrigolleau@73
|
92
|
benoitrigolleau@73
|
93 void AudioFilterViewerWidget::removeSelectedItemRequested(){
|
lbajardsilogic@79
|
94 m_widgetLIST->removeSelectedItem();
|
lbajardsilogic@79
|
95 }
|
benoitrigolleau@73
|
96
|
lbajardsilogic@79
|
97 void AudioFilterViewerWidget::removeFilterRequested()
|
lbajardsilogic@79
|
98 {
|
lbajardsilogic@79
|
99 QString filterName = m_widgetLIST->getCurrentFilterName();
|
lbajardsilogic@79
|
100 emit removeFilter(filterName);
|
lbajardsilogic@79
|
101 }
|
lbajardsilogic@79
|
102
|
lbajardsilogic@79
|
103 QString AudioFilterViewerWidget::getCurrentFilterName()
|
lbajardsilogic@79
|
104 {
|
lbajardsilogic@79
|
105 return m_widgetLIST->getCurrentFilterName();
|
lbajardsilogic@79
|
106 }
|
lbajardsilogic@79
|
107
|
lbajardsilogic@79
|
108 void AudioFilterViewerWidget::removeItem(QString name)
|
lbajardsilogic@79
|
109 {
|
lbajardsilogic@79
|
110 m_widgetLIST->removeItem(name);
|
benoitrigolleau@73
|
111 } |