Engauge Digitizer 2
Loading...
Searching...
No Matches
FileCmdOpen.cpp
1/******************************************************************************************************
2 * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3 * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4 * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5 ******************************************************************************************************/
6
7#include "EngaugeAssert.h"
8#include "FileCmdOpen.h"
9#include "FileCmdSerialize.h"
10#include "Logger.h"
11#include "MainWindow.h"
12#include <QTextStream>
13#include "QtToString.h"
14#include <QXmlStreamReader>
15#include "Xml.h"
16
17const QString CMD_DESCRIPTION ("Open File");
18
19FileCmdOpen::FileCmdOpen (QXmlStreamReader &reader) :
20 FileCmdAbstract (CMD_DESCRIPTION)
21{
22 LOG4CPP_INFO_S ((*mainCat)) << "FileCmdOpen::FileCmdOpen";
23
24 QXmlStreamAttributes attributes = reader.attributes();
25
26 if (!attributes.hasAttribute(FILE_CMD_SERIALIZE_FILENAME)) {
27 xmlExitWithError (reader,
28 QString ("%1 %2")
29 .arg (QObject::tr ("Missing attribute"))
30 .arg (FILE_CMD_SERIALIZE_FILENAME));
31 }
32
33 m_filename = attributes.value(FILE_CMD_SERIALIZE_FILENAME).toString();
34}
35
36FileCmdOpen::~FileCmdOpen ()
37{
38}
39
40void FileCmdOpen::redo (MainWindow &mainWindow)
41{
42 LOG4CPP_INFO_S ((*mainCat)) << "FileCmdOpen::redo";
43
44 mainWindow.cmdFileOpen (m_filename);
45}
Base class for 'file commands' that are used specifically for regression testing of file import/open/...
FileCmdOpen(QXmlStreamReader &reader)
Constructor for parsing file script xml.
virtual void redo(MainWindow &mainWindow)
Apply this command, through MainWindow.
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
Definition MainWindow.h:78
void cmdFileOpen(const QString &fileName)
Open file. This is called from a file script command.