From 51d36c1435e6e15ef94fb24c510981a402185a61 Mon Sep 17 00:00:00 2001 From: Jean Sirmai Date: Mon, 6 May 2024 12:45:24 +0200 Subject: [PATCH] cleaning --- cold.c | 49 +++++++++++++++++++++++++++++++++++++++++-------- cold.h | 20 +++++++++++--------- cold.o | Bin 22376 -> 26128 bytes hot.c | 42 ++++++++++++++++++++++++++---------------- hot.o | Bin 11920 -> 10576 bytes main.o | Bin 9312 -> 9312 bytes myprogram | Bin 32256 -> 32624 bytes warm.c | 33 +++++++++++++++++++-------------- warm.h | 2 +- warm.o | Bin 12984 -> 11376 bytes 10 files changed, 98 insertions(+), 48 deletions(-) diff --git a/cold.c b/cold.c index 50199eb..c94470d 100644 --- a/cold.c +++ b/cold.c @@ -4,14 +4,38 @@ void print_text(GtkWidget *widget, gpointer data) {g_print (data);} -void click_print_do (GtkWindow *window, GtkWidget *grid, - char *label, char *text, int x, int y, int w, int h){ - GtkWidget *button = gtk_button_new_with_label (label); - gtk_grid_attach (GTK_GRID (grid), button, x, y, w, h); - g_signal_connect (button, "clicked", G_CALLBACK (print_text), text); - if (window) - g_signal_connect_swapped (button, "clicked", G_CALLBACK (gtk_window_destroy), window); +GtkWidget *get_objects_and_situations_horizontal_pane(){ + GtkWidget *objects_and_situations_horizontal_pane = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL); + GtkWidget *frame_objects = gtk_frame_new ("Objects"); // define each class of object transparence + GtkWidget *frame_situations = gtk_frame_new ("Situations"); // facilitate each situation identification + gtk_widget_set_size_request (objects_and_situations_horizontal_pane, W_GL_AREA, H_STYLES_PANE); + gtk_widget_set_size_request (frame_objects, 100, H_STYLES_PANE); // < utile seulement pour la largeur min/max + gtk_widget_set_size_request (frame_situations, 100, H_STYLES_PANE); // < utile seulement pour la largeur min/max + gtk_paned_set_start_child (GTK_PANED(objects_and_situations_horizontal_pane), GTK_WIDGET (frame_objects)); + gtk_paned_set_end_child (GTK_PANED(objects_and_situations_horizontal_pane), GTK_WIDGET (frame_situations)); + return objects_and_situations_horizontal_pane; } + +GtkProgressBar *get_simulation_time_extent_buffer(){ + GtkProgressBar *buffer = GTK_PROGRESS_BAR (gtk_progress_bar_new ()); + gtk_progress_bar_set_text (buffer, "<--- [buffer] (simulation extent time) --->"); + gtk_progress_bar_set_show_text (buffer, TRUE); + return buffer; +} + +GtkScrolledWindow *get_scrolled_gl_area(){ + GtkScrolledWindow *scrolled = GTK_SCROLLED_WINDOW(gtk_scrolled_window_new()); + gtk_scrolled_window_set_min_content_width (scrolled, W_GL_AREA); + gtk_scrolled_window_set_min_content_height (scrolled, H_GL_AREA); +// GtkAdjustment *width = gtk_adjustment_new (600, 300, 1000, 1, 1, 1000); +// GtkAdjustment *height = gtk_adjustment_new (600, 300, 1000, 1, 1, 1000); + // (value, lower, upper, step_increment, page_increment, page_size) + GtkWidget *GLarea = gtk_gl_area_new(); + gtk_scrolled_window_set_child (scrolled, GLarea); +// https://docs.gtk.org/gtk4/class.GLArea.html + return scrolled; +} + GtkWidget *get_measures_page_new(){ GtkWidget *measures_grid = gtk_grid_new(); gtk_grid_attach (GTK_GRID (measures_grid), gtk_button_new_with_label ("movements"), 0, 0, 1, 1); @@ -77,7 +101,7 @@ void activate (GtkApplication *app, gpointer user_data) { window_bar (window, "window"); GtkNotebook *notebook = GTK_NOTEBOOK(gtk_notebook_new()); - gtk_notebook_set_tab_pos (GTK_NOTEBOOK(notebook), GTK_POS_LEFT); + gtk_notebook_set_tab_pos (GTK_NOTEBOOK(notebook), GTK_POS_TOP); // GTK_POS_LEFT gtk_notebook_append_page (notebook, get_space_page_new(), gtk_label_new ("space")); gtk_notebook_append_page (notebook, get_rules_page_new(), gtk_label_new ("rules")); @@ -90,6 +114,15 @@ void activate (GtkApplication *app, gpointer user_data) { gtk_window_present (GTK_WINDOW (window)); } +void click_print_do (GtkWindow *window, GtkWidget *grid, + char *label, char *text, int x, int y, int w, int h){ + GtkWidget *button = gtk_button_new_with_label (label); + gtk_grid_attach (GTK_GRID (grid), button, x, y, w, h); + g_signal_connect (button, "clicked", G_CALLBACK (print_text), text); + if (window) + g_signal_connect_swapped (button, "clicked", G_CALLBACK (gtk_window_destroy), window); +} + /*----------------------------------------------------------------------------*/ /* GtkBox GtkGrid GtkRevealer GtkStack diff --git a/cold.h b/cold.h index aab5101..1d3c02c 100644 --- a/cold.h +++ b/cold.h @@ -1,17 +1,16 @@ #include #include -#define W 1830 -#define H 1000 -#define W_GL_AREA 1800 - 34 -#define H_GL_AREA 1000 - 6 +#define W 1920 +#define H 960 +#define W_GL_AREA 1920 - 64 +#define H_GL_AREA 960 - 46 +#define H_STYLES_PANE 60 void print_text(GtkWidget *widget, gpointer data); - -void click_print_do (GtkWindow *window, GtkWidget *grid, - char *label, char *text, int x, int y, int w, int h); - +GtkScrolledWindow *get_scrolled_gl_area(); void window_bar(GtkWindow *window, char *title); - +GtkWidget *get_objects_and_situations_horizontal_pane(); +GtkProgressBar *get_simulation_time_extent_buffer(); void activate (GtkApplication *app, gpointer user_data); GtkWidget *get_space_page_new(); @@ -21,6 +20,9 @@ GtkWidget *get_results_page_new(); GtkWidget *get_discuss_page_new(); GtkWidget *get_help_page_new(); +void click_print_do (GtkWindow *window, GtkWidget *grid, + char *label, char *text, int x, int y, int w, int h); + // https://docs.gtk.org/gtk4/visual_index.html < widgets gallery /* diff --git a/cold.o b/cold.o index d14ab504bb4c620abb74f81118283f02b87df24d..a19c604c98dc1a5002008b9cf15dacb1cb6f9ec1 100644 GIT binary patch literal 26128 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 literal 22376 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 F{|f`wmUaLD diff --git a/hot.c b/hot.c index bba010e..973a20d 100644 --- a/hot.c +++ b/hot.c @@ -8,10 +8,9 @@ // https://docs.gtk.org/gtk4/visual_index.html < widgets gallery GtkWidget *get_space_page_new(){ + /* GtkBox *controls_box = GTK_BOX(gtk_box_new (GTK_ORIENTATION_VERTICAL, 0)); gtk_box_append (controls_box, gtk_button_new_with_label ("RUN")); - GtkAdjustment *speed_adjust = gtk_adjustment_new (0, 0, 100, 1, 0, 0); - GtkWidget *scroll_speed = gtk_scrollbar_new (GTK_ORIENTATION_VERTICAL, speed_adjust); // gtk_box_append (controls_box, scroll_speed); gtk_box_append (controls_box, gtk_button_new_with_label ("step")); @@ -19,11 +18,12 @@ GtkWidget *get_space_page_new(){ // gtk_level_bar_set_mode (slow_speed, GTK_LEVEL_BAR_MODE_CONTINUOUS); //_DISCRETE // gtk_box_append (controls_box, gtk_button_new_with_label ("slow down / speed up")); // GTK_WIDGET(slow_speed)); // gtk_box_append (controls_box, gtk_button_new_with_label ("step by step")); - GtkProgressBar *buffer = GTK_PROGRESS_BAR (gtk_progress_bar_new ()); - gtk_progress_bar_set_text (buffer, "<>"); - gtk_progress_bar_set_show_text (buffer, TRUE); - gtk_box_append (controls_box, GTK_WIDGET(buffer));//gtk_button_new_with_label ("---- buffer ----")); + GtkProgressBar *buffer = GTK_PROGRESS_BAR (gtk_progress_bar_new ()); + gtk_progress_bar_set_text (buffer, "<--- [buffer] (simulation extent time) --->"); + gtk_progress_bar_set_show_text (buffer, TRUE); +// gtk_box_append (controls_box, GTK_WIDGET(buffer));//gtk_button_new_with_label ("---- buffer ----")); +*/ @@ -40,24 +40,34 @@ GtkWidget *get_space_page_new(){ gtk_box_append (XYZ_box, scroll_X); gtk_box_append (XYZ_box, scroll_Y); gtk_box_append (XYZ_box, scroll_Z); - +/* GtkWidget *bottom_grid = gtk_grid_new(); - gtk_grid_attach (GTK_GRID(bottom_grid), GTK_WIDGET(controls_box), 0, 0, 1, 1); +// gtk_grid_attach (GTK_GRID(bottom_grid), GTK_WIDGET(controls_box), 0, 0, 1, 1); gtk_grid_attach (GTK_GRID(bottom_grid), gtk_button_new_with_label ("Objects / Situations (transparences, styles)"), 0, 1, 1, 1); - gtk_grid_attach (GTK_GRID(bottom_grid), gtk_button_new_with_label ("zoom, +/- grid,\npresentation,\nstyles,..."), 1, 0, 1, 2); + gtk_grid_attach (GTK_GRID(bottom_grid), gtk_button_new_with_label ("zoom, +/- grid,\npresentation,\n objects styles,..."), 1, 0, 1, 2); + GtkWidget *objects_and_situations_horizontal_pane = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL); + GtkWidget *frame_objects = gtk_frame_new ("Objects"); // define each class of object transparence + GtkWidget *frame_situations = gtk_frame_new ("Situations"); // facilitate each situation identification + gtk_widget_set_size_request (objects_and_situations_horizontal_pane, W_GL_AREA, H_STYLES_PANE); + gtk_widget_set_size_request (frame_objects, 100, H_STYLES_PANE); // < utile seulement pour la largeur min/max + gtk_widget_set_size_request (frame_situations, 100, H_STYLES_PANE); // < utile seulement pour la largeur min/max + gtk_paned_set_start_child (GTK_PANED(objects_and_situations_horizontal_pane), GTK_WIDGET (frame_objects)); + gtk_paned_set_end_child (GTK_PANED(objects_and_situations_horizontal_pane), GTK_WIDGET (frame_situations)); +*/ GtkWidget *space_grid = gtk_grid_new(); - gtk_grid_attach (GTK_GRID(space_grid), gtk_button_new_with_label ("Objects / Situations (transparences, styles)"), 0, 0, 1, 1); + gtk_grid_attach (GTK_GRID (space_grid), get_objects_and_situations_horizontal_pane(), 0, 0, 1, 1); gtk_grid_attach (GTK_GRID(space_grid), GTK_WIDGET(get_scrolled_gl_area()), 0, 1, 1, 10); gtk_grid_attach (GTK_GRID(space_grid), gtk_button_new_with_label ("RUN"), 1, 0, 1, 1); + GtkAdjustment *speed_adjust = gtk_adjustment_new (0, 0, 100, 1, 0, 0); + GtkWidget *scroll_speed = gtk_scrollbar_new (GTK_ORIENTATION_VERTICAL, speed_adjust); gtk_grid_attach (GTK_GRID(space_grid), scroll_speed, 1, 1, 1, 1); -// gtk_grid_attach (GTK_GRID(space_grid), gtk_button_new_with_label ("STEP"), 1, 2, 1, 1); -// gtk_grid_attach (GTK_GRID(space_grid), GTK_WIDGET(controls_box), 1, 3, 1, 1); -// gtk_grid_attach (GTK_GRID(space_grid), GTK_WIDGET(buffer), 1, 3, 1, 1); -// gtk_grid_attach (GTK_GRID(space_grid), GTK_WIDGET(XYZ_box), 1, 3, 1, 1); -// gtk_grid_attach (GTK_GRID(space_grid), GTK_WIDGET(bottom_grid), 0, 1, 2, 1); // ?! échec x_size -// gtk_grid_attach (GTK_GRID(space_grid), gtk_button_new_with_label ("?"), 1, 1, 1, 1); + gtk_grid_attach (GTK_GRID(space_grid), gtk_button_new_with_label ("Step"), 1, 2, 1, 1); + gtk_grid_attach (GTK_GRID(space_grid), GTK_WIDGET(get_simulation_time_extent_buffer()), 0, 2, 1, 1); + gtk_grid_attach (GTK_GRID(space_grid), GTK_WIDGET(XYZ_box), 1, 3, 1, 1); + gtk_grid_attach (GTK_GRID(space_grid), gtk_button_new_with_label ("zoom"), 1, 4, 1, 1); return space_grid; + } diff --git a/hot.o b/hot.o index 4103ee84e3b5e97dd5926f643079e035d3da578c..88bea5ab251abe213440601a7f13adfe60167348 100644 GIT binary patch literal 10576 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

ZNTJsJ&~t`qY;Ai;fz9ryErq7|{N) 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 EKPK~Z2><{9 diff --git a/main.o b/main.o index eaf6c6a87329029a05034e6f2a2c67578d6b1539..b364a66aa4f7d7fc61c82931c1a6d7e00553e801 100644 GIT binary patch delta 850 zcmV-Y1FihvNZ?42=6_UC6n(^g^Y!by(_F_?lga9gb#gU5!s3x9EJuw>v77INL!af=bz zSHj50m=aOmx9CDME4yW@VuvigyYFHCeQxn zbciQggEs-9ch;WVNKCe*)_UB)@Z@~WV*ZrCPZ2|k@P9MHKH)jUv4HS%#CDqS3$m#q zJWn`B_!Z%`gck@`6Mjv&hPrRP$xUJnf_YbsmHUEu-}H!UGP3Ty4Fx9a_O0n&CU4K0 z3DeP4TDQXiI*@QV7}SFt8S6+;ej&B!us%raFIuvZh1~ zTUKT1IDgUh9r(=f1=FP?0YgkFCAIIfStbi`=9~X8IV>3`0Zy|nhsE(A#2J&E4!iLx6phVGhmCgI?-37M=Pzva)+B~+*0K_lH{m3xz_a;iyByIW|U;>$=$Zf zJwHMo46f2r6jdq97uuWxM8_nYr(|XclL_^MB^dnYm(V znyG=K@wE!cTJ1l}aBSKP+R7b6I2pPSgC#fSs~9)TBD)1jmrYEEO3-SWX?eThNhT%kUz>beitW6lw_>qmpP^=)^K7M z$C9~V_VTcfbbovR`RiO)hKysr1m_9oJW?%yOK#HgA>=_b22P~ z^>LDMtWylLxu`sySkxpONiHjRCON0zS?{BQqv3>tW8sv7=e%DEp7%A7aJ(#y$+N#X z9puT@;7x$&oxLYFqRW=l*pKTOo}8~)%%2kYDPl+wet$+dAUuay4+%d>v=eLL!>0|}RdVI9bkv5$m9T*FRs5?|{lM)2IrxN*)u=B^S)Hh3v0Dut{TjIVaxN+{R3qt$?;WRv zu1=)!cSjiE7Mf3E25hlbEBb17YsGa~?r<}WTdGt?k{lH$*Sfx;Ar0&_GmEnI@@W6+JjeY`^rIwx0VnGj*1EoIL)`?OdeU#IE`k1EG cDI1&@q37!#yyAgA0J9$iAsYc!vq2vp1(3R%S^xk5 diff --git a/myprogram b/myprogram index 306f41e38daef4a9a061d8425314f73f234c294f..dc6dc4d5be1dc27663a27559a5f2dc8821ed5835 100755 GIT binary patch delta 14164 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 literal 12984 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 PH-+(|=UG$-AOHUVKRJ@U