mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 19:27:44 +00:00
Applications: Use GUI::CommonActions for save and save as menu options
This commit is contained in:
parent
9e80c67608
commit
e8ff7c895b
4 changed files with 13 additions and 14 deletions
|
@ -105,11 +105,11 @@ int main(int argc, char** argv)
|
||||||
|
|
||||||
set_edited_font(open_path.value(), move(new_font), window->position());
|
set_edited_font(open_path.value(), move(new_font), window->position());
|
||||||
}));
|
}));
|
||||||
app_menu.add_action(GUI::Action::create("Save", { Mod_Ctrl, Key_S }, Gfx::Bitmap::load_from_file("/res/icons/16x16/save.png"), [&](auto&) {
|
app_menu.add_action(GUI::CommonActions::make_save_action([&](auto&) {
|
||||||
FontEditorWidget* editor = static_cast<FontEditorWidget*>(window->main_widget());
|
FontEditorWidget* editor = static_cast<FontEditorWidget*>(window->main_widget());
|
||||||
editor->save_as(editor->path());
|
editor->save_as(editor->path());
|
||||||
}));
|
}));
|
||||||
app_menu.add_action(GUI::Action::create("Save as...", { Mod_Ctrl | Mod_Shift, Key_S }, Gfx::Bitmap::load_from_file("/res/icons/16x16/save.png"), [&](auto&) {
|
app_menu.add_action(GUI::CommonActions::make_save_as_action([&](auto&) {
|
||||||
FontEditorWidget* editor = static_cast<FontEditorWidget*>(window->main_widget());
|
FontEditorWidget* editor = static_cast<FontEditorWidget*>(window->main_widget());
|
||||||
LexicalPath lexical_path(editor->path());
|
LexicalPath lexical_path(editor->path());
|
||||||
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window, lexical_path.title(), lexical_path.extension());
|
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window, lexical_path.title(), lexical_path.extension());
|
||||||
|
|
|
@ -99,7 +99,7 @@ HexEditorWidget::HexEditorWidget()
|
||||||
open_file(open_path.value());
|
open_file(open_path.value());
|
||||||
});
|
});
|
||||||
|
|
||||||
m_save_action = GUI::Action::create("Save", { Mod_Ctrl, Key_S }, Gfx::Bitmap::load_from_file("/res/icons/16x16/save.png"), [&](const GUI::Action&) {
|
m_save_action = GUI::CommonActions::make_save_action([&](auto&) {
|
||||||
if (!m_path.is_empty()) {
|
if (!m_path.is_empty()) {
|
||||||
if (!m_editor->write_to_file(m_path)) {
|
if (!m_editor->write_to_file(m_path)) {
|
||||||
GUI::MessageBox::show(window(), "Unable to save file.\n", "Error", GUI::MessageBox::Type::Error);
|
GUI::MessageBox::show(window(), "Unable to save file.\n", "Error", GUI::MessageBox::Type::Error);
|
||||||
|
@ -113,7 +113,7 @@ HexEditorWidget::HexEditorWidget()
|
||||||
m_save_as_action->activate();
|
m_save_as_action->activate();
|
||||||
});
|
});
|
||||||
|
|
||||||
m_save_as_action = GUI::Action::create("Save as...", { Mod_Ctrl | Mod_Shift, Key_S }, Gfx::Bitmap::load_from_file("/res/icons/16x16/save.png"), [this](const GUI::Action&) {
|
m_save_as_action = GUI::CommonActions::make_save_as_action([&](auto&) {
|
||||||
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window(), m_name.is_null() ? "Untitled" : m_name, m_extension.is_null() ? "bin" : m_extension);
|
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window(), m_name.is_null() ? "Untitled" : m_name, m_extension.is_null() ? "bin" : m_extension);
|
||||||
if (!save_path.has_value())
|
if (!save_path.has_value())
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -74,15 +74,14 @@ int main(int argc, char** argv)
|
||||||
keyboard_mapper_widget->save();
|
keyboard_mapper_widget->save();
|
||||||
});
|
});
|
||||||
|
|
||||||
auto save_as_action = GUI::Action::create("Save as...", { Mod_Ctrl | Mod_Shift, Key_S }, Gfx::Bitmap::load_from_file("/res/icons/16x16/save.png"),
|
auto save_as_action = GUI::CommonActions::make_save_as_action([&](auto&) {
|
||||||
[&](auto&) {
|
String m_name = "Unnamed";
|
||||||
String m_name = "Unnamed";
|
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window, m_name, "json");
|
||||||
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window, m_name, "json");
|
if (!save_path.has_value())
|
||||||
if (!save_path.has_value())
|
return;
|
||||||
return;
|
|
||||||
|
|
||||||
keyboard_mapper_widget->save_to_file(save_path.value());
|
keyboard_mapper_widget->save_to_file(save_path.value());
|
||||||
});
|
});
|
||||||
|
|
||||||
auto quit_action = GUI::CommonActions::make_quit_action(
|
auto quit_action = GUI::CommonActions::make_quit_action(
|
||||||
[&](auto&) {
|
[&](auto&) {
|
||||||
|
|
|
@ -300,7 +300,7 @@ TextEditorWidget::TextEditorWidget()
|
||||||
open_sesame(open_path.value());
|
open_sesame(open_path.value());
|
||||||
});
|
});
|
||||||
|
|
||||||
m_save_as_action = GUI::Action::create("Save as...", { Mod_Ctrl | Mod_Shift, Key_S }, Gfx::Bitmap::load_from_file("/res/icons/16x16/save.png"), [this](const GUI::Action&) {
|
m_save_as_action = GUI::CommonActions::make_save_as_action([&](auto&) {
|
||||||
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window(), m_name.is_null() ? "Untitled" : m_name, m_extension.is_null() ? "txt" : m_extension);
|
Optional<String> save_path = GUI::FilePicker::get_save_filepath(window(), m_name.is_null() ? "Untitled" : m_name, m_extension.is_null() ? "txt" : m_extension);
|
||||||
if (!save_path.has_value())
|
if (!save_path.has_value())
|
||||||
return;
|
return;
|
||||||
|
@ -315,7 +315,7 @@ TextEditorWidget::TextEditorWidget()
|
||||||
dbgln("Wrote document to {}", save_path.value());
|
dbgln("Wrote document to {}", save_path.value());
|
||||||
});
|
});
|
||||||
|
|
||||||
m_save_action = GUI::Action::create("Save", { Mod_Ctrl, Key_S }, Gfx::Bitmap::load_from_file("/res/icons/16x16/save.png"), [&](const GUI::Action&) {
|
m_save_action = GUI::CommonActions::make_save_action([&](auto&) {
|
||||||
if (!m_path.is_empty()) {
|
if (!m_path.is_empty()) {
|
||||||
if (!m_editor->write_to_file(m_path)) {
|
if (!m_editor->write_to_file(m_path)) {
|
||||||
GUI::MessageBox::show(window(), "Unable to save file.\n", "Error", GUI::MessageBox::Type::Error);
|
GUI::MessageBox::show(window(), "Unable to save file.\n", "Error", GUI::MessageBox::Type::Error);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue