60 lines
3.1 KiB
C
60 lines
3.1 KiB
C
#include <stdio.h>
|
|
#include <gtk-4.0/gtk/gtk.h>
|
|
#include "warm.h"
|
|
#include "cold.h"
|
|
|
|
// https://forge.a-lec.org/gem-graph/gem-graph-client/src/branch/devel/Makefile
|
|
// https://docs.gtk.org/gtk4/visual_index.html < widgets gallery
|
|
// GTK_ORIENTATION_VERTICAL GTK_ORIENTATION_HORIZONTAL
|
|
|
|
GtkWidget *get_scroll_interest_0(){
|
|
GtkAdjustment *interest_adjust = gtk_adjustment_new (0, 0, 100, 1, 0, 0);
|
|
GtkWidget *scroll_interest_0 = gtk_scrollbar_new (GTK_ORIENTATION_HORIZONTAL, interest_adjust);
|
|
return scroll_interest_0;
|
|
}
|
|
|
|
GtkBox *get_objects_box(){
|
|
GtkBox *objects_box = GTK_BOX(gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0));
|
|
gtk_box_append (objects_box, GTK_WIDGET (gtk_label_new (" membrane ")));
|
|
gtk_box_append (objects_box, GTK_WIDGET (gtk_label_new (" co-enzyme A ")));
|
|
gtk_box_append (objects_box, GTK_WIDGET (gtk_label_new (" ribosome ")));
|
|
gtk_box_append (objects_box, GTK_WIDGET (gtk_label_new (" cytochrome C ")));
|
|
gtk_box_append (objects_box, GTK_WIDGET (gtk_label_new (" ATP synthase ")));
|
|
gtk_box_append (objects_box, GTK_WIDGET (gtk_label_new (" chromosome ")));
|
|
return objects_box;
|
|
}
|
|
|
|
GtkBox *get_situations_box(){
|
|
GtkBox *situations_box = GTK_BOX(gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0));
|
|
gtk_box_append (situations_box, GTK_WIDGET (gtk_label_new (" transcription ")));
|
|
gtk_box_append (situations_box, GTK_WIDGET (gtk_label_new (" épissage ")));
|
|
gtk_box_append (situations_box, GTK_WIDGET (gtk_label_new (" translation ")));
|
|
gtk_box_append (situations_box, GTK_WIDGET (gtk_label_new (" transport Na/K ")));
|
|
gtk_box_append (situations_box, GTK_WIDGET (gtk_label_new (" ubiquitination ")));
|
|
gtk_box_append (situations_box, GTK_WIDGET (gtk_label_new (" rotation du moteur flagellaire ")));
|
|
return situations_box;
|
|
}
|
|
|
|
static GtkWidget *get_frame_objects(){
|
|
GtkWidget *frame_objects = gtk_frame_new (" Objects"); // defines each class of object transparence
|
|
gtk_widget_set_size_request (frame_objects, 0, H_STYLES_PANE); // < utile seulement pour la largeur min/max
|
|
// compute_child_allocation (frame_objects, GdkRectangle);
|
|
// gtk_frame_set_child (frame_objects, get_scroll_interest_0());
|
|
gtk_frame_set_child (GTK_FRAME (frame_objects), GTK_WIDGET (get_objects_box()));
|
|
return frame_objects;
|
|
}
|
|
|
|
static GtkWidget *get_frame_situations(){
|
|
GtkWidget *frame_situations = gtk_frame_new (" Situations"); // facilitates each situation identification
|
|
gtk_widget_set_size_request (GTK_WIDGET (frame_situations), 0, H_STYLES_PANE); // < utile seulement pour la largeur min/max
|
|
gtk_frame_set_child (GTK_FRAME (frame_situations), GTK_WIDGET (get_situations_box()));
|
|
return frame_situations;
|
|
}
|
|
|
|
GtkWidget *get_objects_and_situations_horizontal_pane(){
|
|
GtkWidget *objects_and_situations_horizontal_pane = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
|
|
gtk_paned_set_start_child (GTK_PANED(objects_and_situations_horizontal_pane), GTK_WIDGET (get_frame_objects()));
|
|
gtk_paned_set_end_child (GTK_PANED(objects_and_situations_horizontal_pane), GTK_WIDGET (get_frame_situations()));
|
|
return objects_and_situations_horizontal_pane;
|
|
}
|