添加LayerWrapper接口
parent
3904ff0b61
commit
8bf6835c23
|
@ -413,4 +413,19 @@ bool FolderLayerWrapper::deleteable(bool excludeSubTree) const
|
|||
return this->getReferencedBy() == -1;
|
||||
else
|
||||
return this->referencedCount() == 0;
|
||||
}
|
||||
|
||||
bool LayerWrapper::referencingGroupElement() const
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool LeafLayerWrapper::referencingGroupElement() const
|
||||
{
|
||||
return typeid(*wrappedElement) == typeid(GroupElement);
|
||||
}
|
||||
|
||||
bool LayerWrapper::canApplyStyles() const
|
||||
{
|
||||
return typeid(*this) == typeid(LeafLayerWrapper) && !referencingGroupElement();
|
||||
}
|
|
@ -73,6 +73,8 @@ class LayerWrapper
|
|||
virtual void refreshTreeItem();
|
||||
virtual size_t referencedCount(bool excludeSelf = false) const;
|
||||
virtual bool deleteable(bool excludeSubTree = false) const;
|
||||
virtual bool referencingGroupElement() const;
|
||||
bool canApplyStyles() const;
|
||||
};
|
||||
|
||||
class FolderLayerWrapper : public LayerWrapper
|
||||
|
@ -117,6 +119,7 @@ class LeafLayerWrapper : public LayerWrapper
|
|||
void collectDownReachable(std::set<LayerWrapper*>& reachable) override;
|
||||
QTreeWidgetItem* getQTreeItem() override;
|
||||
void refreshTreeItem() override;
|
||||
bool referencingGroupElement() const override;
|
||||
};
|
||||
|
||||
Q_DECLARE_METATYPE(LayerWrapper *)
|
||||
|
|
Loading…
Reference in New Issue