View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0017466 | Scribus | General | public | 2025-03-21 10:34 | 2025-03-21 16:06 |
Reporter | nitramr | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | always |
Status | new | Resolution | open | ||
Platform | Desktop PC | OS | Ubuntu | OS Version | 24.10 64-bit |
Product Version | 1.7.1.svn | ||||
Target Version | 1.7 milestone | ||||
Summary | 0017466: The new "Edit Shape" menu item misbehaves | ||||
Description | The 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 Reproduce | Issue 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 | ||||
Tags | No tags attached. | ||||
Patch | Yes | ||||
|
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); |
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 |