View Issue Details

IDProjectCategoryView StatusLast Update
0016507ScribusUser Interfacepublic2021-03-21 14:58
Reporterbubu Assigned Tocbradney  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version1.5.7.svn 
Fixed in Version1.5.7.svn 
Summary0016507: Update layout for Style Manager: widow and orphans, character layout
DescriptionI propose a new patch for Style Manager following the patch proposed in 0001650.

The goal of this patch is to shrink the height of the dialog.

1) Character style tab:
- Move colors and hyphenation group box to a grid next to each other.
- Unifying: move "character" text to the input field as suffix like "pt, %, lines".

2) Paragraph style tab:
- Make Orphans and Widows more compact: Convert "Don't separate first/last" label to icon label and move fields next to each other.
- Attention: I changed the tooltip a little bit: "Ensure that last lines of a paragraph won't end up separated from the rest (known as widow control)" / "Ensure that first lines of a paragraph won't end up separated from the rest (known as orphan control)"
- I changed the order of the widow and orphan input field as asked in 0016478. I hope you agree.

This time I attach new icons separately from the patch. Please review. Thank you.
TagsNo tags attached.
PatchNo

Relationships

child of 0013906 acknowledged Metabug: UI enhancement proposals (1.5.x.svn) 

Activities

bubu

2021-03-03 21:45

reporter  

0001-Update-layout-for-Style-Manager-widow-and-orphans-ch.patch (32,786 bytes)   
From f27591e7a1b733dd0e480b212fc1536943159a9b Mon Sep 17 00:00:00 2001
Message-Id: <f27591e7a1b733dd0e480b212fc1536943159a9b.1614798210.git.bubu@ujevangelizacio.hu>
From: =?UTF-8?q?Gyuris=20Gell=C3=A9rt?= <bubu@ujevangelizacio.hu>
Date: Wed, 3 Mar 2021 19:52:26 +0100
Subject: [PATCH] Update layout for Style Manager: widow and orphans, character
 layout

---
 scribus/ui/smcstylewidget.ui  | 659 +++++++++++++++++-----------------
 scribus/ui/smpstylewidget.cpp |   2 +
 scribus/ui/smpstylewidget.ui  | 104 ++++--
 3 files changed, 404 insertions(+), 361 deletions(-)

diff --git a/scribus/ui/smcstylewidget.ui b/scribus/ui/smcstylewidget.ui
index 8a81560a1..715ae14a1 100644
--- a/scribus/ui/smcstylewidget.ui
+++ b/scribus/ui/smcstylewidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>430</width>
-    <height>601</height>
+    <width>581</width>
+    <height>492</height>
    </rect>
   </property>
   <property name="sizePolicy">
@@ -423,347 +423,360 @@
           </widget>
          </item>
          <item>
-          <widget class="QGroupBox" name="hyphenGroup">
-           <property name="title">
-            <string>Hyphenation</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_4">
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_3">
-              <item>
-               <widget class="QLabel" name="label_4">
-                <property name="text">
-                 <string>Hyphenation Character:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMLineEdit" name="hyphenCharLineEdit">
-                <property name="maximumSize">
-                 <size>
-                  <width>60</width>
-                  <height>16777215</height>
-                 </size>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer_2">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout">
-              <item>
-               <widget class="QLabel" name="smallestWordLabel">
-                <property name="text">
-                 <string>Smallest Word:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMSpinBox" name="smallestWordSpinBox">
-                <property name="minimum">
-                 <number>3</number>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="smallestWordLabel2">
-                <property name="text">
-                 <string>Characters</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
+          <layout class="QGridLayout" name="gridLayout">
+           <item row="0" column="0">
+            <widget class="QGroupBox" name="smColorGroup">
+             <property name="title">
+              <string>Colors</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout">
+              <item>
+               <layout class="QHBoxLayout" name="_2">
+                <item>
+                 <widget class="QLabel" name="FillIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="fillColor_">
+                  <property name="toolTip">
+                   <string>Fill Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="fillShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="fillShade_">
+                  <property name="toolTip">
+                   <string>Fill Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_10">
+                <item>
+                 <widget class="QLabel" name="StrokeIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="strokeColor_">
+                  <property name="toolTip">
+                   <string>Stroke Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="strokeShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="strokeShade_">
+                  <property name="toolTip">
+                   <string>Stroke Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_11">
+                <item>
+                 <widget class="QLabel" name="backIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="backColor_">
+                  <property name="toolTip">
+                   <string>Background Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="backShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="backShade_">
+                  <property name="toolTip">
+                   <string>Background Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
              </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="smColorGroup">
-           <property name="title">
-            <string>Colors</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout">
-            <item>
-             <layout class="QHBoxLayout" name="_2">
-              <item>
-               <widget class="QLabel" name="FillIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="fillColor_">
-                <property name="toolTip">
-                 <string>Fill Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="fillShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="fillShade_">
-                <property name="toolTip">
-                 <string>Fill Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
+            </widget>
+           </item>
+           <item row="0" column="1">
+            <widget class="QGroupBox" name="hyphenGroup">
+             <property name="title">
+              <string>Hyphenation</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_4">
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout_3">
+                <item>
+                 <widget class="QLabel" name="label_4">
+                  <property name="text">
+                   <string>Hyphenation Character:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMLineEdit" name="hyphenCharLineEdit">
+                  <property name="maximumSize">
+                   <size>
+                    <width>60</width>
+                    <height>16777215</height>
+                   </size>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer_2">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout">
+                <item>
+                 <widget class="QLabel" name="smallestWordLabel">
+                  <property name="text">
+                   <string>Smallest Word:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMSpinBox" name="smallestWordSpinBox">
+                  <property name="suffix">
+                   <string> characters</string>
+                  </property>
+                  <property name="minimum">
+                   <number>3</number>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
               <item>
                <spacer>
                 <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_10">
-              <item>
-               <widget class="QLabel" name="StrokeIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="strokeColor_">
-                <property name="toolTip">
-                 <string>Stroke Color</string>
+                 <enum>Qt::Vertical</enum>
                 </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="strokeShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="strokeShade_">
-                <property name="toolTip">
-                 <string>Stroke Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+                <property name="sizeType">
+                 <enum>QSizePolicy::MinimumExpanding</enum>
                 </property>
                 <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_11">
-              <item>
-               <widget class="QLabel" name="backIcon">
-                <property name="minimumSize">
                  <size>
                   <width>20</width>
                   <height>0</height>
                  </size>
                 </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="backColor_">
-                <property name="toolTip">
-                 <string>Background Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="backShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="backShade_">
-                <property name="toolTip">
-                 <string>Background Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
                </spacer>
               </item>
              </layout>
-            </item>
-            <item>
-             <spacer>
-              <property name="orientation">
-               <enum>Qt::Vertical</enum>
-              </property>
-              <property name="sizeType">
-               <enum>QSizePolicy::MinimumExpanding</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>300</width>
-                <height>0</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-           </layout>
-          </widget>
+            </widget>
+           </item>
+          </layout>
          </item>
         </layout>
        </item>
+       <item>
+        <spacer name="verticalSpacer">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>0</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
       </layout>
      </widget>
      <widget class="QWidget" name="tabFontFeatures">
diff --git a/scribus/ui/smpstylewidget.cpp b/scribus/ui/smpstylewidget.cpp
index 03d158f92..5922dc961 100644
--- a/scribus/ui/smpstylewidget.cpp
+++ b/scribus/ui/smpstylewidget.cpp
@@ -103,6 +103,8 @@ void SMPStyleWidget::iconSetChange()
 	lineSpacingLabel->setPixmap(iconManager.loadPixmap("linespacing2.png"));
 	spaceAboveLabel->setPixmap(iconManager.loadPixmap("above.png") );
 	spaceBelowLabel->setPixmap(iconManager.loadPixmap("below.png") );
+	keepLabelStart->setPixmap(iconManager.loadPixmap("16/orphan.png") );
+	keepLabelEnd->setPixmap(iconManager.loadPixmap("16/widow.png") );
 	backIcon->setPixmap(iconManager.loadPixmap("16/color-fill.png"));
 	backShadeLabel->setPixmap(iconManager.loadPixmap("shade.png"));
 
diff --git a/scribus/ui/smpstylewidget.ui b/scribus/ui/smpstylewidget.ui
index 89047a832..87149de38 100644
--- a/scribus/ui/smpstylewidget.ui
+++ b/scribus/ui/smpstylewidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>695</width>
-    <height>596</height>
+    <width>665</width>
+    <height>572</height>
    </rect>
   </property>
   <layout class="QVBoxLayout">
@@ -280,21 +280,42 @@
            </property>
            <layout class="QVBoxLayout" name="verticalLayout_3">
             <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_11">
+             <layout class="QHBoxLayout" name="horizontalLayout_4">
               <item>
-               <widget class="QLabel" name="keepLabelStart">
+               <widget class="QLabel" name="keepLabelEnd">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                  <horstretch>0</horstretch>
+                  <verstretch>0</verstretch>
+                 </sizepolicy>
+                </property>
+                <property name="minimumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
                 <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow control)</string>
                 </property>
                 <property name="text">
-                 <string>Don't separate first</string>
+                 <string/>
+                </property>
+                <property name="buddy">
+                 <cstring>keepLinesEnd</cstring>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesStart">
+               <widget class="SMSpinBox" name="keepLinesEnd">
                 <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -305,33 +326,40 @@
                </widget>
               </item>
               <item>
-               <spacer name="horizontalSpacer_5">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+               <widget class="QLabel" name="keepLabelStart">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                  <horstretch>0</horstretch>
+                  <verstretch>0</verstretch>
+                 </sizepolicy>
                 </property>
-                <property name="sizeHint" stdset="0">
+                <property name="minimumSize">
                  <size>
-                  <width>0</width>
-                  <height>20</height>
+                  <width>22</width>
+                  <height>22</height>
                  </size>
                 </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_14">
-              <item>
-               <widget class="QLabel" name="keepLabelEnd">
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="toolTip">
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as orphan control)</string>
+                </property>
                 <property name="text">
-                 <string>Don't separate last</string>
+                 <string/>
+                </property>
+                <property name="buddy">
+                 <cstring>keepLinesStart</cstring>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesEnd">
+               <widget class="SMSpinBox" name="keepLinesStart">
                 <property name="toolTip">
-                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as orphan control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -341,19 +369,6 @@
                 </property>
                </widget>
               </item>
-              <item>
-               <spacer name="horizontalSpacer_6">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>0</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
              </layout>
             </item>
             <item>
@@ -376,6 +391,19 @@
               </property>
              </widget>
             </item>
+            <item>
+             <spacer name="verticalSpacer_4">
+              <property name="orientation">
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>20</width>
+                <height>0</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
            </layout>
           </widget>
          </item>
-- 
2.27.0

icons.png.zip (2,230 bytes)
icons.svg.zip (5,465 bytes)
character_layout.gif (101,170 bytes)   
character_layout.gif (101,170 bytes)   
widows_orphans.gif (123,084 bytes)   
widows_orphans.gif (123,084 bytes)   

bubu

2021-03-04 07:22

reporter   ~0048910

I'm sorry. I made a mistake in the patch: icons are 22×22 large, not 16×16. Here are the corrected patch.
0001-Update-layout-for-Style-Manager-widow-and-orphans-ch-2.patch (32,975 bytes)   
From f27591e7a1b733dd0e480b212fc1536943159a9b Mon Sep 17 00:00:00 2001
Message-Id: <f27591e7a1b733dd0e480b212fc1536943159a9b.1614798210.git.bubu@ujevangelizacio.hu>
From: =?UTF-8?q?Gyuris=20Gell=C3=A9rt?= <bubu@ujevangelizacio.hu>
Date: Wed, 3 Mar 2021 19:52:26 +0100
Subject: [PATCH] Update layout for Style Manager: widow and orphans, character
 layout

---
 scribus/ui/smcstylewidget.ui  | 659 +++++++++++++++++-----------------
 scribus/ui/smpstylewidget.cpp |   2 +
 scribus/ui/smpstylewidget.ui  | 104 ++++--
 3 files changed, 404 insertions(+), 361 deletions(-)

diff --git a/scribus/ui/smcstylewidget.ui b/scribus/ui/smcstylewidget.ui
index 8a81560a1..715ae14a1 100644
--- a/scribus/ui/smcstylewidget.ui
+++ b/scribus/ui/smcstylewidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>430</width>
-    <height>601</height>
+    <width>581</width>
+    <height>492</height>
    </rect>
   </property>
   <property name="sizePolicy">
@@ -423,347 +423,360 @@
           </widget>
          </item>
          <item>
-          <widget class="QGroupBox" name="hyphenGroup">
-           <property name="title">
-            <string>Hyphenation</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_4">
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_3">
-              <item>
-               <widget class="QLabel" name="label_4">
-                <property name="text">
-                 <string>Hyphenation Character:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMLineEdit" name="hyphenCharLineEdit">
-                <property name="maximumSize">
-                 <size>
-                  <width>60</width>
-                  <height>16777215</height>
-                 </size>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer_2">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout">
-              <item>
-               <widget class="QLabel" name="smallestWordLabel">
-                <property name="text">
-                 <string>Smallest Word:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMSpinBox" name="smallestWordSpinBox">
-                <property name="minimum">
-                 <number>3</number>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="smallestWordLabel2">
-                <property name="text">
-                 <string>Characters</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
+          <layout class="QGridLayout" name="gridLayout">
+           <item row="0" column="0">
+            <widget class="QGroupBox" name="smColorGroup">
+             <property name="title">
+              <string>Colors</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout">
+              <item>
+               <layout class="QHBoxLayout" name="_2">
+                <item>
+                 <widget class="QLabel" name="FillIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="fillColor_">
+                  <property name="toolTip">
+                   <string>Fill Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="fillShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="fillShade_">
+                  <property name="toolTip">
+                   <string>Fill Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_10">
+                <item>
+                 <widget class="QLabel" name="StrokeIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="strokeColor_">
+                  <property name="toolTip">
+                   <string>Stroke Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="strokeShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="strokeShade_">
+                  <property name="toolTip">
+                   <string>Stroke Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_11">
+                <item>
+                 <widget class="QLabel" name="backIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="backColor_">
+                  <property name="toolTip">
+                   <string>Background Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="backShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="backShade_">
+                  <property name="toolTip">
+                   <string>Background Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
              </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="smColorGroup">
-           <property name="title">
-            <string>Colors</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout">
-            <item>
-             <layout class="QHBoxLayout" name="_2">
-              <item>
-               <widget class="QLabel" name="FillIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="fillColor_">
-                <property name="toolTip">
-                 <string>Fill Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="fillShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="fillShade_">
-                <property name="toolTip">
-                 <string>Fill Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
+            </widget>
+           </item>
+           <item row="0" column="1">
+            <widget class="QGroupBox" name="hyphenGroup">
+             <property name="title">
+              <string>Hyphenation</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_4">
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout_3">
+                <item>
+                 <widget class="QLabel" name="label_4">
+                  <property name="text">
+                   <string>Hyphenation Character:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMLineEdit" name="hyphenCharLineEdit">
+                  <property name="maximumSize">
+                   <size>
+                    <width>60</width>
+                    <height>16777215</height>
+                   </size>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer_2">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout">
+                <item>
+                 <widget class="QLabel" name="smallestWordLabel">
+                  <property name="text">
+                   <string>Smallest Word:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMSpinBox" name="smallestWordSpinBox">
+                  <property name="suffix">
+                   <string> characters</string>
+                  </property>
+                  <property name="minimum">
+                   <number>3</number>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
               <item>
                <spacer>
                 <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_10">
-              <item>
-               <widget class="QLabel" name="StrokeIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="strokeColor_">
-                <property name="toolTip">
-                 <string>Stroke Color</string>
+                 <enum>Qt::Vertical</enum>
                 </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="strokeShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="strokeShade_">
-                <property name="toolTip">
-                 <string>Stroke Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+                <property name="sizeType">
+                 <enum>QSizePolicy::MinimumExpanding</enum>
                 </property>
                 <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_11">
-              <item>
-               <widget class="QLabel" name="backIcon">
-                <property name="minimumSize">
                  <size>
                   <width>20</width>
                   <height>0</height>
                  </size>
                 </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="backColor_">
-                <property name="toolTip">
-                 <string>Background Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="backShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="backShade_">
-                <property name="toolTip">
-                 <string>Background Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
                </spacer>
               </item>
              </layout>
-            </item>
-            <item>
-             <spacer>
-              <property name="orientation">
-               <enum>Qt::Vertical</enum>
-              </property>
-              <property name="sizeType">
-               <enum>QSizePolicy::MinimumExpanding</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>300</width>
-                <height>0</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-           </layout>
-          </widget>
+            </widget>
+           </item>
+          </layout>
          </item>
         </layout>
        </item>
+       <item>
+        <spacer name="verticalSpacer">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>0</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
       </layout>
      </widget>
      <widget class="QWidget" name="tabFontFeatures">
diff --git a/scribus/ui/smpstylewidget.cpp b/scribus/ui/smpstylewidget.cpp
index 03d158f92..5922dc961 100644
--- a/scribus/ui/smpstylewidget.cpp
+++ b/scribus/ui/smpstylewidget.cpp
@@ -103,6 +103,8 @@ void SMPStyleWidget::iconSetChange()
 	lineSpacingLabel->setPixmap(iconManager.loadPixmap("linespacing2.png"));
 	spaceAboveLabel->setPixmap(iconManager.loadPixmap("above.png") );
 	spaceBelowLabel->setPixmap(iconManager.loadPixmap("below.png") );
+	keepLabelStart->setPixmap(iconManager.loadPixmap("22/orphan.png") );
+	keepLabelEnd->setPixmap(iconManager.loadPixmap("22/widow.png") );
 	backIcon->setPixmap(iconManager.loadPixmap("16/color-fill.png"));
 	backShadeLabel->setPixmap(iconManager.loadPixmap("shade.png"));
 
diff --git a/scribus/ui/smpstylewidget.ui b/scribus/ui/smpstylewidget.ui
index 89047a832..87149de38 100644
--- a/scribus/ui/smpstylewidget.ui
+++ b/scribus/ui/smpstylewidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>695</width>
-    <height>596</height>
+    <width>665</width>
+    <height>572</height>
    </rect>
   </property>
   <layout class="QVBoxLayout">
@@ -280,21 +280,42 @@
            </property>
            <layout class="QVBoxLayout" name="verticalLayout_3">
             <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_11">
+             <layout class="QHBoxLayout" name="horizontalLayout_4">
               <item>
-               <widget class="QLabel" name="keepLabelStart">
+               <widget class="QLabel" name="keepLabelEnd">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                  <horstretch>0</horstretch>
+                  <verstretch>0</verstretch>
+                 </sizepolicy>
+                </property>
+                <property name="minimumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
                 <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow control)</string>
                 </property>
                 <property name="text">
-                 <string>Don't separate first</string>
+                 <string/>
+                </property>
+                <property name="buddy">
+                 <cstring>keepLinesEnd</cstring>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesStart">
+               <widget class="SMSpinBox" name="keepLinesEnd">
                 <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -305,33 +326,40 @@
                </widget>
               </item>
               <item>
-               <spacer name="horizontalSpacer_5">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+               <widget class="QLabel" name="keepLabelStart">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                  <horstretch>0</horstretch>
+                  <verstretch>0</verstretch>
+                 </sizepolicy>
                 </property>
-                <property name="sizeHint" stdset="0">
+                <property name="minimumSize">
                  <size>
-                  <width>0</width>
-                  <height>20</height>
+                  <width>22</width>
+                  <height>22</height>
                  </size>
                 </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_14">
-              <item>
-               <widget class="QLabel" name="keepLabelEnd">
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="toolTip">
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as orphan control)</string>
+                </property>
                 <property name="text">
-                 <string>Don't separate last</string>
+                 <string/>
+                </property>
+                <property name="buddy">
+                 <cstring>keepLinesStart</cstring>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesEnd">
+               <widget class="SMSpinBox" name="keepLinesStart">
                 <property name="toolTip">
-                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as orphan control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -341,19 +369,6 @@
                 </property>
                </widget>
               </item>
-              <item>
-               <spacer name="horizontalSpacer_6">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>0</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
              </layout>
             </item>
             <item>
@@ -376,6 +391,19 @@
               </property>
              </widget>
             </item>
+            <item>
+             <spacer name="verticalSpacer_4">
+              <property name="orientation">
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>20</width>
+                <height>0</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
            </layout>
           </widget>
          </item>
-- 
2.27.0

icons.png-2.zip (2,230 bytes)

bubu

2021-03-05 12:18

reporter   ~0048913

Broken patch too. Here is the new one. Please apply after 0016501. Icon pack above (icons.png-2.zip) is OK.
0001-Update-layout-for-Style-Manager-widow-and-orphans-ch-3.patch (32,039 bytes)   
From bdbf256f4a4bdb18a8c0ea752efc0381dee02fa3 Mon Sep 17 00:00:00 2001
Message-Id: <bdbf256f4a4bdb18a8c0ea752efc0381dee02fa3.1614946489.git.bubu@ujevangelizacio.hu>
From: =?UTF-8?q?Gyuris=20Gell=C3=A9rt?= <bubu@ujevangelizacio.hu>
Date: Fri, 5 Mar 2021 13:14:41 +0100
Subject: [PATCH] Update layout for Style Manager: widow and orphans, character
 layout

---
 scribus/ui/smcstylewidget.ui  | 637 +++++++++++++++++-----------------
 scribus/ui/smpstylewidget.cpp |   2 +
 scribus/ui/smpstylewidget.ui  |  98 ++++--
 3 files changed, 387 insertions(+), 350 deletions(-)

diff --git a/scribus/ui/smcstylewidget.ui b/scribus/ui/smcstylewidget.ui
index 3e723c3a1..715ae14a1 100644
--- a/scribus/ui/smcstylewidget.ui
+++ b/scribus/ui/smcstylewidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>430</width>
-    <height>601</height>
+    <width>581</width>
+    <height>492</height>
    </rect>
   </property>
   <property name="sizePolicy">
@@ -423,342 +423,355 @@
           </widget>
          </item>
          <item>
-          <widget class="QGroupBox" name="hyphenGroup">
-           <property name="title">
-            <string>Hyphenation</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_4">
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_3">
-              <item>
-               <widget class="QLabel" name="label_4">
-                <property name="text">
-                 <string>Hyphenation Character:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMLineEdit" name="hyphenCharLineEdit">
-                <property name="maximumSize">
-                 <size>
-                  <width>60</width>
-                  <height>16777215</height>
-                 </size>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer_2">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout">
-              <item>
-               <widget class="QLabel" name="smallestWordLabel">
-                <property name="text">
-                 <string>Smallest Word:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMSpinBox" name="smallestWordSpinBox">
-                <property name="minimum">
-                 <number>3</number>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="smallestWordLabel2">
-                <property name="text">
-                 <string>Characters</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
+          <layout class="QGridLayout" name="gridLayout">
+           <item row="0" column="0">
+            <widget class="QGroupBox" name="smColorGroup">
+             <property name="title">
+              <string>Colors</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout">
+              <item>
+               <layout class="QHBoxLayout" name="_2">
+                <item>
+                 <widget class="QLabel" name="FillIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="fillColor_">
+                  <property name="toolTip">
+                   <string>Fill Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="fillShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="fillShade_">
+                  <property name="toolTip">
+                   <string>Fill Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_10">
+                <item>
+                 <widget class="QLabel" name="StrokeIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="strokeColor_">
+                  <property name="toolTip">
+                   <string>Stroke Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="strokeShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="strokeShade_">
+                  <property name="toolTip">
+                   <string>Stroke Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_11">
+                <item>
+                 <widget class="QLabel" name="backIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="backColor_">
+                  <property name="toolTip">
+                   <string>Background Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="backShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="backShade_">
+                  <property name="toolTip">
+                   <string>Background Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
              </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="smColorGroup">
-           <property name="title">
-            <string>Colors</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout">
-            <item>
-             <layout class="QHBoxLayout" name="_2">
-              <item>
-               <widget class="QLabel" name="FillIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="fillColor_">
-                <property name="toolTip">
-                 <string>Fill Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="fillShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="fillShade_">
-                <property name="toolTip">
-                 <string>Fill Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
+            </widget>
+           </item>
+           <item row="0" column="1">
+            <widget class="QGroupBox" name="hyphenGroup">
+             <property name="title">
+              <string>Hyphenation</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_4">
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout_3">
+                <item>
+                 <widget class="QLabel" name="label_4">
+                  <property name="text">
+                   <string>Hyphenation Character:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMLineEdit" name="hyphenCharLineEdit">
+                  <property name="maximumSize">
+                   <size>
+                    <width>60</width>
+                    <height>16777215</height>
+                   </size>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer_2">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout">
+                <item>
+                 <widget class="QLabel" name="smallestWordLabel">
+                  <property name="text">
+                   <string>Smallest Word:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMSpinBox" name="smallestWordSpinBox">
+                  <property name="suffix">
+                   <string> characters</string>
+                  </property>
+                  <property name="minimum">
+                   <number>3</number>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
               <item>
                <spacer>
                 <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_10">
-              <item>
-               <widget class="QLabel" name="StrokeIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeColor_</cstring>
+                 <enum>Qt::Vertical</enum>
                 </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="strokeColor_">
-                <property name="toolTip">
-                 <string>Stroke Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="strokeShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="strokeShade_">
-                <property name="toolTip">
-                 <string>Stroke Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+                <property name="sizeType">
+                 <enum>QSizePolicy::MinimumExpanding</enum>
                 </property>
                 <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_11">
-              <item>
-               <widget class="QLabel" name="backIcon">
-                <property name="minimumSize">
                  <size>
                   <width>20</width>
                   <height>0</height>
                  </size>
                 </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="backColor_">
-                <property name="toolTip">
-                 <string>Background Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="backShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="backShade_">
-                <property name="toolTip">
-                 <string>Background Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
                </spacer>
               </item>
              </layout>
-            </item>
-           </layout>
-          </widget>
+            </widget>
+           </item>
+          </layout>
          </item>
         </layout>
        </item>
        <item>
-        <spacer>
+        <spacer name="verticalSpacer">
          <property name="orientation">
           <enum>Qt::Vertical</enum>
          </property>
-         <property name="sizeType">
-          <enum>QSizePolicy::MinimumExpanding</enum>
-         </property>
          <property name="sizeHint" stdset="0">
           <size>
-           <width>300</width>
+           <width>20</width>
            <height>0</height>
           </size>
          </property>
diff --git a/scribus/ui/smpstylewidget.cpp b/scribus/ui/smpstylewidget.cpp
index 03d158f92..7d81f051d 100644
--- a/scribus/ui/smpstylewidget.cpp
+++ b/scribus/ui/smpstylewidget.cpp
@@ -103,6 +103,8 @@ void SMPStyleWidget::iconSetChange()
 	lineSpacingLabel->setPixmap(iconManager.loadPixmap("linespacing2.png"));
 	spaceAboveLabel->setPixmap(iconManager.loadPixmap("above.png") );
 	spaceBelowLabel->setPixmap(iconManager.loadPixmap("below.png") );
+	keepLabelStart->setPixmap(iconManager.loadPixmap("22/orphan.png") );
+	keepLabelEnd->setPixmap(iconManager.loadPixmap("22/widow.png") );
 	backIcon->setPixmap(iconManager.loadPixmap("16/color-fill.png"));
 	backShadeLabel->setPixmap(iconManager.loadPixmap("shade.png"));
 
diff --git a/scribus/ui/smpstylewidget.ui b/scribus/ui/smpstylewidget.ui
index a15b41224..a004232c6 100644
--- a/scribus/ui/smpstylewidget.ui
+++ b/scribus/ui/smpstylewidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>695</width>
-    <height>596</height>
+    <width>665</width>
+    <height>572</height>
    </rect>
   </property>
   <layout class="QVBoxLayout">
@@ -280,21 +280,39 @@
            </property>
            <layout class="QVBoxLayout" name="verticalLayout_3">
             <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_11">
+             <layout class="QHBoxLayout" name="horizontalLayout_4">
               <item>
-               <widget class="QLabel" name="keepLabelStart">
+               <widget class="QLabel" name="keepLabelEnd">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                  <horstretch>0</horstretch>
+                  <verstretch>0</verstretch>
+                 </sizepolicy>
+                </property>
+                <property name="minimumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
                 <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow control)</string>
                 </property>
                 <property name="text">
-                 <string>Don't separate first</string>
+                 <string/>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesStart">
+               <widget class="SMSpinBox" name="keepLinesEnd">
                 <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -305,33 +323,37 @@
                </widget>
               </item>
               <item>
-               <spacer name="horizontalSpacer_5">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+               <widget class="QLabel" name="keepLabelStart">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+                  <horstretch>0</horstretch>
+                  <verstretch>0</verstretch>
+                 </sizepolicy>
                 </property>
-                <property name="sizeHint" stdset="0">
+                <property name="minimumSize">
                  <size>
-                  <width>0</width>
-                  <height>20</height>
+                  <width>22</width>
+                  <height>22</height>
                  </size>
                 </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_14">
-              <item>
-               <widget class="QLabel" name="keepLabelEnd">
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="toolTip">
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as orphan control)</string>
+                </property>
                 <property name="text">
-                 <string>Don't separate last</string>
+                 <string/>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesEnd">
+               <widget class="SMSpinBox" name="keepLinesStart">
                 <property name="toolTip">
-                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as orphan control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -341,19 +363,6 @@
                 </property>
                </widget>
               </item>
-              <item>
-               <spacer name="horizontalSpacer_6">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>0</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
              </layout>
             </item>
             <item>
@@ -376,6 +385,19 @@
               </property>
              </widget>
             </item>
+            <item>
+             <spacer name="verticalSpacer_4">
+              <property name="orientation">
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>20</width>
+                <height>0</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
            </layout>
           </widget>
          </item>
-- 
2.27.0

bubu

2021-03-14 16:11

reporter   ~0048929

I reworked my previous patch. This patch fits to current head.

The goal is to shrink the height of Style Manager dialog.

Comments:
- There are no fixed toolbuttons.
- I checked the size of icon labels: I found that the current solution is: sizepolicy: preferred×preferred, minimum: 20×0, maximum: 22×22. I unified that in all cases.
- On character tab I moved colors and hyphenation group box to a grid next to each other.
- On character tab I added "character" text to the input field as a suffix like "pt, %, lines".
- On paragraph tab I converted "Don't separate first/last" label to icon label and move fields next to each other. (I revert the tooltip text to the original because of string freeze.) I changed the order of the widow and orphan input field as asked in 0016478.
- The icons are in previous comment (icons.png-2.zip).

Please review the patch. Thank you.
0001-Update-layout-for-Style-Manager-widow-and-orphans-ch-4.patch (37,558 bytes)   
From 6a89c9e8b0204e99a17ceadf4c359608796899ce Mon Sep 17 00:00:00 2001
Message-Id: <6a89c9e8b0204e99a17ceadf4c359608796899ce.1615736333.git.bubu@ujevangelizacio.hu>
From: =?UTF-8?q?Gyuris=20Gell=C3=A9rt?= <bubu@ujevangelizacio.hu>
Date: Sun, 14 Mar 2021 16:32:48 +0100
Subject: [PATCH] Update layout for Style Manager: widow and orphans, character
 layout

---
 scribus/ui/smcstylewidget.ui  | 657 ++++++++++++++++++----------------
 scribus/ui/smpstylewidget.cpp |   2 +
 scribus/ui/smpstylewidget.ui  | 186 ++++++----
 3 files changed, 454 insertions(+), 391 deletions(-)

diff --git a/scribus/ui/smcstylewidget.ui b/scribus/ui/smcstylewidget.ui
index 3e723c3a1..62edb2595 100644
--- a/scribus/ui/smcstylewidget.ui
+++ b/scribus/ui/smcstylewidget.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>430</width>
-    <height>601</height>
+    <width>531</width>
+    <height>492</height>
    </rect>
   </property>
   <property name="sizePolicy">
@@ -98,6 +98,12 @@
               <item>
                <widget class="QLabel" name="fontSizeLabel_">
                 <property name="minimumSize">
+                 <size>
+                  <width>20</width>
+                  <height>0</height>
+                 </size>
+                </property>
+                <property name="maximumSize">
                  <size>
                   <width>22</width>
                   <height>22</height>
@@ -127,6 +133,12 @@
               <item>
                <widget class="QLabel" name="trackingLabel_">
                 <property name="minimumSize">
+                 <size>
+                  <width>20</width>
+                  <height>0</height>
+                 </size>
+                </property>
+                <property name="maximumSize">
                  <size>
                   <width>22</width>
                   <height>22</height>
@@ -159,6 +171,12 @@
               <item>
                <widget class="QLabel" name="widthSpaceLabel">
                 <property name="minimumSize">
+                 <size>
+                  <width>20</width>
+                  <height>0</height>
+                 </size>
+                </property>
+                <property name="maximumSize">
                  <size>
                   <width>22</width>
                   <height>22</height>
@@ -333,7 +351,7 @@
                <widget class="QLabel" name="baselineOffsetLabel_">
                 <property name="minimumSize">
                  <size>
-                  <width>10</width>
+                  <width>20</width>
                   <height>0</height>
                  </size>
                 </property>
@@ -423,342 +441,355 @@
           </widget>
          </item>
          <item>
-          <widget class="QGroupBox" name="hyphenGroup">
-           <property name="title">
-            <string>Hyphenation</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout_4">
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_3">
-              <item>
-               <widget class="QLabel" name="label_4">
-                <property name="text">
-                 <string>Hyphenation Character:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMLineEdit" name="hyphenCharLineEdit">
-                <property name="maximumSize">
-                 <size>
-                  <width>60</width>
-                  <height>16777215</height>
-                 </size>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer_2">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout">
-              <item>
-               <widget class="QLabel" name="smallestWordLabel">
-                <property name="text">
-                 <string>Smallest Word:</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMSpinBox" name="smallestWordSpinBox">
-                <property name="minimum">
-                 <number>3</number>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="smallestWordLabel2">
-                <property name="text">
-                 <string>Characters</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer name="horizontalSpacer">
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
+          <layout class="QGridLayout" name="gridLayout">
+           <item row="0" column="0">
+            <widget class="QGroupBox" name="smColorGroup">
+             <property name="title">
+              <string>Colors</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout">
+              <item>
+               <layout class="QHBoxLayout" name="_2">
+                <item>
+                 <widget class="QLabel" name="FillIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="fillColor_">
+                  <property name="toolTip">
+                   <string>Fill Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="fillShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="fillShade_">
+                  <property name="toolTip">
+                   <string>Fill Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_10">
+                <item>
+                 <widget class="QLabel" name="StrokeIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="strokeColor_">
+                  <property name="toolTip">
+                   <string>Stroke Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="strokeShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>strokeShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="strokeShade_">
+                  <property name="toolTip">
+                   <string>Stroke Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="_11">
+                <item>
+                 <widget class="QLabel" name="backIcon">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillColor_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMColorCombo" name="backColor_">
+                  <property name="toolTip">
+                   <string>Background Color</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="QLabel" name="backShadeLabel">
+                  <property name="minimumSize">
+                   <size>
+                    <width>20</width>
+                    <height>0</height>
+                   </size>
+                  </property>
+                  <property name="maximumSize">
+                   <size>
+                    <width>22</width>
+                    <height>22</height>
+                   </size>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                  <property name="buddy">
+                   <cstring>fillShade_</cstring>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMShadeButton" name="backShade_">
+                  <property name="toolTip">
+                   <string>Background Shade</string>
+                  </property>
+                  <property name="text">
+                   <string/>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer>
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>40</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
              </layout>
-            </item>
-           </layout>
-          </widget>
-         </item>
-         <item>
-          <widget class="QGroupBox" name="smColorGroup">
-           <property name="title">
-            <string>Colors</string>
-           </property>
-           <layout class="QVBoxLayout" name="verticalLayout">
-            <item>
-             <layout class="QHBoxLayout" name="_2">
-              <item>
-               <widget class="QLabel" name="FillIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="fillColor_">
-                <property name="toolTip">
-                 <string>Fill Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="fillShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="fillShade_">
-                <property name="toolTip">
-                 <string>Fill Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
+            </widget>
+           </item>
+           <item row="0" column="1">
+            <widget class="QGroupBox" name="hyphenGroup">
+             <property name="title">
+              <string>Hyphenation</string>
+             </property>
+             <layout class="QVBoxLayout" name="verticalLayout_4">
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout_3">
+                <item>
+                 <widget class="QLabel" name="label_4">
+                  <property name="text">
+                   <string>Hyphenation Character:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMLineEdit" name="hyphenCharLineEdit">
+                  <property name="maximumSize">
+                   <size>
+                    <width>60</width>
+                    <height>16777215</height>
+                   </size>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer_2">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
+              </item>
+              <item>
+               <layout class="QHBoxLayout" name="horizontalLayout">
+                <item>
+                 <widget class="QLabel" name="smallestWordLabel">
+                  <property name="text">
+                   <string>Smallest Word:</string>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <widget class="SMSpinBox" name="smallestWordSpinBox">
+                  <property name="suffix">
+                   <string> characters</string>
+                  </property>
+                  <property name="minimum">
+                   <number>3</number>
+                  </property>
+                 </widget>
+                </item>
+                <item>
+                 <spacer name="horizontalSpacer">
+                  <property name="orientation">
+                   <enum>Qt::Horizontal</enum>
+                  </property>
+                  <property name="sizeHint" stdset="0">
+                   <size>
+                    <width>0</width>
+                    <height>20</height>
+                   </size>
+                  </property>
+                 </spacer>
+                </item>
+               </layout>
               </item>
               <item>
                <spacer>
                 <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+                 <enum>Qt::Vertical</enum>
                 </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_10">
-              <item>
-               <widget class="QLabel" name="StrokeIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="strokeColor_">
-                <property name="toolTip">
-                 <string>Stroke Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="strokeShadeLabel">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>strokeShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="strokeShade_">
-                <property name="toolTip">
-                 <string>Stroke Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
+                <property name="sizeType">
+                 <enum>QSizePolicy::MinimumExpanding</enum>
                 </property>
                 <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="_11">
-              <item>
-               <widget class="QLabel" name="backIcon">
-                <property name="minimumSize">
-                 <size>
-                  <width>20</width>
-                  <height>0</height>
-                 </size>
-                </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillColor_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMColorCombo" name="backColor_">
-                <property name="toolTip">
-                 <string>Background Color</string>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="QLabel" name="backShadeLabel">
-                <property name="minimumSize">
                  <size>
                   <width>20</width>
                   <height>0</height>
                  </size>
                 </property>
-                <property name="maximumSize">
-                 <size>
-                  <width>22</width>
-                  <height>22</height>
-                 </size>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-                <property name="buddy">
-                 <cstring>fillShade_</cstring>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <widget class="SMShadeButton" name="backShade_">
-                <property name="toolTip">
-                 <string>Background Shade</string>
-                </property>
-                <property name="text">
-                 <string/>
-                </property>
-               </widget>
-              </item>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Horizontal</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>40</width>
-                  <height>20</height>
-                 </size>
-                </property>
                </spacer>
               </item>
              </layout>
-            </item>
-           </layout>
-          </widget>
+            </widget>
+           </item>
+          </layout>
          </item>
         </layout>
        </item>
        <item>
-        <spacer>
+        <spacer name="verticalSpacer">
          <property name="orientation">
           <enum>Qt::Vertical</enum>
          </property>
-         <property name="sizeType">
-          <enum>QSizePolicy::MinimumExpanding</enum>
-         </property>
          <property name="sizeHint" stdset="0">
           <size>
-           <width>300</width>
+           <width>20</width>
            <height>0</height>
           </size>
          </property>
diff --git a/scribus/ui/smpstylewidget.cpp b/scribus/ui/smpstylewidget.cpp
index 03d158f92..7d81f051d 100644
--- a/scribus/ui/smpstylewidget.cpp
+++ b/scribus/ui/smpstylewidget.cpp
@@ -103,6 +103,8 @@ void SMPStyleWidget::iconSetChange()
 	lineSpacingLabel->setPixmap(iconManager.loadPixmap("linespacing2.png"));
 	spaceAboveLabel->setPixmap(iconManager.loadPixmap("above.png") );
 	spaceBelowLabel->setPixmap(iconManager.loadPixmap("below.png") );
+	keepLabelStart->setPixmap(iconManager.loadPixmap("22/orphan.png") );
+	keepLabelEnd->setPixmap(iconManager.loadPixmap("22/widow.png") );
 	backIcon->setPixmap(iconManager.loadPixmap("16/color-fill.png"));
 	backShadeLabel->setPixmap(iconManager.loadPixmap("shade.png"));
 
diff --git a/scribus/ui/smpstylewidget.ui b/scribus/ui/smpstylewidget.ui
index 447d9677c..5973e828e 100644
--- a/scribus/ui/smpstylewidget.ui
+++ b/scribus/ui/smpstylewidget.ui
@@ -248,25 +248,25 @@
                  </size>
                 </property>
                </spacer>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <spacer name="verticalSpacer_3">
-              <property name="orientation">
-               <enum>Qt::Vertical</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>20</width>
-                <height>0</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-           </layout>
-          </widget>
-         </item>
+              </item>
+             </layout>
+            </item>
+            <item>
+             <spacer name="verticalSpacer_3">
+              <property name="orientation">
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>20</width>
+                <height>0</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
+           </layout>
+          </widget>
+         </item>
          <item row="0" column="1">
           <widget class="QGroupBox" name="textFlowBox">
            <property name="sizePolicy">
@@ -282,19 +282,28 @@
             <item>
              <layout class="QHBoxLayout" name="horizontalLayout_11">
               <item>
-               <widget class="QLabel" name="keepLabelStart">
-                <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+               <widget class="QLabel" name="keepLabelEnd">
+                <property name="minimumSize">
+                 <size>
+                  <width>20</width>
+                  <height>0</height>
+                 </size>
                 </property>
-                <property name="text">
-                 <string>Don't separate first</string>
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="toolTip">
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesStart">
+               <widget class="SMSpinBox" name="keepLinesEnd">
                 <property name="toolTip">
-                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -317,21 +326,29 @@
                 </property>
                </spacer>
               </item>
-             </layout>
-            </item>
-            <item>
-             <layout class="QHBoxLayout" name="horizontalLayout_14">
               <item>
-               <widget class="QLabel" name="keepLabelEnd">
-                <property name="text">
-                 <string>Don't separate last</string>
+               <widget class="QLabel" name="keepLabelStart">
+                <property name="minimumSize">
+                 <size>
+                  <width>20</width>
+                  <height>0</height>
+                 </size>
+                </property>
+                <property name="maximumSize">
+                 <size>
+                  <width>22</width>
+                  <height>22</height>
+                 </size>
+                </property>
+                <property name="toolTip">
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
                 </property>
                </widget>
               </item>
               <item>
-               <widget class="SMSpinBox" name="keepLinesEnd">
+               <widget class="SMSpinBox" name="keepLinesStart">
                 <property name="toolTip">
-                 <string>Ensure that last lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
+                 <string>Ensure that first lines of a paragraph won't end up separated from the rest (known as widow/orphan control)</string>
                 </property>
                 <property name="suffix">
                  <string> lines</string>
@@ -376,28 +393,41 @@
               </property>
              </widget>
             </item>
+            <item>
+             <spacer name="verticalSpacer_4">
+              <property name="orientation">
+               <enum>Qt::Vertical</enum>
+              </property>
+              <property name="sizeHint" stdset="0">
+               <size>
+                <width>20</width>
+                <height>0</height>
+               </size>
+              </property>
+             </spacer>
+            </item>
            </layout>
           </widget>
          </item>
          <item row="1" column="0">
           <widget class="QGroupBox" name="opticalMarginsGroupBox">
            <property name="title">
-            <string>Optical Margins</string>
-           </property>
-           <layout class="QGridLayout" name="gridLayout_3">
-            <item row="1" column="0" colspan="2">
-             <layout class="QGridLayout" name="gridLayout_5">
-              <item row="2" column="0">
-               <widget class="SMRadioButton" name="optMarginRadioLeft">
-                <property name="text">
-                 <string>Left Only</string>
-                </property>
-               </widget>
-              </item>
-              <item row="1" column="0">
-               <widget class="SMRadioButton" name="optMarginRadioBoth">
-                <property name="sizePolicy">
-                 <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+            <string>Optical Margins</string>
+           </property>
+           <layout class="QGridLayout" name="gridLayout_3">
+            <item row="1" column="0" colspan="2">
+             <layout class="QGridLayout" name="gridLayout_5">
+              <item row="2" column="0">
+               <widget class="SMRadioButton" name="optMarginRadioLeft">
+                <property name="text">
+                 <string>Left Only</string>
+                </property>
+               </widget>
+              </item>
+              <item row="1" column="0">
+               <widget class="SMRadioButton" name="optMarginRadioBoth">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
                   <horstretch>0</horstretch>
                   <verstretch>0</verstretch>
                  </sizepolicy>
@@ -420,39 +450,39 @@
                 </property>
                 <property name="checked">
                  <bool>true</bool>
-                </property>
-               </widget>
-              </item>
-              <item row="3" column="0">
-               <widget class="SMRadioButton" name="optMarginRadioRight">
-                <property name="sizePolicy">
-                 <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+                </property>
+               </widget>
+              </item>
+              <item row="3" column="0">
+               <widget class="SMRadioButton" name="optMarginRadioRight">
+                <property name="sizePolicy">
+                 <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
                   <horstretch>0</horstretch>
                   <verstretch>0</verstretch>
                  </sizepolicy>
                 </property>
                 <property name="text">
                  <string>Right Only</string>
-                </property>
-               </widget>
-              </item>
-              <item row="0" column="1">
-               <widget class="QPushButton" name="optMarginDefaultButton">
-                <property name="text">
-                 <string>Reset to Default</string>
-                </property>
-               </widget>
-              </item>
-              <item row="1" column="1">
-               <widget class="QPushButton" name="optMarginParentButton">
-                <property name="text">
-                 <string>Use Parent Value</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-           </layout>
+                </property>
+               </widget>
+              </item>
+              <item row="0" column="1">
+               <widget class="QPushButton" name="optMarginDefaultButton">
+                <property name="text">
+                 <string>Reset to Default</string>
+                </property>
+               </widget>
+              </item>
+              <item row="1" column="1">
+               <widget class="QPushButton" name="optMarginParentButton">
+                <property name="text">
+                 <string>Use Parent Value</string>
+                </property>
+               </widget>
+              </item>
+             </layout>
+            </item>
+           </layout>
           </widget>
          </item>
          <item row="1" column="1">
-- 
2.27.0

style_manager-4.gif (309,125 bytes)   
style_manager-4.gif (309,125 bytes)   

cbradney

2021-03-14 17:07

administrator   ~0048930

Committed with a couple of colour changes to the icons to match existing and set first/last order in orphan/widow control.

FirasH

2021-03-21 14:58

developer   ~0048985

Thanks!
Fixed in 1.5.7.svn (24561)

Issue History

Date Modified Username Field Change
2021-03-03 21:45 bubu New Issue
2021-03-03 21:45 bubu File Added: 0001-Update-layout-for-Style-Manager-widow-and-orphans-ch.patch
2021-03-03 21:45 bubu File Added: icons.png.zip
2021-03-03 21:45 bubu File Added: icons.svg.zip
2021-03-03 21:45 bubu File Added: character_layout.gif
2021-03-03 21:45 bubu File Added: widows_orphans.gif
2021-03-04 05:51 PeterBenedek Relationship added child of 0013906
2021-03-04 07:22 bubu File Added: 0001-Update-layout-for-Style-Manager-widow-and-orphans-ch-2.patch
2021-03-04 07:22 bubu File Added: icons.png-2.zip
2021-03-04 07:22 bubu Note Added: 0048910
2021-03-05 12:18 bubu File Added: 0001-Update-layout-for-Style-Manager-widow-and-orphans-ch-3.patch
2021-03-05 12:18 bubu Note Added: 0048913
2021-03-14 16:11 bubu Note Added: 0048929
2021-03-14 16:11 bubu File Added: 0001-Update-layout-for-Style-Manager-widow-and-orphans-ch-4.patch
2021-03-14 16:11 bubu File Added: style_manager-4.gif
2021-03-14 17:07 cbradney Assigned To => cbradney
2021-03-14 17:07 cbradney Status new => resolved
2021-03-14 17:07 cbradney Resolution open => fixed
2021-03-14 17:07 cbradney Fixed in Version => 1.5.7.svn
2021-03-14 17:07 cbradney Note Added: 0048930
2021-03-21 14:58 FirasH Status resolved => closed
2021-03-21 14:58 FirasH Note Added: 0048985