summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2015-03-08 15:30:33 +0000
committerJabiertxof <jtx@jtx.marker.es>2015-03-08 15:30:33 +0000
commit4c1951cc43deafcc0131ba6a0878b4f371651f68 (patch)
tree4780e949d3637f39db64176a33a0460266f62b30 /src
parentupdate to trunk and fixed helper paths (diff)
downloadinkscape-4c1951cc43deafcc0131ba6a0878b4f371651f68.tar.gz
inkscape-4c1951cc43deafcc0131ba6a0878b4f371651f68.zip
merged anf fixed from trunk
(bzr r13645.1.39)
Diffstat (limited to 'src')
-rw-r--r--src/live_effects/lpe-fillet-chamfer.cpp84
-rw-r--r--src/live_effects/lpe-fillet-chamfer.h2
-rw-r--r--src/live_effects/parameter/satellitepairarray.cpp2
-rw-r--r--src/live_effects/parameter/satellitepairarray.h4
-rw-r--r--src/ui/dialog/lpe-fillet-chamfer-properties.cpp10
5 files changed, 15 insertions, 87 deletions
diff --git a/src/live_effects/lpe-fillet-chamfer.cpp b/src/live_effects/lpe-fillet-chamfer.cpp
index 0140f9be9..36dd599d4 100644
--- a/src/live_effects/lpe-fillet-chamfer.cpp
+++ b/src/live_effects/lpe-fillet-chamfer.cpp
@@ -57,7 +57,7 @@ LPEFilletChamfer::LPEFilletChamfer(LivePathEffectObject *lpeobject) :
use_knot_distance(_("Use knots distance instead radius"), _("Use knots distance instead radius"), "use_knot_distance", &wr, this, false),
hide_knots(_("Hide knots"), _("Hide knots"), "hide_knots", &wr, this, false),
ignore_radius_0(_("Ignore 0 radius knots"), _("Ignore 0 radius knots"), "ignore_radius_0", &wr, this, false),
- helper(_("Show helper lines"), _("Show helper lines"), "helper", &wr, this, false),
+ helper_size(_("Helper size with direction:"), _("Helper size with direction"), "helper_size", &wr, this, 0),
pointwise()
{
registerParameter(&satellitepairarrayparam_values);
@@ -65,13 +65,13 @@ LPEFilletChamfer::LPEFilletChamfer(LivePathEffectObject *lpeobject) :
registerParameter(&method);
registerParameter(&radius);
registerParameter(&chamfer_steps);
+ registerParameter(&helper_size);
registerParameter(&flexible);
registerParameter(&use_knot_distance);
registerParameter(&mirror_knots);
registerParameter(&ignore_radius_0);
registerParameter(&only_selected);
registerParameter(&hide_knots);
- registerParameter(&helper);
radius.param_set_range(0., infinity());
radius.param_set_increments(1, 1);
@@ -79,6 +79,9 @@ LPEFilletChamfer::LPEFilletChamfer(LivePathEffectObject *lpeobject) :
chamfer_steps.param_set_range(1, 999);
chamfer_steps.param_set_increments(1, 1);
chamfer_steps.param_set_digits(0);
+ helper_size.param_set_range(0, 999);
+ helper_size.param_set_increments(5, 5);
+ helper_size.param_set_digits(0);
}
LPEFilletChamfer::~LPEFilletChamfer() {}
@@ -190,6 +193,9 @@ Gtk::Widget *LPEFilletChamfer::newWidget()
Gtk::Entry *entryWidg = dynamic_cast<Gtk::Entry *>(childList[1]);
entryWidg->set_width_chars(3);
}
+ } else if (param->param_key == "helper_size") {
+ Inkscape::UI::Widget::Scalar *widgRegistered = Gtk::manage(dynamic_cast<Inkscape::UI::Widget::Scalar *>(widg));
+ widgRegistered->signal_value_changed().connect(sigc::mem_fun(*this, &LPEFilletChamfer::refreshKnots));
} else if (param->param_key == "only_selected") {
Gtk::manage(widg);
}
@@ -231,60 +237,6 @@ Gtk::Widget *LPEFilletChamfer::newWidget()
return vbox;
}
-void LPEFilletChamfer::toggleHide()
-{
- std::vector<Point> filletChamferData = fillet_chamfer_values.data();
- std::vector<Geom::Point> result;
- for (std::vector<Point>::const_iterator point_it = filletChamferData.begin();
- point_it != filletChamferData.end(); ++point_it) {
- if (hide_knots) {
- result.push_back(Point((*point_it)[X], std::abs((*point_it)[Y]) * -1));
- } else {
- result.push_back(Point((*point_it)[X], std::abs((*point_it)[Y])));
- }
- }
- fillet_chamfer_values.param_set_and_write_new_value(result);
- refreshKnots();
-}
-
-void LPEFilletChamfer::toggleFlexFixed()
-{
- std::vector<Point> filletChamferData = fillet_chamfer_values.data();
- std::vector<Geom::Point> result;
- unsigned int i = 0;
- for (std::vector<Point>::const_iterator point_it = filletChamferData.begin();
- point_it != filletChamferData.end(); ++point_it) {
- if (flexible) {
- result.push_back(Point(fillet_chamfer_values.to_time(i, (*point_it)[X]),
- (*point_it)[Y]));
- } else {
- result.push_back(Point(fillet_chamfer_values.to_len(i, (*point_it)[X]),
- (*point_it)[Y]));
- }
- i++;
- }
- if (flexible) {
- radius.param_set_range(0., 100);
- radius.param_set_value(0);
- } else {
- radius.param_set_range(0., infinity());
- radius.param_set_value(0);
- }
- fillet_chamfer_values.param_set_and_write_new_value(result);
-}
-
-void LPEFilletChamfer::updateFillet()
-{
- double power = 0;
- if (!flexible) {
- power = Inkscape::Util::Quantity::convert(radius, unit.get_abbreviation(), defaultUnit) * -1;
- } else {
- power = radius;
- }
- Piecewise<D2<SBasis> > const &pwd2 = fillet_chamfer_values.get_pwd2();
- doUpdateFillet(path_from_piecewise(pwd2, tolerance), power);
-}
->>>>>>> MERGE-SOURCE
void LPEFilletChamfer::fillet()
{
@@ -422,26 +374,10 @@ void LPEFilletChamfer::doBeforeEffect(SPLPEItem const *lpeItem)
//mandatory call
satellitepairarrayparam_values.set_pointwise(pointwise);
//optional call
- if(hide_knots || !helper){
+ if(hide_knots){
satellitepairarrayparam_values.set_helper_size(0);
} else {
- double radiusHelperNodes = 12.0;
- if(current_zoom != 0){
- if(current_zoom < 0.5){
- radiusHelperNodes *= current_zoom + 0.4;
- } else if(current_zoom > 1) {
- radiusHelperNodes *= 1/current_zoom;
- }
- Geom::Affine i2doc = i2anc_affine(SP_ITEM(lpeItem), SP_OBJECT(SP_ITEM(lpeItem)->document->getRoot()));
- double expand = (i2doc.expansionX() + i2doc.expansionY())/2;
- if(expand != 0){
- radiusHelperNodes /= expand;
- }
- radiusHelperNodes = Inkscape::Util::Quantity::convert(radiusHelperNodes, "px", defaultUnit);
- } else {
- radiusHelperNodes = 0;
- }
- satellitepairarrayparam_values.set_helper_size(radiusHelperNodes);
+ satellitepairarrayparam_values.set_helper_size(helper_size);
}
bool changed = false;
bool refresh = false;
diff --git a/src/live_effects/lpe-fillet-chamfer.h b/src/live_effects/lpe-fillet-chamfer.h
index d099d0475..3d22216d4 100644
--- a/src/live_effects/lpe-fillet-chamfer.h
+++ b/src/live_effects/lpe-fillet-chamfer.h
@@ -62,7 +62,7 @@ private:
BoolParam use_knot_distance;
BoolParam hide_knots;
BoolParam ignore_radius_0;
- BoolParam helper;
+ ScalarParam helper_size;
Geom::Pointwise *pointwise;
diff --git a/src/live_effects/parameter/satellitepairarray.cpp b/src/live_effects/parameter/satellitepairarray.cpp
index 9c2c1f93b..0fc27153f 100644
--- a/src/live_effects/parameter/satellitepairarray.cpp
+++ b/src/live_effects/parameter/satellitepairarray.cpp
@@ -54,7 +54,7 @@ void SatellitePairArrayParam::set_pointwise(Geom::Pointwise *pointwise)
last_pointwise = pointwise;
}
-void SatellitePairArrayParam::set_document_unit(Glib::ustring const * value_document_unit)
+void SatellitePairArrayParam::set_document_unit(Glib::ustring value_document_unit)
{
documentUnit = value_document_unit;
}
diff --git a/src/live_effects/parameter/satellitepairarray.h b/src/live_effects/parameter/satellitepairarray.h
index 79a015c6d..d20339ccb 100644
--- a/src/live_effects/parameter/satellitepairarray.h
+++ b/src/live_effects/parameter/satellitepairarray.h
@@ -52,7 +52,7 @@ public:
virtual bool providesKnotHolderEntities() const {
return true;
}
- void set_document_unit(Glib::ustring const * value_document_unit);
+ void set_document_unit(Glib::ustring value_document_unit);
void set_use_distance(bool use_knot_distance );
void set_unit(const gchar *abbr);
void set_effect_type(EffectType et);
@@ -72,7 +72,7 @@ private:
int helper_size;
bool use_distance;
const gchar *unit;
- Glib::ustring const * documentUnit;
+ Glib::ustring documentUnit;
EffectType _effectType;
Geom::Pointwise *last_pointwise;
diff --git a/src/ui/dialog/lpe-fillet-chamfer-properties.cpp b/src/ui/dialog/lpe-fillet-chamfer-properties.cpp
index d0f52775a..c6959b718 100644
--- a/src/ui/dialog/lpe-fillet-chamfer-properties.cpp
+++ b/src/ui/dialog/lpe-fillet-chamfer-properties.cpp
@@ -129,12 +129,8 @@ void FilletChamferPropertiesDialog::showDialog(
const gchar *unit,
bool use_distance,
bool aprox_radius,
-<<<<<<< TREE
- Glib::ustring const * documentUnit,
+ Glib::ustring documentUnit,
Geom::Satellite satellite)
-=======
- Glib::ustring documentUnit)
->>>>>>> MERGE-SOURCE
{
FilletChamferPropertiesDialog *dialog = new FilletChamferPropertiesDialog();
@@ -265,7 +261,6 @@ void FilletChamferPropertiesDialog::_set_unit(const gchar *abbr)
unit = abbr;
}
-<<<<<<< TREE
void FilletChamferPropertiesDialog::_set_amount(double amm)
{
amount = amm;
@@ -274,10 +269,7 @@ void FilletChamferPropertiesDialog::_set_amount(double amm)
-void FilletChamferPropertiesDialog::_set_document_unit(Glib::ustring const *abbr)
-=======
void FilletChamferPropertiesDialog::_set_document_unit(Glib::ustring abbr)
->>>>>>> MERGE-SOURCE
{
document_unit = abbr;
}