namespace sd
{ class TemplateScanner; class TemplateEntry;
}
namespace sd::sidebar
{ /** Fill a MasterPageContainer with information about the available master pages.Theseareprovidedbyonedefaultpageandfromtheexisting Impresstemplates.Thisisdoneasynchronously.
*/ class MasterPageContainerFiller : public ::sd::tools::AsynchronousTask
{ public: class ContainerAdapter
{ public: virtual MasterPageContainer::Token
PutMasterPage(const SharedMasterPageDescriptor& rpDescriptor)
= 0; /** This method is called when all Impress templates have been added tothecontainerviathePutMasterPage()method.
*/ virtualvoid FillingDone() = 0;
/** Run the next step of the task. After HasNextStep() returns false thismethodshouldignorefurthercalls.
*/ virtualvoid RunNextStep() override;
/** Return <TRUE/> when there is at least one more step to execute. Whenthetaskhasbeenexecutedcompletelythen<FALSE/>is returned.
*/ virtualbool HasNextStep() override;
private:
ContainerAdapter& mrContainerAdapter; // Remember what the next step has to do. enum State
{
INITIALIZE_TEMPLATE_SCANNER,
SCAN_TEMPLATE,
ADD_TEMPLATE,
ERROR,
DONE
} meState;
::std::unique_ptr<TemplateScanner> mpScannerTask; const TemplateEntry* mpLastAddedEntry; int mnIndex;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.