traverso-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-commit] traverso src/traverso/dialogs/project/NewProjec...


From: Nicola Doebelin
Subject: [Traverso-commit] traverso src/traverso/dialogs/project/NewProjec...
Date: Fri, 23 May 2008 11:10:12 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Nicola Doebelin <n_doebelin>    08/05/23 11:10:11

Modified files:
        src/traverso/dialogs/project: NewProjectDialog.cpp 
                                      NewProjectDialog.h 
        src/traverso   : traverso.qrc 
        src/traverso/ui: NewProjectDialog.ui 
Added files:
        resources/images/icons: arrow-down.png arrow-down.svgz 
                                arrow-up.png arrow-up.svgz list-add.png 
                                list-add.svgz list-remove.png 
                                list-remove.svgz 

Log message:
        * sorting of import files in the NewProjectDialog (isn't there an 
easier way to sort items in a QTreeWidget???)

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/arrow-down.png?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/arrow-down.svgz?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/arrow-up.png?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/arrow-up.svgz?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/list-add.png?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/list-add.svgz?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/list-remove.png?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/images/icons/list-remove.svgz?cvsroot=traverso&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/dialogs/project/NewProjectDialog.cpp?cvsroot=traverso&r1=1.13&r2=1.14
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/dialogs/project/NewProjectDialog.h?cvsroot=traverso&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/traverso.qrc?cvsroot=traverso&r1=1.30&r2=1.31
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/ui/NewProjectDialog.ui?cvsroot=traverso&r1=1.8&r2=1.9

Patches:
Index: src/traverso/dialogs/project/NewProjectDialog.cpp
===================================================================
RCS file: 
/sources/traverso/traverso/src/traverso/dialogs/project/NewProjectDialog.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- src/traverso/dialogs/project/NewProjectDialog.cpp   22 May 2008 20:12:51 
-0000      1.13
+++ src/traverso/dialogs/project/NewProjectDialog.cpp   23 May 2008 11:10:11 
-0000      1.14
@@ -29,6 +29,7 @@
 #include <QDomDocument>
 #include <QFileDialog>
 #include <QHeaderView>
+#include <QToolButton>
 #include <QPushButton>
 #include <QTreeWidget>
 #include <QTreeWidgetItem>
@@ -40,6 +41,7 @@
 #include <QRadioButton>
 #include <QStackedWidget>
 #include <QButtonGroup>
+#include <QIcon>
 
 #include <Config.h>
 #include "Export.h"
@@ -70,6 +72,15 @@
        use_template_checkbox_state_changed(Qt::Unchecked);
        update_template_combobox();
 
+       buttonAdd->setIcon(QIcon(":/add"));
+       buttonRemove->setIcon(QIcon(":/remove"));
+       buttonUp->setIcon(QIcon(":/up"));
+       buttonDown->setIcon(QIcon(":/down"));
+
+       buttonRemove->setEnabled(false);
+       buttonUp->setEnabled(false);
+       buttonDown->setEnabled(false);
+
        buttonBox->button(QDialogButtonBox::Ok)->setDefault(true);
 
        m_converter = new AudioFileCopyConvert();
@@ -80,8 +91,11 @@
        m_buttonGroup->addButton(radioButtonEmpty, 1);
 
        connect(useTemplateCheckBox, SIGNAL(stateChanged (int)), this, 
SLOT(use_template_checkbox_state_changed(int)));
-       connect(pushButtonAddFiles, SIGNAL(clicked()), this, SLOT(add_files()));
-       connect(pushButtonRemoveFiles, SIGNAL(clicked()), this, 
SLOT(remove_files()));
+       connect(buttonAdd, SIGNAL(clicked()), this, SLOT(add_files()));
+       connect(buttonRemove, SIGNAL(clicked()), this, SLOT(remove_files()));
+       connect(buttonUp, SIGNAL(clicked()), this, SLOT(move_up()));
+       connect(buttonDown, SIGNAL(clicked()), this, SLOT(move_down()));
+
        connect(m_converter, SIGNAL(taskFinished(QString, int, QString)), this, 
SLOT(load_file(QString, int, QString)));
        connect(m_converter, SIGNAL(taskStarted(QString)), this, 
SLOT(show_progress(QString)));
        connect(m_converter, SIGNAL(progress(int)), m_progressDialog, 
SLOT(setValue(int)));
@@ -210,10 +224,16 @@
                labels << "Unnamed" << finfo.fileName();
 
                QTreeWidgetItem* item = new QTreeWidgetItem(treeWidgetFiles, 
labels, 0);
-               item->setFlags(Qt::ItemIsEditable | Qt::ItemIsEnabled);
+               item->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEditable | 
Qt::ItemIsEnabled);
                item->setData(0, Qt::ToolTipRole, finfo.absoluteFilePath());
                treeWidgetFiles->addTopLevelItem(item);
        }
+
+       if (treeWidgetFiles->topLevelItemCount()) {
+               buttonRemove->setEnabled(true);
+               buttonUp->setEnabled(true);
+               buttonDown->setEnabled(true);
+       }
 }
 
 void NewProjectDialog::remove_files()
@@ -230,6 +250,12 @@
                QTreeWidgetItem *it = selection.takeLast();
                delete it;
        }
+
+       if (!treeWidgetFiles->topLevelItemCount()) {
+               buttonRemove->setEnabled(false);
+               buttonUp->setEnabled(false);
+               buttonDown->setEnabled(false);
+       }
 }
 
 void NewProjectDialog::copy_files()
@@ -309,4 +335,64 @@
        m_progressDialog->show();
 }
 
+void NewProjectDialog::move_up()
+{
+       QList<QTreeWidgetItem*> selection = treeWidgetFiles->selectedItems();
+
+       if (selection.isEmpty())
+       {
+               return;
+       }
+
+       qSort(selection);
+       int firstIndex = treeWidgetFiles->topLevelItemCount();
+       QList<int> indexList;
+
+       foreach(QTreeWidgetItem *it, selection) {
+           int idx = treeWidgetFiles->indexOfTopLevelItem(it);
+           firstIndex = qMin(idx, firstIndex);
+       }
+
+       firstIndex = firstIndex > 0 ? firstIndex - 1 : firstIndex;
+
+       QList<QTreeWidgetItem*> tempList;
+       while (selection.size())
+       {
+               QTreeWidgetItem *it = 
treeWidgetFiles->takeTopLevelItem(treeWidgetFiles->indexOfTopLevelItem(selection.takeFirst()));
+               treeWidgetFiles->insertTopLevelItem(firstIndex, it);
+               it->setSelected(true);
+               ++firstIndex;
+       }
+}
+
+
+void NewProjectDialog::move_down()
+{
+       QList<QTreeWidgetItem*> selection = treeWidgetFiles->selectedItems();
+
+       if (selection.isEmpty())
+       {
+               return;
+       }
+
+       qSort(selection);
+       int firstIndex = 0;
+       QList<int> indexList;
+
+       foreach(QTreeWidgetItem *it, selection) {
+           int idx = treeWidgetFiles->indexOfTopLevelItem(it);
+           firstIndex = qMax(idx, firstIndex);
+       }
+
+       firstIndex = firstIndex < treeWidgetFiles->topLevelItemCount() - 1 ? 
firstIndex + 1 : firstIndex;
+
+       while (selection.size()) {
+               int idx = 
treeWidgetFiles->indexOfTopLevelItem(selection.takeFirst());
+               QTreeWidgetItem *it = treeWidgetFiles->takeTopLevelItem(idx);
+               treeWidgetFiles->insertTopLevelItem(firstIndex, it);
+               it->setSelected(true);
+       }
+}
+
+
 //eof

Index: src/traverso/dialogs/project/NewProjectDialog.h
===================================================================
RCS file: 
/sources/traverso/traverso/src/traverso/dialogs/project/NewProjectDialog.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- src/traverso/dialogs/project/NewProjectDialog.h     22 May 2008 20:12:51 
-0000      1.8
+++ src/traverso/dialogs/project/NewProjectDialog.h     23 May 2008 11:10:11 
-0000      1.9
@@ -58,6 +58,8 @@
        void remove_files();
        void load_file(QString, int, QString);
        void show_progress(QString);
+       void move_up();
+       void move_down();
 
 signals:
        void loadFile(QString, int, QString);

Index: src/traverso/traverso.qrc
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/traverso.qrc,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -b -r1.30 -r1.31
--- src/traverso/traverso.qrc   14 May 2008 18:01:05 -0000      1.30
+++ src/traverso/traverso.qrc   23 May 2008 11:10:11 -0000      1.31
@@ -66,6 +66,12 @@
                <file 
alias="snap">../../resources/images/icons/traverso-snap.png</file>
                <file 
alias="effects">../../resources/images/icons/view-media-equalizer.png</file>
                <file 
alias="follow">../../resources/images/icons/system-switch-user.png</file>
+
+               <file 
alias="up">../../resources/images/icons/arrow-up.png</file>
+               <file 
alias="down">../../resources/images/icons/arrow-down.png</file>
+               <file 
alias="add">../../resources/images/icons/list-add.png</file>
+               <file 
alias="remove">../../resources/images/icons/list-remove.png</file>
+
                <file 
alias="traverso_nl">../../resources/translations/traverso_nl.qm</file>
                <file 
alias="traverso_de">../../resources/translations/traverso_de.qm</file>
                <file 
alias="traverso_fr">../../resources/translations/traverso_fr.qm</file>

Index: src/traverso/ui/NewProjectDialog.ui
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/ui/NewProjectDialog.ui,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- src/traverso/ui/NewProjectDialog.ui 22 May 2008 16:40:05 -0000      1.8
+++ src/traverso/ui/NewProjectDialog.ui 23 May 2008 11:10:11 -0000      1.9
@@ -115,6 +115,12 @@
    </item>
    <item>
     <widget class="QStackedWidget" name="stackedWidget" >
+     <property name="sizePolicy" >
+      <sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
      <property name="currentIndex" >
       <number>0</number>
      </property>
@@ -129,16 +135,16 @@
           <item>
            <layout class="QHBoxLayout" >
             <item>
-             <widget class="QPushButton" name="pushButtonAddFiles" >
+             <widget class="QToolButton" name="buttonAdd" >
               <property name="text" >
-               <string>Add Files</string>
+               <string>...</string>
               </property>
              </widget>
             </item>
             <item>
-             <widget class="QPushButton" name="pushButtonRemoveFiles" >
+             <widget class="QToolButton" name="buttonRemove" >
               <property name="text" >
-               <string>Remove Files</string>
+               <string>...</string>
               </property>
              </widget>
             </item>
@@ -155,6 +161,20 @@
               </property>
              </spacer>
             </item>
+            <item>
+             <widget class="QToolButton" name="buttonUp" >
+              <property name="text" >
+               <string>...</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QToolButton" name="buttonDown" >
+              <property name="text" >
+               <string>...</string>
+              </property>
+             </widget>
+            </item>
            </layout>
           </item>
           <item>

Index: resources/images/icons/arrow-down.png
===================================================================
RCS file: resources/images/icons/arrow-down.png
diff -N resources/images/icons/arrow-down.png
Binary files /dev/null and /tmp/cvsM4Mv0P differ

Index: resources/images/icons/arrow-down.svgz
===================================================================
RCS file: resources/images/icons/arrow-down.svgz
diff -N resources/images/icons/arrow-down.svgz
Binary files /dev/null and /tmp/cvsrhwDOQ differ

Index: resources/images/icons/arrow-up.png
===================================================================
RCS file: resources/images/icons/arrow-up.png
diff -N resources/images/icons/arrow-up.png
Binary files /dev/null and /tmp/cvsAnbL0Q differ

Index: resources/images/icons/arrow-up.svgz
===================================================================
RCS file: resources/images/icons/arrow-up.svgz
diff -N resources/images/icons/arrow-up.svgz
Binary files /dev/null and /tmp/cvsHumE1P differ

Index: resources/images/icons/list-add.png
===================================================================
RCS file: resources/images/icons/list-add.png
diff -N resources/images/icons/list-add.png
Binary files /dev/null and /tmp/cvsgdzkzT differ

Index: resources/images/icons/list-add.svgz
===================================================================
RCS file: resources/images/icons/list-add.svgz
diff -N resources/images/icons/list-add.svgz
Binary files /dev/null and /tmp/cvsusj4cK differ

Index: resources/images/icons/list-remove.png
===================================================================
RCS file: resources/images/icons/list-remove.png
diff -N resources/images/icons/list-remove.png
Binary files /dev/null and /tmp/cvszu8gVK differ

Index: resources/images/icons/list-remove.svgz
===================================================================
RCS file: resources/images/icons/list-remove.svgz
diff -N resources/images/icons/list-remove.svgz
Binary files /dev/null and /tmp/cvsKdV2iL differ




reply via email to

[Prev in Thread] Current Thread [Next in Thread]