1 // actionlayerstogglelock.cpp
3 // Part of the Architektonas Project
4 // Originally part of QCad Community Edition by Andrew Mustun
5 // Extensively rewritten and refactored by James L. Hammons
6 // Portions copyright (C) 2001-2003 RibbonSoft
7 // Copyright (C) 2010 Underground Software
8 // See the README and GPLv2 files for licensing and warranty information
10 // JLH = James L. Hammons <jlhamm@acm.org>
13 // --- ---------- -----------------------------------------------------------
14 // JLH 06/04/2010 Added this text. :-)
17 #include "actionlayerstogglelock.h"
19 #include "graphicview.h"
22 ActionLayersToggleLock::ActionLayersToggleLock(EntityContainer & container, GraphicView & graphicView): ActionInterface("Toggle Layer Visibility",
23 container, graphicView)
27 ActionLayersToggleLock::~ActionLayersToggleLock()
31 void ActionLayersToggleLock::trigger()
33 DEBUG->print("toggle layer");
37 Layer * layer = graphic->getActiveLayer();
41 graphic->toggleLayerLock(layer);
43 // deselect entities on locked layer:
44 if (layer->isLocked())
46 for(Entity * e=container->firstEntity(); e!=NULL;
47 e=container->nextEntity())
49 if (e != NULL && e->isVisible() && e->getLayer() == layer)
51 #warning "!!! Old rendering path need upgrade !!!"
54 graphicView->deleteEntity(e);
57 e->setSelected(false);
59 #warning "!!! Old rendering path need upgrade !!!"
62 graphicView->drawEntity(e);
73 void ActionLayersToggleLock::init(int status)
75 ActionInterface::init(status);