842 lines
18 KiB
Groff
842 lines
18 KiB
Groff
.TH "include/widget.h" 3 "Version 0.1.0" "Gem-graph" \" -*- nroff -*-
|
|
.ad l
|
|
.nh
|
|
.SH NAME
|
|
include/widget.h \- widgets hierarchy header
|
|
|
|
.SH SYNOPSIS
|
|
.br
|
|
.PP
|
|
\fC#include <gtk\-4\&.0/gtk/gtk\&.h>\fP
|
|
.br
|
|
|
|
.SS "Classes"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "struct \fBTreeNode_t\fP"
|
|
.br
|
|
.RI "phantom documentation used to test the functioning of doxygen "
|
|
.in -1c
|
|
.SS "Macros"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "#define \fBW_MY_SCREEN\fP 1920"
|
|
.br
|
|
.RI "1920 x 960 = ad hoc (pour mon écran)) "
|
|
.ti -1c
|
|
.RI "#define \fBH_MY_SCREEN\fP 1000"
|
|
.br
|
|
.RI "Full HD (1920 x 1080 pixels) "
|
|
.ti -1c
|
|
.RI "#define \fBW_TEXT_WINDOW\fP 550"
|
|
.br
|
|
.RI "ad hoc (mais sans conséquences ici) "
|
|
.ti -1c
|
|
.RI "#define \fBH_TEXT_WINDOW\fP \fBH_MY_SCREEN\fP"
|
|
.br
|
|
.RI "== "
|
|
.ti -1c
|
|
.RI "#define \fBW_TREE\fP 160"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBW_DO_UNDO_REDO_BOX\fP 1300"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBW_XYZ_BOX\fP 62"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBH_XYZ_BOX\fP 200"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBH_E_COLI\fP 760"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBH_OBJECTS_SITUATIONS\fP 130"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBW_COMPARATOR\fP 64"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBW_RULES_USE\fP 90"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBW_IMAGE_800\fP 800"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBW_IMAGE_100\fP 100"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBALL_VS_SELECTED\fP 340"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBH_PARTITION_SYNTH\fP 1600"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBW_PARTITION_SYNTH\fP 400"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBPARTITION_STATE_TOP\fP 600"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBPARTITION_SPACE_VS_CONTROLS_1\fP 920"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBPARTITION_SPACE_VS_CONTROLS_2\fP 800"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBPARTITION_SPACE_VS_CAMERA_IN_STATE\fP 1850"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBPARTITION_SPACE_VS_CAMERA_IN_SYNTH\fP 1560"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBLIST_W\fP 190"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBLIST_H\fP 114"
|
|
.br
|
|
.RI "arbitrary "
|
|
.ti -1c
|
|
.RI "#define \fBH_PARTITION_RESULTS\fP 140"
|
|
.br
|
|
.RI "arbitrary "
|
|
.in -1c
|
|
.SS "Functions"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "GtkWindow * \fBwidget_get_main_window\fP ()"
|
|
.br
|
|
.RI "getter "
|
|
.ti -1c
|
|
.RI "GtkWindow * \fBwidget_get_dialog_window\fP ()"
|
|
.br
|
|
.RI "getter "
|
|
.ti -1c
|
|
.RI "GtkWindow * \fBwidget_get_text_window\fP ()"
|
|
.br
|
|
.RI "getter "
|
|
.ti -1c
|
|
.RI "void \fBwidget_design_main_window\fP (GtkWindow *main_window, GtkApplication *app)"
|
|
.br
|
|
.ti -1c
|
|
.RI "void \fBwidget_design_dialog_window\fP (GtkWindow *main_window, GtkWindow *dialog_window)"
|
|
.br
|
|
.RI "modal "
|
|
.ti -1c
|
|
.RI "void \fBwidget_design_text_window\fP (GtkWindow *main_window, GtkWindow *text_window)"
|
|
.br
|
|
.RI "modal "
|
|
.ti -1c
|
|
.RI "const char * \fBwidget_get_btt_label_synth\fP ()"
|
|
.br
|
|
.RI "synth "
|
|
.ti -1c
|
|
.RI "const char * \fBwidget_get_btt_label_state\fP ()"
|
|
.br
|
|
.RI "state "
|
|
.ti -1c
|
|
.RI "const char * \fBwidget_get_btt_label_rules\fP ()"
|
|
.br
|
|
.RI "rules "
|
|
.ti -1c
|
|
.RI "const char * \fBwidget_get_btt_label_data\fP ()"
|
|
.br
|
|
.RI "data
|
|
.br
|
|
"
|
|
.ti -1c
|
|
.RI "void \fBwindow_design_topbar_left\fP (GtkWidget *header_bar)"
|
|
.br
|
|
.RI "The rules page consists of two half-pages in a GtkPaned widget : "
|
|
.ti -1c
|
|
.RI "void \fBwindow_design_topbar_right\fP (GtkWidget *header_bar, GtkApplication *app)"
|
|
.br
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_page_synth\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_page_state\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_page_data\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_page_measure\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_time_dependent\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_space_vs_non_time_dependent\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_non_time_dependent\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_space_view\fP (int partition_space_vs_camera)"
|
|
.br
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_graph_view_control\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_space_edit_control\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_sequence_control\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void \fBwidget_set_situations_value\fP (int value)"
|
|
.br
|
|
.ti -1c
|
|
.RI "void \fBwidget_set_objects_value\fP (int rank, int value)"
|
|
.br
|
|
.ti -1c
|
|
.RI "int \fBwidget_get_object_transparency\fP (int i)"
|
|
.br
|
|
.ti -1c
|
|
.RI "void \fBwidget_reset_XYZ_in_state_pane\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_pane_all_rules_left\fP ()"
|
|
.br
|
|
.RI "phantom documentation "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_pane_selected_rule_right\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_rules_pilot_box\fP ()"
|
|
.br
|
|
.RI "phantom documentation "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_rules_tree_tools\fP ()"
|
|
.br
|
|
.RI "phantom documentation "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_rules_use\fP ()"
|
|
.br
|
|
.RI "phantom documentation "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_rule_edition_tools\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_rule_investigation_tools\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule_algebra\fP ()"
|
|
.br
|
|
.RI "Provides the three lists needed to describe a rule algebraically\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule_geometry\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule_conditions_list_btt\fP ()"
|
|
.br
|
|
.RI "Builds and presents the conditions list of a rule\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule_assignations_list_btt\fP ()"
|
|
.br
|
|
.RI "Presents the list of all the elementary actions (assignments) performed when the rule is applied\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule_identity_btt\fP ()"
|
|
.br
|
|
.RI "Hosts a list of character strings that can be combined to provide a 'human readable' rule identifier\&. "
|
|
.ti -1c
|
|
.RI "GtkEntry \fBwidget_set_item_text\fP (GtkWidget *list_box, const char *text, bool editable)"
|
|
.br
|
|
.RI "Format an entry (a text item) in a list\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule_camera\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_selected_rule_before_after\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_results_box_organize\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_results_box_display\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_results_box_time\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "struct \fBTreeNode_t\fP * \fBwidget_create_user_rules_tree_node\fP (const gchar *text)"
|
|
.br
|
|
.ti -1c
|
|
.RI "void \fBwidget_add_tree_child_node\fP (struct \fBTreeNode_t\fP *parent, struct \fBTreeNode_t\fP *child)"
|
|
.br
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_user_rules_tree\fP ()"
|
|
.br
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_text_from_address\fP (gchar *text_name)"
|
|
.br
|
|
.RI "getter "
|
|
.ti -1c
|
|
.RI "char * \fBwidget_get_address_text_theory\fP ()"
|
|
.br
|
|
.ti -1c
|
|
.RI "char * \fBwidget_get_address_text_practice\fP ()"
|
|
.br
|
|
.ti -1c
|
|
.RI "char * \fBwidget_get_address_text_alpha_index\fP ()"
|
|
.br
|
|
.ti -1c
|
|
.RI "void * \fBwidget_get_an_impression_of_what_a_rules_comparator_could_be\fP ()"
|
|
.br
|
|
.RI "phantom documentation "
|
|
.ti -1c
|
|
.RI "void \fBwidget_let_us_create_a_complex_useless_and_expensive_tree\fP (struct \fBTreeNode_t\fP *tree_root)"
|
|
.br
|
|
.RI "phantom documentation "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_new\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_select_rules_first\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_depends_on_one_or_two_events\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_depends_on_a_single_event\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_depends_on_two_events\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_select_a_second_rules_set\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_choose_an_event_type\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_correlate\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_insert_in_measurements_list\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_do_end_creation_of_measurement_process\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_event_occurences_nb\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_event_occurences_dates\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_event_occurences_situations\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_time_elapsed_between_two_events\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.ti -1c
|
|
.RI "void * \fBwidget_measure_third_event_occurences_in_between\fP ()"
|
|
.br
|
|
.RI "Phantom documentation\&. "
|
|
.in -1c
|
|
.SH "Detailed Description"
|
|
.PP
|
|
widgets hierarchy header
|
|
|
|
This file is part of Gem-graph\&.
|
|
.SH "Function Documentation"
|
|
.PP
|
|
.SS "void widget_add_tree_child_node (struct \fBTreeNode_t\fP * parent, struct \fBTreeNode_t\fP * child)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*parent\fP
|
|
.br
|
|
\fI*child\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "struct \fBTreeNode_t\fP * widget_create_user_rules_tree_node (const gchar * text)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*text\fP
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
\fBTreeNode_t\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void widget_design_dialog_window (GtkWindow * main_window, GtkWindow * dialog_window)"
|
|
|
|
.PP
|
|
modal
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/fsm/dispatch/fsm_journal_event()
|
|
.PP
|
|
src/widget/manager/on_windows_activation()
|
|
.RE
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*main_window\fP
|
|
.br
|
|
\fI*dialog_window\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void widget_design_main_window (GtkWindow * main_window, GtkApplication * app)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*main_window\fP
|
|
.br
|
|
\fI*app\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void widget_design_text_window (GtkWindow * main_window, GtkWindow * text_window)"
|
|
|
|
.PP
|
|
modal
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/widget/modal/widget_get_text_from_address()
|
|
.PP
|
|
src/widget/manager/on_windows_activation()
|
|
.RE
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*main_window\fP
|
|
.br
|
|
\fI*text_window\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "char * widget_get_address_text_alpha_index ()"
|
|
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
'\&./alphabetic_index\&.all'
|
|
.RE
|
|
.PP
|
|
|
|
.SS "char * widget_get_address_text_practice ()"
|
|
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
'\&./data/text/pratique\&.txt'
|
|
.RE
|
|
.PP
|
|
|
|
.SS "char * widget_get_address_text_theory ()"
|
|
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
'\&./data/text/théorie\&.txt'
|
|
.RE
|
|
.PP
|
|
|
|
.SS "GtkWindow * widget_get_dialog_window ()"
|
|
|
|
.PP
|
|
getter
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-07
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/signal
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
dialog_window
|
|
.RE
|
|
.PP
|
|
|
|
.SS "GtkWindow * widget_get_main_window ()"
|
|
|
|
.PP
|
|
getter
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-07
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/signal
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
main_window
|
|
.RE
|
|
.PP
|
|
|
|
.SS "int widget_get_object_transparency (int rank)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fIrank\fP
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
value
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void * widget_get_selected_rule_algebra ()"
|
|
|
|
.PP
|
|
Provides the three lists needed to describe a rule algebraically\&. The algebraic definition of a rule comprises three types of character strings organised into three lists:
|
|
.IP "\(bu" 2
|
|
conditions
|
|
.IP "\(bu" 2
|
|
assignations
|
|
.IP "\(bu" 2
|
|
name (a set of identity elements)
|
|
.PP
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-08
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/widget/one_rule/algebra/conditions()
|
|
.PP
|
|
src/widget/one_rule/algebra/assignations()
|
|
.PP
|
|
src/widget/one_rule/algebra/identity()
|
|
.PP
|
|
src/widget/one_rule/dispatch()
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void * widget_get_selected_rule_assignations_list_btt ()"
|
|
|
|
.PP
|
|
Presents the list of all the elementary actions (assignments) performed when the rule is applied\&. Today, an arbitrary presentation with no link to the XML model and no verification of compliance with the meta-rules\&. (see below) TODO
|
|
.PP
|
|
|- - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - - >
|
|
.PP
|
|
This list groups all the elementary assignments of the rule\&. No assignment should be repeated or modified by other assignments\&. (== a unique assignment per address in rule workspace) Completeness is not required\&. (== there does not need to be one assignment per address in the rule workspace)
|
|
.PP
|
|
< - - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - -|
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-08
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/widget/one_rule/algebra/utilities/widget_set_item_text()
|
|
.PP
|
|
src/fsm/dispatch/fsm_journal_event() < TODO (for each item ?)
|
|
.PP
|
|
src/widget/one_rule/algebra/dispatch()
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
the assignations list
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void * widget_get_selected_rule_conditions_list_btt ()"
|
|
|
|
.PP
|
|
Builds and presents the conditions list of a rule\&. This list sets out all the conditions that the rule must meet in order to be applied\&.
|
|
.PP
|
|
Today, an arbitrary presentation with no link to the XML model and no verification of compliance with the meta-rules\&. (see below) TODO
|
|
.PP
|
|
|- - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - - >
|
|
.PP
|
|
No conditions should be repeated\&. No condition may contradict another (== a unique condition per address in rule workspace) Completeness is not required (== there does not need to be one condition per address in the rule workspace)
|
|
.PP
|
|
(NB The following applies to server workers) Two rules cannot share the same set of conditions\&. If several rules apply to the same set of local conditions - which can happen if several different actions are possible from the same situation - they must each include an additional condition determining their probability of execution in the event of a conflict\&. If two rules share the same local set of conditions, they must both be evaluated\&. If all the conditions of one rule are included in the conditions of another rule, then the other rule must be evaluated first\&.
|
|
.PP
|
|
< - - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - -|
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-08
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/widget/one_rule/algebra/utilities/widget_set_item_text()
|
|
.PP
|
|
src/fsm/dispatch/fsm_journal_event() < TODO (for each item ?)
|
|
.PP
|
|
src/widget/one_rule/algebra/dispatch()
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
the conditions list
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void * widget_get_selected_rule_identity_btt ()"
|
|
|
|
.PP
|
|
Hosts a list of character strings that can be combined to provide a 'human readable' rule identifier\&. This list can also contain non-mandatory elements\&.
|
|
.PP
|
|
Each rule can have a specific 'human readable' name chosen by its designer\&. This name can be used to identify the rule\&. It is desirable for a unique name to be accepted and shared by as many users as possible\&.
|
|
.PP
|
|
On the contrary, for the automaton, the identity of each rule is given exclusively by its set of conditions\&.
|
|
.PP
|
|
Today, this function provides only an arbitrary presentation with no link to the XML model and no verification of compliance with the meta-rules\&. (see below) TODO
|
|
.PP
|
|
|- - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - - >
|
|
.PP
|
|
No item of the list should be repeated\&. No element describing the function of the rule can contradict another\&. All the elements required for identification by name must be present\&. Uniqueness is required (This name must be usable as a key)\&. Non-mandatory elements can be added (comments, etc\&.)\&.
|
|
.PP
|
|
< - - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - -|
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-08
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/widget/one_rule/algebra/utilities/widget_set_item_text()
|
|
.PP
|
|
src/fsm/dispatch/fsm_journal_event() < TODO (for each item ?)
|
|
.PP
|
|
src/widget/one_rule/algebra/dispatch/gtk_box_append()
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
rule identity
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void * widget_get_space_view (int partition_space_vs_camera)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fIpartition_space_vs_camera\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void * widget_get_text_from_address (gchar * text_address)"
|
|
|
|
.PP
|
|
getter
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/widget/modal/widget_design_text_window()
|
|
.RE
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*text_address\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "GtkWindow * widget_get_text_window ()"
|
|
|
|
.PP
|
|
getter
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-07
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/signal
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
text_window
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void * widget_get_user_rules_tree ()"
|
|
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
scrolled_window
|
|
.RE
|
|
.PP
|
|
|
|
.SS "GtkEntry widget_set_item_text (GtkWidget * list_box, const char * text, bool editable)"
|
|
|
|
.PP
|
|
Format an entry (a text item) in a list\&.
|
|
.PP
|
|
\fBSince\fP
|
|
.RS 4
|
|
2024-08
|
|
.RE
|
|
.PP
|
|
\fBSee also\fP
|
|
.RS 4
|
|
src/widget/one_rule/algebra/conditions()
|
|
.PP
|
|
src/widget/one_rule/algebra/assign()
|
|
.PP
|
|
src/widget/one_rule/algebra/identity()
|
|
.RE
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*list_box\fP
|
|
.br
|
|
\fI*text\fP
|
|
.br
|
|
\fIeditable\fP
|
|
.RE
|
|
.PP
|
|
\fBReturns\fP
|
|
.RS 4
|
|
*entry < a text item
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void widget_set_objects_value (int rank, int value)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fIrank\fP
|
|
.br
|
|
\fIvalue\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void widget_set_situations_value (int value)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fIvalue\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void window_design_topbar_left (GtkWidget * header_bar)"
|
|
|
|
.PP
|
|
The rules page consists of two half-pages in a GtkPaned widget :
|
|
.IP "\(bu" 2
|
|
on the left, widgets for controlling or editing all the rules\&.
|
|
.IP "\(bu" 2
|
|
on the right, widgets for controlling or editing the selected rule\&.
|
|
.PP
|
|
.PP
|
|
As this division is clear and constant, it is simpler to place these two half-pages at the same hierarchical level as the other full pages like 'synth', 'state' or 'results'\&.
|
|
.PP
|
|
So there is no: 'widget_get_rules_page()' function\&. Instead, the distribution: 'all rules' versus 'the selected one' is moved to the file: 'signal'\&.
|
|
.PP
|
|
It is in the function: static void switch_state_rules_data() { switch (\fBfsm_get_state_rules_data()\fP) { \&.\&.\&. case (RULES) : GtkPaned *widget_all_vs_selected_one = \&.\&.\&. break; \&.\&.\&. }
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*header_bar\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SS "void window_design_topbar_right (GtkWidget * header_bar, GtkApplication * app)"
|
|
|
|
.PP
|
|
\fBParameters\fP
|
|
.RS 4
|
|
\fI*header_bar\fP
|
|
.br
|
|
\fI*app\fP
|
|
.RE
|
|
.PP
|
|
|
|
.SH "Author"
|
|
.PP
|
|
Generated automatically by Doxygen for Gem-graph from the source code\&.
|