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 05/28/2010 Added this text. :-)
17 #include "rs_document.h"
22 * @param parent Parent of the document. Often that's NULL but
23 * for blocks it's the blocklist.
25 RS_Document::RS_Document(RS_EntityContainer * parent):
26 RS_EntityContainer(parent), RS_Undo()
28 RS_DEBUG->print("RS_Document::RS_Document() ");
31 formatType = RS2::FormatUnknown;
33 RS_Color col(RS2::FlagByLayer);
34 activePen = RS_Pen(col, RS2::WidthByLayer, RS2::LineByLayer);
37 RS_Document::~RS_Document()
42 * @return true for all document entities (e.g. Graphics or Blocks).
44 bool RS_Document::isDocument() const
50 * Removes an entity from the entiy container. Implementation
53 void RS_Document::removeUndoable(RS_Undoable * u)
55 if (u != NULL && u->undoRtti() == RS2::UndoableEntity)
57 removeEntity((RS_Entity *)u);
62 * @return Currently active drawing pen.
64 RS_Pen RS_Document::getActivePen() const
70 * Sets the currently active drawing pen to p.
72 void RS_Document::setActivePen(RS_Pen p)
78 * @return File name of the document currently loaded.
79 * Note, that the default file name is empty.
81 QString RS_Document::getFilename() const
87 * Sets file name for the document currently loaded.
89 void RS_Document::setFilename(const QString & fn)
95 * Sets the documents modified status to 'm'.
97 void RS_Document::setModified(bool m)
99 //std::cout << "RS_Document::setModified: %d" << (int)m << std::endl;
104 * @retval true The document has been modified since it was last saved.
105 * @retval false The document has not been modified since it was last saved.
107 bool RS_Document::isModified() const
113 * Overwritten to set modified flag before starting an undo cycle.
115 void RS_Document::startUndoCycle()
118 RS_Undo::startUndoCycle();