[Ktutorial-commits] SF.net SVN: ktutorial:[100] trunk/ktutorial/ktutorial-library
Status: Alpha
Brought to you by:
danxuliu
From: <dan...@us...> - 2010-02-23 18:33:48
|
Revision: 100 http://ktutorial.svn.sourceforge.net/ktutorial/?rev=100&view=rev Author: danxuliu Date: 2010-02-23 18:33:39 +0000 (Tue, 23 Feb 2010) Log Message: ----------- Change the ui object in StepWidget and TutorialManagerDialog to a pointer, so ui_XXX.h files aren't included in the header file of these classes. The binary view directory no longer has to be included to find the ui_XXX.h files where the headers of these classes were used. Modified Paths: -------------- trunk/ktutorial/ktutorial-library/src/CMakeLists.txt trunk/ktutorial/ktutorial-library/src/tutorials/CMakeLists.txt trunk/ktutorial/ktutorial-library/src/view/StepWidget.cpp trunk/ktutorial/ktutorial-library/src/view/StepWidget.h trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.cpp trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.h trunk/ktutorial/ktutorial-library/test/view/StepWidgetTest.cpp trunk/ktutorial/ktutorial-library/test/view/TutorialManagerDialogTest.cpp Modified: trunk/ktutorial/ktutorial-library/src/CMakeLists.txt =================================================================== --- trunk/ktutorial/ktutorial-library/src/CMakeLists.txt 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/src/CMakeLists.txt 2010-02-23 18:33:39 UTC (rev 100) @@ -6,7 +6,7 @@ add_subdirectory(tutorials) add_subdirectory(view) -include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/view ${KDE4_INCLUDES}) +include_directories(${CMAKE_CURRENT_BINARY_DIR} ${KDE4_INCLUDES}) set(ktutorial_LIB_SRCS KTutorial.cpp @@ -25,10 +25,6 @@ kde4_add_library(ktutorial SHARED ${ktutorial_LIB_SRCS}) -# ktutorial_view must be built before, so ui_TutorialManagerDialog.h is created -# (needed in KTutorial.cpp as it includes view/TutorialManagerDialog.h) -add_dependencies(ktutorial ktutorial_view) - target_link_libraries(ktutorial ktutorial_scripting ktutorial_tutorials ktutorial_view) ####### Install the library ####### Modified: trunk/ktutorial/ktutorial-library/src/tutorials/CMakeLists.txt =================================================================== --- trunk/ktutorial/ktutorial-library/src/tutorials/CMakeLists.txt 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/src/tutorials/CMakeLists.txt 2010-02-23 18:33:39 UTC (rev 100) @@ -1,4 +1,4 @@ -include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/../view ${KDE4_INCLUDES}) +include_directories(${CMAKE_CURRENT_BINARY_DIR} ${KDE4_INCLUDES}) set(ktutorial_tutorials_SRCS UsingKTutorial.cpp Modified: trunk/ktutorial/ktutorial-library/src/view/StepWidget.cpp =================================================================== --- trunk/ktutorial/ktutorial-library/src/view/StepWidget.cpp 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/src/view/StepWidget.cpp 2010-02-23 18:33:39 UTC (rev 100) @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2008 by Daniel Calviño Sánchez * + * Copyright (C) 2008-2010 by Daniel Calviño Sánchez * * dan...@gm... * * * * This program is free software; you can redistribute it and/or modify * @@ -24,6 +24,7 @@ #include <klocalizedstring.h> #include "StepWidget.h" +#include "ui_StepWidget.h" #include "../Option.h" #include "../Step.h" @@ -38,28 +39,33 @@ setFrameShape(QFrame::Panel); setLineWidth(1); - ui.setupUi(this); + ui = new Ui::StepWidget(); + ui->setupUi(this); setWindowTitle(i18nc("@title:window", "Tutorial: %1", tutorialName)); - ui.closeButton->setIcon(KIcon("dialog-close")); + ui->closeButton->setIcon(KIcon("dialog-close")); - QSize buttonSize = ui.closeButton->size(); + QSize buttonSize = ui->closeButton->size(); buttonSize.setWidth(buttonSize.height()); // buttonSize.setWidth(ui.closeButton->iconSize().width()); // buttonSize.setHeight(ui.closeButton->iconSize().height()); - ui.closeButton->setFixedSize(buttonSize); + ui->closeButton->setFixedSize(buttonSize); - connect(ui.closeButton, SIGNAL(clicked()), this, SLOT(close())); + connect(ui->closeButton, SIGNAL(clicked()), this, SLOT(close())); - mOptionsLayout = new QHBoxLayout(ui.optionsWidget); + mOptionsLayout = new QHBoxLayout(ui->optionsWidget); } +StepWidget::~StepWidget() { + delete ui; +} + //public slots: void StepWidget::setStep(Step* step) { - ui.textLabel->setText(step->text()); + ui->textLabel->setText(step->text()); setOptions(step->options()); adjustSize(); @@ -82,7 +88,7 @@ void StepWidget::keyPressEvent(QKeyEvent* event) { if (event->modifiers() == Qt::NoModifier && event->key() == Qt::Key_Escape) { - ui.closeButton->animateClick(); + ui->closeButton->animateClick(); event->accept(); return; } else if (event->modifiers() == Qt::ShiftModifier && @@ -131,7 +137,7 @@ //private: void StepWidget::setOptions(const QList<Option*>& options) { - QList<KPushButton*> buttons = ui.optionsWidget->findChildren<KPushButton*>(); + QList<KPushButton*> buttons = ui->optionsWidget->findChildren<KPushButton*>(); QListIterator<KPushButton*> itButtons(buttons); while (itButtons.hasNext()) { KPushButton* button = itButtons.next(); @@ -143,7 +149,7 @@ while (it.hasNext()) { Option* option = it.next(); - KPushButton* button = new KPushButton(ui.optionsWidget); + KPushButton* button = new KPushButton(ui->optionsWidget); button->setText(option->name()); mOptionsLayout->addWidget(button); Modified: trunk/ktutorial/ktutorial-library/src/view/StepWidget.h =================================================================== --- trunk/ktutorial/ktutorial-library/src/view/StepWidget.h 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/src/view/StepWidget.h 2010-02-23 18:33:39 UTC (rev 100) @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2008 by Daniel Calviño Sánchez * + * Copyright (C) 2008-2010 by Daniel Calviño Sánchez * * dan...@gm... * * * * This program is free software; you can redistribute it and/or modify * @@ -22,8 +22,6 @@ #include <QFrame> #include <QList> -#include "ui_StepWidget.h" - class QCloseEvent; class QHBoxLayout; class QKeyEvent; @@ -33,6 +31,10 @@ class Option; class Step; +namespace Ui { +class StepWidget; +} + namespace view { /** @@ -62,6 +64,11 @@ */ explicit StepWidget(const QString& tutorialName, QWidget* parent = 0); + /** + * Destroys this StepWidget. + */ + virtual ~StepWidget(); + public slots: /** @@ -166,7 +173,7 @@ /** * The user interface elements. */ - Ui::StepWidget ui; + Ui::StepWidget* ui; /** * The layout where buttons for Options are added. Modified: trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.cpp =================================================================== --- trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.cpp 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.cpp 2010-02-23 18:33:39 UTC (rev 100) @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2008 by Daniel Calviño Sánchez * + * Copyright (C) 2008-2010 by Daniel Calviño Sánchez * * dan...@gm... * * * * This program is free software; you can redistribute it and/or modify * @@ -18,6 +18,7 @@ #include "TutorialManagerDialog.h" #include "TutorialListModel.h" +#include "ui_TutorialManagerDialog.h" #include "../TutorialInformation.h" #include "../TutorialManager.h" @@ -32,14 +33,15 @@ mCurrentTutorialInformation(0) { QWidget *widget = new QWidget(this); - ui.setupUi(widget); + ui = new Ui::TutorialManagerDialog(); + ui->setupUi(widget); setMainWidget(widget); setCaption(i18nc("@title:window", "Tutorial manager")); setButtons(KDialog::User1 | KDialog::Close); - ui.tutorialsList->setModel(new TutorialListModel(tutorialManager, this)); + ui->tutorialsList->setModel(new TutorialListModel(tutorialManager, this)); setButtonIcon(User1, KIcon("dialog-ok")); setButtonText(User1, i18nc("@action:button", "Start")); @@ -48,7 +50,7 @@ setDefaultButton(User1); enableButton(User1, false); - connect(ui.tutorialsList->selectionModel(), + connect(ui->tutorialsList->selectionModel(), SIGNAL(selectionChanged(QItemSelection, QItemSelection)), this, SLOT(select(QItemSelection))); connect(this, SIGNAL(user1Clicked()), this, SLOT(start())); @@ -56,6 +58,10 @@ connect(mTutorialManager, SIGNAL(finished()), this, SLOT(finish())); } +TutorialManagerDialog::~TutorialManagerDialog() { + delete ui; +} + //public slots: void TutorialManagerDialog::finish() { @@ -71,7 +77,7 @@ enableButton(User1, true); - ui.descriptionLabel->setText(tutorialInformation->description()); + ui->descriptionLabel->setText(tutorialInformation->description()); mCurrentTutorialInformation = tutorialInformation; } Modified: trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.h =================================================================== --- trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.h 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/src/view/TutorialManagerDialog.h 2010-02-23 18:33:39 UTC (rev 100) @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2008 by Daniel Calviño Sánchez * + * Copyright (C) 2008-2010 by Daniel Calviño Sánchez * * dan...@gm... * * * * This program is free software; you can redistribute it and/or modify * @@ -19,14 +19,18 @@ #ifndef VIEW_TUTORIALMANAGERDIALOG_H #define VIEW_TUTORIALMANAGERDIALOG_H +#include <QItemSelection> + #include <kdialog.h> #include <klocalizedstring.h> -#include "ui_TutorialManagerDialog.h" - class TutorialInformation; class TutorialManager; +namespace Ui { +class TutorialManagerDialog; +} + namespace view { /** @@ -53,6 +57,11 @@ explicit TutorialManagerDialog(TutorialManager* tutorialManager, QWidget* parent = 0); + /** + * Destroys this TutorialManagerDialog. + */ + virtual ~TutorialManagerDialog(); + public slots: /** @@ -71,7 +80,7 @@ /** * The user interface elements. */ - Ui::TutorialManagerDialog ui; + Ui::TutorialManagerDialog* ui; /** * The TutorialInformation of the last activated tutorial in the list. Modified: trunk/ktutorial/ktutorial-library/test/view/StepWidgetTest.cpp =================================================================== --- trunk/ktutorial/ktutorial-library/test/view/StepWidgetTest.cpp 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/test/view/StepWidgetTest.cpp 2010-02-23 18:33:39 UTC (rev 100) @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2009 by Daniel Calviño Sánchez * + * Copyright (C) 2009-2010 by Daniel Calviño Sánchez * * dan...@gm... * * * * This program is free software; you can redistribute it and/or modify * @@ -27,6 +27,7 @@ #undef private #undef protected +#include "ui_StepWidget.h" #include "../Option.h" #include "../Step.h" @@ -312,11 +313,11 @@ /////////////////////////////////// Helpers //////////////////////////////////// QLabel* StepWidgetTest::textLabel(StepWidget* stepWidget) { - return stepWidget->ui.textLabel; + return stepWidget->ui->textLabel; } KPushButton* StepWidgetTest::closeButton(StepWidget* stepWidget) { - return stepWidget->ui.closeButton; + return stepWidget->ui->closeButton; } } Modified: trunk/ktutorial/ktutorial-library/test/view/TutorialManagerDialogTest.cpp =================================================================== --- trunk/ktutorial/ktutorial-library/test/view/TutorialManagerDialogTest.cpp 2010-02-23 17:44:42 UTC (rev 99) +++ trunk/ktutorial/ktutorial-library/test/view/TutorialManagerDialogTest.cpp 2010-02-23 18:33:39 UTC (rev 100) @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2009 by Daniel Calviño Sánchez * + * Copyright (C) 2009-2010 by Daniel Calviño Sánchez * * dan...@gm... * * * * This program is free software; you can redistribute it and/or modify * @@ -27,6 +27,7 @@ #undef private #undef protected +#include "ui_TutorialManagerDialog.h" #include "../Step.h" #include "../Tutorial.h" #include "../TutorialInformation.h" @@ -312,12 +313,12 @@ QAbstractItemView* TutorialManagerDialogTest::tutorialList( TutorialManagerDialog* tutorialManagerDialog) { - return tutorialManagerDialog->ui.tutorialsList; + return tutorialManagerDialog->ui->tutorialsList; } QLabel* TutorialManagerDialogTest::descriptionLabel( TutorialManagerDialog* tutorialManagerDialog) { - return tutorialManagerDialog->ui.descriptionLabel; + return tutorialManagerDialog->ui->descriptionLabel; } KPushButton* TutorialManagerDialogTest::startButton( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |