mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 08:58:11 +00:00
LibGUI: Add Undo/Redo to GCommonActions
This commit is contained in:
parent
e83390387c
commit
b41b5433f4
3 changed files with 18 additions and 12 deletions
|
@ -6,6 +6,16 @@
|
||||||
|
|
||||||
namespace GCommonActions {
|
namespace GCommonActions {
|
||||||
|
|
||||||
|
NonnullRefPtr<GAction> make_undo_action(Function<void(GAction&)> callback, GWidget* widget)
|
||||||
|
{
|
||||||
|
return GAction::create("Undo", { Mod_Ctrl, Key_Z }, GraphicsBitmap::load_from_file("/res/icons/16x16/undo.png"), move(callback), widget);
|
||||||
|
}
|
||||||
|
|
||||||
|
NonnullRefPtr<GAction> make_redo_action(Function<void(GAction&)> callback, GWidget* widget)
|
||||||
|
{
|
||||||
|
return GAction::create("Redo", { Mod_Ctrl, Key_Y }, GraphicsBitmap::load_from_file("/res/icons/16x16/redo.png"), move(callback), widget);
|
||||||
|
}
|
||||||
|
|
||||||
NonnullRefPtr<GAction> make_delete_action(Function<void(GAction&)> callback, GWidget* widget)
|
NonnullRefPtr<GAction> make_delete_action(Function<void(GAction&)> callback, GWidget* widget)
|
||||||
{
|
{
|
||||||
return GAction::create("Delete", { Mod_None, Key_Delete }, GraphicsBitmap::load_from_file("/res/icons/16x16/delete.png"), move(callback), widget);
|
return GAction::create("Delete", { Mod_None, Key_Delete }, GraphicsBitmap::load_from_file("/res/icons/16x16/delete.png"), move(callback), widget);
|
||||||
|
|
|
@ -19,6 +19,8 @@ class GMenuItem;
|
||||||
class GWidget;
|
class GWidget;
|
||||||
|
|
||||||
namespace GCommonActions {
|
namespace GCommonActions {
|
||||||
|
NonnullRefPtr<GAction> make_undo_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
||||||
|
NonnullRefPtr<GAction> make_redo_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
||||||
NonnullRefPtr<GAction> make_cut_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
NonnullRefPtr<GAction> make_cut_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
||||||
NonnullRefPtr<GAction> make_copy_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
NonnullRefPtr<GAction> make_copy_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
||||||
NonnullRefPtr<GAction> make_paste_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
NonnullRefPtr<GAction> make_paste_action(Function<void(GAction&)>, GWidget* widget = nullptr);
|
||||||
|
|
|
@ -35,18 +35,12 @@ GTextEditor::~GTextEditor()
|
||||||
|
|
||||||
void GTextEditor::create_actions()
|
void GTextEditor::create_actions()
|
||||||
{
|
{
|
||||||
m_undo_action = GAction::create(
|
m_undo_action = GCommonActions::make_undo_action([&](auto&) {
|
||||||
"Undo", { Mod_Ctrl, Key_Z }, GraphicsBitmap::load_from_file("/res/icons/16x16/undo.png"), [&](const GAction&) {
|
// FIXME: Undo
|
||||||
// FIXME: Undo
|
});
|
||||||
},
|
m_redo_action = GCommonActions::make_redo_action([&](auto&) {
|
||||||
this);
|
// FIXME: Undo
|
||||||
|
});
|
||||||
m_redo_action = GAction::create(
|
|
||||||
"Redo", { Mod_Ctrl, Key_Y }, GraphicsBitmap::load_from_file("/res/icons/16x16/redo.png"), [&](const GAction&) {
|
|
||||||
// FIXME: Redo
|
|
||||||
},
|
|
||||||
this);
|
|
||||||
|
|
||||||
m_cut_action = GCommonActions::make_cut_action([&](auto&) { cut(); }, this);
|
m_cut_action = GCommonActions::make_cut_action([&](auto&) { cut(); }, this);
|
||||||
m_copy_action = GCommonActions::make_copy_action([&](auto&) { copy(); }, this);
|
m_copy_action = GCommonActions::make_copy_action([&](auto&) { copy(); }, this);
|
||||||
m_paste_action = GCommonActions::make_paste_action([&](auto&) { paste(); }, this);
|
m_paste_action = GCommonActions::make_paste_action([&](auto&) { paste(); }, this);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue