29 m_widget =
new Ui_WdgPatternOptions();
31 m_widget->lblPattern->setVisible(
false);
33 m_widget->sldShearX->setRange(-500, 500, 2);
34 m_widget->sldShearX->setSoftRange(-100, 100);
35 m_widget->sldShearX->setSingleStep(1);
37 m_widget->sldShearY->setRange(-500, 500, 2);
38 m_widget->sldShearY->setSoftRange(-100, 100);
39 m_widget->sldShearY->setSingleStep(1);
42 m_widget->spbOffsetX->setRange(-10000, 10000);
43 m_widget->spbOffsetX->setSoftRange(-500, 500);
45 m_widget->spbOffsetY->setRange(-10000, 10000);
46 m_widget->spbOffsetY->setSoftRange(-500, 500);
49 m_widget->spbScaleWidth->setRange(0, 10000, 2);
50 m_widget->spbScaleWidth->setSoftRange(0, 500);
51 m_widget->spbScaleWidth->setValue(100.0);
52 m_widget->spbScaleHeight->setRange(0, 10000, 2);
53 m_widget->spbScaleHeight->setSoftRange(0, 500);
54 m_widget->spbScaleHeight->setValue(100.0);
56 m_widget->angleSelectorRotationX->setPrefix(i18n(
"X: "));
57 m_widget->angleSelectorRotationY->setPrefix(i18n(
"Y: "));
60 m_widget->container3DRotation->setVisible(
false);
62 m_widget->sliderAlignToPixelGridX->setRange(1, 20);
63 m_widget->sliderAlignToPixelGridY->setRange(1, 20);
68 return i18ncp(
"Horizontal pixel grid alignment prefix/suffix for spinboxes in pattern generator",
"Every {n} repetition horizontally",
"Every {n} repetitions horizontally", value);
74 return i18ncp(
"Vertical pixel grid alignment prefix/suffix for spinboxes in pattern generator",
"Every {n} repetition vertically",
"Every {n} repetitions vertically", value);
116 QString md5sum = config->getString(
"md5sum");
117 QString patternName = config->getString(
"pattern",
"Grid01.pat");
119 widget()->patternChooser->setCurrentPattern(pattern ? pattern :
source.fallbackResource());
120 m_widget->spbOffsetX->setValue(config->getInt(
"transform_offset_x", 0));
121 m_widget->spbOffsetY->setValue(config->getInt(
"transform_offset_y", 0));
123 m_widget->spbScaleWidth->setValue(config->getDouble(
"transform_scale_x", 1.0) * 100);
124 m_widget->spbScaleHeight->setValue(config->getDouble(
"transform_scale_y", 1.0) * 100);
125 m_widget->btnLockAspectRatio->setKeepAspectRatio(config->getBool(
"transform_keep_scale_aspect",
true));
127 m_widget->sldShearX->setValue(config->getDouble(
"transform_shear_x", 0.0) * 100);
128 m_widget->sldShearY->setValue(config->getDouble(
"transform_shear_y", 0.0) * 100);
130 widget()->angleSelectorRotationX->setAngle(config->getDouble(
"transform_rotation_x", 0.0));
131 widget()->angleSelectorRotationY->setAngle(config->getDouble(
"transform_rotation_y", 0.0));
132 widget()->angleSelectorRotationZ->setAngle(config->getDouble(
"transform_rotation_z", 0.0));
134 m_widget->checkBoxAlignToPixelGrid->setChecked(config->getBool(
"transform_align_to_pixel_grid",
false));
135 m_widget->sliderAlignToPixelGridX->setValue(config->getInt(
"transform_align_to_pixel_grid_x", 1));
136 m_widget->sliderAlignToPixelGridY->setValue(config->getInt(
"transform_align_to_pixel_grid_y", 1));
149 config->setProperty(
"pattern", pattern->name());
150 config->setProperty(
"md5sum", pattern->md5Sum());
151 config->setProperty(
"fileName", pattern->filename());
154 config->setProperty(
"transform_offset_x",
m_widget->spbOffsetX->value());
155 config->setProperty(
"transform_offset_y",
m_widget->spbOffsetY->value());
157 config->setProperty(
"transform_scale_x",
m_widget->spbScaleWidth->value() / 100);
158 config->setProperty(
"transform_scale_y",
m_widget->spbScaleHeight->value() / 100);
160 config->setProperty(
"transform_keep_scale_aspect",
m_widget->btnLockAspectRatio->keepAspectRatio());
162 config->setProperty(
"transform_shear_x",
widget()->sldShearX->value() / 100);
163 config->setProperty(
"transform_shear_y",
widget()->sldShearY->value() / 100);
165 config->setProperty(
"transform_rotation_x",
widget()->angleSelectorRotationX->angle());
166 config->setProperty(
"transform_rotation_y",
widget()->angleSelectorRotationY->angle());
167 config->setProperty(
"transform_rotation_z",
widget()->angleSelectorRotationZ->angle());
169 config->setProperty(
"transform_align_to_pixel_grid",
m_widget->checkBoxAlignToPixelGrid->isChecked());
170 config->setProperty(
"transform_align_to_pixel_grid_x",
m_widget->sliderAlignToPixelGridX->value());
171 config->setProperty(
"transform_align_to_pixel_grid_y",
m_widget->sliderAlignToPixelGridY->value());