Subversion Repositories Scribus

Compare Revisions

Ignore whitespace Rev 15234 → Rev 15235

/trunk/Scribus/scribus/scribusdoc.cpp
2066,10 → 2066,10
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
bool oldPrintable = (*it).isPrintable;
(*it).isPrintable = isPrintable;
it->isPrintable = isPrintable;
 
if (oldPrintable!=isPrintable && UndoManager::undoEnabled())
{
2096,8 → 2096,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return (*it).isPrintable;
if (it->ID == layerID)
return it->isPrintable;
}
return false;
}
2110,9 → 2110,9
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
(*it).isViewable = isViewable;
it->isViewable = isViewable;
found=true;
break;
}
2129,8 → 2129,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return (*it).isViewable;
if (it->ID == layerID)
return it->isViewable;
}
return false;
}
2143,9 → 2143,9
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
(*it).isEditable = !isLocked;
it->isEditable = !isLocked;
found=true;
break;
}
2162,8 → 2162,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return !(*it).isEditable;
if (it->ID == layerID)
return !it->isEditable;
}
return false;
}
2176,15 → 2176,24
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
(*it).flowControl = flow;
it->flowControl = flow;
found=true;
break;
}
}
if (found)
{
// #9188 : invalidate layout of items below layer
for (it = Layers.begin(); it != itend; ++it)
{
if (it->ID == layerID)
break;
invalidateLayer(it->ID);
}
changed();
}
return found;
}
 
2195,8 → 2204,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return (*it).flowControl;
if (it->ID == layerID)
return it->flowControl;
}
return false;
}
2209,9 → 2218,9
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
(*it).transparency = trans;
it->transparency = trans;
found=true;
break;
}
2228,8 → 2237,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return (*it).transparency;
if (it->ID == layerID)
return it->transparency;
}
return 1.0;
}
2242,9 → 2251,9
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
(*it).blendMode = blend;
it->blendMode = blend;
found=true;
break;
}
2261,8 → 2270,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return (*it).blendMode;
if (it->ID == layerID)
return it->blendMode;
}
return 0;
}
2275,9 → 2284,9
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
(*it).outlineMode = outline;
it->outlineMode = outline;
found=true;
break;
}
2294,8 → 2303,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return (*it).outlineMode;
if (it->ID == layerID)
return it->outlineMode;
}
return false;
}
2308,9 → 2317,9
bool found=false;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
if (it->ID == layerID)
{
(*it).markerColor = color;
it->markerColor = color;
found=true;
break;
}
2327,8 → 2336,8
ScLayers::iterator it;
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).ID == layerID)
return (*it).markerColor;
if (it->ID == layerID)
return it->markerColor;
}
return QColor(0, 0, 0);
}
2386,7 → 2395,7
ScLayers::iterator itend=Layers.end();
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).Level == layerLevel-1)
if (it->Level == layerLevel-1)
break;
}
ScLayers::iterator it2;
2393,11 → 2402,20
ScLayers::iterator it2end=Layers.end();
for (it2 = Layers.begin(); it2 != it2end; ++it2)
{
if ((*it2).Level == layerLevel)
if (it2->Level == layerLevel)
break;
}
(*it2).Level -= 1;
(*it).Level += 1;
it2->Level -= 1;
it->Level += 1;
// #9188 : invalidate layout of items in below layers
int maxLevel = qMax(it->Level, it2->Level);
for (it = Layers.begin(); it != itend; ++it)
{
if (it->flowControl)
invalidateLayer(it->ID);
if (it->Level == maxLevel)
break;
}
return true;
}
 
2424,7 → 2442,7
ScLayers::iterator itend=Layers.end();
for (it = Layers.begin(); it != itend; ++it)
{
if ((*it).Level == layerLevel+1)
if (it->Level == layerLevel+1)
break;
}
ScLayers::iterator it2;
2431,11 → 2449,20
ScLayers::iterator it2end=Layers.end();
for (it2 = Layers.begin(); it2 != it2end; ++it2)
{
if ((*it2).Level == layerLevel)
if (it2->Level == layerLevel)
break;
}
(*it2).Level += 1;
(*it).Level -= 1;
it2->Level += 1;
it->Level -= 1;
// #9188 : invalidate layout of items in below layers
int maxLevel = qMax(it->Level, it2->Level);
for (it = Layers.begin(); it != itend; ++it)
{
if (it->flowControl)
invalidateLayer(it->ID);
if (it->Level == maxLevel)
break;
}
return true;
}
 
10009,6 → 10036,26
}
}
 
void ScribusDoc::invalidateLayer(int layerID)
{
for (int c = 0; c < DocItems.count(); ++c)
{
PageItem *ite = DocItems.at(c);
if (ite->LayerID == layerID)
ite->invalidateLayout();
}
if (this->masterPageMode())
{
for (int c=0; c < MasterItems.count(); ++c)
{
PageItem *ite = MasterItems.at(c);
if (ite->LayerID == layerID)
ite->invalidateLayout();
}
}
// for now hope that frameitems get invalidated by their parents layout() method.
}
 
void ScribusDoc::invalidateRegion(QRectF region)
{
for (int c=0; c<DocItems.count(); ++c)
/trunk/Scribus/scribus/scribusdoc.h
142,6 → 142,8
MassObservable<PageItem*> * itemsChanged() { return &m_itemsChanged; }
MassObservable<Page*> * pagesChanged() { return &m_pagesChanged; }
MassObservable<QRectF> * regionsChanged() { return &m_regionsChanged; }
void invalidateLayer(int layerID);
void invalidateRegion(QRectF region);
 
 
/trunk/Scribus/scribus/ui/layers.cpp
399,6 → 399,7
if (strcmp(senderBox->metaObject()->className(), "QCheckBox") == 0)
{
m_Doc->setLayerFlow(layerID,((QCheckBox*)(senderBox))->isChecked());
emit LayerChanged();
setActiveLayer(Table->currentRow(), -1);
}
}