| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| |
|
| | #ifndef RS_LAYERLIST_H |
| | #define RS_LAYERLIST_H |
| |
|
| | #include <QList> |
| |
|
| | class RS_Layer; |
| | class RS_LayerListListener; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | class RS_LayerList { |
| | public: |
| | RS_LayerList(); |
| | virtual ~RS_LayerList() = default; |
| |
|
| | void clear(); |
| |
|
| | |
| | |
| | |
| | unsigned int count() const { |
| | return m_layers.count(); |
| | } |
| |
|
| | |
| | |
| | |
| | RS_Layer* at(unsigned int i) { |
| | return m_layers.at(i); |
| | } |
| | QList<RS_Layer*>::iterator begin(); |
| | QList<RS_Layer*>::iterator end(); |
| | QList<RS_Layer*>::const_iterator begin()const; |
| | QList<RS_Layer*>::const_iterator end()const; |
| |
|
| | void activate(const QString& name, bool notify = false); |
| | void fireLayerActivated(); |
| | void activate(RS_Layer* layer, bool notify = false); |
| | |
| | RS_Layer* getActive() const { |
| | return m_activeLayer; |
| | } |
| | virtual void add(RS_Layer* layerToAdd); |
| | void fireLayerRemoved(RS_Layer* layer); |
| | virtual void remove(RS_Layer* layerToRemove); |
| | virtual void edit(RS_Layer* layer, const RS_Layer& source); |
| | RS_Layer* find(const QString& name); |
| | int getIndex(const QString& name); |
| | int getIndex(RS_Layer* layer); |
| | void toggle(const QString& name); |
| | void toggle(RS_Layer* layer); |
| | void toggleLock(RS_Layer* layer); |
| | void togglePrint(RS_Layer* layer); |
| | void toggleConstruction(RS_Layer* layer); |
| | void freezeAll(bool freeze); |
| | void lockAll(bool lock); |
| |
|
| | void toggleLockMulti(QList<RS_Layer*> layers); |
| | void togglePrintMulti(QList<RS_Layer*> layers); |
| | void toggleConstructionMulti(QList<RS_Layer*> layers); |
| | void toggleFreezeMulti(QList<RS_Layer*> layers); |
| |
|
| | void setFreezeMulti(QList<RS_Layer*> layersEnable, QList<RS_Layer*> layersDisable); |
| | void setLockMulti(QList<RS_Layer*> layersToUnlock, QList<RS_Layer*> layersToLock); |
| | void setPrintMulti(QList<RS_Layer*> layersNoPrint, QList<RS_Layer*> layersPrint); |
| | void setConstructionMulti(QList<RS_Layer*> layersNoConstruction, QList<RS_Layer*> layersConstruction); |
| | void fireEdit(RS_Layer* layer); |
| |
|
| | void addListener(RS_LayerListListener* listener); |
| | void removeListener(RS_LayerListListener* listener); |
| | |
| | |
| | |
| | void setModified(bool m); |
| | |
| | |
| | |
| | |
| | virtual bool isModified() const { |
| | return m_modified; |
| | } |
| | |
| | |
| | |
| | void sort(); |
| | void fireLayerAdded(RS_Layer* layer); |
| | void fireLayerToggled(); |
| | void slotUpdateLayerList(); |
| | friend std::ostream& operator << (std::ostream& os, RS_LayerList& l); |
| |
|
| | private: |
| | |
| | QList<RS_Layer*> m_layers; |
| | |
| | QList<RS_LayerListListener*> m_layerListListeners; |
| | RS_Layer *m_activeLayer = nullptr; |
| | |
| | bool m_modified = false; |
| | }; |
| |
|
| | #endif |
| |
|