1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 12:27:35 +00:00

Spreadsheet: Port from Result to ErrorOr

This commit is contained in:
Lucas CHOLLET 2023-01-14 18:25:51 -05:00 committed by Ali Mohammad Pur
parent 4952cdfe2b
commit 81008062a7
4 changed files with 15 additions and 27 deletions

View file

@ -175,13 +175,13 @@ void CSVImportDialogPage::update_preview()
m_data_preview_table_view->update(); m_data_preview_table_view->update();
} }
Result<NonnullRefPtrVector<Sheet>, DeprecatedString> ImportDialog::make_and_run_for(GUI::Window& parent, StringView mime, Core::File& file, Workbook& workbook) ErrorOr<NonnullRefPtrVector<Sheet>, DeprecatedString> ImportDialog::make_and_run_for(GUI::Window& parent, StringView mime, Core::File& file, Workbook& workbook)
{ {
auto wizard = GUI::WizardDialog::construct(&parent); auto wizard = GUI::WizardDialog::construct(&parent);
wizard->set_title("File Import Wizard"); wizard->set_title("File Import Wizard");
wizard->set_icon(GUI::Icon::default_icon("app-spreadsheet"sv).bitmap_for_size(16)); wizard->set_icon(GUI::Icon::default_icon("app-spreadsheet"sv).bitmap_for_size(16));
auto import_xsv = [&]() -> Result<NonnullRefPtrVector<Sheet>, DeprecatedString> { auto import_xsv = [&]() -> ErrorOr<NonnullRefPtrVector<Sheet>, DeprecatedString> {
auto contents = file.read_all(); auto contents = file.read_all();
CSVImportDialogPage page { contents }; CSVImportDialogPage page { contents };
wizard->replace_page(page.page()); wizard->replace_page(page.page());
@ -203,29 +203,19 @@ Result<NonnullRefPtrVector<Sheet>, DeprecatedString> ImportDialog::make_and_run_
} }
return sheets; return sheets;
} else {
return DeprecatedString { "CSV Import was cancelled" };
} }
return DeprecatedString { "CSV Import was cancelled" };
}; };
auto import_worksheet = [&]() -> Result<NonnullRefPtrVector<Sheet>, DeprecatedString> { auto import_worksheet = [&]() -> ErrorOr<NonnullRefPtrVector<Sheet>, DeprecatedString> {
auto json_value_option = JsonParser(file.read_all()).parse(); auto json_value_option = JsonParser(file.read_all()).parse();
if (json_value_option.is_error()) { if (json_value_option.is_error())
StringBuilder sb; return DeprecatedString::formatted("Failed to parse {}", file.filename());
sb.append("Failed to parse "sv);
sb.append(file.filename());
return sb.to_deprecated_string();
}
auto& json_value = json_value_option.value(); auto& json_value = json_value_option.value();
if (!json_value.is_array()) { if (!json_value.is_array())
StringBuilder sb; return DeprecatedString::formatted("Did not find a spreadsheet in {}", file.filename());
sb.append("Did not find a spreadsheet in "sv);
sb.append(file.filename());
return sb.to_deprecated_string();
}
NonnullRefPtrVector<Sheet> sheets; NonnullRefPtrVector<Sheet> sheets;

View file

@ -7,7 +7,6 @@
#pragma once #pragma once
#include "Readers/XSV.h" #include "Readers/XSV.h"
#include <AK/Result.h>
#include <AK/StringView.h> #include <AK/StringView.h>
#include <LibGUI/Forward.h> #include <LibGUI/Forward.h>
#include <LibGUI/Wizards/WizardPage.h> #include <LibGUI/Wizards/WizardPage.h>
@ -56,7 +55,7 @@ private:
}; };
struct ImportDialog { struct ImportDialog {
static Result<NonnullRefPtrVector<Sheet>, DeprecatedString> make_and_run_for(GUI::Window& parent, StringView mime, Core::File& file, Workbook&); static ErrorOr<NonnullRefPtrVector<Sheet>, DeprecatedString> make_and_run_for(GUI::Window& parent, StringView mime, Core::File& file, Workbook&);
}; };
} }

View file

@ -52,7 +52,7 @@ bool Workbook::set_filename(DeprecatedString const& filename)
return true; return true;
} }
Result<bool, DeprecatedString> Workbook::open_file(Core::File& file) ErrorOr<void, DeprecatedString> Workbook::open_file(Core::File& file)
{ {
auto mime = Core::guess_mime_type_based_on_filename(file.filename()); auto mime = Core::guess_mime_type_based_on_filename(file.filename());
@ -61,7 +61,7 @@ Result<bool, DeprecatedString> Workbook::open_file(Core::File& file)
set_filename(file.filename()); set_filename(file.filename());
return true; return {};
} }
ErrorOr<void> Workbook::write_to_file(Core::File& file) ErrorOr<void> Workbook::write_to_file(Core::File& file)
@ -78,7 +78,7 @@ ErrorOr<void> Workbook::write_to_file(Core::File& file)
return {}; return {};
} }
Result<bool, DeprecatedString> Workbook::import_file(Core::File& file) ErrorOr<bool, DeprecatedString> Workbook::import_file(Core::File& file)
{ {
auto mime = Core::guess_mime_type_based_on_filename(file.filename()); auto mime = Core::guess_mime_type_based_on_filename(file.filename());

View file

@ -9,7 +9,6 @@
#include "Forward.h" #include "Forward.h"
#include "Spreadsheet.h" #include "Spreadsheet.h"
#include <AK/NonnullOwnPtrVector.h> #include <AK/NonnullOwnPtrVector.h>
#include <AK/Result.h>
namespace Spreadsheet { namespace Spreadsheet {
@ -17,10 +16,10 @@ class Workbook {
public: public:
Workbook(NonnullRefPtrVector<Sheet>&& sheets, GUI::Window& parent_window); Workbook(NonnullRefPtrVector<Sheet>&& sheets, GUI::Window& parent_window);
Result<bool, DeprecatedString> open_file(Core::File&); ErrorOr<void, DeprecatedString> open_file(Core::File&);
ErrorOr<void> write_to_file(Core::File&); ErrorOr<void> write_to_file(Core::File&);
Result<bool, DeprecatedString> import_file(Core::File&); ErrorOr<bool, DeprecatedString> import_file(Core::File&);
DeprecatedString const& current_filename() const { return m_current_filename; } DeprecatedString const& current_filename() const { return m_current_filename; }
bool set_filename(DeprecatedString const& filename); bool set_filename(DeprecatedString const& filename);