Make IProjectPanelFactory a value based class

Change-Id: I40f9411f305ab7764b904306bbccd45887dc7432
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
Daniel Teske
2014-07-11 15:20:06 +02:00
parent 96d9f05fad
commit a58325578c
16 changed files with 170 additions and 200 deletions

View File

@@ -54,7 +54,12 @@ bool ClangCodeModelPlugin::initialize(const QStringList &arguments, QString *err
Q_UNUSED(arguments)
Q_UNUSED(errorMessage)
addAutoReleasedObject(new ClangProjectSettingsPanelFactory);
auto panelFactory = new ProjectExplorer::IProjectPanelFactory();
panelFactory->setPriority(60);
panelFactory->setDisplayName(ClangProjectSettingsWidget::tr("Clang Settings"));
panelFactory->setSimpleCreatePanelFunction<ClangProjectSettingsWidget>(QIcon());
addAutoReleasedObject(panelFactory);
ClangCodeModel::Internal::initializeClang();

View File

@@ -38,31 +38,6 @@
using namespace ProjectExplorer;
using namespace ClangCodeModel::Internal;
QString ClangProjectSettingsPanelFactory::displayName() const
{
return ClangProjectSettingsWidget::tr("Clang Settings");
}
int ClangProjectSettingsPanelFactory::priority() const
{
return 60;
}
bool ClangProjectSettingsPanelFactory::supports(Project *project)
{
Q_UNUSED(project);
return true;
}
PropertiesPanel *ClangProjectSettingsPanelFactory::createPanel(Project *project)
{
PropertiesPanel *panel = new PropertiesPanel;
panel->setDisplayName(ClangProjectSettingsWidget::tr("Clang Settings"));
panel->setWidget(new ClangProjectSettingsWidget(project));
return panel;
}
ClangProjectSettingsWidget::ClangProjectSettingsWidget(Project *project)
: m_project(project)
{

View File

@@ -39,15 +39,6 @@
namespace ClangCodeModel {
namespace Internal {
class ClangProjectSettingsPanelFactory: public ProjectExplorer::IProjectPanelFactory
{
public:
QString displayName() const;
int priority() const;
bool supports(ProjectExplorer::Project *project);
ProjectExplorer::PropertiesPanel *createPanel(ProjectExplorer::Project *project);
};
class ClangProjectSettingsWidget: public QWidget
{
Q_OBJECT