]> Shamusworld >> Repos - architektonas/blob - src/actions/actionblocksadd.cpp
Fixed problem with MDI activation.
[architektonas] / src / actions / actionblocksadd.cpp
1 // actionblocksadd.cpp
2 //
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
9 //
10 // JLH = James L. Hammons <jlhamm@acm.org>
11 //
12 // Who  When        What
13 // ---  ----------  -----------------------------------------------------------
14 // JLH  07/12/2010  Added this text. :-)
15 //
16
17 #include "actionblocksadd.h"
18
19 #include "drawing.h"
20 #include "dialogfactory.h"
21
22 ActionBlocksAdd::ActionBlocksAdd(EntityContainer & container, GraphicView & graphicView):
23         ActionInterface("Add Block", container, graphicView)
24 {
25 }
26
27 ActionBlocksAdd::~ActionBlocksAdd()
28 {
29 }
30
31 void ActionBlocksAdd::trigger()
32 {
33         DEBUG->print("adding block");
34
35         if (graphic)
36         {
37                 BlockList * blockList = graphic->getBlockList();
38
39                 if (blockList)
40                 {
41                         BlockData d = DIALOGFACTORY->requestNewBlockDialog(blockList);
42
43                         if (d.isValid())
44                                 graphic->addBlock(new Block(container, d));
45                 }
46         }
47
48         finish();
49 }
50
51 void ActionBlocksAdd::init(int status)
52 {
53         ActionInterface::init(status);
54         trigger();
55 }