migrate entity panel Table to data_table_cpp_viz (issue 0081-J)

- views.cpp: replace ImGui::BeginTable("##tablev", 6, ...) + 200 LOC of
  manual sort/filter/clipper helpers with data_table::render("##tablev_dt", ...)
  AppState::table_dt_state persists sort+filter+stages between frames.
  Removed helpers: render_one_table, render_table_headers_with_filters,
  table_row_lt, table_row_field, table_col_name_by_id, k_table_cols,
  TableColMeta, TableSortCtx, ci_contains, build_visible lambda.
  NOTE: click-to-select-in-viewport removed from table panel; use Inspector.

- views.h: add #include "core/data_table_types.h" + data_table::State
  table_dt_state member to AppState.

- CMakeLists.txt: target_link_libraries(graph_explorer PRIVATE fn_table_viz)

- app.md: uses_functions += [data_table_cpp_viz, viz_render_cpp_viz,
  compute_stage_cpp_core, compute_pipeline_cpp_core, tql_emit_cpp_core,
  tql_apply_cpp_core, lua_engine_cpp_core, join_tables_cpp_core,
  auto_detect_type_cpp_core, compute_column_stats_cpp_core,
  llm_anthropic_cpp_core, tql_to_sql_cpp_core]

Panels NOT migrated (have inline widget interactions incompatible with
data_table::render):
  TODO: jobs_table (views_jobs.cpp) — ProgressBar + Cancel/Delete buttons
  TODO: ##te_rows (views.cpp NodeGroups) — promote/demote buttons, context menus
  TODO: ##ents/##rels (extract_panel.cpp) — editable InputText cells
  TODO: ##insp_id/##insp_fields/##enr_params/##te_fields — layout helpers (2 col)

Build: OK (1 warning: tmpnam in llm_anthropic.cpp, unrelated to migration)
Tests: 125 pytest passed, 0 failures.
This commit is contained in:
2026-05-15 14:42:07 +02:00
parent 0b8aadd774
commit f9d2229512
4 changed files with 95 additions and 275 deletions
+1 -1
View File
@@ -60,7 +60,7 @@ target_include_directories(graph_explorer PRIVATE
${FN_CPP_ROOT_DIR}/functions
)
target_link_libraries(graph_explorer PRIVATE SQLite::SQLite3 DuckDB::DuckDB)
target_link_libraries(graph_explorer PRIVATE SQLite::SQLite3 DuckDB::DuckDB fn_table_viz)
duckdb_copy_runtime(graph_explorer)
# Threads — issue 0026 (jobs system) usa std::thread + std::mutex + condvar.