diff options
Diffstat (limited to 'doc/pluginhowto/progress.qdoc')
-rw-r--r-- | doc/pluginhowto/progress.qdoc | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/doc/pluginhowto/progress.qdoc b/doc/pluginhowto/progress.qdoc deleted file mode 100644 index d65dd78f07d..00000000000 --- a/doc/pluginhowto/progress.qdoc +++ /dev/null @@ -1,111 +0,0 @@ -/*! - \page progress.html - \title 11.Showing and reacting to progress information - The progress bars give us the information about the progress status of a current task.We can find - progress bar showing up in the Qt Creator window at the left side. Whenever a task is executed - a progress bar pops up showing the progress status until the task is completed. - - \inlineimage qtc-progressbar-11.png - - \section1 11.1 Creating a progress bar - First we will declare the methods required for implementing a "Progress Bar" widget and then we will attach the widget with "Header Filter" in "Find/Replace" - and see it working according to the search progress status. - - \section2 Step 1. Modification of "HeaderFilter" class - The "HeaderFilter" class discussed in Chapter 9. is further modified. - So we will now declare the methods required for a "Progress Bar" in the following block of code. - \code - struct HeaderFilterData; - class HeaderFilter : public Find::IFindFilter - { - Q_OBJECT - public: - HeaderFilter(); - ~HeaderFilter(); - ... - QWidget *createProgressWidget(); - - private: - HeaderFilterData *d; - }; - \endcode - - Here \bold {createProgressWidget()} is not implemented from Find::IFindFilter. It is a custom function written within HeaderFilter class, - which takes up the onus of returning a progress display widget. - - \section2 Step 2. Implementation of the "HeaderFilter" class - The private member variables of the \bold {HeaderFilter} class are declared in the structure \bold {HeaderFilterData} - \code - struct HeaderFilterData - { - QFutureWatcher<FileSearchResult> watcher; - QLabel *resultLabel; - ... - ... - }; - \endcode - The \bold {constructor} and the \bold {destructor} are as follows. - \code - HeaderFilter::HeaderFilter() - { - - d = new HeaderFilterProgressData; - d->watcher.setPendingResultsLimit(1); - d->resultLabel = 0 ; - ... - } - - HeaderFilter::~HeaderFilter() - { - delete d; - } - \endcode - - The \bold {findAll()} method is further modified to create a progress bar popup the bar while searching - is going on. - \code - void HeaderFilter::findAll(const QString &text,QTextDocument::FindFlags findFlags) - { - ... - ... - ... - - //The "progress" is the instance of FutureProgress class. - //The "progress" is the pointer to the progress bar created - //Creates and shows the "progress" bar for searching task. - Core::FutureProgress *progress = - Core::ICore::instance()->progressManager()->addTask(d->watcher.future(), - "MySearch", - Find::Constants::TASK_SEARCH, - Core::ProgressManager::KeepOnFinish - ); - - progress->setWidget(createProgressWidget()); - connect(progress, SIGNAL(clicked()), d->searchResultWindow(), SLOT(popup())); - } - \endcode - - The \bold {createProgressWidget()} function creates the progress widget.It shows - the number of searched items found below and is placed below the progress bar. - \code - QWidget *HeaderFilter::createProgressWidget() - { - d->resultLabel = new QLabel; - d->resultLabel->setAlignment(Qt::AlignCenter); - QFont f = d->resultLabel->font(); - f.setBold(true); - f.setPointSizeF(StyleHelper::sidebarFontSize()); - d->resultLabel->setFont(f); - d->resultLabel->setPalette(StyleHelper::sidebarFontPalette(d->resultLabel->palette())); - d->resultLabel->setText(tr("%1 found").arg(d->searchResultWindow()->numberOfResults())); - return d->resultLabel; - } - \endcode - - \section2 Step 3.Testing the plugin. - Now its the time to test the plugin. For searching we use our "HeaderFilter" and the searched result is shown in the - "Search Results" window and the progress bar pops up while searching. - - \inlineimage qtc-searchprogress-11.png - -*/ |