diff -r 1b4d1ea6ea8c -r 54d44ecd6097 xml-vym.cpp --- a/xml-vym.cpp Fri Mar 06 15:02:58 2009 +0000 +++ b/xml-vym.cpp Thu Mar 19 11:45:28 2009 +0000 @@ -9,12 +9,14 @@ #include "misc.h" #include "settings.h" #include "linkablemapobj.h" +#include "mainwindow.h" #include "version.h" static BranchObj *lastBranch; static FloatObj *lastFloat; static OrnamentedObj *lastOO; +extern Main *mainWindow; extern Settings settings; extern QString vymVersion; @@ -46,6 +48,7 @@ if ( state == StateInit && (eName == "vymmap") ) { state = StateMap; + branchesTotal=branchesCurrent=0; if (loadMode==NewMap ) { @@ -57,6 +60,23 @@ model->setAuthor(atts.value( "author" ) ); if (!atts.value( "comment").isEmpty() ) model->setComment (atts.value( "comment" ) ); + if (!atts.value( "countBranches").isEmpty() ) + { + branchesTotal=atts.value("countBranches").toInt(); + if (branchesTotal>10) + { + mainWindow->setProgressMinimum (0); + mainWindow->setProgressMaximum (branchesTotal); + mainWindow->setProgressValue(0); + } + } else + { + mainWindow->setProgressMinimum (0); + mainWindow->setProgressMaximum (0); + mainWindow->setProgressValue(0); + } + + if (!atts.value( "backgroundColor").isEmpty() ) { col.setNamedColor(atts.value("backgroundColor")); @@ -264,6 +284,9 @@ */ switch ( state ) { + case StateMap: + mainWindow->removeProgressBar(); + break; case StateBranch: model->selectParent(); lastBranch=model->getSelectedBranch(); @@ -330,6 +353,8 @@ bool parseVYMHandler::readBranchAttr (const QXmlAttributes& a) { + branchesCurrent++; + mainWindow->setProgressValue (branchesCurrent); lastOO=lastBranch; if (!readOOAttr(a)) return false;