mapeditor.cpp
changeset 260 69d648a0a15b
parent 250 0e994bf2346b
child 266 7d91b35c1b6f
     1.1 --- a/mapeditor.cpp	Thu Mar 23 12:38:54 2006 +0000
     1.2 +++ b/mapeditor.cpp	Thu Mar 23 12:38:55 2006 +0000
     1.3 @@ -219,6 +219,9 @@
     1.4  
     1.5  	blockReposition=false;
     1.6  	blockSaveState=false;
     1.7 +
     1.8 +	hidemode=HideNone;
     1.9 +
    1.10  	isInteractive=interactive;
    1.11  	if (isInteractive)
    1.12  		// Create temporary files
    1.13 @@ -1038,13 +1041,39 @@
    1.14  	return pix;
    1.15  }
    1.16  
    1.17 +void MapEditor::setHideTmpMode (HideTmpMode mode)
    1.18 +{
    1.19 +	hidemode=mode;
    1.20 +	mapCenter->setHideTmp (hidemode);
    1.21 +	mapCenter->reposition();
    1.22 +	adjustCanvasSize();
    1.23 +	canvas()->update();
    1.24 +}
    1.25 +
    1.26 +HideTmpMode MapEditor::getHideTmpMode()
    1.27 +{
    1.28 +	return hidemode;
    1.29 +}
    1.30 +
    1.31  void MapEditor::exportImage(QString fn)
    1.32  {
    1.33  	// Finish open lineEdits
    1.34  	if (lineedit) finishedLineEditNoSave();
    1.35  
    1.36 +	setExportMode (true);
    1.37  	QPixmap pix (getPixmap());
    1.38  	pix.save(fn, "PNG");
    1.39 +	setExportMode (false);
    1.40 +}
    1.41 +
    1.42 +void MapEditor::setExportMode (bool b)
    1.43 +{
    1.44 +	// should be called before and after exports
    1.45 +	// depending on the settings
    1.46 +	if (b && settings.readEntry("/vym/export/useHideExport","yes"))
    1.47 +		setHideTmpMode (HideExport);
    1.48 +	else	
    1.49 +		setHideTmpMode (HideNone);
    1.50  }
    1.51  
    1.52  void MapEditor::exportImage(QString fn, int item)
    1.53 @@ -1052,8 +1081,10 @@
    1.54  	// Finish open lineEdits
    1.55  	if (lineedit) finishedLineEditNoSave();
    1.56  
    1.57 +	setExportMode (true);
    1.58  	QPixmap pix (getPixmap());
    1.59  	pix.save(fn, exportImageFormatMenu->text(item) );
    1.60 +	setExportMode (false);
    1.61  }
    1.62  
    1.63  void MapEditor::exportOOPresentation(const QString &fn, const QString &cf)
    1.64 @@ -1061,13 +1092,21 @@
    1.65  	ExportOO ex;
    1.66  	ex.setFile (fn);
    1.67  	ex.setMapCenter(mapCenter);
    1.68 -	if (ex.setConfigFile(cf)) ex.exportPresentation();
    1.69 +	if (ex.setConfigFile(cf)) 
    1.70 +	{
    1.71 +		setExportMode (true);
    1.72 +		ex.exportPresentation();
    1.73 +		setExportMode (false);
    1.74 +	}
    1.75  }
    1.76  
    1.77  
    1.78  
    1.79  void MapEditor::exportXML(const QString &dir)
    1.80  {
    1.81 +	// Hide stuff during export, if settings want this
    1.82 +	setExportMode (true);
    1.83 +
    1.84  	// Create subdirectories
    1.85  	makeSubDirs (dir);
    1.86  
    1.87 @@ -1091,6 +1130,8 @@
    1.88  
    1.89  	// Now write image, too
    1.90  	exportImage (dir+"/images/"+mapName+".png");
    1.91 +
    1.92 +	setExportMode (false);
    1.93  }
    1.94  
    1.95  void MapEditor::clear()
    1.96 @@ -2970,15 +3011,30 @@
    1.97  void MapEditor::testFunction()
    1.98  {
    1.99  	cout << "MapEditor::testFunction() called\n";
   1.100 -	mapCenter->reposition();
   1.101 -	adjustCanvasSize();
   1.102 -
   1.103 -	/*
   1.104 -	if (selection && (typeid(*selection) == typeid(BranchObj)))
   1.105 +
   1.106 +	if (hidemode==HideNone)
   1.107  	{
   1.108 -		cout << "Note:\n"<<((BranchObj*)selection)->getNoteOpenDoc()<<endl;
   1.109 -	}
   1.110 -	*/
   1.111 +		setHideTmpMode (HideExport);
   1.112 +		mapCenter->calcBBoxSizeWithChilds();
   1.113 +		QRect totalBBox=mapCenter->getTotalBBox();
   1.114 +		QRect mapRect=totalBBox;
   1.115 +		QCanvasRectangle *frame=NULL;
   1.116 +
   1.117 +		cout << "  map has =("<<totalBBox.x()<<","<<totalBBox.y()<<","<<totalBBox.width()<<","<<totalBBox.height()<<")\n";
   1.118 +	
   1.119 +		mapRect.setRect (totalBBox.x(), totalBBox.y(), 
   1.120 +			totalBBox.width(), totalBBox.height());
   1.121 +		frame=new QCanvasRectangle (mapRect,mapCanvas);
   1.122 +		frame->setBrush (QColor(white));
   1.123 +		frame->setPen (QColor(black));
   1.124 +		frame->setZ(0);
   1.125 +		frame->show();    
   1.126 +	}	
   1.127 +	else	
   1.128 +	{
   1.129 +		setHideTmpMode (HideNone);
   1.130 +	}	
   1.131 +	cout <<"  hidemode="<<hidemode<<endl;
   1.132  }
   1.133  
   1.134  void MapEditor::ensureSelectionVisible()