aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input/flac/replaygainreader.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2017-11-24 16:18:26 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2017-11-24 16:18:26 +0000
commit428ec5a9f64910c7b75f183179e4dc5bd632b699 (patch)
tree1857890f56f05ba6f4f26d082199f44b8cd321c2 /src/plugins/Input/flac/replaygainreader.cpp
parent02b467b4b1dd4e3d9c2b0521de67f1b7623a6e84 (diff)
downloadqmmp-428ec5a9f64910c7b75f183179e4dc5bd632b699.tar.gz
qmmp-428ec5a9f64910c7b75f183179e4dc5bd632b699.tar.bz2
qmmp-428ec5a9f64910c7b75f183179e4dc5bd632b699.zip
updated Greek translation (Dimitrios Glentadakis)
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@7745 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input/flac/replaygainreader.cpp')
0 files changed, 0 insertions, 0 deletions
ser02@90c681e8-e032-0410-971d-27865f9a5e38> 2009-12-05 22:59:14 +0000 prepare for ladspa support' href='/qmmp/commit/src/plugins/Effect/ladspa/settingsdialog.cpp?id=a5cee8c56f06bc4d5a1cbf5b63f310583f9e876b'>a5cee8c56
013ee07b5
a5cee8c56







a5cee8c56
f3ebf1f3e
a5cee8c56








1128dce7d

a5cee8c56



f3ebf1f3e
a5cee8c56













840ef5c14



177747293
840ef5c14


a5cee8c56
840ef5c14



648d09c5c


177747293
648d09c5c


c315a1c3c

3ba644457
648d09c5c





c315a1c3c


648d09c5c

c315a1c3c

3ba644457






648d09c5c


840ef5c14
648d09c5c

840ef5c14
648d09c5c



a5cee8c56









177747293
a5cee8c56



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
















                                                                            
                                                                            





                                                                             


                      
                      
                         
                         
                       





                                               
                                             







                                                                                        
                               
                             








                                                                                 

                                                   



                                 
  













                                                            



                                                              
                                                


                               
 



                                                              


                        
                                                        


                                                      

                             
                      





                                               


                                                        

                                   

                                                                                 






                                                         


                                   
     

                                                                                          
     



                                             









                                           
                                                                           



                                                                        
/***************************************************************************
 *   Copyright (C) 2009 by Ilya Kotov                                      *
 *   forkotov02@hotmail.ru                                                 *
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 *   This program is distributed in the hope that it will be useful,       *
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
 *   GNU General Public License for more details.                          *
 *                                                                         *
 *   You should have received a copy of the GNU General Public License     *
 *   along with this program; if not, write to the                         *
 *   Free Software Foundation, Inc.,                                       *
 *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
 ***************************************************************************/

#include <QSettings>
#include <QApplication>
#include <QStyle>
#include <QStandardItemModel>
#include <QFormLayout>
#include <QWidget>
#include <QLabel>
#include <qmmp/qmmp.h>
#include "ladspaslider.h"
#include "ladspabutton.h"
#include "ladspahost.h"
#include "settingsdialog.h"

SettingsDialog::SettingsDialog(QWidget *parent)
        : QDialog(parent)
{
    ui.setupUi(this);
    setAttribute(Qt::WA_DeleteOnClose, true);
    ui.loadButton->setIcon(QApplication::style()->standardIcon(QStyle::SP_ArrowRight));
    ui.unloadButton->setIcon(QApplication::style()->standardIcon(QStyle::SP_ArrowLeft));

    m_model = new QStandardItemModel(0, 2, this);
    m_model->setHeaderData(0, Qt::Horizontal, tr("UID"));
    m_model->setHeaderData(1, Qt::Horizontal, tr("Name"));
    ui.pluginsTreeView->setModel(m_model);

    if(!LADSPAHost::instance())
        new LADSPAHost(qApp);

    QList <LADSPAPlugin *> plugin_list = LADSPAHost::instance()->plugins();

    for(int i = 0; i < plugin_list.size(); ++i)
    {
        m_model->insertRow(i);
        m_model->setData(m_model->index(i, 0), (uint) plugin_list[i]->unique_id);
        m_model->setData(m_model->index(i, 1), plugin_list[i]->name);
    }
    ui.pluginsTreeView->resizeColumnToContents (0);
    ui.pluginsTreeView->resizeColumnToContents (1);
    updateRunningPlugins();
}

SettingsDialog::~SettingsDialog()
{}

void SettingsDialog::on_loadButton_clicked()
{
    LADSPAHost *l = LADSPAHost::instance();
    QModelIndex index = ui.pluginsTreeView->currentIndex ();
    if(index.isValid())
    {
        l->addPlugin(l->plugins().at(index.row()));
        updateRunningPlugins();
    }
}

void SettingsDialog::on_unloadButton_clicked()
{
    LADSPAHost *l = LADSPAHost::instance();
    QModelIndex index = ui.runningListWidget->currentIndex ();
    if(index.isValid())
    {
        l->unload(l->effects().at(index.row()));
        updateRunningPlugins();
    }
}

void SettingsDialog::on_configureButton_clicked()
{
    LADSPAHost *l = LADSPAHost::instance();
    QModelIndex index = ui.runningListWidget->currentIndex ();
    if(!index.isValid())
        return;

    LADSPAEffect *effect = l->effects().at(index.row());
    QDialog *dialog = new QDialog(this);
    dialog->setWindowTitle(effect->descriptor->Name);
    QFormLayout *formLayout = new QFormLayout(dialog);
    LADSPAButton *button = 0;
    LADSPASlider *slider = 0;
    QLabel *label = 0;

    foreach(LADSPAControl *c, effect->controls)
    {
        switch ((int) c->type)
        {
        case LADSPAControl::BUTTON:
            button = new LADSPAButton(c->value, dialog);
            button->setText(c->name);
            formLayout->addRow(button);
            break;
        case LADSPAControl::SLIDER:
            slider = new LADSPASlider(c->min, c->max, c->step, c->value, dialog);
            formLayout->addRow(c->name, slider);
            break;
        case LADSPAControl::LABEL:
            label = new QLabel(this);
            label->setText(QString("%1").arg(*c->value));
            label->setFrameStyle(QFrame::StyledPanel);
            label->setFrameShadow(QFrame::Sunken);
            formLayout->addRow(c->name, label);
        }
    }
    if (effect->controls.isEmpty())
    {
        QLabel *label = new QLabel(tr("This LADSPA plugin has no user controls"), dialog);
        formLayout->addRow(label);
    }
    dialog->setLayout(formLayout);
    dialog->setFixedSize(dialog->sizeHint());
    dialog->exec();
    dialog->deleteLater();
}

void SettingsDialog::accept()
{
    QDialog::accept();
}

void SettingsDialog::updateRunningPlugins()
{
    ui.runningListWidget->clear();
    QList <LADSPAEffect *> plugin_list = LADSPAHost::instance()->effects();

    for(int i = 0; i < plugin_list.size(); ++i)
        ui.runningListWidget->addItem(plugin_list[i]->descriptor->Name);
}