mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-19 14:50:53 +01:00
Il est desormais possible de ne pas conserver les couleurs des conducteurs lors de l'export d'un schema.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@756 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -452,7 +452,16 @@ void Conductor::paint(QPainter *qp, const QStyleOptionGraphicsItem *options, QWi
|
||||
qp -> setRenderHint(QPainter::Antialiasing, false);
|
||||
|
||||
// determine la couleur du conducteur
|
||||
QColor final_conductor_color = isSelected() ? Qt::red : properties_.color;
|
||||
QColor final_conductor_color(properties_.color);
|
||||
if (isSelected()) {
|
||||
final_conductor_color = Qt::red;
|
||||
} else {
|
||||
if (Diagram *parent_diagram = diagram()) {
|
||||
if (!parent_diagram -> drawColoredConductors()) {
|
||||
final_conductor_color = Qt::black;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// affectation du QPen et de la QBrush modifies au QPainter
|
||||
qp -> setBrush(conductor_brush);
|
||||
|
||||
@@ -41,6 +41,7 @@ Diagram::Diagram(QObject *parent) :
|
||||
use_border(true),
|
||||
moved_elements_fetched(false),
|
||||
draw_terminals(true),
|
||||
draw_colored_conductors_(true),
|
||||
project_(0),
|
||||
read_only_(false)
|
||||
{
|
||||
@@ -927,6 +928,15 @@ void Diagram::setDrawTerminals(bool dt) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Definit s'il faut respecter ou non les couleurs des conducteurs.
|
||||
Si non, les conducteurs sont tous dessines en noir.
|
||||
@param dcc true pour respecter les couleurs, false sinon
|
||||
*/
|
||||
void Diagram::setDrawColoredConductors(bool dcc) {
|
||||
draw_colored_conductors_ = dcc;
|
||||
}
|
||||
|
||||
/**
|
||||
@return la liste des conducteurs selectionnes sur le schema
|
||||
*/
|
||||
|
||||
@@ -81,6 +81,7 @@ class Diagram : public QGraphicsScene {
|
||||
QGIManager *qgi_manager;
|
||||
QUndoStack *undo_stack;
|
||||
bool draw_terminals;
|
||||
bool draw_colored_conductors_;
|
||||
QDomDocument xml_document;
|
||||
QETProject *project_;
|
||||
bool read_only_;
|
||||
@@ -137,6 +138,8 @@ class Diagram : public QGraphicsScene {
|
||||
|
||||
bool drawTerminals() const;
|
||||
void setDrawTerminals(bool);
|
||||
bool drawColoredConductors() const;
|
||||
void setDrawColoredConductors(bool);
|
||||
|
||||
QRectF border() const;
|
||||
QString title() const;
|
||||
@@ -300,4 +303,9 @@ inline bool Diagram::drawTerminals() const {
|
||||
return(draw_terminals);
|
||||
}
|
||||
|
||||
/// @return true si les couleurs des conducteurs sont respectees, false sinon
|
||||
inline bool Diagram::drawColoredConductors() const {
|
||||
return(draw_colored_conductors_);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -313,6 +313,7 @@ void ExportDialog::saveReloadDiagramParameters(Diagram *diagram, bool save) {
|
||||
static bool state_drawInset;
|
||||
static bool state_drawGrid;
|
||||
static bool state_drawTerm;
|
||||
static bool state_drawColCond;
|
||||
static bool state_useBorder;
|
||||
|
||||
if (save) {
|
||||
@@ -321,12 +322,14 @@ void ExportDialog::saveReloadDiagramParameters(Diagram *diagram, bool save) {
|
||||
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);
|
||||
@@ -336,6 +339,7 @@ void ExportDialog::saveReloadDiagramParameters(Diagram *diagram, bool save) {
|
||||
diagram -> border_and_inset.displayInset(state_drawInset);
|
||||
diagram -> setDisplayGrid(state_drawGrid);
|
||||
diagram -> setDrawTerminals(state_drawTerm);
|
||||
diagram -> setDrawColoredConductors(state_drawColCond);
|
||||
diagram -> setUseBorder(state_useBorder);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ ExportProperties::ExportProperties() :
|
||||
draw_border(true),
|
||||
draw_inset(true),
|
||||
draw_terminals(false),
|
||||
draw_colored_conductors(true),
|
||||
exported_area(QET::BorderArea)
|
||||
{
|
||||
}
|
||||
@@ -55,6 +56,7 @@ void ExportProperties::toSettings(QSettings &settings, const QString &prefix) co
|
||||
settings.setValue(prefix + "drawborder", draw_border);
|
||||
settings.setValue(prefix + "drawinset", draw_inset);
|
||||
settings.setValue(prefix + "drawterminals", draw_terminals);
|
||||
settings.setValue(prefix + "drawcoloredconductors", draw_colored_conductors);
|
||||
settings.setValue(prefix + "area", QET::diagramAreaToString(exported_area));
|
||||
}
|
||||
|
||||
@@ -74,6 +76,7 @@ void ExportProperties::fromSettings(QSettings &settings, const QString &prefix)
|
||||
draw_border = settings.value(prefix + "drawborder", true ).toBool();
|
||||
draw_inset = settings.value(prefix + "drawinset", true ).toBool();
|
||||
draw_terminals = settings.value(prefix + "drawterminals", false).toBool();
|
||||
draw_colored_conductors = settings.value(prefix + "drawcoloredconductors", true ).toBool();
|
||||
|
||||
exported_area = QET::diagramAreaFromString(settings.value(prefix + "area", "border").toString());
|
||||
}
|
||||
|
||||
@@ -43,6 +43,7 @@ class ExportProperties {
|
||||
bool draw_border; ///< Faut-il dessiner le cadre ?
|
||||
bool draw_inset; ///< Faut-il dessiner le cartouche ?
|
||||
bool draw_terminals; ///< Faut-il dessiner les bornes ?
|
||||
bool draw_colored_conductors; ///< Faut-il respecter les couleurs des conducteurs ?
|
||||
QET::DiagramArea exported_area; ///< Zone du schema a exporter
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -52,6 +52,7 @@ ExportProperties ExportPropertiesWidget::exportProperties() const {
|
||||
export_properties.draw_border = draw_border -> isChecked();
|
||||
export_properties.draw_inset = draw_inset -> isChecked();
|
||||
export_properties.draw_terminals = draw_terminals -> isChecked();
|
||||
export_properties.draw_colored_conductors = draw_colored_conductors -> isChecked();
|
||||
export_properties.exported_area = export_border -> isChecked() ? QET::BorderArea : QET::ElementsArea;
|
||||
|
||||
return(export_properties);
|
||||
@@ -71,6 +72,7 @@ void ExportPropertiesWidget::setExportProperties(const ExportProperties &export_
|
||||
draw_border -> setChecked(export_properties.draw_border);
|
||||
draw_inset -> setChecked(export_properties.draw_inset);
|
||||
draw_terminals -> setChecked(export_properties.draw_terminals);
|
||||
draw_colored_conductors -> setChecked(export_properties.draw_colored_conductors);
|
||||
|
||||
if (export_properties.exported_area == QET::BorderArea) {
|
||||
export_border -> setChecked(true);
|
||||
@@ -157,6 +159,10 @@ void ExportPropertiesWidget::build() {
|
||||
draw_terminals = new QCheckBox(tr("Dessiner les bornes"), groupbox_options);
|
||||
optionshlayout -> addWidget(draw_terminals, 2, 1);
|
||||
|
||||
// conserver les couleurs des conducteurs
|
||||
draw_colored_conductors = new QCheckBox(tr("Conserver les couleurs des conducteurs"), groupbox_options);
|
||||
optionshlayout -> addWidget(draw_colored_conductors, 3, 0);
|
||||
|
||||
vboxLayout -> addWidget(groupbox_options);
|
||||
vboxLayout -> addStretch();
|
||||
|
||||
@@ -170,6 +176,7 @@ void ExportPropertiesWidget::build() {
|
||||
setTabOrder(draw_border, draw_grid);
|
||||
setTabOrder(draw_grid, draw_inset);
|
||||
setTabOrder(draw_inset, draw_terminals);
|
||||
setTabOrder(draw_terminals, draw_colored_conductors);
|
||||
|
||||
// connexion du bouton permettant le choix du repertoire
|
||||
connect(button_browse, SIGNAL(released()), this, SLOT(slot_chooseADirectory()));
|
||||
|
||||
@@ -59,6 +59,7 @@ class ExportPropertiesWidget : public QWidget {
|
||||
QCheckBox *draw_border;
|
||||
QCheckBox *draw_inset;
|
||||
QCheckBox *draw_terminals;
|
||||
QCheckBox *draw_colored_conductors;
|
||||
QRadioButton *export_border;
|
||||
QRadioButton *export_elements;
|
||||
QButtonGroup *exported_content_choices;
|
||||
|
||||
Reference in New Issue
Block a user