[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kdev-mercurial] /: First bits of MQ manager ui.
From:       Andrey Batyiev <batyiev () gmail ! com>
Date:       2011-07-17 11:56:13
Message-ID: 20110717115613.15001A60A6 () git ! kde ! org
[Download RAW message or body]

Git commit aa38e503fb538e80ea996c72c307af2ec21a8179 by Andrey Batyiev.
Committed on 17/07/2011 at 13:54.
Pushed by abatyiev into branch 'master'.

First bits of MQ manager ui.

A  +141  -0    ui/mercurialqueuesmanager.ui
A  +53   -0    ui/mercurialqueuesmanager.h     [License: GPL (v2/3)]
A  +77   -0    models/mercurialqueueseriesmodel.cpp     [License: GPL (v2/3)]
A  +68   -0    ui/mercurialqueuesmanager.cpp     [License: GPL (v2/3)]
A  +51   -0    models/mercurialqueueseriesmodel.h     [License: GPL (v2/3)]
M  +3    -0    CMakeLists.txt
M  +85   -23   mercurialplugin.cpp
M  +19   -7    mercurialplugin.h

http://commits.kde.org/kdev-mercurial/aa38e503fb538e80ea996c72c307af2ec21a8179

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5c15c5c..c4f91a3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -20,7 +20,9 @@ add_subdirectory(python)
 ########### next target ###############
 
 set(kdevmercurial_PART_SRCS
+    ui/mercurialqueuesmanager.cpp
     ui/mercurialheadswidget.cpp
+    models/mercurialqueueseriesmodel.cpp
     models/mercurialheadsmodel.cpp
     mercurialpushjob.cpp
     mercurialvcslocationwidget.cpp
@@ -29,6 +31,7 @@ set(kdevmercurial_PART_SRCS
 
 set(kdevmercurial_UIS
     ui/mercurialheadswidget.ui
+    ui/mercurialqueuesmanager.ui
 )
 
 kde4_add_ui_files(kdevmercurial_PART_SRCS ${kdevmercurial_UIS})
diff --git a/mercurialplugin.cpp b/mercurialplugin.cpp
index a9aa849..7cb53e2 100644
--- a/mercurialplugin.cpp
+++ b/mercurialplugin.cpp
@@ -52,13 +52,14 @@
 #include "mercurialvcslocationwidget.h"
 #include "mercurialpushjob.h"
 #include "ui/mercurialheadswidget.h"
-
+#include "ui/mercurialqueuesmanager.h"
 
 K_PLUGIN_FACTORY(KDevMercurialFactory, registerPlugin<MercurialPlugin>();)
 K_EXPORT_PLUGIN(KDevMercurialFactory(KAboutData("kdevmercurial", "kdevmercurial", \
ki18n("Mercurial"), "0.1", ki18n("A plugin to support Mercurial version control \
systems"), KAboutData::License_GPL)))  
 using namespace KDevelop;
 
+
 MercurialPlugin::MercurialPlugin(QObject *parent, const QVariantList &)
         : DistributedVersionControlPlugin(parent, \
KDevMercurialFactory::componentData())  {
@@ -67,13 +68,14 @@ MercurialPlugin::MercurialPlugin(QObject *parent, const \
QVariantList &)  
     m_headsAction = new KAction(i18n("Heads..."), this);
     m_mqNew = new KAction(i18nc("mercurial queues submenu", "New..."), this);
-    m_mqPush = new KAction(i18nc("mercurial queues submenu", "Push"), this);
-    m_mqPushAll = new KAction(i18nc("mercurial queues submenu", "Push All"), this);
-    m_mqPop = new KAction(i18nc("mercurial queues submenu", "Pop"), this);
-    m_mqPopAll = new KAction(i18nc("mercurial queues submenu", "Pop All"), this);
-    m_mqManager = new KAction(i18nc("mercurial queues submenu", "Manager..."), \
this); +    m_mqPushAction = new KAction(i18nc("mercurial queues submenu", "Push"), \
this); +    m_mqPushAllAction = new KAction(i18nc("mercurial queues submenu", "Push \
All"), this); +    m_mqPopAction = new KAction(i18nc("mercurial queues submenu", \
"Pop"), this); +    m_mqPopAllAction = new KAction(i18nc("mercurial queues submenu", \
"Pop All"), this); +    m_mqManagerAction = new KAction(i18nc("mercurial queues \
submenu", "Manager..."), this);  
     connect(m_headsAction, SIGNAL(triggered()), this, SLOT(showHeads()));
+    connect(m_mqManagerAction, SIGNAL(triggered()), this, \
                SLOT(showMercurialQueuesManager()));
     core()->uiController()->addToolView(i18n("Mercurial"), dvcsViewFactory());
     setXMLFile("kdevmercurial.rc");
 }
@@ -592,7 +594,7 @@ VcsJob* MercurialPlugin::branches(const KUrl &repository)
 {
     DVcsJob *job = new DVcsJob(findWorkingDir(repository), this);
     callExtension(*job) << "allbranches" << "--" << repository;
-    connect(job, SIGNAL(readyForParsing(KDevelop::DVcsJob*)), this, \
SLOT(parseBranchesOutput(KDevelop::DVcsJob*))); +    connect(job, \
SIGNAL(readyForParsing(KDevelop::DVcsJob*)), this, \
SLOT(parseMultiLineOutput(KDevelop::DVcsJob*)));  return job;
 }
 
@@ -600,15 +602,10 @@ VcsJob* MercurialPlugin::currentBranch(const KUrl& repository)
 {
     DVcsJob *job = new DVcsJob(findWorkingDir(repository), this);
     *job << "hg" << "branch";
-    connect(job, SIGNAL(readyForParsing(KDevelop::DVcsJob*)), this, \
SLOT(parseBranchesOutput(KDevelop::DVcsJob*))); +    connect(job, \
SIGNAL(readyForParsing(KDevelop::DVcsJob*)), this, \
SLOT(parseMultiLineOutput(KDevelop::DVcsJob*)));  return job;
 }
 
-void MercurialPlugin::parseBranchesOutput(DVcsJob *job) const
-{
-    job->setResults(job->output().split('\n', QString::SkipEmptyParts));
-}
-
 VcsJob* MercurialPlugin::deleteBranch(const KUrl &repository, const QString \
&branchName)  {
     return 0;
@@ -729,6 +726,11 @@ QList<DVcsEvent> MercurialPlugin::getAllCommits(const QString \
&repo)  #endif
 }
 
+void MercurialPlugin::parseMultiLineOutput(DVcsJob *job) const
+{
+    job->setResults(job->output().split('\n', QString::SkipEmptyParts));
+}
+
 void MercurialPlugin::parseDiff(DVcsJob* job)
 {
     if (job->status() != VcsJob::JobSucceeded) {
@@ -1090,21 +1092,20 @@ void MercurialPlugin::additionalMenuEntries(QMenu *menu, \
const KUrl::List &urls)  menu->addAction(m_headsAction);
     menu->addSeparator()->setText(i18n("Mercurial Queues"));
     menu->addAction(m_mqNew);
-    menu->addAction(m_mqPush);
-    menu->addAction(m_mqPushAll);
-    menu->addAction(m_mqPop);
-    menu->addAction(m_mqPopAll);
-    menu->addAction(m_mqManager);
+    menu->addAction(m_mqPushAction);
+    menu->addAction(m_mqPushAllAction);
+    menu->addAction(m_mqPopAction);
+    menu->addAction(m_mqPopAllAction);
+    menu->addAction(m_mqManagerAction);
 
     m_headsAction->setEnabled(m_urls.count() == 1);
 
     //FIXME:not supported yet, so disable
     m_mqNew->setEnabled(false);
-    m_mqPush->setEnabled(false);
-    m_mqPushAll->setEnabled(false);
-    m_mqPop->setEnabled(false);
-    m_mqPopAll->setEnabled(false);
-    m_mqManager->setEnabled(false);
+    m_mqPushAction->setEnabled(false);
+    m_mqPushAllAction->setEnabled(false);
+    m_mqPopAction->setEnabled(false);
+    m_mqPopAllAction->setEnabled(false);
 }
 
 void MercurialPlugin::showHeads()
@@ -1114,6 +1115,14 @@ void MercurialPlugin::showHeads()
     headsWidget->show();
 }
 
+void MercurialPlugin::showMercurialQueuesManager()
+{
+    const KUrl &current = m_urls.first();
+    MercurialQueuesManager *managerWidget = new MercurialQueuesManager(this, \
current); +    managerWidget->show();
+}
+
+
 DVcsJob& MercurialPlugin::callExtension(DVcsJob &job)
 {
     job << "hg" << "--config" << "extensions.kdevmercurial=" EXTENSION_FILE;
@@ -1121,4 +1130,57 @@ DVcsJob& MercurialPlugin::callExtension(DVcsJob &job)
 }
 
 
+/*
+ * Mercurial Queues
+ */
+
+VcsJob* MercurialPlugin::mqNew(const KUrl &localLocation, const QString &name, const \
QString &message) +{
+    return 0;
+}
+
+VcsJob* MercurialPlugin::mqPush(const KUrl &localLocation)
+{
+    DVcsJob *job = new DVcsJob(findWorkingDir(localLocation), this);
+    *job << "hg" << "qpush";
+    return job;
+}
+
+VcsJob* MercurialPlugin::mqPushAll(const KUrl &localLocation)
+{
+    DVcsJob *job = new DVcsJob(findWorkingDir(localLocation), this);
+    *job << "hg" << "qpush" << "-a";
+    return job;
+}
+
+VcsJob* MercurialPlugin::mqPop(const KUrl &localLocation)
+{
+    DVcsJob *job = new DVcsJob(findWorkingDir(localLocation), this);
+    *job << "hg" << "qpop";
+    return job;
+}
+
+VcsJob* MercurialPlugin::mqPopAll(const KUrl &localLocation)
+{
+    DVcsJob *job = new DVcsJob(findWorkingDir(localLocation), this);
+    *job << "hg" << "qpop" << "-a";
+    return job;
+}
+
+VcsJob* MercurialPlugin::mqApplied(const KUrl &localLocation)
+{
+    DVcsJob *job = new DVcsJob(findWorkingDir(localLocation), this);
+    *job << "hg" << "qapplied";
+    connect(job, SIGNAL(readyForParsing(KDevelop::DVcsJob*)), this, \
SLOT(parseMultiLineOutput(KDevelop::DVcsJob*))); +    return job;
+}
+
+VcsJob* MercurialPlugin::mqUnapplied(const KUrl &localLocation)
+{
+    DVcsJob *job = new DVcsJob(findWorkingDir(localLocation), this);
+    *job << "hg" << "qunapplied";
+    connect(job, SIGNAL(readyForParsing(KDevelop::DVcsJob*)), this, \
SLOT(parseMultiLineOutput(KDevelop::DVcsJob*))); +    return job;
+}
+
 // #include "mercurialplugin.moc"
diff --git a/mercurialplugin.h b/mercurialplugin.h
index bf660b3..11c3cf2 100644
--- a/mercurialplugin.h
+++ b/mercurialplugin.h
@@ -114,6 +114,15 @@ public:
     KDevelop::VcsJob* checkoutHead(const KUrl &localLocation, const \
                KDevelop::VcsRevision &rev);
     KDevelop::VcsJob* mergeWith(const KUrl &localLocation, const \
KDevelop::VcsRevision &rev);  
+    // mercurial queues stuff
+    KDevelop::VcsJob* mqNew(const KUrl &localLocation, const QString &name, const \
QString &message); +    KDevelop::VcsJob* mqPush(const KUrl &localLocation);
+    KDevelop::VcsJob* mqPushAll(const KUrl &localLocation);
+    KDevelop::VcsJob* mqPop(const KUrl &localLocation);
+    KDevelop::VcsJob* mqPopAll(const KUrl &localLocation);
+    KDevelop::VcsJob* mqApplied(const KUrl &localLocation);
+    KDevelop::VcsJob* mqUnapplied(const KUrl &localLocation);
+
     //KDevelop::DVcsJob* switchBranch(const QString &repository, const QString \
                &branch);
     //KDevelop::DVcsJob* branch(const QString &repository, const QString &basebranch \
= QString(), const QString //&branch = QString(),  //const QStringList &args = \
QStringList()); @@ -151,7 +160,7 @@ protected slots:
     bool parseStatus(KDevelop::DVcsJob *job) const;
     bool parseAnnotations(KDevelop::DVcsJob *job) const;
     void parseDiff(KDevelop::DVcsJob *job);
-    void parseBranchesOutput(KDevelop::DVcsJob *job) const;
+    void parseMultiLineOutput(KDevelop::DVcsJob *job) const;
     
     /*
      * mercurial specific stuff
@@ -162,7 +171,8 @@ protected slots:
      * ui helpers
      */
     void showHeads();
-
+    void showMercurialQueuesManager();
+    
 protected:
     //used in log
     void parseLogOutput(const KDevelop::DVcsJob *job, QList<DVcsEvent>& commits) \
const; @@ -184,13 +194,15 @@ protected:
     KAction *m_headsAction;
 
     KAction *m_mqNew,
-            *m_mqPush,
-            *m_mqPushAll,
-            *m_mqPop,
-            *m_mqPopAll,
-            *m_mqManager;
+            *m_mqPushAction,
+            *m_mqPushAllAction,
+            *m_mqPopAction,
+            *m_mqPopAllAction,
+            *m_mqManagerAction;
     KUrl::List m_urls;
     void additionalMenuEntries(QMenu *menu, const KUrl::List &urls);
 };
 
+//class MercurialQueues
+
 #endif
diff --git a/models/mercurialqueueseriesmodel.cpp \
b/models/mercurialqueueseriesmodel.cpp new file mode 100644
index 0000000..4fb1d52
--- /dev/null
+++ b/models/mercurialqueueseriesmodel.cpp
@@ -0,0 +1,77 @@
+/***************************************************************************
+ *   Copyright 2011 Andrey Batyiev <batyiev@gmail.com>                     *
+ *                                                                         *
+ *   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) version 3 or any later version        *
+ *   accepted by the membership of KDE e.V. (or its successor approved     *
+ *   by the membership of KDE e.V.), which shall act as a proxy            *
+ *   defined in Section 14 of version 3 of the license.                    *
+ *                                                                         *
+ *   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, see <http://www.gnu.org/licenses/>. *
+ ***************************************************************************/
+
+#include <QStringList>
+#include <KIcon>
+
+#include <mercurialplugin.h>
+#include "mercurialqueueseriesmodel.h"
+#include <vcs/vcsjob.h>
+
+using namespace KDevelop;
+
+void MercurialQueueSeriesModel::update()
+{
+    beginResetModel();
+    VcsJob *job = m_plugin->mqApplied(m_repoLocation);
+    if(job->exec() && job->status() == VcsJob::JobSucceeded) {
+        m_appliedPatches = job->fetchResults().toStringList();
+    }
+    delete job;
+    
+    job = m_plugin->mqUnapplied(m_repoLocation);
+    if(job->exec() && job->status() == VcsJob::JobSucceeded) {
+        m_unappliedPatches = job->fetchResults().toStringList();
+    }
+    delete job;
+    endResetModel();
+}
+
+QVariant MercurialQueueSeriesModel::data(const QModelIndex &index, int role) const
+{
+    int row = index.row();
+    if (row >= 0 && row < m_appliedPatches.size()) {
+        if (role == Qt::DisplayRole) {
+            return m_appliedPatches[row];
+        } else if (role == Qt::DecorationRole) {
+            // FIXME
+            return QVariant(KIcon("dialog-ok-apply"));
+        } else {
+            return QVariant();
+        }
+    } else {
+        row -= m_appliedPatches.size();
+    }
+    
+    if (row >= 0 && row < m_unappliedPatches.size()) {
+        if (role == Qt::DisplayRole) {
+            return m_unappliedPatches[row];
+        } else {
+            return QVariant();
+        }
+    }
+    return QVariant();
+}
+
+int MercurialQueueSeriesModel::rowCount(const QModelIndex &parent) const
+{
+    return m_unappliedPatches.size() + m_appliedPatches.size();
+}
+
diff --git a/models/mercurialqueueseriesmodel.h b/models/mercurialqueueseriesmodel.h
new file mode 100644
index 0000000..199c0f6
--- /dev/null
+++ b/models/mercurialqueueseriesmodel.h
@@ -0,0 +1,51 @@
+/***************************************************************************
+ *   Copyright 2011 Andrey Batyiev <batyiev@gmail.com>                     *
+ *                                                                         *
+ *   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) version 3 or any later version        *
+ *   accepted by the membership of KDE e.V. (or its successor approved     *
+ *   by the membership of KDE e.V.), which shall act as a proxy            *
+ *   defined in Section 14 of version 3 of the license.                    *
+ *                                                                         *
+ *   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, see <http://www.gnu.org/licenses/>. *
+ ***************************************************************************/
+
+#ifndef MERCURIALQUEUESERIESMODEL_H
+#define MERCURIALQUEUESERIESMODEL_H
+
+#include <QModelIndex>
+
+class KUrl;
+class MercurialPlugin;
+
+class MercurialQueueSeriesModel : public QAbstractListModel
+{
+    Q_OBJECT
+
+public:
+    explicit MercurialQueueSeriesModel(MercurialPlugin *plugin, const KUrl \
&localLocation, QObject *parent = 0)  +        : QAbstractListModel(parent), \
m_repoLocation(localLocation), m_plugin(plugin) +    {
+        update();
+    };
+
+    void update();
+
+    virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) \
const; +    virtual int rowCount(const QModelIndex &parent = QModelIndex()) const;
+
+private:
+    const KUrl &m_repoLocation;
+    MercurialPlugin *m_plugin;
+    QStringList m_appliedPatches, m_unappliedPatches;
+};
+
+#endif // MERCURIALQUEUESERIESMODEL_H
diff --git a/ui/mercurialqueuesmanager.cpp b/ui/mercurialqueuesmanager.cpp
new file mode 100644
index 0000000..0ebc0e0
--- /dev/null
+++ b/ui/mercurialqueuesmanager.cpp
@@ -0,0 +1,68 @@
+/***************************************************************************
+ *   Copyright 2011 Andrey Batyiev <batyiev@gmail.com>                     *
+ *                                                                         *
+ *   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) version 3 or any later version        *
+ *   accepted by the membership of KDE e.V. (or its successor approved     *
+ *   by the membership of KDE e.V.), which shall act as a proxy            *
+ *   defined in Section 14 of version 3 of the license.                    *
+ *                                                                         *
+ *   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, see <http://www.gnu.org/licenses/>. *
+ ***************************************************************************/
+
+#include "mercurialqueuesmanager.h"
+#include "ui_mercurialqueuesmanager.h"
+#include <models/mercurialqueueseriesmodel.h>
+#include <vcs/vcsjob.h>
+#include <mercurialplugin.h>
+
+using namespace KDevelop;
+
+MercurialQueuesManager::MercurialQueuesManager(MercurialPlugin *plugin, const KUrl \
&localLocation) +: QWidget(), repoLocation(localLocation), m_plugin(plugin), m_ui(new \
Ui::MercurialManagerWidget) +{
+    m_ui->setupUi(this);
+    m_model = new MercurialQueueSeriesModel(m_plugin, repoLocation, \
m_ui->patchesListView); +    m_ui->patchesListView->setModel(m_model);
+    
+    connect(m_ui->pushPushButton, SIGNAL(clicked(bool)), this, SLOT(executePush()));
+    connect(m_ui->pushAllPushButton, SIGNAL(clicked(bool)), this, \
SLOT(executePushAll())); +    connect(m_ui->popPushButton, SIGNAL(clicked(bool)), \
this, SLOT(executePop())); +    connect(m_ui->popAllPushButton, \
SIGNAL(clicked(bool)), this, SLOT(executePopAll())); +}
+
+void MercurialQueuesManager::executePush()
+{
+    QScopedPointer<VcsJob> job(m_plugin->mqPush(repoLocation));
+    job->exec();
+    m_model->update();
+}
+
+void MercurialQueuesManager::executePushAll()
+{
+    QScopedPointer<VcsJob> job(m_plugin->mqPushAll(repoLocation));
+    job->exec();
+    m_model->update();
+}
+
+void MercurialQueuesManager::executePop()
+{
+    QScopedPointer<VcsJob> job(m_plugin->mqPop(repoLocation));
+    job->exec();
+    m_model->update();
+}
+
+void MercurialQueuesManager::executePopAll()
+{
+    QScopedPointer<VcsJob> job(m_plugin->mqPopAll(repoLocation));
+    job->exec();
+    m_model->update();
+}
diff --git a/ui/mercurialqueuesmanager.h b/ui/mercurialqueuesmanager.h
new file mode 100644
index 0000000..6411ea5
--- /dev/null
+++ b/ui/mercurialqueuesmanager.h
@@ -0,0 +1,53 @@
+/***************************************************************************
+ *   Copyright 2011 Andrey Batyiev <batyiev@gmail.com>                     *
+ *                                                                         *
+ *   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) version 3 or any later version        *
+ *   accepted by the membership of KDE e.V. (or its successor approved     *
+ *   by the membership of KDE e.V.), which shall act as a proxy            *
+ *   defined in Section 14 of version 3 of the license.                    *
+ *                                                                         *
+ *   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, see <http://www.gnu.org/licenses/>. *
+ ***************************************************************************/
+
+#ifndef MERCURIALQUEUESMANAGER_H
+#define MERCURIALQUEUESMANAGER_H
+
+#include <QWidget>
+#include <KUrl>
+
+class MercurialPlugin;
+namespace Ui
+{
+class MercurialManagerWidget;
+}
+class MercurialQueueSeriesModel;
+
+class MercurialQueuesManager : public QWidget
+{
+    Q_OBJECT
+public:
+    MercurialQueuesManager(MercurialPlugin *plugin, const KUrl &localLocation);
+
+protected slots:
+    void executePush();
+    void executePushAll();
+    void executePop();
+    void executePopAll();
+    
+private:
+    MercurialPlugin *m_plugin;
+    const KUrl repoLocation;
+    Ui::MercurialManagerWidget *m_ui;
+    MercurialQueueSeriesModel *m_model;
+};
+
+#endif // MERCURIALQUEUESMANAGER_H
diff --git a/ui/mercurialqueuesmanager.ui b/ui/mercurialqueuesmanager.ui
new file mode 100644
index 0000000..4ff66be
--- /dev/null
+++ b/ui/mercurialqueuesmanager.ui
@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MercurialManagerWidget</class>
+ <widget class="QWidget" name="MercurialManagerWidget">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>503</width>
+    <height>378</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Mercurial Queues Manager</string>
+  </property>
+  <layout class="QHBoxLayout" name="horizontalLayout">
+   <item>
+    <widget class="QListView" name="patchesListView"/>
+   </item>
+   <item>
+    <layout class="QVBoxLayout" name="verticalLayout">
+     <item>
+      <spacer name="verticalSpacer_5">
+       <property name="orientation">
+        <enum>Qt::Vertical</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>20</width>
+         <height>40</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="insertPushButton">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>Insert...</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="verticalSpacer_2">
+       <property name="orientation">
+        <enum>Qt::Vertical</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>20</width>
+         <height>40</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="pushPushButton">
+       <property name="text">
+        <string>Push</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="pushAllPushButton">
+       <property name="text">
+        <string>Push All</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="verticalSpacer_4">
+       <property name="orientation">
+        <enum>Qt::Vertical</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>20</width>
+         <height>40</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="popPushButton">
+       <property name="text">
+        <string>Pop</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="popAllPushButton">
+       <property name="text">
+        <string>Pop All</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="verticalSpacer_3">
+       <property name="orientation">
+        <enum>Qt::Vertical</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>20</width>
+         <height>40</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="removePushButton">
+       <property name="enabled">
+        <bool>false</bool>
+       </property>
+       <property name="text">
+        <string>Remove</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <spacer name="verticalSpacer">
+       <property name="orientation">
+        <enum>Qt::Vertical</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>20</width>
+         <height>40</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic