feat(kotlin-compose): finalize design system + apps + sync sub-repo gitlinks

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-11 16:30:43 +02:00
parent f1e2c1cd19
commit 4c04162e23
8 changed files with 596 additions and 56 deletions
+44
View File
@@ -0,0 +1,44 @@
// Logica pura del playground data_table. Sin ImGui — testable headless.
// Cuando se promueva al registry, esto sera la base de data_table_cpp_viz.
#pragma once
#include <string>
#include <vector>
namespace data_table {
enum class Op { Eq, Neq, Gt, Gte, Lt, Lte };
const char* op_label(Op o);
struct Filter {
int col;
Op op;
std::string value;
};
struct ColorRule {
int col;
std::string equals;
unsigned int color; // ImU32 (ABGR para ImGui)
};
struct State {
std::vector<Filter> filters;
std::vector<ColorRule> color_rules;
std::vector<bool> col_visible; // size = col_count; auto-init en render
int sort_col = -1; // -1 = sin sort
bool sort_desc = false;
};
// Parse "1.23" -> 1.23, true. False si la celda no es numero completo.
bool parse_number(const char* s, double& out);
// Compara dos celdas con operador. Numerico si ambas parseables; lexical si no.
bool compare(const char* a, const char* b, Op op);
// Aplica filtros y ordena. Devuelve indices de filas visibles.
std::vector<int> compute_visible_rows(const char* const* cells,
int rows, int cols,
const State& st);
} // namespace data_table