From 491e6c8d98e1a04d3cb993e94a468d17ee049636 Mon Sep 17 00:00:00 2001 From: Jean Sirmai Date: Sun, 30 Jun 2024 17:18:18 +0200 Subject: [PATCH] WIP: cleaning (modularity, licenses, dependences) --- include/base.h | 45 +++++++++++++++++++++++++++++++++ include/graphics.h | 56 ++++++++++++++++++++--------------------- include/parsing.h | 54 ++++++++++++++++++++------------------- include/texts.h | 39 ---------------------------- src/automaton.c | 51 +++++++++++++++++++------------------ src/callback.c | 57 ++++++++++++++++++++--------------------- src/dialog.c | 27 ++++++++++++++++++++ src/draw.c | 63 +++++++++++++++++++++++----------------------- src/graph_area.c | 51 ++++++++++++++++++------------------- src/graph_stack.c | 53 +++++++++++++++++++------------------- src/grid.c | 54 +++++++++++++++++++-------------------- src/init.c | 54 +++++++++++++++++++-------------------- src/parsing.c | 57 ++++++++++++++++++++--------------------- src/shader.frag | 28 +++++++++++++++++++++ src/shader.vert | 28 +++++++++++++++++++++ src/texts.c | 34 +++++++++++++++++++------ src/tree.c | 31 +++++++++++++++++++---- src/widgets.c | 31 ++++++++++++++++++++--- src/widgets_lab.c | 29 ++++++++++++++++++--- 19 files changed, 506 insertions(+), 336 deletions(-) delete mode 100644 include/texts.h diff --git a/include/base.h b/include/base.h index 679705f..89e5296 100644 --- a/include/base.h +++ b/include/base.h @@ -130,3 +130,48 @@ static inline char *read_file(char *filename) return contents; } + +/******************************************************************************/ +/* T E X T S */ +/******************************************************************************/ + +char *get_space_run_edit_specif(); +char *get_rules_run_edit_specif(); + +/* +>>> Dans : [space_page - mode RUN] doivent être : ------------------------------------------------------ + +(1) les commandes de mouvement: + - run/stop, slow down/speed up, step by step, do/undo/redo + + le buffer [elapsed time] qui montre le temps de simulation écoulé +(2) les commandes qui modifient la perception de l'espace (la caméra) + - son orientation (X,Y,Z), + + le zoom, + + les paramètres qui définissent la perspective (distances oeil/écran, écran/objet virtuel) +(3) les commandes qui modifient les apparences des objets et des situations d'intérêt + (+/- transparents, colorés, etc.) +(4) les commandes qui modifient l'apparence de l'espace (grilles, +/- surfaces, aspect des flèches, etc.) +(0) NB >>> AUCUNE COMMANDE NE DOIT PERMETTRE D'ÉDITER L'ESPACE ! <<< + +>>> Dans : [space_page - mode EDIT] doivent être : ------------------------------------------------------ +(1) les commandes qui modifient la perception de l'espace (la caméra) + - son orientation (X,Y,Z), + + le zoom, + + les paramètres qui définissent la perspective (distances oeil/écran, écran/objet virtuel) +(2) les commandes qui modifient les apparences des objets et des situations d'intérêt + (+/- transparents, colorés, etc.) +(3) les commandes qui modifient l'apparence de l'espace (grilles, +/- surfaces, aspect des flèches, etc.) +(4) les commandes d'édition locales (drag and drop une flèche) + ('faire de la place' pour insérer) + (sélectionner pour déplacer ou enlever...) + NB ces commandes doivent être graphiques et/ou accessibles par raccourcis ou en ligne +(5) les commandes d'édition globales + (ex: introduire, retirer, transformer +/-aléatoirement (n) objets dans l'espace) + NB une action effectuée sur une zone d'intérêt devrait pouvoir être automatiquement appliquée + à d'autres zones d'intérêt identifiées comme similaires +(0) NB >>> AUCUNE COMMANDE NE DOIT PERMETTRE D'EXÉCUTER UN RUN ! <<< +>>> L'objectif est que l'utilisateur ait accès à une organsisation aussi ergonomique que possible ----- + i.e : chaque utilisateur devrait disposer de 'préférences' + c'est-à-dire avoir la possiblité de faire des choix ergonomiques personnalisés. +*/ + diff --git a/include/graphics.h b/include/graphics.h index 9da9368..1a0cd64 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -1,36 +1,36 @@ -/* - * Gem-graph OpenGL experiments - * - * Desc: OpenGL utils header - * - * Copyright (C) 2023 Arthur Menges - * Copyright (C) 2023 Adrien Bourmault - * Copyright (C) 2023 Jean Sirmai - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Graphics header * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2023 Arthur Menges * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + #pragma once #include "base.h" -#include -#include #include #include -#include -#include #define VERTEX_SHADER_FILE "src/shader.vert" #define FRAG_SHADER_FILE "src/shader.frag" diff --git a/include/parsing.h b/include/parsing.h index 1cf7ff8..be49d25 100644 --- a/include/parsing.h +++ b/include/parsing.h @@ -1,30 +1,32 @@ -/* - * Gem-graph OpenGL experiments - * - * Desc: Model parsing header - * - * Copyright (C) 2023 Arthur Menges - * Copyright (C) 2023 Adrien Bourmault - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Model parsing header * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2023 Arthur Menges * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + -#pragma once -#include -#include "base.h" bool model_init(const char *content, size_t length, const char *basename); bool model_shutdown(void); diff --git a/include/texts.h b/include/texts.h deleted file mode 100644 index 43a7437..0000000 --- a/include/texts.h +++ /dev/null @@ -1,39 +0,0 @@ -char *get_space_run_edit_specif(); -char *get_rules_run_edit_specif(); - -/* ->>> Dans : [space_page - mode RUN] doivent être : ------------------------------------------------------ - -(1) les commandes de mouvement: - - run/stop, slow down/speed up, step by step, do/undo/redo - + le buffer [elapsed time] qui montre le temps de simulation écoulé -(2) les commandes qui modifient la perception de l'espace (la caméra) - - son orientation (X,Y,Z), - + le zoom, - + les paramètres qui définissent la perspective (distances oeil/écran, écran/objet virtuel) -(3) les commandes qui modifient les apparences des objets et des situations d'intérêt - (+/- transparents, colorés, etc.) -(4) les commandes qui modifient l'apparence de l'espace (grilles, +/- surfaces, aspect des flèches, etc.) -(0) NB >>> AUCUNE COMMANDE NE DOIT PERMETTRE D'ÉDITER L'ESPACE ! <<< ->>> Dans : [space_page - mode EDIT] doivent être : ------------------------------------------------------ -(1) les commandes qui modifient la perception de l'espace (la caméra) - - son orientation (X,Y,Z), - + le zoom, - + les paramètres qui définissent la perspective (distances oeil/écran, écran/objet virtuel) -(2) les commandes qui modifient les apparences des objets et des situations d'intérêt - (+/- transparents, colorés, etc.) -(3) les commandes qui modifient l'apparence de l'espace (grilles, +/- surfaces, aspect des flèches, etc.) -(4) les commandes d'édition locales (drag and drop une flèche) - ('faire de la place' pour insérer) - (sélectionner pour déplacer ou enlever...) - NB ces commandes doivent être graphiques et/ou accessibles par raccourcis ou en ligne -(5) les commandes d'édition globales - (ex: introduire, retirer, transformer +/-aléatoirement (n) objets dans l'espace) - NB une action effectuée sur une zone d'intérêt devrait pouvoir être automatiquement appliquée - à d'autres zones d'intérêt identifiées comme similaires -(0) NB >>> AUCUNE COMMANDE NE DOIT PERMETTRE D'EXÉCUTER UN RUN ! <<< ->>> L'objectif est que l'utilisateur ait accès à une organsisation aussi ergonomique que possible ----- - i.e : chaque utilisateur devrait disposer de 'préférences' - c'est-à-dire avoir la possiblité de faire des choix ergonomiques personnalisés. -*/ - diff --git a/src/automaton.c b/src/automaton.c index ebfa103..301b03b 100644 --- a/src/automaton.c +++ b/src/automaton.c @@ -1,31 +1,32 @@ -//=-------------------------------------------------------------------------=// -// Main // -// // -// Copyright © 2021 Libre en Communs (contact@a-lec.org) // -// Copyright © 2024 Jean Sirmai (jean@a-lec.org) // -// Copyright © 2024 Adrien Bourmault (neox@a-lec.org) // -// // -// This file is part of gem-graph. // -// // -// This program is free software: you can redistribute it and/or modify // -// it under the terms of the GNU Affero General Public License as // -// published by the Free Software Foundation, either version 3 of the // -// License, or (at your option) any later version. // -// // -// This program is distributed in the hope that it will be useful, // -// but WITHOUT ANY WARRANTY; without even the implied warranty of // -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // -// GNU Affero General Public License for more details. // -// // -// You should have received a copy of the GNU Affero General Public License // -// along with this program. If not, see . // -//=-------------------------------------------------------------------------=// +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* State machine * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ -#include -#include #include "../include/base.h" -#include "../include/callback.h" /******************************************************************************/ diff --git a/src/callback.c b/src/callback.c index 99aad33..0371b0e 100644 --- a/src/callback.c +++ b/src/callback.c @@ -1,36 +1,33 @@ -//----------------------------------------------------------------------------// -// // -// callback // -// // -// Copyright © 2021 Libre en Communs (contact@a-lec.org) // -// Copyright © 2024 Jean Sirmai (jean@a-lec.org) // -// Copyright © 2024 Adrien Bourmault (neox@a-lec.org) // -// // -// This file is part of gem-graph. // -// // -// This program is free software: you can redistribute it and/or modify // -// it under the terms of the GNU Affero General Public License as // -// published by the Free Software Foundation, either version 3 of the // -// License, or (at your option) any later version. // -// // -// This program is distributed in the hope that it will be useful, // -// but WITHOUT ANY WARRANTY; without even the implied warranty of // -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // -// GNU Affero General Public License for more details. // -// // -// You should have received a copy of the GNU Affero General Public License // -// along with this program. If not, see . // -//---------------------------------------------------------------------------// +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Callbacks * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ -#include -#include - -#include "../include/base.h" #include "../include/callback.h" #include "../include/widgets.h" -#include "../include/texts.h" -#include "../include/parsing.h" #include "../include/graphics.h" @@ -254,7 +251,7 @@ void on_toggle_EXEC_EDIT (GtkWidget *toggled_button, gpointer user_data) { "text-editor-symbolic"); // https://docs.gtk.org/gtk4/class.Window.html TODO 2024-06-30 - gtk_window_present (GTK_WINDOW (dialog_window)); // works once only ! + // gtk_window_present (GTK_WINDOW (dialog_window)); // works once only ! set_EXEC_EDIT (EDIT); } diff --git a/src/dialog.c b/src/dialog.c index 8a4fcd3..7945971 100644 --- a/src/dialog.c +++ b/src/dialog.c @@ -1,3 +1,30 @@ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Dialog window * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + + #include "../include/callback.h" void dialog_window_design (GtkWindow *main_window, GtkWindow *dialog_window){ diff --git a/src/draw.c b/src/draw.c index daf397a..a0d5637 100644 --- a/src/draw.c +++ b/src/draw.c @@ -1,26 +1,35 @@ -/* - * Gem-graph OpenGL experiments - * - * Desc: GL functions - * - * Copyright (C) 2023 Adrien Bourmault - * Copyright (C) 2023 Jean Sirmai - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Drawing * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + + +#include + +#include "../include/base.h" +#include "../include/graphics.h" /* * Writes values to describe a vertex at (x,y,z) intoq the vertex buffer @@ -29,14 +38,6 @@ * * @return void */ - -#include -#include -#include -#include "../include/base.h" -//#include "../include/ui.h" -#include "../include/graphics.h" - void graphics_draw_vertex (const int stack_id, GLfloat x, GLfloat y, diff --git a/src/graph_area.c b/src/graph_area.c index 0b026b2..9a43474 100644 --- a/src/graph_area.c +++ b/src/graph_area.c @@ -1,31 +1,30 @@ -/* - * Gem-graph OpenGL experiments - * - * Desc: User interface functions - * - * Copyright (C) 2023 Adrien Bourmault - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Callbacks * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ -#include -#include -#include -#include "../include/widgets.h" #include "../include/graphics.h" #include "../include/callback.h" diff --git a/src/graph_stack.c b/src/graph_stack.c index c3db793..627af4c 100644 --- a/src/graph_stack.c +++ b/src/graph_stack.c @@ -1,32 +1,31 @@ -/* - * Gem-graph OpenGL experiments - * - * Desc: GL functions - * - * Copyright (C) 2023 Arthur Menges - * Copyright (C) 2023 Adrien Bourmault - * Copyright (C) 2023 Jean Sirmai - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Graph - stack * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ -#include -#include -#include "../include/widgets.h" #include "../include/graphics.h" #include "../include/parsing.h" diff --git a/src/grid.c b/src/grid.c index caad946..7866d6e 100644 --- a/src/grid.c +++ b/src/grid.c @@ -1,31 +1,31 @@ -/* - * Gem-graph - * - * Desc: OpenGL grid functions - * - * Copyright (C) 2023 Jean Sirmai - * Copyright (C) 2023 Adrien Bourmault - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Drawing empty space * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + -#include -#include -#include "../include/base.h" -//#include "../include/ui.h" #include "../include/graphics.h" int draw_space_ridges_vertex (const int stack_id, diff --git a/src/init.c b/src/init.c index 005bb76..42c1650 100644 --- a/src/init.c +++ b/src/init.c @@ -1,33 +1,33 @@ -/* - * Gem-graph OpenGL experiments - * - * Desc: GL functions - * - * Copyright (C) 2023 Arthur Menges - * Copyright (C) 2023 Adrien Bourmault - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Init OpenGL graphism * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2023 Arthur Menges * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + /* -------------------------------------------------------------------------- */ -#include -#include -#include "../include/base.h" -#include "../include/widgets.h" #include "../include/graphics.h" /* Initializes the buffer of a gl_area diff --git a/src/parsing.c b/src/parsing.c index 32e7baf..d7c5399 100644 --- a/src/parsing.c +++ b/src/parsing.c @@ -1,34 +1,31 @@ -/* - * Gem-graph client - * - * Desc: Model parsing functions - * - * Copyright (C) 2023 Jean Sirmai - * Copyright (C) 2024 Adrien Bourmault - * - * This file is part of Gem-graph. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Parsing model XML * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + -#include -#include -#include -#include -#include -#include -#include #include #include // http://xmlsoft.org/examples/#parse1.c // https://gnome.pages.gitlab.gnome.org/libxml2/devhelp/general.html diff --git a/src/shader.frag b/src/shader.frag index fb8a76c..4ef65d9 100644 --- a/src/shader.frag +++ b/src/shader.frag @@ -1,3 +1,31 @@ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Shader * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2023 Arthur Menges * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + + #version 330 core in vec4 color; diff --git a/src/shader.vert b/src/shader.vert index 09e953c..227db1b 100644 --- a/src/shader.vert +++ b/src/shader.vert @@ -1,3 +1,31 @@ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Shader * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2023 Arthur Menges * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + + #version 330 core uniform mat4 projection_matrix; diff --git a/src/texts.c b/src/texts.c index f14fdf9..df41cf7 100644 --- a/src/texts.c +++ b/src/texts.c @@ -1,11 +1,29 @@ -/******************************************************************************/ -/* */ -/* E coli by David S. Goodsell (2009) */ -/* --- */ -/* Let this freeze frame guide us towards the model */ -/* that alone can account for the phenomenon ! */ -/* */ -/******************************************************************************/ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Texts * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + char *get_space_run_edit_specif(){ return "\n\ >>> Dans : [space_page - mode RUN] doivent être : ------------------------------------------------------\n\n\ diff --git a/src/tree.c b/src/tree.c index 7aff529..088f1a2 100644 --- a/src/tree.c +++ b/src/tree.c @@ -1,10 +1,31 @@ -#include -#include +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* GTK4 Tree list * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2024 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ -#include -#include "../include/widgets.h" -#include "../include/texts.h" #include "../include/callback.h" // https://docs.gtk.org/gtk4/visual_index.html < widgets gallery diff --git a/src/widgets.c b/src/widgets.c index 094216f..5f91d1c 100644 --- a/src/widgets.c +++ b/src/widgets.c @@ -1,11 +1,34 @@ -#include -#include +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Widgets * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Adrien Bourmault * +* Copyright © 2023 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + #include "../include/base.h" -#include "../include/graphics.h" #include "../include/callback.h" #include "../include/widgets.h" -#include "../include/texts.h" // https://blog.gtk.org/2020/09/08/on-list-models/ < TODO // https://docs.gtk.org/gtk4/visual_index.html < widgets gallery diff --git a/src/widgets_lab.c b/src/widgets_lab.c index d43681f..32447ef 100644 --- a/src/widgets_lab.c +++ b/src/widgets_lab.c @@ -1,8 +1,31 @@ -#include -#include +/* * * * * * * * * * * * * * * * * * * * * * * * * * * +* * +* Gem-graph client * +* * +* Widgets * +* * +* Copyright © 2021 Libre en Communs * +* Copyright © 2023 Jean Sirmai * +* * +* This file is part of Gem-graph. * +* * +* This program is free software: you can redistribute it and/or modify it * +* under the terms of the GNU Affero General Public License * +* as publishedby the Free Software Foundation, * +* either version 3 of the License, or (at your option) any later version. * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * +* See the GNU Affero General Public License for more details. * +* * +* You should have received a copy of the GNU Affero General Public License * +* along with this program. If not, see . * +* * +* * * * * * * * * * * * * * * * * * * * * * * * * * */ + #include "../include/widgets.h" -#include "../include/texts.h" //------------------------------------------------------------------------------