00001 /****************************************************************************************************** 00002 * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released * 00003 * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file * 00004 * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. * 00005 ******************************************************************************************************/ 00006 00007 #include "CmdMediator.h" 00008 #include "DigitizeStateAbstractBase.h" 00009 #include "DigitizeStateContext.h" 00010 #include "Document.h" 00011 #include "Logger.h" 00012 #include "MainWindow.h" 00013 #include "MainWindowModel.h" 00014 #include "MimePointsDetector.h" 00015 #include <QCursor> 00016 #include <QGraphicsScene> 00017 #include <QImage> 00018 #include <QSize> 00019 #include <QTimer> 00020 #include "QtToString.h" 00021 #include "Transformation.h" 00022 00023 DigitizeStateAbstractBase::DigitizeStateAbstractBase(DigitizeStateContext &context) : 00024 m_context (context) 00025 { 00026 } 00027 00028 DigitizeStateAbstractBase::~DigitizeStateAbstractBase() 00029 { 00030 } 00031 00032 bool DigitizeStateAbstractBase::canPasteProtected (const Transformation &transformation, 00033 const QSize &viewSize) const 00034 { 00035 MimePointsDetector mimePointsDetector; 00036 00037 return mimePointsDetector.isMimePointsData (transformation, 00038 viewSize); 00039 } 00040 00041 DigitizeStateContext &DigitizeStateAbstractBase::context() 00042 { 00043 return m_context; 00044 } 00045 00046 const DigitizeStateContext &DigitizeStateAbstractBase::context() const 00047 { 00048 return m_context; 00049 } 00050 00051 void DigitizeStateAbstractBase::setCursor(CmdMediator *cmdMediator) 00052 { 00053 LOG4CPP_DEBUG_S ((*mainCat)) << "DigitizeStateAbstractBase::setCursor"; 00054 00055 // Note that we are setting the QGraphicsView cursor and NOT the QApplication override cursor 00056 m_context.view ().setCursor (cursor (cmdMediator)); 00057 }