aseprite/src/app/commands/cmd_about.cpp

57 lines
1.1 KiB
C++
Raw Normal View History

2015-02-12 15:16:25 +00:00
// Aseprite
// Copyright (C) 2020 Igara Studio S.A.
// Copyright (C) 2001-2018 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.
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include "app/app.h"
#include "app/commands/command.h"
#include "app/modules/gui.h"
#include "app/ui/main_window.h"
#include "base/bind.h"
#include "fmt/format.h"
#include "ver/info.h"
#include "about.xml.h"
namespace app {
using namespace ui;
class AboutCommand : public Command {
public:
AboutCommand();
protected:
void onExecute(Context* context) override;
};
AboutCommand::AboutCommand()
: Command(CommandId::About(), CmdUIOnlyFlag)
{
}
void AboutCommand::onExecute(Context* context)
{
gen::About window;
window.title()->setText(fmt::format("{} v{}", get_app_name(), get_app_version()));
window.licenses()->Click.connect(
[&window]{
window.closeWindow(nullptr);
App::instance()->mainWindow()->showBrowser("docs/LICENSES.md");
});
window.openWindowInForeground();
}
Command* CommandFactory::createAboutCommand()
{
return new AboutCommand;
}
} // namespace app