aseprite/src/app/commands/cmd_save_file.h

48 lines
1.2 KiB
C
Raw Normal View History

2015-02-12 15:16:25 +00:00
// Aseprite
2016-05-31 19:53:30 +00:00
// Copyright (C) 2001-2016 David Capello
2015-02-12 15:16:25 +00:00
//
2016-08-26 20:02:58 +00:00
// This program is distributed under the terms of
// the End-User License Agreement for Aseprite.
#ifndef APP_COMMANDS_CMD_SAVE_FILE_H_INCLUDED
#define APP_COMMANDS_CMD_SAVE_FILE_H_INCLUDED
2014-03-29 22:40:17 +00:00
#pragma once
#include "app/commands/command.h"
#include "doc/frame.h"
#include <string>
namespace app {
2016-05-31 19:53:30 +00:00
class Document;
class FileSelectorDelegate;
class SaveFileBaseCommand : public Command {
public:
SaveFileBaseCommand(const char* shortName, const char* friendlyName, CommandFlags flags);
std::string selectedFilename() const {
return m_selectedFilename;
}
protected:
void onLoadParams(const Params& params) override;
bool onEnabled(Context* context) override;
bool saveAsDialog(Context* context, const char* dlgTitle,
FileSelectorDelegate* delegate = nullptr);
2016-05-31 19:53:30 +00:00
void saveDocumentInBackground(const Context* context,
const app::Document* document,
bool markAsSaved) const;
std::string m_filename;
std::string m_filenameFormat;
std::string m_selectedFilename;
std::string m_frameTag;
doc::frame_t m_fromFrame, m_toFrame;
};
} // namespace app
#endif