mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-19 14:50:53 +01:00
Ajout de la methode Diagram::applyProperties pour appliquer des options de rendu sur un schema.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@758 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -898,6 +898,34 @@ bool Diagram::usesElement(const ElementsLocation &location) {
|
|||||||
return(false);
|
return(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Cette methode permet d'appliquer de nouvelles options de rendu tout en
|
||||||
|
accedant aux proprietes de rendu en cours.
|
||||||
|
@param new_properties Nouvelles options de rendu a appliquer
|
||||||
|
@return les options de rendu avant l'application de new_properties
|
||||||
|
*/
|
||||||
|
ExportProperties Diagram::applyProperties(const ExportProperties &new_properties) {
|
||||||
|
// exporte les options de rendu en cours
|
||||||
|
ExportProperties old_properties;
|
||||||
|
old_properties.draw_grid = displayGrid();
|
||||||
|
old_properties.draw_border = border_and_inset.borderIsDisplayed();
|
||||||
|
old_properties.draw_inset = border_and_inset.insetIsDisplayed();
|
||||||
|
old_properties.draw_terminals = drawTerminals();
|
||||||
|
old_properties.draw_colored_conductors = drawColoredConductors();
|
||||||
|
old_properties.exported_area = useBorder() ? QET::BorderArea : QET::ElementsArea;
|
||||||
|
|
||||||
|
// applique les nouvelles options de rendu
|
||||||
|
setUseBorder (new_properties.exported_area == QET::BorderArea);
|
||||||
|
setDrawTerminals (new_properties.draw_terminals);
|
||||||
|
setDrawColoredConductors (new_properties.draw_colored_conductors);
|
||||||
|
setDisplayGrid (new_properties.draw_grid);
|
||||||
|
border_and_inset.displayBorder(new_properties.draw_border);
|
||||||
|
border_and_inset.displayInset (new_properties.draw_inset);
|
||||||
|
|
||||||
|
// retourne les anciennes options de rendu
|
||||||
|
return(old_properties);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@param pos Position cartesienne (ex : 10.3, 45.2) a transformer en position
|
@param pos Position cartesienne (ex : 10.3, 45.2) a transformer en position
|
||||||
dans la grille (ex : B2)
|
dans la grille (ex : B2)
|
||||||
|
|||||||
@@ -22,6 +22,7 @@
|
|||||||
#include "borderinset.h"
|
#include "borderinset.h"
|
||||||
#include "qgimanager.h"
|
#include "qgimanager.h"
|
||||||
#include "conductorproperties.h"
|
#include "conductorproperties.h"
|
||||||
|
#include "exportproperties.h"
|
||||||
class Element;
|
class Element;
|
||||||
class CustomElement;
|
class CustomElement;
|
||||||
class Terminal;
|
class Terminal;
|
||||||
@@ -128,6 +129,7 @@ class Diagram : public QGraphicsScene {
|
|||||||
void removeDiagramTextItem(DiagramTextItem *);
|
void removeDiagramTextItem(DiagramTextItem *);
|
||||||
|
|
||||||
// fonctions relatives aux options graphiques
|
// fonctions relatives aux options graphiques
|
||||||
|
ExportProperties applyProperties(const ExportProperties &);
|
||||||
void setDisplayGrid(bool);
|
void setDisplayGrid(bool);
|
||||||
bool displayGrid();
|
bool displayGrid();
|
||||||
void setUseBorder(bool);
|
void setUseBorder(bool);
|
||||||
|
|||||||
@@ -309,38 +309,14 @@ QImage ExportDialog::generateImage(Diagram *diagram, int width, int height, bool
|
|||||||
definis par le formulaire, false pour restaurer les parametres
|
definis par le formulaire, false pour restaurer les parametres
|
||||||
*/
|
*/
|
||||||
void ExportDialog::saveReloadDiagramParameters(Diagram *diagram, bool save) {
|
void ExportDialog::saveReloadDiagramParameters(Diagram *diagram, bool save) {
|
||||||
static bool state_drawBorder;
|
static ExportProperties state_exportProperties;
|
||||||
static bool state_drawInset;
|
|
||||||
static bool state_drawGrid;
|
|
||||||
static bool state_drawTerm;
|
|
||||||
static bool state_drawColCond;
|
|
||||||
static bool state_useBorder;
|
|
||||||
|
|
||||||
if (save) {
|
if (save) {
|
||||||
// memorise les parametres relatifs au schema
|
// memorise les parametres relatifs au schema tout en appliquant les nouveaux
|
||||||
state_drawBorder = diagram -> border_and_inset.borderIsDisplayed();
|
state_exportProperties = diagram -> applyProperties(epw -> exportProperties());
|
||||||
state_drawInset = diagram -> border_and_inset.insetIsDisplayed();
|
|
||||||
state_drawGrid = diagram -> displayGrid();
|
|
||||||
state_drawTerm = diagram -> drawTerminals();
|
|
||||||
state_drawColCond = diagram -> drawColoredConductors();
|
|
||||||
state_useBorder = diagram -> useBorder();
|
|
||||||
|
|
||||||
ExportProperties export_properties = epw -> exportProperties();
|
|
||||||
|
|
||||||
diagram -> setUseBorder (export_properties.exported_area == QET::BorderArea);
|
|
||||||
diagram -> setDrawTerminals (export_properties.draw_terminals);
|
|
||||||
diagram -> setDrawColoredConductors (export_properties.draw_colored_conductors);
|
|
||||||
diagram -> setDisplayGrid (export_properties.draw_grid);
|
|
||||||
diagram -> border_and_inset.displayBorder(export_properties.draw_border);
|
|
||||||
diagram -> border_and_inset.displayInset (export_properties.draw_inset);
|
|
||||||
} else {
|
} else {
|
||||||
// restaure les parametres relatifs au schema
|
// restaure les parametres relatifs au schema
|
||||||
diagram -> border_and_inset.displayBorder(state_drawBorder);
|
diagram -> applyProperties(state_exportProperties);
|
||||||
diagram -> border_and_inset.displayInset(state_drawInset);
|
|
||||||
diagram -> setDisplayGrid(state_drawGrid);
|
|
||||||
diagram -> setDrawTerminals(state_drawTerm);
|
|
||||||
diagram -> setDrawColoredConductors(state_drawColCond);
|
|
||||||
diagram -> setUseBorder(state_useBorder);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user