GTK4_GG_hack/cold.h

62 lines
2.3 KiB
C
Raw Normal View History

/******************************************************************************/
/* */
/* E coli by David S. Goodsell (2009) */
/* --- */
/* Let this freeze frame guide us towards the model */
/* that alone can account for the phenomenon ! */
/* */
/******************************************************************************/
2024-04-27 16:16:21 +02:00
#include <stdio.h>
#include <gtk/gtk.h>
2024-05-06 12:45:24 +02:00
#define W 1920
#define H 960
#define W_GL_AREA 1920 - 64
#define H_GL_AREA 960 - 46
#define H_STYLES_PANE 60
2024-04-27 16:16:21 +02:00
void print_text(GtkWidget *widget, gpointer data);
2024-05-06 17:14:52 +02:00
GtkWidget *get_a_space_test_image();
2024-05-06 12:45:24 +02:00
GtkScrolledWindow *get_scrolled_gl_area();
GtkBox *get_RUN_STOP_box();
GtkBox *get_STEP_by_STEP_box();
GtkBox *get_ZOOM_box();
GtkBox *get_XYZ_box();
2024-05-06 17:14:52 +02:00
GtkWidget *get_scroll_speed();
2024-04-28 06:21:57 +02:00
void window_bar(GtkWindow *window, char *title);
2024-05-06 12:45:24 +02:00
GtkWidget *get_objects_and_situations_horizontal_pane();
GtkBox *get_ELAPSED_TIME_box();
2024-05-06 12:45:24 +02:00
GtkProgressBar *get_simulation_time_extent_buffer();
2024-04-29 23:43:04 +02:00
void activate (GtkApplication *app, gpointer user_data);
GtkWidget *get_space_page_new();
GtkWidget *get_rules_page_new();
GtkWidget *get_measures_page_new();
GtkWidget *get_results_page_new();
GtkWidget *get_discuss_page_new();
GtkWidget *get_help_page_new();
2024-05-06 12:45:24 +02:00
void click_print_do (GtkWindow *window, GtkWidget *grid,
char *label, char *text, int x, int y, int w, int h);
2024-05-01 10:07:50 +02:00
// https://docs.gtk.org/gtk4/visual_index.html < widgets gallery
2024-05-01 10:07:50 +02:00
/*
Dans : space_page_new() doivent être déclarées
et organisées de façon aussi ergonomique que possible :
- les commandes de mouvement (run/stop, slow down/speed up, step by step, do/undo/redo)
et le buffer qui montre on en est dans le temps de simulation
(un seul bouton pour toutes ces commandes ?)
- les commandes qui modifient l'orientation (X,Y,Z) de l'espace, le zoom, la perspective
- les commandes qui modifient les apparences des grilles et des flèches
- les commandes qui modifient les apparences des objets et des situations d'intérêt
(+/- transparents, colorés, etc.)
*/
2024-05-01 10:07:50 +02:00