feat: Settings submenu (Settings.../About...), git column, projects tab
- main.cpp: registrar info About via fn_ui::about_window_set_info - views.cpp: nueva columna "Git" en la tabla Apps (remote/local/-) - data.h/cpp + data_http.cpp: AppRow gana repo_url + dir_path - views.cpp: actions bar (Reindex / + Add / Reload / inbox) y modal Add - views.cpp: tab Projects con tree + detalle anidado - data_http.cpp: load_projects_http, load_project_detail_http, http_post_* - http_client.cpp: SO_RCVTIMEO en Windows como DWORD ms (timeout 5 ms bug) - CMakeLists: limpieza de srcs duplicados con fn_framework - app.md: notas operativas y estado actual Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -55,11 +55,14 @@ struct AppRow {
|
||||
std::string domain;
|
||||
std::string description;
|
||||
std::string framework;
|
||||
std::string repo_url;
|
||||
std::string dir_path;
|
||||
};
|
||||
|
||||
struct AnalysisRow {
|
||||
std::string id;
|
||||
std::string name;
|
||||
std::string lang;
|
||||
std::string domain;
|
||||
std::string description;
|
||||
};
|
||||
@@ -73,6 +76,32 @@ struct TypeRow {
|
||||
std::string description;
|
||||
};
|
||||
|
||||
struct VaultRow {
|
||||
std::string id;
|
||||
std::string name;
|
||||
std::string path;
|
||||
std::string description;
|
||||
bool symlink = false;
|
||||
};
|
||||
|
||||
struct ProjectRow {
|
||||
std::string id;
|
||||
std::string name;
|
||||
std::string description;
|
||||
int apps_count = 0;
|
||||
int analyses_count = 0;
|
||||
int vaults_count = 0;
|
||||
};
|
||||
|
||||
struct ProjectDetail {
|
||||
std::string id; // "" si no hay seleccion; "orphans" para huerfanas
|
||||
std::string name;
|
||||
std::string description;
|
||||
std::vector<AppRow> apps;
|
||||
std::vector<AnalysisRow> analyses;
|
||||
std::vector<VaultRow> vaults;
|
||||
};
|
||||
|
||||
// All data loaded from registry.db in one shot
|
||||
struct RegistryData {
|
||||
RegistryStats stats;
|
||||
@@ -84,6 +113,10 @@ struct RegistryData {
|
||||
std::vector<AppRow> apps;
|
||||
std::vector<AnalysisRow> analyses;
|
||||
std::vector<TypeRow> types;
|
||||
std::vector<ProjectRow> projects;
|
||||
int orphan_apps = 0;
|
||||
int orphan_analyses = 0;
|
||||
int orphan_vaults = 0;
|
||||
|
||||
// For chart data (populated by prepare_chart_data)
|
||||
std::vector<std::string> lang_labels;
|
||||
|
||||
Reference in New Issue
Block a user