diff options
author | Timothy Flynn <trflynn89@pm.me> | 2023-02-03 10:49:58 -0500 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2023-02-03 20:34:45 +0100 |
commit | e96df1599c74b315acbd1ae61b303f6cc7731d91 (patch) | |
tree | 528205c1b5738105f0780760b2c51a21ed1e591a /Userland | |
parent | 4fe437b4d2fe287a20fba0dac846396f08e82ef4 (diff) | |
download | serenity-e96df1599c74b315acbd1ae61b303f6cc7731d91.zip |
SQLStudio: Display real column names in the results tab
Diffstat (limited to 'Userland')
-rw-r--r-- | Userland/DevTools/SQLStudio/MainWidget.cpp | 9 | ||||
-rw-r--r-- | Userland/DevTools/SQLStudio/MainWidget.h | 1 |
2 files changed, 7 insertions, 3 deletions
diff --git a/Userland/DevTools/SQLStudio/MainWidget.cpp b/Userland/DevTools/SQLStudio/MainWidget.cpp index 5e4197f50c..43ef8d83a2 100644 --- a/Userland/DevTools/SQLStudio/MainWidget.cpp +++ b/Userland/DevTools/SQLStudio/MainWidget.cpp @@ -253,7 +253,8 @@ MainWidget::MainWidget() }; m_sql_client = SQL::SQLClient::try_create().release_value_but_fixme_should_propagate_errors(); - m_sql_client->on_execution_success = [this](auto) { + m_sql_client->on_execution_success = [this](auto result) { + m_result_column_names = move(result.column_names); read_next_sql_statement_of_editor(); }; m_sql_client->on_execution_error = [this](auto result) { @@ -274,9 +275,11 @@ MainWidget::MainWidget() return; if (m_results[0].size() == 0) return; + Vector<GUI::JsonArrayModel::FieldSpec> query_result_fields; - for (size_t i = 0; i < m_results[0].size(); i++) - query_result_fields.empend(DeprecatedString::formatted("column_{}", i + 1), DeprecatedString::formatted("Column {}", i + 1), Gfx::TextAlignment::CenterLeft); + for (auto& column_name : m_result_column_names) + query_result_fields.empend(column_name, column_name, Gfx::TextAlignment::CenterLeft); + auto query_results_model = GUI::JsonArrayModel::create("{}", move(query_result_fields)); m_query_results_table_view->set_model(MUST(GUI::SortingProxyModel::create(*query_results_model))); for (auto& result_row : m_results) { diff --git a/Userland/DevTools/SQLStudio/MainWidget.h b/Userland/DevTools/SQLStudio/MainWidget.h index d0fc29ba7f..d17d4c4cbd 100644 --- a/Userland/DevTools/SQLStudio/MainWidget.h +++ b/Userland/DevTools/SQLStudio/MainWidget.h @@ -64,6 +64,7 @@ private: RefPtr<SQL::SQLClient> m_sql_client; Optional<SQL::ConnectionID> m_connection_id; + Vector<DeprecatedString> m_result_column_names; Vector<Vector<DeprecatedString>> m_results; void read_next_sql_statement_of_editor(); |