View Issue Details

IDProjectCategoryView StatusLast Update
0017466ScribusGeneralpublic2025-03-21 16:06
Reporternitramr Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformDesktop PCOSUbuntuOS Version24.10 64-bit
Product Version1.7.1.svn 
Target Version1.7 milestone 
Summary0017466: The new "Edit Shape" menu item misbehaves
DescriptionThe new "Edit Shape" menu item in "Item -> Shape & Path" has issues. Implementation: https://bugs.scribus.net/view.php?id=17375

Issue 1. Menu item is enabled if no object is selected
-> If the node editing palette is visible without an object, and you perform some actions, like "expand path" Scribus will crash
Solution: disable the menu item if no object is selected

Issue 2. Wrong editing dialog for parametric objects
-> For parametric objects, like "arc" it shows the "Node editing palette" instead of editing dialog of the parametric object
Solution 1: It should show the object related editing dialog, like in PP -> shape section
Solution 2: The menu item is disabled for parametric objects too
Steps To ReproduceIssue 1
1. Create a new document
2. Go to Item -> Shape & Path -> Edit Shape...
3. In nodes editing palette, click on "expand path" button
=> crash

Issue 2
1. Create a new document
2. Arc shape
3. Go to Item -> Shape & Path -> Edit Shape...
=> it shows the nodes editing palette instead of the arc editing palette
=> to compare the behavior, go to properties palette -> shape and click on "Edit..." button
TagsNo tags attached.
PatchYes

Relationships

related to 0017375 closedcbradney Add a menu entry for "edit shape" 

Activities

nitramr

2025-03-21 16:06

developer   ~0052284

The patch enable the menu item only if:
- object is selected
- object is an image, text frame, polygon or polyline
itemedit_2025-03-21_01.patch (5,964 bytes)   
Index: scribus/appmodehelper.cpp
===================================================================
--- scribus/appmodehelper.cpp	(Revision 26800)
+++ scribus/appmodehelper.cpp	(Arbeitskopie)
@@ -516,6 +516,7 @@
 			(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(false);
+			(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 			(*a_scrActions)["itemLock"]->setEnabled(false);
 			(*a_scrActions)["itemLockSize"]->setEnabled(false);
 			(*a_scrActions)["itemPrintingEnabled"]->setEnabled(false);
@@ -573,6 +574,7 @@
 			(*a_scrActions)["itemConvertToPolygon"]->setEnabled(!inAnEditMode);
 			(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(!inAnEditMode);
 			(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(!inAnEditMode);
+			(*a_scrActions)["itemShapeEdit"]->setEnabled(true);
 			(*a_scrActions)["toolsUnlinkTextFrame"]->setEnabled(false);
 			(*a_scrActions)["toolsUnlinkTextFrameAndCutText"]->setEnabled(false);
 			(*a_scrActions)["toolsLinkTextFrame"]->setEnabled(false);
@@ -624,6 +626,7 @@
 			(*a_scrActions)["itemConvertToPolygon"]->setEnabled(!inAnEditMode);
 			(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(!inAnEditMode);
+			(*a_scrActions)["itemShapeEdit"]->setEnabled(true);
 
 			(*a_scrActions)["toolsRotate"]->setEnabled(!inAnEditMode);
 			(*a_scrActions)["toolsCopyProperties"]->setEnabled(!inAnEditMode);
@@ -683,6 +686,7 @@
 			(*a_scrActions)["itemSendToPattern"]->setEnabled(!inAnEditMode);
 			(*a_scrActions)["itemSendToInline"]->setEnabled(!inAnEditMode);
 			(*a_scrActions)["toolsRotate"]->setEnabled(!inAnEditMode);
+			(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 			if (doc->appMode == modeEditTable)
 			{
 				const PageItem *i2 = currItem->asTable()->activeCell().textFrame();
@@ -730,6 +734,7 @@
 			(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(true);
+			(*a_scrActions)["itemShapeEdit"]->setEnabled(true);
 
 			(*a_scrActions)["toolsRotate"]->setEnabled(!inAnEditMode);
 			(*a_scrActions)["toolsCopyProperties"]->setEnabled(!inAnEditMode);
@@ -776,6 +781,7 @@
 				(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 				(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(!inAnEditMode);
 				(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(!inAnEditMode);
+				(*a_scrActions)["itemShapeEdit"]->setEnabled(true);
 			}
 			else if ((SelectedType == PageItem::RegularPolygon) || (SelectedType == PageItem::Arc)) // Regular Polygon + Arc
 			{
@@ -785,6 +791,7 @@
 				(*a_scrActions)["itemConvertToPolygon"]->setEnabled(!inAnEditMode);
 				(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(!inAnEditMode);
 				(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(!inAnEditMode);
+				(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 			}
 			else if (SelectedType == PageItem::PolyLine) //Polyline
 			{
@@ -794,6 +801,7 @@
 				(*a_scrActions)["itemConvertToPolygon"]->setEnabled(!inAnEditMode);
 				(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 				(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(!inAnEditMode);
+				(*a_scrActions)["itemShapeEdit"]->setEnabled(true);
 			}
 			else if ((SelectedType == PageItem::Line) || (SelectedType == PageItem::Spiral)) // Line
 			{
@@ -806,6 +814,7 @@
 					(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 				(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 				(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(!inAnEditMode);
+				(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 			}
 			else if (SelectedType == PageItem::Symbol)
 			{
@@ -815,6 +824,7 @@
 				(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 				(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 				(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(false);
+				(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 			}
 			(*a_scrActions)["toolsEditContents"]->setEnabled(false);
 			(*a_scrActions)["toolsEditWithStoryEditor"]->setEnabled(false);
@@ -841,6 +851,7 @@
 			(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(false);
+			(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 		}
 		(*a_scrActions)["editSearchReplace"]->setEnabled(false);
 
@@ -919,6 +930,7 @@
 			(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 			(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(false);
+			(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 			(*a_scrActions)["itemSplitPolygons"]->setEnabled(false);
 			(*a_scrActions)["itemAttachTextToPath"]->setEnabled(false);
 			(*a_scrActions)["itemDetachTextFromPath"]->setEnabled(false);
@@ -1764,6 +1776,7 @@
 	(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 	(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 	(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(false);
+	(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 	(*a_scrActions)["itemLock"]->setEnabled(false);
 	(*a_scrActions)["itemLockSize"]->setEnabled(false);
 
@@ -1952,6 +1965,7 @@
 	(*a_scrActions)["itemConvertToPolygon"]->setEnabled(false);
 	(*a_scrActions)["itemConvertToTextFrame"]->setEnabled(false);
 	(*a_scrActions)["itemConvertToSymbolFrame"]->setEnabled(false);
+	(*a_scrActions)["itemShapeEdit"]->setEnabled(false);
 	(*a_scrActions)["itemAttachTextToPath"]->setEnabled(false);
 	(*a_scrActions)["itemDetachTextFromPath"]->setEnabled(false);
 	(*a_scrActions)["itemCombinePolygons"]->setEnabled(false);
itemedit_2025-03-21_01.patch (5,964 bytes)   

Issue History

Date Modified Username Field Change
2025-03-21 10:34 nitramr New Issue
2025-03-21 10:34 nitramr Relationship added related to 0017375
2025-03-21 10:48 nitramr Description Updated
2025-03-21 10:48 nitramr Description Updated
2025-03-21 16:06 nitramr Note Added: 0052284
2025-03-21 16:06 nitramr File Added: itemedit_2025-03-21_01.patch
2025-03-21 16:06 nitramr Patch No => Yes