Add texture pattern to element part

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3969 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
scorpio810
2015-05-13 06:31:16 +00:00
parent d3e043e836
commit 933cb94a3c
5 changed files with 31 additions and 3 deletions

View File

@@ -178,6 +178,10 @@ void CustomElementGraphicPart::stylesToXml(QDomElement &qde) const
else if (_filling == LightgrayFilling) css_like_styles += "lightgray"; else if (_filling == LightgrayFilling) css_like_styles += "lightgray";
else if (_filling == OrangeFilling) css_like_styles += "orange"; else if (_filling == OrangeFilling) css_like_styles += "orange";
else if (_filling == PurpleFilling) css_like_styles += "purple"; else if (_filling == PurpleFilling) css_like_styles += "purple";
else if (_filling == HorFilling) css_like_styles += "hor";
else if (_filling == VerFilling) css_like_styles += "ver";
else if (_filling == BdiagFilling) css_like_styles += "bdiag";
else if (_filling == FdiagFilling) css_like_styles += "fdiag";
css_like_styles += ";color:"; css_like_styles += ";color:";
@@ -249,6 +253,10 @@ void CustomElementGraphicPart::stylesFromXml(const QDomElement &qde)
else if (style_value == "lightgray") _filling = LightgrayFilling; else if (style_value == "lightgray") _filling = LightgrayFilling;
else if (style_value == "orange") _filling = OrangeFilling; else if (style_value == "orange") _filling = OrangeFilling;
else if (style_value == "purple") _filling = PurpleFilling; else if (style_value == "purple") _filling = PurpleFilling;
else if (style_value == "hor") _filling = HorFilling;
else if (style_value == "ver") _filling = VerFilling;
else if (style_value == "bdiag") _filling = BdiagFilling;
else if (style_value == "fdiag") _filling = FdiagFilling;
else if (style_value == "none") _filling = NoneFilling; else if (style_value == "none") _filling = NoneFilling;
} }
else if (style_name == "color") else if (style_name == "color")
@@ -313,6 +321,10 @@ void CustomElementGraphicPart::applyStylesToQPainter(QPainter &painter) const
//Apply brush color //Apply brush color
if (_filling == NoneFilling) brush.setStyle(Qt::NoBrush); if (_filling == NoneFilling) brush.setStyle(Qt::NoBrush);
else if (_filling == HorFilling) brush.setStyle(Qt::HorPattern);
else if (_filling == VerFilling) brush.setStyle(Qt::VerPattern);
else if (_filling == BdiagFilling) brush.setStyle(Qt::BDiagPattern);
else if (_filling == FdiagFilling) brush.setStyle(Qt::FDiagPattern);
else else
{ {
brush.setStyle(Qt::SolidPattern); brush.setStyle(Qt::SolidPattern);

View File

@@ -56,7 +56,7 @@ class CustomElementGraphicPart : public QGraphicsObject, public CustomElementPar
enum LineWeight {NoneWeight, ThinWeight, NormalWeight, UltraWeight, BigWeight}; enum LineWeight {NoneWeight, ThinWeight, NormalWeight, UltraWeight, BigWeight};
//Filling color of the part : NoneFilling -> No filling (i.e. transparent) //Filling color of the part : NoneFilling -> No filling (i.e. transparent)
enum Filling { NoneFilling, BlackFilling, WhiteFilling, GreenFilling, RedFilling, BlueFilling, GrayFilling, BrunFilling, YellowFilling, CyanFilling, MagentaFilling, LightgrayFilling, OrangeFilling, PurpleFilling }; enum Filling { NoneFilling, BlackFilling, WhiteFilling, GreenFilling, RedFilling, BlueFilling, GrayFilling, BrunFilling, YellowFilling, CyanFilling, MagentaFilling, LightgrayFilling, OrangeFilling, PurpleFilling, HorFilling, VerFilling, BdiagFilling, FdiagFilling};
//Line color //Line color
enum Color {BlackColor, WhiteColor, GreenColor, RedColor, BlueColor, GrayColor, BrunColor, YellowColor, CyanColor, MagentaColor, LightgrayColor, OrangeColor, PurpleColor}; enum Color {BlackColor, WhiteColor, GreenColor, RedColor, BlueColor, GrayColor, BrunColor, YellowColor, CyanColor, MagentaColor, LightgrayColor, OrangeColor, PurpleColor};

View File

@@ -76,6 +76,10 @@ StyleEditor::StyleEditor(QETElementEditor *editor, CustomElementGraphicPart *p,
filling_color -> addItem(tr("Gris clair", "element part filling"), CustomElementGraphicPart::LightgrayFilling); filling_color -> addItem(tr("Gris clair", "element part filling"), CustomElementGraphicPart::LightgrayFilling);
filling_color -> addItem(tr("Orange", "element part filling"), CustomElementGraphicPart::OrangeFilling); filling_color -> addItem(tr("Orange", "element part filling"), CustomElementGraphicPart::OrangeFilling);
filling_color -> addItem(tr("Violet", "element part filling"), CustomElementGraphicPart::PurpleFilling); filling_color -> addItem(tr("Violet", "element part filling"), CustomElementGraphicPart::PurpleFilling);
filling_color -> addItem(tr("Lignes Horizontales", "element part filling"), CustomElementGraphicPart::HorFilling);
filling_color -> addItem(tr("Lignes Verticales", "element part filling"), CustomElementGraphicPart::VerFilling);
filling_color -> addItem(tr("Hachures gauche", "element part filling"), CustomElementGraphicPart::BdiagFilling);
filling_color -> addItem(tr("Hachures droite", "element part filling"), CustomElementGraphicPart::FdiagFilling);
// antialiasing // antialiasing
antialiasing = new QCheckBox(tr("Antialiasing")); antialiasing = new QCheckBox(tr("Antialiasing"));

View File

@@ -43,9 +43,9 @@ class StyleEditor : public ElementItemEditor
QList <CustomElementGraphicPart *> m_part_list; QList <CustomElementGraphicPart *> m_part_list;
QList <CustomElementPart *> m_cep_list; QList <CustomElementPart *> m_cep_list;
QVBoxLayout *main_layout; QVBoxLayout *main_layout;
QRadioButton *black_color, *white_color, *normal_style, *dashed_style, *dashdotted_style, *dotted_style, *green_color, *red_color, *blue_color, *gray_color, *brun_color, *yellow_color, *cyan_color, *magenta_color, *gris_clair_color, orange_color, *violet_color; QRadioButton *black_color, *white_color, *normal_style, *dashed_style, *dashdotted_style, *dotted_style, *green_color, *red_color, *blue_color, *gray_color, *brun_color, *yellow_color, *cyan_color, *magenta_color, *gris_clair_color, orange_color, *violet_color, *hor_filling, *ver_filling;
QRadioButton *none_weight, *thin_weight, *normal_weight, *no_filling; QRadioButton *none_weight, *thin_weight, *normal_weight, *no_filling;
QRadioButton *black_filling, *white_filling, *green_filling, *red_filling, *blue_filling, *gray_filling, *brun_filling, *yellow_filling, *cyan_filling, *magenta_filling, *gris_clair_filling, orange_filling, *violet_filling; QRadioButton *black_filling, *white_filling, *green_filling, *red_filling, *blue_filling, *gray_filling, *brun_filling, *yellow_filling, *cyan_filling, *magenta_filling, *gris_clair_filling, orange_filling, *violet_filling, *hachures1_filling, hachures2_filling;
QCheckBox *antialiasing; QCheckBox *antialiasing;
QComboBox *filling_color, *outline_color, *size_weight, *line_style; QComboBox *filling_color, *outline_color, *size_weight, *line_style;

View File

@@ -918,6 +918,18 @@ void CustomElement::setPainterStyle(QDomElement &e, QPainter &qp) {
} else if (style_value == "purple") { } else if (style_value == "purple") {
brush.setStyle(Qt::SolidPattern); brush.setStyle(Qt::SolidPattern);
brush.setColor(QColor(136, 28, 168)); brush.setColor(QColor(136, 28, 168));
}else if (style_value == "hor") {
brush.setStyle(Qt::HorPattern);
brush.setColor(Qt::black);
} else if (style_value == "ver") {
brush.setStyle(Qt::VerPattern);
brush.setColor(Qt::black);
} else if (style_value == "bdiag") {
brush.setStyle(Qt::BDiagPattern);
brush.setColor(Qt::black);
} else if (style_value == "fdiag") {
brush.setStyle(Qt::FDiagPattern);
brush.setColor(Qt::black);
} else if (style_value == "none") { } else if (style_value == "none") {
brush.setStyle(Qt::NoBrush); brush.setStyle(Qt::NoBrush);
} }