64 lines
3.7 KiB
C
64 lines
3.7 KiB
C
/******************************************************************************/
|
|
/* */
|
|
/* E coli by David S. Goodsell (2009) */
|
|
/* --- */
|
|
/* Let this freeze frame guide us towards the model */
|
|
/* that alone can account for the phenomenon ! */
|
|
/* */
|
|
/******************************************************************************/
|
|
|
|
GtkWidget *get_test_image();
|
|
GtkWidget *get_text_view();
|
|
GtkFrame *get_frame_with_label();
|
|
GtkScrolledWindow *get_scrolled_gl_area();
|
|
GtkBox *get_RUN_STOP_box();
|
|
GtkBox *get_STEP_by_STEP_box();
|
|
GtkBox *get_CONTROL_box();
|
|
GtkBox *get_ZOOM_box();
|
|
GtkBox *get_edit_TOOL_box();
|
|
GtkBox *get_XYZ_box();
|
|
GtkWidget *get_scroll_speed();
|
|
void window_bar(GtkWindow *window, char *title);
|
|
GtkWidget *get_objects_and_situations_horizontal_pane();
|
|
GtkBox *get_ELAPSED_TIME_box();
|
|
GtkProgressBar *get_simulation_time_extent_buffer();
|
|
|
|
// https://docs.gtk.org/gtk4/section-text-widget.html
|
|
|
|
/*
|
|
>>> 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.
|
|
*/
|
|
|