1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-11-29 07:24:13 +01:00

OP-6: WIP

* Removed New/Save/Open dialogs
* Removed printer
* Changed version number in pluginspec.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@274 ebee16cc-31ac-478f-84a7-5cbb03baadba
This commit is contained in:
julien 2010-03-09 21:20:19 +00:00 committed by julien
parent 87dd4942e4
commit de914586c8
23 changed files with 9 additions and 939 deletions

View File

@ -1,4 +1,4 @@
<plugin name="Core" version="1.3.1" compatVersion="1.3.1">
<plugin name="Core" version="1.0.0" compatVersion="1.0.0">
<vendor>The OpenPilot Project</vendor>
<copyright>(C) 2010 OpenPilot Project</copyright>
<license>

View File

@ -46,7 +46,6 @@ QT_END_NAMESPACE
namespace Core {
class IEditor;
class IFileWizardExtension;
class BaseFileWizardParameterData;

View File

@ -57,13 +57,6 @@ CoreImpl::CoreImpl(MainWindow *mainwindow)
m_mainwindow = mainwindow;
}
QStringList CoreImpl::showNewItemDialog(const QString &title,
const QList<IWizard *> &wizards,
const QString &defaultLocation)
{
return m_mainwindow->showNewItemDialog(title, wizards, defaultLocation);
}
bool CoreImpl::showOptionsDialog(const QString &group, const QString &page, QWidget *parent)
{
return m_mainwindow->showOptionsDialog(group, page, parent);
@ -120,11 +113,6 @@ SettingsDatabase *CoreImpl::settingsDatabase() const
return m_mainwindow->settingsDatabase();
}
QPrinter *CoreImpl::printer() const
{
return m_mainwindow->printer();
}
#ifdef Q_OS_MAC
# define SHARE_PATH "/../Resources"
#else

View File

@ -44,9 +44,6 @@ public:
CoreImpl(MainWindow *mainwindow);
~CoreImpl() {}
QStringList showNewItemDialog(const QString &title,
const QList<IWizard *> &wizards,
const QString &defaultLocation = QString());
bool showOptionsDialog(const QString &group = QString(),
const QString &page = QString(),
QWidget *parent = 0);
@ -65,7 +62,6 @@ public:
QSettings *settings() const;
SettingsDatabase *settingsDatabase() const;
QPrinter *printer() const;
QString resourcePath() const;

View File

@ -28,11 +28,8 @@ SOURCES += mainwindow.cpp \
actionmanager/command.cpp \
actionmanager/actioncontainer.cpp \
actionmanager/commandsfile.cpp \
dialogs/saveitemsdialog.cpp \
dialogs/newdialog.cpp \
dialogs/settingsdialog.cpp \
dialogs/shortcutsettings.cpp \
dialogs/openwithdialog.cpp \
basemode.cpp \
baseview.cpp \
coreplugin.cpp \
@ -68,11 +65,8 @@ HEADERS += mainwindow.h \
actionmanager/command_p.h \
actionmanager/actioncontainer_p.h \
actionmanager/commandsfile.h \
dialogs/saveitemsdialog.h \
dialogs/newdialog.h \
dialogs/settingsdialog.h \
dialogs/shortcutsettings.h \
dialogs/openwithdialog.h \
dialogs/iwizard.h \
dialogs/ioptionspage.h \
icontext.h \
@ -104,11 +98,8 @@ HEADERS += mainwindow.h \
mimedatabase.h \
settingsdatabase.h \
eventfilteringmainwindow.h
FORMS += dialogs/newdialog.ui \
dialogs/settingsdialog.ui \
FORMS += dialogs/settingsdialog.ui \
dialogs/shortcutsettings.ui \
dialogs/saveitemsdialog.ui \
dialogs/openwithdialog.ui \
generalsettings.ui
RESOURCES += core.qrc \
fancyactionbar.qrc

View File

@ -1,145 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
#include "newdialog.h"
#include "ui_newdialog.h"
#include "basefilewizard.h"
#include <coreplugin/coreconstants.h>
#include <coreplugin/dialogs/iwizard.h>
#include <QtGui/QHeaderView>
#include <QtGui/QPushButton>
Q_DECLARE_METATYPE(Core::IWizard*)
static inline Core::IWizard *wizardOfItem(const QTreeWidgetItem *item = 0)
{
if (!item)
return 0;
return qVariantValue<Core::IWizard*>(item->data(0, Qt::UserRole));
}
using namespace Core;
using namespace Core::Internal;
NewDialog::NewDialog(QWidget *parent) :
QDialog(parent),
m_ui(new Core::Internal::Ui::NewDialog),
m_okButton(0)
{
typedef QMap<QString, QTreeWidgetItem *> CategoryItemMap;
m_ui->setupUi(this);
m_okButton = m_ui->buttonBox->button(QDialogButtonBox::Ok);
m_okButton->setDefault(true);
m_ui->watermark->setPixmap(BaseFileWizard::watermark());
m_ui->templatesTree->header()->hide();
connect(m_ui->templatesTree, SIGNAL(currentItemChanged(QTreeWidgetItem*, QTreeWidgetItem*)),
this, SLOT(currentItemChanged(QTreeWidgetItem*)));
connect(m_ui->templatesTree, SIGNAL(itemActivated(QTreeWidgetItem*,int)), m_okButton, SLOT(animateClick()));
connect(m_okButton, SIGNAL(clicked()), this, SLOT(okButtonClicked()));
connect(m_ui->buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
}
void NewDialog::setWizards(const QList<IWizard*> wizards)
{
typedef QMap<QString, QTreeWidgetItem *> CategoryItemMap;
CategoryItemMap categories;
QVariant wizardPtr;
m_ui->templatesTree->clear();
foreach (IWizard *wizard, wizards) {
// ensure category root
const QString categoryName = wizard->category();
CategoryItemMap::iterator cit = categories.find(categoryName);
if (cit == categories.end()) {
QTreeWidgetItem *categoryItem = new QTreeWidgetItem(m_ui->templatesTree);
categoryItem->setFlags(Qt::ItemIsEnabled);
categoryItem->setText(0, wizard->trCategory());
qVariantSetValue<IWizard*>(wizardPtr, 0);
categoryItem->setData(0, Qt::UserRole, wizardPtr);
cit = categories.insert(categoryName, categoryItem);
}
// add item
QTreeWidgetItem *wizardItem = new QTreeWidgetItem(cit.value(), QStringList(wizard->name()));
wizardItem->setIcon(0, wizard->icon());
qVariantSetValue<IWizard*>(wizardPtr, wizard);
wizardItem->setData(0, Qt::UserRole, wizardPtr);
wizardItem->setFlags(Qt::ItemIsEnabled|Qt::ItemIsSelectable);
}
}
Core::IWizard *NewDialog::showDialog()
{
m_ui->templatesTree->expandAll();
if (QTreeWidgetItem *rootItem = m_ui->templatesTree->topLevelItem(0)) {
m_ui->templatesTree->scrollToItem(rootItem);
if (rootItem->childCount())
m_ui->templatesTree->setCurrentItem(rootItem->child(0));
}
updateOkButton();
if (exec() != Accepted)
return 0;
return currentWizard();
}
NewDialog::~NewDialog()
{
delete m_ui;
}
IWizard *NewDialog::currentWizard() const
{
return wizardOfItem(m_ui->templatesTree->currentItem());
}
void NewDialog::currentItemChanged(QTreeWidgetItem *cat)
{
if (const IWizard *wizard = wizardOfItem(cat))
m_ui->descLabel->setText(wizard->description());
else
m_ui->descLabel->setText(QString());
updateOkButton();
}
void NewDialog::okButtonClicked()
{
if (m_ui->templatesTree->currentItem())
accept();
}
void NewDialog::updateOkButton()
{
m_okButton->setEnabled(currentWizard() != 0);
}

View File

@ -1,79 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
#ifndef NEWDIALOG_H
#define NEWDIALOG_H
#include <QtGui/QDialog>
#include <QtCore/QList>
QT_BEGIN_NAMESPACE
class QPushButton;
class QTreeWidgetItem;
class QStringList;
QT_END_NAMESPACE
namespace Core {
class IWizard;
namespace Internal {
namespace Ui {
class NewDialog;
}
class NewDialog : public QDialog
{
Q_OBJECT
public:
explicit NewDialog(QWidget *parent);
virtual ~NewDialog();
void setWizards(const QList<IWizard*> wizards);
Core::IWizard *showDialog();
private slots:
void currentItemChanged(QTreeWidgetItem *cat);
void okButtonClicked();
void updateOkButton();
private:
Core::IWizard *currentWizard() const;
Ui::NewDialog *m_ui;
QPushButton *m_okButton;
};
} // namespace Internal
} // namespace Core
#endif // NEWDIALOG_H

View File

@ -1,80 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Core::Internal::NewDialog</class>
<widget class="QDialog" name="Core::Internal::NewDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>490</width>
<height>390</height>
</rect>
</property>
<property name="windowTitle">
<string>New Project</string>
</property>
<layout class="QVBoxLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="margin">
<number>9</number>
</property>
<item>
<layout class="QGridLayout">
<property name="margin">
<number>0</number>
</property>
<property name="spacing">
<number>6</number>
</property>
<item row="0" column="1">
<widget class="QTreeWidget" name="templatesTree">
<property name="minimumSize">
<size>
<width>400</width>
<height>301</height>
</size>
</property>
<column>
<property name="text">
<string>1</string>
</property>
</column>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="descLabel">
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="watermark">
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -1,84 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
#include "openwithdialog.h"
#include <QtGui/QListWidget>
#include <QtGui/QPushButton>
#include <QtCore/QFileInfo>
using namespace Core;
using namespace Core::Internal;
OpenWithDialog::OpenWithDialog(const QString &fileName, QWidget *parent)
: QDialog(parent)
{
setupUi(this);
label->setText(tr("Open file '%1' with:").arg(QFileInfo(fileName).fileName()));
buttonBox->button(QDialogButtonBox::Ok)->setDefault(true);
connect(buttonBox->button(QDialogButtonBox::Ok), SIGNAL(clicked()),
this, SLOT(accept()));
connect(buttonBox->button(QDialogButtonBox::Cancel), SIGNAL(clicked()),
this, SLOT(reject()));
connect(editorListWidget, SIGNAL(itemDoubleClicked(QListWidgetItem *)),
this, SLOT(accept()));
connect(editorListWidget, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)),
this, SLOT(currentItemChanged(QListWidgetItem*,QListWidgetItem*)));
setOkButtonEnabled(false);
}
void OpenWithDialog::setOkButtonEnabled(bool v)
{
buttonBox->button(QDialogButtonBox::Ok)->setEnabled(v);
}
void OpenWithDialog::setEditors(const QStringList &editors)
{
foreach (const QString &e, editors)
editorListWidget->addItem(e);
}
QString OpenWithDialog::editor() const
{
if (const QListWidgetItem *item = editorListWidget->currentItem())
return item->text();
return QString();
}
void OpenWithDialog::setCurrentEditor(int index)
{
editorListWidget->setCurrentRow(index);
}
void OpenWithDialog::currentItemChanged(QListWidgetItem *current, QListWidgetItem *)
{
setOkButtonEnabled(current);
}

View File

@ -1,66 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
#ifndef OPENWITHDIALOG_H
#define OPENWITHDIALOG_H
#include <QtGui/QDialog>
#include "ui_openwithdialog.h"
namespace Core {
class ICore;
namespace Internal {
// Present the user with a file name and a list of available
// editor kinds to choose from.
class OpenWithDialog : public QDialog, public Ui::OpenWithDialog
{
Q_OBJECT
public:
OpenWithDialog(const QString &fileName, QWidget *parent);
void setEditors(const QStringList &);
QString editor() const;
void setCurrentEditor(int index);
private slots:
void currentItemChanged(QListWidgetItem *, QListWidgetItem *);
private:
void setOkButtonEnabled(bool);
};
} // namespace Internal
} // namespace Core
#endif // OPENWITHDIALOG_H

View File

@ -1,46 +0,0 @@
<ui version="4.0" >
<class>OpenWithDialog</class>
<widget class="QWidget" name="OpenWithDialog" >
<property name="geometry" >
<rect>
<x>0</x>
<y>0</y>
<width>358</width>
<height>199</height>
</rect>
</property>
<property name="windowTitle" >
<string>Open File With...</string>
</property>
<layout class="QVBoxLayout" >
<property name="margin" >
<number>9</number>
</property>
<property name="spacing" >
<number>6</number>
</property>
<item>
<widget class="QLabel" name="label" >
<property name="text" >
<string>Open file extension with:</string>
</property>
</widget>
</item>
<item>
<widget class="QListWidget" name="editorListWidget" />
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox" >
<property name="orientation" >
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons" >
<set>QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -1,137 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
#include "saveitemsdialog.h"
#include "mainwindow.h"
#include <coreplugin/ifile.h>
#include <QtCore/QDir>
#include <QtCore/QFileInfo>
#include <QtCore/QDir>
#include <QtGui/QPushButton>
#include <QtGui/QTreeWidget>
#include <QtGui/QHeaderView>
#include <QtGui/QCheckBox>
#include <QtGui/QPushButton>
Q_DECLARE_METATYPE(Core::IFile*);
using namespace Core;
using namespace Core::Internal;
SaveItemsDialog::SaveItemsDialog(QWidget *parent,
QList<IFile *> items)
: QDialog(parent)
{
m_ui.setupUi(this);
QPushButton *discardButton = m_ui.buttonBox->addButton(tr("Do not Save"), QDialogButtonBox::DestructiveRole);
m_ui.buttonBox->button(QDialogButtonBox::Save)->setDefault(true);
m_ui.buttonBox->button(QDialogButtonBox::Save)->setFocus(Qt::TabFocusReason);
m_ui.buttonBox->button(QDialogButtonBox::Save)->setMinimumWidth(130); // bad magic number to avoid resizing of button
m_ui.saveBeforeBuildCheckBox->setVisible(false);
foreach (IFile *file, items) {
QString visibleName;
QString directory;
QString fileName = file->fileName();
if (fileName.isEmpty()) {
visibleName = file->suggestedFileName();
} else {
QFileInfo info = QFileInfo(fileName);
directory = info.absolutePath();
visibleName = info.fileName();
}
QTreeWidgetItem *item = new QTreeWidgetItem(m_ui.treeWidget, QStringList()
<< visibleName << QDir::toNativeSeparators(directory));
item->setData(0, Qt::UserRole, qVariantFromValue(file));
}
m_ui.treeWidget->resizeColumnToContents(0);
m_ui.treeWidget->selectAll();
updateSaveButton();
connect(m_ui.buttonBox->button(QDialogButtonBox::Save), SIGNAL(clicked()),
this, SLOT(collectItemsToSave()));
connect(discardButton, SIGNAL(clicked()), this, SLOT(discardAll()));
connect(m_ui.treeWidget, SIGNAL(itemSelectionChanged()), this, SLOT(updateSaveButton()));
}
void SaveItemsDialog::setMessage(const QString &msg)
{
m_ui.msgLabel->setText(msg);
}
void SaveItemsDialog::updateSaveButton()
{
int count = m_ui.treeWidget->selectedItems().count();
QPushButton *button = m_ui.buttonBox->button(QDialogButtonBox::Save);
if (count == m_ui.treeWidget->topLevelItemCount()) {
button->setEnabled(true);
button->setText(tr("Save All"));
} else if (count == 0) {
button->setEnabled(false);
button->setText(tr("Save"));
} else {
button->setEnabled(true);
button->setText(tr("Save Selected"));
}
}
void SaveItemsDialog::collectItemsToSave()
{
m_itemsToSave.clear();
foreach (QTreeWidgetItem *item, m_ui.treeWidget->selectedItems()) {
m_itemsToSave.append(item->data(0, Qt::UserRole).value<IFile*>());
}
accept();
}
void SaveItemsDialog::discardAll()
{
m_ui.treeWidget->clearSelection();
collectItemsToSave();
}
QList<IFile*> SaveItemsDialog::itemsToSave() const
{
return m_itemsToSave;
}
void SaveItemsDialog::setAlwaysSaveMessage(const QString &msg)
{
m_ui.saveBeforeBuildCheckBox->setText(msg);
m_ui.saveBeforeBuildCheckBox->setVisible(true);
}
bool SaveItemsDialog::alwaysSaveChecked()
{
return m_ui.saveBeforeBuildCheckBox->isChecked();
}

View File

@ -1,76 +0,0 @@
/**************************************************************************
**
** This file is part of Qt Creator
**
** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
**
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** Commercial Usage
**
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial License Agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Nokia.
**
** GNU Lesser General Public License Usage
**
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 as published by the Free Software
** Foundation and appearing in the file LICENSE.LGPL included in the
** packaging of this file. Please review the following information to
** ensure the GNU Lesser General Public License version 2.1 requirements
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** If you are unsure which license is appropriate for your use, please
** contact the sales department at http://qt.nokia.com/contact.
**
**************************************************************************/
#ifndef SAVEITEMSDIALOG_H
#define SAVEITEMSDIALOG_H
#include <QtCore/QMap>
#include <QtGui/QDialog>
#include "ui_saveitemsdialog.h"
QT_BEGIN_NAMESPACE
class QCheckBox;
QT_END_NAMESPACE
namespace Core {
class IFile;
namespace Internal {
class MainWindow;
class SaveItemsDialog : public QDialog
{
Q_OBJECT
public:
SaveItemsDialog(QWidget *parent,
QList<Core::IFile *> items);
void setMessage(const QString &msg);
void setAlwaysSaveMessage(const QString &msg);
bool alwaysSaveChecked();
QList<Core::IFile *> itemsToSave() const;
private slots:
void collectItemsToSave();
void discardAll();
void updateSaveButton();
private:
Ui::SaveItemsDialog m_ui;
QList<Core::IFile*> m_itemsToSave;
};
} // namespace Internal
} // namespace Core
#endif // SAVEITEMSDIALOG_H

View File

@ -1,100 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>SaveItemsDialog</class>
<widget class="QDialog" name="SaveItemsDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>457</width>
<height>200</height>
</rect>
</property>
<property name="windowTitle">
<string>Save Changes</string>
</property>
<layout class="QVBoxLayout">
<item>
<widget class="QLabel" name="msgLabel">
<property name="text">
<string>The following files have unsaved changes:</string>
</property>
</widget>
</item>
<item>
<widget class="QTreeWidget" name="treeWidget">
<property name="selectionMode">
<enum>QAbstractItemView::ExtendedSelection</enum>
</property>
<property name="textElideMode">
<enum>Qt::ElideLeft</enum>
</property>
<property name="indentation">
<number>0</number>
</property>
<property name="rootIsDecorated">
<bool>false</bool>
</property>
<property name="uniformRowHeights">
<bool>true</bool>
</property>
<property name="headerHidden">
<bool>true</bool>
</property>
<property name="columnCount">
<number>2</number>
</property>
<column>
<property name="text">
<string notr="true">1</string>
</property>
</column>
<column>
<property name="text">
<string notr="true">2</string>
</property>
</column>
</widget>
</item>
<item>
<widget class="QCheckBox" name="saveBeforeBuildCheckBox">
<property name="text">
<string>Automatically save all files before building</string>
</property>
</widget>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Save</set>
</property>
</widget>
</item>
</layout>
</widget>
<tabstops>
<tabstop>treeWidget</tabstop>
</tabstops>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>SaveItemsDialog</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>199</x>
<y>174</y>
</hint>
<hint type="destinationlabel">
<x>199</x>
<y>99</y>
</hint>
</hints>
</connection>
</connections>
</ui>

View File

@ -186,14 +186,6 @@
\see SettingsDatabase
*/
/*!
\fn QPrinter *ICore::printer() const
\brief Returns the application's printer object.
Always use this printer object for printing, so the different parts of the
application re-use its settings.
*/
/*!
\fn QString ICore::resourcePath() const
\brief Returns the absolute path that is used for resources like

View File

@ -35,7 +35,6 @@
QT_BEGIN_NAMESPACE
class QMainWindow;
class QPrinter;
class QSettings;
template <class T> class QList;
QT_END_NAMESPACE
@ -62,10 +61,6 @@ public:
static ICore *instance();
virtual QStringList showNewItemDialog(const QString &title,
const QList<IWizard *> &wizards,
const QString &defaultLocation = QString()) = 0;
virtual bool showOptionsDialog(const QString &group = QString(),
const QString &page = QString(),
QWidget *parent = 0) = 0;
@ -85,7 +80,6 @@ public:
virtual QSettings *settings() const = 0;
virtual SettingsDatabase *settingsDatabase() const = 0;
virtual QPrinter *printer() const = 0;
virtual QString resourcePath() const = 0;

View File

@ -34,7 +34,6 @@
#include <QtCore/QObject>
namespace Core {
class IEditor;
/*!
\class Core::ICoreListener
@ -66,7 +65,6 @@ public:
ICoreListener(QObject *parent = 0) : QObject(parent) {}
virtual ~ICoreListener() {}
virtual bool editorAboutToClose(IEditor * /*editor*/) { return true; }
virtual bool coreAboutToClose() { return true; }
};

View File

@ -39,7 +39,6 @@
#include "messagemanager.h"
#include "modemanager.h"
#include "mimedatabase.h"
#include "newdialog.h"
#include "outputpane.h"
#include "plugindialog.h"
#include "shortcutsettings.h"
@ -73,11 +72,9 @@
#include <QtGui/QCloseEvent>
#include <QtGui/QMenu>
#include <QtGui/QPixmap>
#include <QtGui/QPrinter>
#include <QtGui/QShortcut>
#include <QtGui/QStatusBar>
#include <QtGui/QWizard>
#include <QtGui/QPrinter>
#include <QtGui/QToolButton>
#include <QtGui/QMessageBox>
@ -111,7 +108,6 @@ MainWindow::MainWindow() :
m_settingsDatabase(new SettingsDatabase(QFileInfo(m_settings->fileName()).path(),
QLatin1String("OpenPilotGCS"),
this)),
m_printer(0),
m_actionManager(new ActionManagerPrivate(this)),
m_variableManager(new VariableManager(this)),
m_viewManager(0),
@ -200,8 +196,6 @@ MainWindow::~MainWindow()
m_generalSettings = 0;
delete m_settings;
m_settings = 0;
delete m_printer;
m_printer = 0;
delete m_uniqueIDManager;
m_uniqueIDManager = 0;
@ -628,7 +622,6 @@ void MainWindow::registerDefaultActions()
void MainWindow::newFile()
{
showNewItemDialog(tr("New...", "Title of dialog"), IWizard::allWizards());
}
void MainWindow::openFile()
@ -637,15 +630,6 @@ void MainWindow::openFile()
static QList<IFileFactory*> getNonEditorFileFactories()
{
#if 0
const QList<IFileFactory*> allFileFactories =
ExtensionSystem::PluginManager::instance()->getObjects<IFileFactory>();
QList<IFileFactory*> nonEditorFileFactories;
foreach (IFileFactory *factory, allFileFactories) {
if (!qobject_cast<IEditorFactory *>(factory))
nonEditorFileFactories.append(factory);
}
#endif
QList<IFileFactory*> tmp;
return tmp;
}
@ -685,39 +669,6 @@ void MainWindow::setFocusToEditor()
}
QStringList MainWindow::showNewItemDialog(const QString &title,
const QList<IWizard *> &wizards,
const QString &defaultLocation)
{
QString defaultDir = defaultLocation;
if (defaultDir.isEmpty())
defaultDir = Utils::PathChooser::homePath();
// Scan for wizards matching the filter and pick one. Don't show
// dialog if there is only one.
IWizard *wizard = 0;
switch (wizards.size()) {
case 0:
break;
case 1:
wizard = wizards.front();
break;
default: {
NewDialog dlg(this);
dlg.setWizards(wizards);
dlg.setWindowTitle(title);
wizard = dlg.showDialog();
}
break;
}
if (!wizard)
return QStringList();
return wizard->runWizard(defaultDir, this);
}
bool MainWindow::showOptionsDialog(const QString &category,
const QString &page,
QWidget *parent)
@ -1020,13 +971,6 @@ void MainWindow::aboutPlugins()
dialog.exec();
}
QPrinter *MainWindow::printer() const
{
if (!m_printer)
m_printer = new QPrinter(QPrinter::HighResolution);
return m_printer;
}
void MainWindow::setFullScreen(bool on)
{
if (bool(windowState() & Qt::WindowFullScreen) == on)

View File

@ -39,7 +39,6 @@
QT_BEGIN_NAMESPACE
class QSettings;
class QShortcut;
class QPrinter;
class QToolButton;
QT_END_NAMESPACE
@ -98,7 +97,6 @@ public:
inline QSettings *settings() const { return m_settings; }
inline SettingsDatabase *settingsDatabase() const { return m_settingsDatabase; }
virtual QPrinter *printer() const;
IContext * currentContextObject() const;
QStatusBar *statusBar() const;
void addAdditionalContext(int context);
@ -118,10 +116,6 @@ public slots:
void exit();
void setFullScreen(bool on);
QStringList showNewItemDialog(const QString &title,
const QList<IWizard *> &wizards,
const QString &defaultLocation = QString());
bool showOptionsDialog(const QString &category = QString(),
const QString &page = QString(),
QWidget *parent = 0);
@ -164,7 +158,6 @@ private:
QList<int> m_additionalContexts;
QSettings *m_settings;
SettingsDatabase *m_settingsDatabase;
mutable QPrinter *m_printer;
ActionManagerPrivate *m_actionManager;
MessageManager *m_messageManager;
VariableManager *m_variableManager;

View File

@ -84,21 +84,6 @@ void VariableManager::removeFileInfo(const QString &tag)
}
}
#if 0
void VariableManager::updateCurrentDocument(Core::IEditor *editor)
{
const QString currentDocumentTag = QLatin1String("CURRENT_DOCUMENT");
removeFileInfo(currentDocumentTag);
if (editor) {
if (const Core::IFile *file = editor->file()) {
const QString fileName = file->fileName();
if (!fileName.isEmpty())
insertFileInfo(currentDocumentTag, fileName);
}
}
}
#endif
QString VariableManager::value(const QString &variable) const
{
return m_map.value(variable);

View File

@ -4,7 +4,8 @@
TEMPLATE = subdirs
SUBDIRS = plugin_coreplugin \
plugin_welcome
plugin_welcome \
plugin_tutorial
# Blank Template Plugin, not compiled by default
#SUBDIRS += plugin_donothing
@ -18,3 +19,6 @@ plugin_coreplugin.subdir = coreplugin
plugin_welcome.subdir = welcome
plugin_welcome.depends = plugin_coreplugin
plugin_tutorial.subdir = tutorial
plugin_tutorial.depends = plugin_coreplugin

View File

@ -1,4 +1,4 @@
<plugin name="Welcome" version="1.3.1" compatVersion="1.3.1">
<plugin name="Welcome" version="1.0.0" compatVersion="1.0.0">
<vendor>The OpenPilot Project</vendor>
<copyright>(C) 2010 OpenPilot Project</copyright>
<license>
@ -12,6 +12,6 @@ will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.</license>
<description>Default Welcome Screen Plugin</description>
<url>http://www.openpilot.org</url>
<dependencyList>
<dependency name="Core" version="1.3.1"/>
<dependency name="Core" version="1.0.0"/>
</dependencyList>
</plugin>

View File

@ -34,7 +34,6 @@
#include <coreplugin/coreconstants.h>
#include <coreplugin/uniqueidmanager.h>
#include <coreplugin/modemanager.h>
#include <coreplugin/dialogs/newdialog.h>
#include <utils/styledbar.h>
#include <utils/welcomemodetreewidget.h>