r23309 by craig - Apply patch for shape and group tabs. Ale
scribus-commit
scribus-commit at lists.scribus.net
Fri Nov 1 12:05:38 UTC 2019
Author: craig
Date: Fri Nov 1 12:05:38 2019
New Revision: 23309
URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=23309
Log:
Apply patch for shape and group tabs. Ale
Added:
trunk/Scribus/resources/iconsets/1_5_1/fill-rule-even-odd.png (with props)
trunk/Scribus/resources/iconsets/1_5_1/fill-rule-nonzero.png (with props)
trunk/Scribus/resources/iconsets/1_5_1/round-corners.png (with props)
Modified:
trunk/Scribus/scribus/scribusdoc.cpp
trunk/Scribus/scribus/ui/propertiespalette.cpp
trunk/Scribus/scribus/ui/propertiespalette_group.cpp
trunk/Scribus/scribus/ui/propertiespalette_group.h
trunk/Scribus/scribus/ui/propertiespalette_groupbase.ui
trunk/Scribus/scribus/ui/propertiespalette_shape.cpp
trunk/Scribus/scribus/ui/propertiespalette_shapebase.ui
trunk/Scribus/scribus/ui/transparencypalette.cpp
trunk/Scribus/scribus/ui/transparencypalette.h
Modified: trunk/Scribus/scribus/scribusdoc.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/scribusdoc.cpp
==============================================================================
--- trunk/Scribus/scribus/scribusdoc.cpp (original)
+++ trunk/Scribus/scribus/scribusdoc.cpp Fri Nov 1 12:05:38 2019
@@ -11515,9 +11515,9 @@
for (int i = 0; i < selectedItemCount; ++i)
{
PageItem *currItem = itemSelection->itemAt(i);
+ currItem->setFillTransparency(t);
if (currItem->isGroup())
- continue;
- currItem->setFillTransparency(t);
+ currItem->update(); // FIXME: not sure this is needed
}
regionsChanged()->update(QRectF());
changed();
Modified: trunk/Scribus/scribus/ui/propertiespalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/propertiespalette.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/propertiespalette.cpp (original)
+++ trunk/Scribus/scribus/ui/propertiespalette.cpp Fri Nov 1 12:05:38 2019
@@ -48,6 +48,7 @@
#include "propertiespalette_table.h"
#include "propertiespalette_utils.h"
#include "propertiespalette_xyz.h"
+#include "transparencypalette.h"
#include "scribus.h"
#include "scribusview.h"
#include "selection.h"
@@ -100,8 +101,6 @@
languageChange();
connect(linePal, SIGNAL(lineModeChanged(int)), this, SLOT(NewLineMode(int)));
- connect(groupPal, SIGNAL(shapeChanged(int)) , this, SLOT(handleNewShape(int)));
- connect(groupPal, SIGNAL(shapeEditStarted()), this, SLOT(handleShapeEdit()));
connect(TabStack, SIGNAL(currentChanged2(int)), this, SLOT(SelTab(int)));
connect(colorPalette, SIGNAL(NewSpecial(double,double,double,double,double,double,double,double,double,double)), this, SLOT(NewSpGradient(double,double,double,double,double,double,double,double,double,double )));
@@ -286,7 +285,6 @@
if (!m_ScMW || m_ScMW->scriptIsRunning() || !m_haveItem)
return;
shapePal->showTextFlowMode(mode);
- groupPal->showTextFlowMode(mode);
}
PageItem* PropertiesPalette::currentItemFromSelection()
@@ -354,10 +352,11 @@
{
TabStack->setItemEnabled(idXYZItem, true);
TabStack->setItemEnabled(idShadowItem, true);
- TabStack->setItemEnabled(idShapeItem, false);
+ TabStack->setItemEnabled(idShapeItem, true);
TabStack->setItemEnabled(idGroupItem, true);
TabStack->setItemEnabled(idLineItem, false);
TabStack->setItemEnabled(idColorsItem, false);
+ TabStack->setItemEnabled(idTransparencyItem, true);
TabStack->setItemEnabled(idTableItem, false);
}
else
@@ -409,7 +408,7 @@
connect(TabStack, SIGNAL(currentChanged2(int)), this, SLOT(SelTab(int)));
}
-void PropertiesPalette::handleSelectionChanged()
+void PropertiesPalette::handleSelectionChanged()
{
if (!m_haveDoc || !m_ScMW || m_ScMW->scriptIsRunning())
return;
@@ -509,7 +508,7 @@
case PageItem::Symbol:
case PageItem::Group:
TabStack->setItemEnabled(idShadowItem, true);
- TabStack->setItemEnabled(idShapeItem, false);
+ TabStack->setItemEnabled(idShapeItem, true);
TabStack->setItemEnabled(idLineItem, false);
TabStack->setItemEnabled(idGroupItem, true);
TabStack->setItemEnabled(idColorsItem, false);
@@ -522,7 +521,7 @@
TabStack->setItemEnabled(idLineItem, false);
TabStack->setItemEnabled(idGroupItem, false);
TabStack->setItemEnabled(idColorsItem, false);
- TabStack->setItemEnabled(idTransparencyItem, false);
+ TabStack->setItemEnabled(idTransparencyItem, true);
break;
}
}
@@ -780,7 +779,6 @@
if (!m_haveDoc || !m_ScMW || m_ScMW->scriptIsRunning())
return;
- groupPal->updateColorList();
tablePal->updateColorList();
colorPalette->updateColorList();
transparencyPalette->updateColorList();
@@ -842,8 +840,6 @@
return;
if(m_doc->m_Selection->isEmpty())
return;
-
- groupPal->updateColorSpecialGradient();
PageItem *currItem=m_doc->m_Selection->itemAt(0);
if (currItem)
@@ -862,7 +858,7 @@
colorPalette->setMeshPatchPoint();
else if (m_ScMW->view->editStrokeGradient == 9)
colorPalette->setMeshPatch();
- else if (!currItem->isGroup())
+ else if (currItem->isGroup())
transparencyPalette->setSpecialGradient(currItem->GrMaskStartX, currItem->GrMaskStartY, currItem->GrMaskEndX, currItem->GrMaskEndY, currItem->GrMaskFocalX, currItem->GrMaskFocalY, currItem->GrMaskScale, currItem->GrMaskSkew);
}
}
Modified: trunk/Scribus/scribus/ui/propertiespalette_group.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/propertiespalette_group.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/propertiespalette_group.cpp (original)
+++ trunk/Scribus/scribus/ui/propertiespalette_group.cpp Fri Nov 1 12:05:38 2019
@@ -61,7 +61,6 @@
#include "ui/propertiespalette.h"
#include "ui/propertiespalette_utils.h"
#include "ui/propertiespalette_xyz.h"
-#include "ui/transparencypalette.h"
#include "undomanager.h"
#include "units.h"
#include "util.h"
@@ -69,65 +68,32 @@
-PropertiesPalette_Group::PropertiesPalette_Group( QWidget* parent) : QWidget(parent)
-{
- m_ScMW = nullptr;
- m_doc = nullptr;
- m_item = nullptr;
- m_haveDoc = false;
- m_haveItem = false;
- m_unitIndex = 0;
- m_unitRatio = 1.0;
- m_userActionOn = false;
-
+PropertiesPalette_Group::PropertiesPalette_Group( QWidget* parent)
+ : QWidget(parent),
+ m_haveDoc(false),
+ m_haveItem(false),
+ m_unitRatio(1.0),
+ m_unitIndex(SC_PT),
+ m_item(nullptr),
+ m_doc(nullptr)
+{
m_tmpSelection = new Selection(this, false);
m_tmpSelection->clear();
setupUi(this);
setSizePolicy( QSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum));
- textFlowDisabled->setIcon(IconManager::instance().loadIcon("flow-none.png"));
- textFlowUsesFrameShape->setIcon(IconManager::instance().loadIcon("flow-frame.png"));
- textFlowUsesBoundingBox->setIcon(IconManager::instance().loadIcon("flow-bounding.png"));
- textFlowUsesContourLine->setIcon(IconManager::instance().loadIcon("flow-contour.png"));
- textFlowUsesImageClipping->setIcon(IconManager::instance().loadIcon("flow-contour.png"));
-
- textFlowDisabled->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
- textFlowUsesFrameShape->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
- textFlowUsesBoundingBox->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
- textFlowUsesContourLine->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
- textFlowUsesImageClipping->setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
-
- transPalWidget->hideSelectionButtons();
-
languageChange();
- connect(textFlowBtnGroup, SIGNAL(buttonClicked(int)), this, SLOT(handleTextFlow()));
-
- connect(customShape , SIGNAL(FormSel(int, int, qreal *)), this, SLOT(handleNewShape(int, int, qreal *)));
- connect(editShape , SIGNAL(clicked()) , this, SLOT(handleShapeEdit()));
- connect(evenOdd , SIGNAL(clicked()) , this, SLOT(handleFillRule()) );
- connect(nonZero , SIGNAL(clicked()) , this, SLOT(handleFillRule()) );
connect(clipGroups , SIGNAL(clicked()) , this, SLOT(handleClipping()) );
- connect(transPalWidget , SIGNAL(editGradient()) , this, SLOT(handleGradientEdit()));
- connect(transPalWidget , SIGNAL(NewSpecial(double, double, double, double, double, double, double, double, double, double)), this, SLOT(handleSpecialGradient(double, double, double, double, double, double, double, double )));
}
PageItem* PropertiesPalette_Group::currentItemFromSelection()
{
PageItem *currentItem = nullptr;
- if (m_doc)
- {
- if (m_doc->m_Selection->count() > 1)
- {
- currentItem = m_doc->m_Selection->itemAt(0);
- }
- else if (m_doc->m_Selection->count() == 1)
- {
- currentItem = m_doc->m_Selection->itemAt(0);
- }
- }
+ if (m_doc && m_doc->m_Selection->count()>0)
+ currentItem = m_doc->m_Selection->itemAt(0);
return currentItem;
}
@@ -136,7 +102,6 @@
{
m_ScMW = mw;
- connect(this->transPalWidget, SIGNAL(gradientChanged()), this, SLOT(handleGradientChanged()));
connect(m_ScMW, SIGNAL(UpdateRequest(int)), this, SLOT(handleUpdateRequest(int)));
}
@@ -151,28 +116,13 @@
disconnect(m_doc , SIGNAL(docChanged()) , this, SLOT(handleSelectionChanged()));
}
- this->transPalWidget->disconnect(SIGNAL(NewTrans(double)));
- this->transPalWidget->disconnect(SIGNAL(NewBlend(int)));
- this->transPalWidget->disconnect(SIGNAL(NewGradient(int)));
- this->transPalWidget->disconnect(SIGNAL(NewPattern(QString)));
- this->transPalWidget->disconnect(SIGNAL(NewPatternProps(double, double, double, double, double, double, double, bool, bool)));
-
m_doc = d;
m_item = nullptr;
m_unitRatio = m_doc->unitRatio();
m_unitIndex = m_doc->unitIndex();
- transPalWidget->setDocument(m_doc);
- transPalWidget->setCurrentItem(nullptr);
-
m_haveDoc = true;
m_haveItem = false;
-
- connect(this->transPalWidget, SIGNAL(NewTrans(double)) , this, SLOT(handleGroupTransparency(double)));
- connect(this->transPalWidget, SIGNAL(NewBlend(int)) , this, SLOT(handleGroupBlending(int)));
- connect(this->transPalWidget, SIGNAL(NewGradient(int)) , this, SLOT(handleGroupGradMask(int)));
- connect(this->transPalWidget, SIGNAL(NewPattern(QString)), this, SLOT(handleGroupPatternMask(QString)));
- connect(this->transPalWidget, SIGNAL(NewPatternProps(double, double, double, double, double, double, double, bool, bool)), this, SLOT(handleGroupPatternMaskProps(double, double, double, double, double, double, double, bool, bool)));
connect(m_doc->m_Selection, SIGNAL(selectionChanged()), this, SLOT(handleSelectionChanged()));
connect(m_doc , SIGNAL(docChanged()) , this, SLOT(handleSelectionChanged()));
@@ -191,9 +141,6 @@
m_doc = nullptr;
m_item = nullptr;
- transPalWidget->setDocument(nullptr);
- transPalWidget->setCurrentItem(nullptr);
-
setEnabled(false);
}
@@ -201,7 +148,6 @@
{
m_haveItem = false;
m_item = nullptr;
- transPalWidget->setCurrentItem(nullptr);
handleSelectionChanged();
}
@@ -226,47 +172,18 @@
int itemType = currItem ? (int) currItem->itemType() : -1;
m_haveItem = (itemType != -1);
- switch (itemType)
- {
- case -1:
- setEnabled(false);
- break;
- case PageItem::ImageFrame:
- case PageItem::LatexFrame:
- case PageItem::OSGFrame:
- if (currItem->asOSGFrame())
- {
- setEnabled(false);
- }
- break;
- case PageItem::Arc:
- case PageItem::TextFrame:
- case PageItem::Line:
- case PageItem::ItemType1:
- case PageItem::ItemType3:
- case PageItem::Polygon:
- case PageItem::PolyLine:
- case PageItem::PathText:
- case PageItem::RegularPolygon:
- setEnabled(false);
- break;
- case PageItem::Symbol:
+ if (itemType == PageItem::Symbol)
setEnabled(true);
- break;
- }
}
if (currItem)
{
setCurrentItem(currItem);
}
updateGeometry();
- //repaint();
}
void PropertiesPalette_Group::handleUpdateRequest(int updateFlags)
{
- if (updateFlags & reqColorsUpdate)
- updateColorList();
}
void PropertiesPalette_Group::setCurrentItem(PageItem *item)
@@ -286,290 +203,14 @@
m_haveItem = false;
m_item = item;
- bool mirrorX, mirrorY;
- double patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY;
- m_item->patternTransform(patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY);
- m_item->patternFlip(mirrorX, mirrorY);
-
- transPalWidget->setCurrentItem(m_item);
- nonZero->setChecked(!m_item->fillRule);
- evenOdd->setChecked(m_item->fillRule);
clipGroups->setChecked(m_item->groupClipping());
- if ((m_item->isGroup()) && (!m_item->isSingleSel))
- {
+ if (((m_item->isGroup()) && (!m_item->isSingleSel)) || m_item->asSymbolFrame())
setEnabled(true);
- if (m_item->FrameType == 0)
- customShape->setIcon(customShape->getIconPixmap(0));
- if (m_item->FrameType == 1)
- customShape->setIcon(customShape->getIconPixmap(1));
- if (m_item->FrameType > 3)
- customShape->setIcon(customShape->getIconPixmap(m_item->FrameType-2));
- transPalWidget->updateFromItem();
- transPalWidget->setActPattern(m_item->patternMask(), patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY, mirrorX, mirrorY);
- customShape->setEnabled(true);
- editShape->setEnabled(true);
- shapeGroup->setEnabled(true);
- textFlowDisabled->setEnabled(true);
- textFlowUsesFrameShape->setEnabled(true);
- textFlowUsesBoundingBox->setEnabled(true);
- textFlowUsesContourLine->setEnabled(true);
- textFlowUsesImageClipping->setEnabled(false);
- }
else
- {
setEnabled(false);
- }
m_haveItem = true;
-
- if (m_item->asOSGFrame())
- {
- setEnabled(false);
- }
- if (m_item->asSymbolFrame())
- {
- setEnabled(true);
- if (m_item->FrameType == 0)
- customShape->setIcon(customShape->getIconPixmap(0));
- if (m_item->FrameType == 1)
- customShape->setIcon(customShape->getIconPixmap(1));
- if (m_item->FrameType > 3)
- customShape->setIcon(customShape->getIconPixmap(m_item->FrameType-2));
- transPalWidget->updateFromItem();
- transPalWidget->setActPattern(m_item->patternMask(), patternScaleX, patternScaleY, patternOffsetX, patternOffsetY, patternRotation, patternSkewX, patternSkewY, mirrorX, mirrorY);
- customShape->setEnabled(true);
- editShape->setEnabled(true);
- shapeGroup->setEnabled(true);
- textFlowDisabled->setEnabled(true);
- textFlowUsesFrameShape->setEnabled(true);
- textFlowUsesBoundingBox->setEnabled(true);
- textFlowUsesContourLine->setEnabled(true);
- textFlowUsesImageClipping->setEnabled(false);
- }
- showTextFlowMode(m_item->textFlowMode());
-}
-
-void PropertiesPalette_Group::showTextFlowMode(PageItem::TextFlowMode mode)
-{
- if (!m_ScMW || m_ScMW->scriptIsRunning() || !m_haveItem)
- return;
- if (!m_item->isGroup())
- return;
- if (mode == PageItem::TextFlowDisabled)
- textFlowDisabled->setChecked(true);
- else if (mode == PageItem::TextFlowUsesFrameShape)
- textFlowUsesFrameShape->setChecked(true);
- else if (mode == PageItem::TextFlowUsesBoundingBox)
- textFlowUsesBoundingBox->setChecked(true);
- else if (mode == PageItem::TextFlowUsesContourLine)
- textFlowUsesContourLine->setChecked(true);
- else if (mode == PageItem::TextFlowUsesImageClipping)
- textFlowUsesImageClipping->setChecked(true);
- if ((m_item->asImageFrame()) && (!m_item->imageClip.empty()))
- textFlowUsesImageClipping->setEnabled(true);
- else
- textFlowUsesImageClipping->setEnabled(false);
-}
-
-void PropertiesPalette_Group::updateColorList()
-{
- if (!m_haveDoc || !m_ScMW || m_ScMW->scriptIsRunning())
- return;
- transPalWidget->updateColorList();
-}
-
-void PropertiesPalette_Group::updateColorSpecialGradient()
-{
- if (!m_haveDoc)
- return;
- if(m_doc->m_Selection->isEmpty())
- return;
- PageItem *currItem = m_doc->m_Selection->itemAt(0);
- if (currItem)
- {
- switch (m_ScMW->view->editStrokeGradient)
- {
- case 0:
- case 1:
- case 3:
- case 4:
- case 5:
- case 6:
- case 7:
- break;
- default:
- if (currItem->isGroup())
- transPalWidget->setSpecialGradient(currItem->GrMaskStartX, currItem->GrMaskStartY, currItem->GrMaskEndX, currItem->GrMaskEndY, currItem->GrMaskFocalX, currItem->GrMaskFocalY, currItem->GrMaskScale, currItem->GrMaskSkew);
- }
- }
-}
-
-void PropertiesPalette_Group::handleGradientChanged()
-{
- if (m_haveDoc)
- {
- VGradient vg(transPalWidget->gradEdit->gradient());
- m_doc->itemSelection_SetMaskGradient(vg);
- }
-}
-
-void PropertiesPalette_Group::handleGroupTransparency(double trans)
-{
- if ((m_haveDoc) && (m_haveItem))
- {
- m_item->setFillTransparency(trans);
- m_item->update();
- }
-}
-
-void PropertiesPalette_Group::handleGroupBlending(int blend)
-{
- if ((m_haveDoc) && (m_haveItem))
- {
- m_item->setFillBlendmode(blend);
- m_item->update();
- }
-}
-
-void PropertiesPalette_Group::handleGroupGradMask(int typ)
-{
- if ((m_haveDoc) && (m_haveItem))
- {
- m_item->GrMask = typ;
- if ((typ > 0) && (typ < 7))
- m_item->updateGradientVectors();
- m_item->update();
- }
-}
-
-void PropertiesPalette_Group::handleGroupPatternMask(const QString& pattern)
-{
- if ((m_haveDoc) && (m_haveItem))
- {
- m_item->setPatternMask(pattern);
- m_item->update();
- }
-}
-
-void PropertiesPalette_Group::handleGroupPatternMaskProps(double imageScaleX, double imageScaleY, double offsetX, double offsetY, double rotation, double skewX, double skewY, bool mirrorX, bool mirrorY)
-{
- if ((m_haveDoc) && (m_haveItem))
- {
- m_item->setMaskTransform(imageScaleX, imageScaleY, offsetX, offsetY, rotation, skewX, skewY);
- m_item->setMaskFlip(mirrorX, mirrorY);
- m_item->update();
- }
-}
-
-void PropertiesPalette_Group::handleNewShape(int frameType, int count, qreal *points)
-{
- if (!m_ScMW || m_ScMW->scriptIsRunning())
- return;
- if ((m_haveDoc) && (m_haveItem))
- {
- if ((m_item->itemType() == PageItem::PolyLine) || (m_item->itemType() == PageItem::PathText))
- return;
-
- m_doc->item_setFrameShape(m_item, frameType, count, points);
- m_doc->invalidateAll();
- m_doc->regionsChanged()->update(QRect());
-
- //ScribusDoc::changed() is called in item_setFrameShape()
- //Hope this is enough
- //emit DocChanged();
- emit shapeChanged(frameType);
- }
-}
-
-void PropertiesPalette_Group::handleTextFlow()
-{
- if (!m_ScMW || m_ScMW->scriptIsRunning())
- return;
- if ((m_haveDoc) && (m_haveItem))
- {
- PageItem::TextFlowMode mode = PageItem::TextFlowDisabled;
- if (m_item->isGroup())
- {
- if (textFlowDisabled->isChecked())
- mode = PageItem::TextFlowDisabled;
- if (textFlowUsesFrameShape->isChecked())
- mode = PageItem::TextFlowUsesFrameShape;
- if (textFlowUsesBoundingBox->isChecked())
- mode = PageItem::TextFlowUsesBoundingBox;
- if (textFlowUsesContourLine->isChecked())
- mode = PageItem::TextFlowUsesContourLine;
- if (textFlowUsesImageClipping->isChecked())
- mode = PageItem::TextFlowUsesImageClipping;
- }
- m_item->setTextFlowMode(mode);
- m_doc->changed();
- m_doc->invalidateAll();
- m_doc->regionsChanged()->update(QRect());
- }
-}
-
-void PropertiesPalette_Group::handleGradientEdit()
-{
- if (!m_ScMW || m_ScMW->scriptIsRunning())
- return;
- if ((m_haveDoc) && (m_haveItem))
- {
- m_ScMW->view->editStrokeGradient = 2;
- if (transPalWidget->gradEditButton->isChecked())
- m_ScMW->view->requestMode(modeEditGradientVectors);
- else
- m_ScMW->view->requestMode(modeNormal);
- }
-}
-
-void PropertiesPalette_Group::handleSpecialGradient(double x1, double y1, double x2, double y2, double fx, double fy, double sg, double sk)
-{
- if (!m_ScMW || m_ScMW->scriptIsRunning())
- return;
- if ((m_haveDoc) && (m_haveItem))
- {
- QRectF upRect;
- m_item->GrMaskStartX = x1 / m_unitRatio;
- m_item->GrMaskStartY = y1 / m_unitRatio;
- m_item->GrMaskEndX = x2 / m_unitRatio;
- m_item->GrMaskEndY = y2 / m_unitRatio;
- m_item->GrMaskFocalX = fx / m_unitRatio;
- m_item->GrMaskFocalY = fy / m_unitRatio;
- m_item->GrMaskScale = sg;
- m_item->GrMaskSkew = sk;
- if ((m_item->GrMask == 1) || (m_item->GrMask == 4))
- {
- m_item->GrMaskFocalX = m_item->GrMaskStartX;
- m_item->GrMaskFocalY = m_item->GrMaskStartY;
- }
- m_item->update();
- upRect = QRectF(QPointF(m_item->GrMaskStartX, m_item->GrMaskStartY), QPointF(m_item->GrMaskEndX, m_item->GrMaskEndY));
- double radEnd = distance(m_item->GrMaskEndX - m_item->GrMaskStartX, m_item->GrMaskEndY - m_item->GrMaskStartY);
- double rotEnd = xy2Deg(m_item->GrMaskEndX - m_item->GrMaskStartX, m_item->GrMaskEndY - m_item->GrMaskStartY);
- QTransform m;
- m.translate(m_item->GrMaskStartX, m_item->GrMaskStartY);
- m.rotate(rotEnd);
- m.rotate(-90);
- m.rotate(m_item->GrMaskSkew);
- m.translate(radEnd * m_item->GrMaskScale, 0);
- QPointF shP = m.map(QPointF(0,0));
- upRect |= QRectF(shP, QPointF(m_item->GrMaskEndX, m_item->GrMaskEndY)).normalized();
- upRect |= QRectF(shP, QPointF(m_item->GrMaskStartX, m_item->GrMaskStartY)).normalized();
- upRect |= QRectF(shP, QPointF(0, 0)).normalized();
- upRect |= QRectF(shP, QPointF(m_item->width(), m_item->height())).normalized();
- upRect.translate(m_item->xPos(), m_item->yPos());
- m_doc->regionsChanged()->update(upRect.adjusted(-10.0, -10.0, 10.0, 10.0));
- m_doc->changed();
- }
-}
-
-void PropertiesPalette_Group::handleFillRule()
-{
- if (!m_haveDoc || !m_haveItem || !m_ScMW || m_ScMW->scriptIsRunning())
- return;
- m_item->fillRule = evenOdd->isChecked();
- m_item->update();
}
void PropertiesPalette_Group::handleClipping()
@@ -580,42 +221,6 @@
m_item->update();
}
-void PropertiesPalette_Group::handleShapeEdit()
-{
- if (!m_ScMW || m_ScMW->scriptIsRunning())
- return;
- if ((m_haveDoc) && (m_haveItem))
- {
- m_tmpSelection->clear();
- m_tmpSelection->copy(*m_doc->m_Selection, true);
- m_doc->m_Selection->clear();
- m_doc->m_Selection->addItem(m_item);
- m_item->isSingleSel = true;
- m_item->update();
- m_ScMW->view->requestMode(modeEditClip);
- m_ScMW->scrActions["itemUngroup"]->setEnabled(false);
- connect(m_ScMW->nodePalette, SIGNAL(paletteClosed()), this, SLOT(handleShapeEditEnded()));
- emit shapeEditStarted();
- }
-}
-
-void PropertiesPalette_Group::handleShapeEditEnded()
-{
- disconnect(m_ScMW->nodePalette, SIGNAL(paletteClosed()), this, SLOT(handleShapeEditEnded()));
- if ((m_haveDoc) && (m_haveItem))
- {
- if (m_tmpSelection->count() > 0)
- {
- m_doc->m_Selection->copy(*m_tmpSelection, false);
- m_doc->m_Selection->connectItemToGUI();
- }
- m_tmpSelection->clear();
-// m_ScMW->propertiesPalette->setCurrentItem(m_doc->m_Selection->itemAt(0));
-// m_ScMW->scrActions["itemGroup"]->setEnabled(true);
-// m_ScMW->propertiesPalette->xyzPal->doUnGroup->setEnabled(true);
- }
-}
-
void PropertiesPalette_Group::changeEvent(QEvent *e)
{
if (e->type() == QEvent::LanguageChange)
@@ -637,11 +242,6 @@
if (!m_doc)
return;
- double oldRatio = m_unitRatio;
m_unitRatio = m_doc->unitRatio();
m_unitIndex = m_doc->unitIndex();
-
- transPalWidget->blockSignals(true);
- transPalWidget->unitChange(oldRatio, m_unitRatio, m_doc->unitIndex());
- transPalWidget->blockSignals(false);
-}
+}
Modified: trunk/Scribus/scribus/ui/propertiespalette_group.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/propertiespalette_group.h
==============================================================================
--- trunk/Scribus/scribus/ui/propertiespalette_group.h (original)
+++ trunk/Scribus/scribus/ui/propertiespalette_group.h Fri Nov 1 12:05:38 2019
@@ -36,7 +36,6 @@
bool m_haveDoc;
bool m_haveItem;
- bool m_userActionOn;
double m_unitRatio;
int m_unitIndex;
@@ -64,28 +63,7 @@
void unitChange();
private slots:
-
- void handleGradientChanged();
- void handleGroupTransparency(double trans);
- void handleGroupBlending(int blend);
- void handleGroupGradMask(int typ);
- void handleGroupPatternMask(const QString& pattern);
- void handleGroupPatternMaskProps(double, double, double, double, double, double, double, bool, bool);
-
- void handleTextFlow();
- void handleNewShape(int f, int c, qreal *vals);
-
- void handleFillRule();
void handleClipping();
- void handleShapeEdit();
- void handleShapeEditEnded();
-
- void handleSpecialGradient(double, double, double, double, double, double, double, double );
- void handleGradientEdit();
-
-signals:
- void shapeChanged(int);
- void shapeEditStarted();
};
#endif
Modified: trunk/Scribus/scribus/ui/propertiespalette_groupbase.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/propertiespalette_groupbase.ui
==============================================================================
--- trunk/Scribus/scribus/ui/propertiespalette_groupbase.ui (original)
+++ trunk/Scribus/scribus/ui/propertiespalette_groupbase.ui Fri Nov 1 12:05:38 2019
@@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>212</width>
- <height>387</height>
+ <height>47</height>
</rect>
</property>
<property name="windowTitle">
@@ -30,316 +30,6 @@
<number>3</number>
</property>
<item>
- <widget class="QGroupBox" name="shapeGroup">
- <property name="title">
- <string>Shape</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- <layout class="QVBoxLayout" name="verticalLayout_2">
- <property name="spacing">
- <number>5</number>
- </property>
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout">
- <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>
- </item>
- <item>
- <widget class="Autoforms" name="customShape">
- <property name="text">
- <string>...</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="editShape">
- <property name="text">
- <string>&Edit...</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="textFlowGroup">
- <property name="title">
- <string>Text &Flow Around Frame</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- <layout class="QVBoxLayout" name="verticalLayout">
- <property name="spacing">
- <number>2</number>
- </property>
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <item>
- <widget class="QToolButton" name="textFlowDisabled">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string>Disable text flow from lower frames around object</string>
- </property>
- <property name="text">
- <string>Disabled</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesFrameShape">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string>Use the frame shape for text flow of text frames below the object</string>
- </property>
- <property name="text">
- <string>Use Frame &Shape</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesBoundingBox">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string><qt>Use the bounding box, which is always rectangular, instead of the frame's shape for text flow of text frames below the object</qt></string>
- </property>
- <property name="text">
- <string>Use &Bounding Box</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesContourLine">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string><qt>When chosen, the contour line can be edited with the Edit Shape Tool on the palette further above. When edited via the shape palette, this becomes a second separate line originally based on the frame's shape for text flow of text frames below the object.</qt></string>
- </property>
- <property name="text">
- <string>&Use Contour Line</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesImageClipping">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string><qt>Use the clipping path of the image</qt></string>
- </property>
- <property name="text">
- <string>Use Image Clip Path</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="fillRuleGroup">
- <property name="title">
- <string>Fill Rule</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- <layout class="QHBoxLayout" name="horizontalLayout_3">
- <property name="spacing">
- <number>5</number>
- </property>
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <item>
- <spacer name="horizontalSpacer_2">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>10</width>
- <height>10</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QRadioButton" name="evenOdd">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string><qt>Any path self-intersections or subpaths create holes in the fill</qt></string>
- </property>
- <property name="text">
- <string>Even-Odd</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QRadioButton" name="nonZero">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string><qt>Fill is solid unless a subpath is counter-directional</qt></string>
- </property>
- <property name="text">
- <string>Non Zero</string>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer_3">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>10</width>
- <height>10</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </widget>
- </item>
- <item>
<widget class="QCheckBox" name="clipGroups">
<property name="toolTip">
<string>When the group's bounding frame has been edited, clip the contents of the page items to the edited bounding frame</string>
@@ -347,36 +37,6 @@
<property name="text">
<string>Group clips Contents</string>
</property>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="transparencyGroup">
- <property name="title">
- <string>Transparency</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- <layout class="QVBoxLayout" name="verticalLayout_4">
- <property name="spacing">
- <number>2</number>
- </property>
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <item>
- <widget class="TransparencyPalette" name="transPalWidget" native="true"/>
- </item>
- </layout>
</widget>
</item>
<item>
@@ -394,19 +54,6 @@
</item>
</layout>
</widget>
- <customwidgets>
- <customwidget>
- <class>Autoforms</class>
- <extends>QToolButton</extends>
- <header>ui/autoform.h</header>
- </customwidget>
- <customwidget>
- <class>Tpalette</class>
- <extends>QWidget</extends>
- <header>ui/transparencypalette.h</header>
- <container>1</container>
- </customwidget>
- </customwidgets>
<resources/>
<connections/>
<buttongroups>
Modified: trunk/Scribus/scribus/ui/propertiespalette_shape.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/propertiespalette_shape.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/propertiespalette_shape.cpp (original)
+++ trunk/Scribus/scribus/ui/propertiespalette_shape.cpp Fri Nov 1 12:05:38 2019
@@ -35,7 +35,6 @@
#include "util.h"
#include "util_math.h"
-
PropertiesPalette_Shape::PropertiesPalette_Shape( QWidget* parent)
: QWidget(parent),
m_haveDoc(false),
@@ -51,11 +50,16 @@
setupUi(this);
setSizePolicy( QSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum));
+ roundRectIcon->setPixmap(IconManager::instance().loadPixmap("round-corners.png"));
+
textFlowDisabled->setIcon(IconManager::instance().loadIcon("flow-none.png"));
textFlowUsesFrameShape->setIcon(IconManager::instance().loadIcon("flow-frame.png"));
textFlowUsesBoundingBox->setIcon(IconManager::instance().loadIcon("flow-bounding.png"));
textFlowUsesContourLine->setIcon(IconManager::instance().loadIcon("flow-contour.png"));
textFlowUsesImageClipping->setIcon(IconManager::instance().loadIcon("flow-contour.png"));
+
+ evenOdd->setIcon(IconManager::instance().loadIcon("fill-rule-even-odd.png"));
+ nonZero->setIcon(IconManager::instance().loadIcon("fill-rule-nonzero.png"));
languageChange();
@@ -67,7 +71,6 @@
connect(customShape, SIGNAL(FormSel(int, int, qreal *)), this, SLOT(handleNewShape(int, int, qreal *)));
roundRect->showValue(0);
- stackedWidget->setCurrentIndex(0);
}
void PropertiesPalette_Shape::changeEvent(QEvent *e)
@@ -350,23 +353,21 @@
roundRect->setValue(m_item->cornerRadius()*m_unitRatio);
showTextFlowMode(m_item->textFlowMode());
- if (m_item->asPathText())
- {
- stackedWidget->setCurrentIndex(0);
- }
- else if (m_item->asTextFrame())
- {
- stackedWidget->setCurrentIndex(0);
+ if (m_item->asPathText() || m_item->asTextFrame() || m_item->asImageFrame())
+ {
+ nonZero->setChecked(false);
+ nonZero->setEnabled(false);
+ evenOdd->setChecked(false);
+ evenOdd->setEnabled(false);
}
else
{
- stackedWidget->setCurrentIndex(1);
- fillRuleGroup->setVisible(m_item->itemType() != PageItem::ImageFrame);
+ nonZero->setEnabled(true);
+ evenOdd->setEnabled(true);
+ nonZero->setChecked(!m_item->fillRule);
}
setLocked(m_item->locked());
setSizeLocked(m_item->sizeLocked());
- nonZero->setChecked(!m_item->fillRule);
- evenOdd->setChecked(m_item->fillRule);
// Frame type 3 is obsolete: CR 2005-02-06
//if (((i->itemType() == PageItem::TextFrame) || (i->itemType() == PageItem::ImageFrame) || (i->itemType() == 3)) && (!i->ClipEdited))
@@ -405,19 +406,16 @@
return;
if ((m_haveDoc) && (m_haveItem))
{
- if (!m_item->isGroup())
- {
- if (textFlowDisabled->isChecked())
- mode = PageItem::TextFlowDisabled;
- if (textFlowUsesFrameShape->isChecked())
- mode = PageItem::TextFlowUsesFrameShape;
- if (textFlowUsesBoundingBox->isChecked())
- mode = PageItem::TextFlowUsesBoundingBox;
- if (textFlowUsesContourLine->isChecked())
- mode = PageItem::TextFlowUsesContourLine;
- if (textFlowUsesImageClipping->isChecked())
- mode = PageItem::TextFlowUsesImageClipping;
- }
+ if (textFlowDisabled->isChecked())
+ mode = PageItem::TextFlowDisabled;
+ if (textFlowUsesFrameShape->isChecked())
+ mode = PageItem::TextFlowUsesFrameShape;
+ if (textFlowUsesBoundingBox->isChecked())
+ mode = PageItem::TextFlowUsesBoundingBox;
+ if (textFlowUsesContourLine->isChecked())
+ mode = PageItem::TextFlowUsesContourLine;
+ if (textFlowUsesImageClipping->isChecked())
+ mode = PageItem::TextFlowUsesImageClipping;
m_item->setTextFlowMode(mode);
m_doc->changed();
m_doc->invalidateAll();
@@ -516,8 +514,6 @@
void PropertiesPalette_Shape::showTextFlowMode(PageItem::TextFlowMode mode)
{
if (!m_ScMW || m_ScMW->scriptIsRunning() || !m_haveItem)
- return;
- if (m_item->isGroup())
return;
if (mode == PageItem::TextFlowDisabled)
textFlowDisabled->setChecked(true);
Modified: trunk/Scribus/scribus/ui/propertiespalette_shapebase.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/propertiespalette_shapebase.ui
==============================================================================
--- trunk/Scribus/scribus/ui/propertiespalette_shapebase.ui (original)
+++ trunk/Scribus/scribus/ui/propertiespalette_shapebase.ui Fri Nov 1 12:05:38 2019
@@ -30,341 +30,334 @@
<number>2</number>
</property>
<item>
- <widget class="QGroupBox" name="shapeGroup">
- <property name="title">
- <string>Shape</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- <layout class="QVBoxLayout" name="verticalLayout_2">
- <property name="spacing">
- <number>5</number>
- </property>
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout">
- <item>
- <widget class="Autoforms" name="customShape">
- <property name="toolTip">
- <string>Choose the shape of frame...</string>
- </property>
- <property name="text">
- <string>...</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="editShape">
- <property name="text">
- <string>&Edit...</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>
- </item>
- </layout>
- </item>
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_2">
- <item>
- <widget class="QLabel" name="roundRectLabel">
- <property name="text">
- <string>R&ound Corners:</string>
- </property>
- <property name="buddy">
- <cstring>roundRect</cstring>
- </property>
- </widget>
- </item>
- <item>
- <widget class="ScrSpinBox" name="roundRect">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string>Set radius of corner rounding</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="textFlowGroup">
- <property name="title">
- <string>Text &Flow Around Frame</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- <layout class="QVBoxLayout" name="verticalLayout_3">
- <property name="spacing">
- <number>5</number>
- </property>
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <item>
- <widget class="QToolButton" name="textFlowDisabled">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Disabled</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesFrameShape">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Use Frame &Shape</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesBoundingBox">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Use &Bounding Box</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesContourLine">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>&Use Contour Line</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="textFlowUsesImageClipping">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="text">
- <string>Use Image Clip Path</string>
- </property>
- <property name="checkable">
- <bool>true</bool>
- </property>
- <property name="autoExclusive">
- <bool>true</bool>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- <attribute name="buttonGroup">
- <string notr="true">textFlowBtnGroup</string>
- </attribute>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QStackedWidget" name="stackedWidget">
- <property name="currentIndex">
- <number>1</number>
- </property>
- <widget class="QWidget" name="page"/>
- <widget class="QWidget" name="page_2">
- <layout class="QVBoxLayout" name="verticalLayout_4">
- <item>
- <widget class="QGroupBox" name="fillRuleGroup">
- <property name="title">
- <string>Fill Rule</string>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- <layout class="QHBoxLayout" name="horizontalLayout_3">
- <property name="spacing">
- <number>5</number>
- </property>
- <property name="leftMargin">
- <number>2</number>
- </property>
- <property name="topMargin">
- <number>2</number>
- </property>
- <property name="rightMargin">
- <number>2</number>
- </property>
- <property name="bottomMargin">
- <number>2</number>
- </property>
- <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>
- <item>
- <widget class="QRadioButton" name="evenOdd">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string><qt>Any path self-intersections or subpaths create holes in the fill</qt></string>
- </property>
- <property name="text">
- <string>Even-Odd</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QRadioButton" name="nonZero">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="toolTip">
- <string><qt>Fill is solid unless a subpath is counter-directional</qt></string>
- </property>
- <property name="text">
- <string>Non Zero</string>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer_3">
- <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>
- </widget>
+ <layout class="QGridLayout" name="gridLayout">
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>Shape:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_5">
+ <item>
+ <widget class="QToolButton" name="textFlowUsesBoundingBox">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>22</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Text flow around bounding box</string>
+ </property>
+ <property name="text">
+ <string>Use &Bounding Box</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoExclusive">
+ <bool>true</bool>
+ </property>
+ <property name="toolButtonStyle">
+ <enum>Qt::ToolButtonIconOnly</enum>
+ </property>
+ <attribute name="buttonGroup">
+ <string notr="true">textFlowBtnGroup</string>
+ </attribute>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="textFlowUsesFrameShape">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>22</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Text flow around frame shape</string>
+ </property>
+ <property name="text">
+ <string>Use Frame &Shape</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoExclusive">
+ <bool>true</bool>
+ </property>
+ <property name="toolButtonStyle">
+ <enum>Qt::ToolButtonIconOnly</enum>
+ </property>
+ <attribute name="buttonGroup">
+ <string notr="true">textFlowBtnGroup</string>
+ </attribute>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="textFlowDisabled">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>22</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Text flow around frame disabled</string>
+ </property>
+ <property name="text">
+ <string>Disabled</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoExclusive">
+ <bool>true</bool>
+ </property>
+ <property name="toolButtonStyle">
+ <enum>Qt::ToolButtonIconOnly</enum>
+ </property>
+ <attribute name="buttonGroup">
+ <string notr="true">textFlowBtnGroup</string>
+ </attribute>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="textFlowUsesContourLine">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>22</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Text Flow around contour line</string>
+ </property>
+ <property name="text">
+ <string>&Use Contour Line</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoExclusive">
+ <bool>true</bool>
+ </property>
+ <property name="toolButtonStyle">
+ <enum>Qt::ToolButtonIconOnly</enum>
+ </property>
+ <attribute name="buttonGroup">
+ <string notr="true">textFlowBtnGroup</string>
+ </attribute>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="textFlowUsesImageClipping">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>22</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string>Text flow around image clip path</string>
+ </property>
+ <property name="text">
+ <string>Use Image Clip Path</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoExclusive">
+ <bool>true</bool>
+ </property>
+ <property name="toolButtonStyle">
+ <enum>Qt::ToolButtonIconOnly</enum>
+ </property>
+ <attribute name="buttonGroup">
+ <string notr="true">textFlowBtnGroup</string>
+ </attribute>
+ </widget>
+ </item>
+ <item>
+ <spacer name="horizontalSpacer_4">
+ <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>
- </widget>
- </widget>
+ </item>
+ <item row="1" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_6">
+ <item>
+ <widget class="Autoforms" name="customShape">
+ <property name="toolTip">
+ <string>Choose the shape of frame...</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="editShape">
+ <property name="text">
+ <string>&Edit...</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>
+ </item>
+ <item>
+ <widget class="QLabel" name="roundRectIcon">
+ <property name="minimumSize">
+ <size>
+ <width>10</width>
+ <height>10</height>
+ </size>
+ </property>
+ <property name="toolTip">
+ <string notr="true"/>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="ScrSpinBox" name="roundRect">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Fixed">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="toolTip">
+ <string>Set radius of corner rounding</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="3" column="0">
+ <widget class="QLabel" name="label_3">
+ <property name="text">
+ <string>Text Flow:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0">
+ <widget class="QLabel" name="label_4">
+ <property name="text">
+ <string>Fill Rule:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="QToolButton" name="evenOdd">
+ <property name="toolTip">
+ <string>Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoExclusive">
+ <bool>true</bool>
+ </property>
+ <attribute name="buttonGroup">
+ <string notr="true">fillRuleBtnGroup</string>
+ </attribute>
+ </widget>
+ </item>
+ <item>
+ <widget class="QToolButton" name="nonZero">
+ <property name="toolTip">
+ <string>Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)</string>
+ </property>
+ <property name="text">
+ <string>...</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="autoExclusive">
+ <bool>true</bool>
+ </property>
+ <attribute name="buttonGroup">
+ <string notr="true">fillRuleBtnGroup</string>
+ </attribute>
+ </widget>
+ </item>
+ <item>
+ <spacer name="horizontalSpacer_3">
+ <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>
<item>
<spacer name="verticalSpacer">
@@ -396,6 +389,7 @@
<resources/>
<connections/>
<buttongroups>
+ <buttongroup name="fillRuleBtnGroup"/>
<buttongroup name="textFlowBtnGroup"/>
</buttongroups>
</ui>
Modified: trunk/Scribus/scribus/ui/transparencypalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/transparencypalette.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/transparencypalette.cpp (original)
+++ trunk/Scribus/scribus/ui/transparencypalette.cpp Fri Nov 1 12:05:38 2019
@@ -91,6 +91,11 @@
if (!currentItem || !currentDoc)
return;
+
+ if (currentItem->isGroup())
+ hideSelectionButtons();
+ else
+ showSelectionButtons();
setActTrans(currentItem->fillTransparency(), currentItem->lineTransparency());
setActBlend(currentItem->fillBlendmode(), currentItem->lineBlendmode());
@@ -196,12 +201,21 @@
setCurrentItem(currentItem);
}
+void TransparencyPalette::showSelectionButtons()
+{
+ editLineSelector->show();
+ editLineSelector->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed));
+ editFillSelector->show();
+ editFillSelector->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed));
+}
void TransparencyPalette::hideSelectionButtons()
{
editLineSelector->hide();
editLineSelector->setSizePolicy(QSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored));
editFillSelector->hide();
editFillSelector->setSizePolicy(QSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored));
+ stackedWidget->setCurrentIndex(1);
+ editFillSelector->setChecked(true);
}
void TransparencyPalette::updateFromItem()
Modified: trunk/Scribus/scribus/ui/transparencypalette.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23309&path=/trunk/Scribus/scribus/ui/transparencypalette.h
==============================================================================
--- trunk/Scribus/scribus/ui/transparencypalette.h (original)
+++ trunk/Scribus/scribus/ui/transparencypalette.h Fri Nov 1 12:05:38 2019
@@ -61,6 +61,7 @@
void setDocument(ScribusDoc* doc);
void setCurrentItem(PageItem* item);
+ void showSelectionButtons();
void hideSelectionButtons();
void updateFromItem();
More information about the scribus-commit
mailing list