xml-vym.cpp
changeset 742 54d44ecd6097
parent 741 1b4d1ea6ea8c
child 746 ee6b0f3a4c2f
     1.1 --- a/xml-vym.cpp	Fri Mar 06 15:02:58 2009 +0000
     1.2 +++ b/xml-vym.cpp	Thu Mar 19 11:45:28 2009 +0000
     1.3 @@ -9,12 +9,14 @@
     1.4  #include "misc.h"
     1.5  #include "settings.h"
     1.6  #include "linkablemapobj.h"
     1.7 +#include "mainwindow.h"
     1.8  #include "version.h"
     1.9  
    1.10  static BranchObj *lastBranch;
    1.11  static FloatObj *lastFloat;
    1.12  static OrnamentedObj *lastOO;
    1.13  
    1.14 +extern Main *mainWindow;
    1.15  extern Settings settings;
    1.16  extern QString vymVersion;
    1.17  
    1.18 @@ -46,6 +48,7 @@
    1.19      if ( state == StateInit && (eName == "vymmap")  ) 
    1.20  	{
    1.21          state = StateMap;
    1.22 +		branchesTotal=branchesCurrent=0;
    1.23  
    1.24  		if (loadMode==NewMap )
    1.25  		{
    1.26 @@ -57,6 +60,23 @@
    1.27  				model->setAuthor(atts.value( "author" ) );
    1.28  			if (!atts.value( "comment").isEmpty() )
    1.29  				model->setComment (atts.value( "comment" ) );
    1.30 +			if (!atts.value( "countBranches").isEmpty() )
    1.31 +			{
    1.32 +				branchesTotal=atts.value("countBranches").toInt();
    1.33 +				if (branchesTotal>10)
    1.34 +				{
    1.35 +					mainWindow->setProgressMinimum (0);
    1.36 +					mainWindow->setProgressMaximum (branchesTotal);
    1.37 +					mainWindow->setProgressValue(0);
    1.38 +				}
    1.39 +			} else
    1.40 +			{
    1.41 +				mainWindow->setProgressMinimum (0);
    1.42 +				mainWindow->setProgressMaximum (0);
    1.43 +				mainWindow->setProgressValue(0);
    1.44 +			}
    1.45 +
    1.46 +				
    1.47  			if (!atts.value( "backgroundColor").isEmpty() )
    1.48  			{
    1.49  				col.setNamedColor(atts.value("backgroundColor"));
    1.50 @@ -264,6 +284,9 @@
    1.51  	*/
    1.52      switch ( state ) 
    1.53  	{
    1.54 +		case StateMap:
    1.55 +			mainWindow->removeProgressBar();
    1.56 +			break;
    1.57          case StateBranch: 
    1.58  			model->selectParent();
    1.59  			lastBranch=model->getSelectedBranch();
    1.60 @@ -330,6 +353,8 @@
    1.61  
    1.62  bool parseVYMHandler::readBranchAttr (const QXmlAttributes& a)
    1.63  {
    1.64 +	branchesCurrent++;
    1.65 +	mainWindow->setProgressValue (branchesCurrent);
    1.66  	lastOO=lastBranch;
    1.67  	if (!readOOAttr(a)) return false;
    1.68