Gem-graph 0.1.0
A modelling tool based on rewriting of geometric graphs.
Loading...
Searching...
No Matches
Classes | Macros | Functions
widget.h File Reference

widgets hierarchy header More...

#include <gtk-4.0/gtk/gtk.h>

Classes

struct  TreeNode_t
 phantom documentation used to test the functioning of doxygen More...
 

Macros

#define W_MY_SCREEN   1920
 
#define H_MY_SCREEN   1000
 
#define W_TEXT_WINDOW   550
 
#define H_TEXT_WINDOW   H_MY_SCREEN
 
#define W_TREE   160
 
#define W_DO_UNDO_REDO_BOX   1300
 
#define W_XYZ_BOX   62
 
#define H_XYZ_BOX   200
 
#define H_E_COLI   760
 
#define H_OBJECTS_SITUATIONS   130
 
#define W_COMPARATOR   64
 
#define W_RULES_USE   90
 
#define W_IMAGE_800   800
 
#define W_IMAGE_100   100
 
#define ALL_VS_SELECTED   340
 
#define H_PARTITION_SYNTH   1600
 
#define W_PARTITION_SYNTH   400
 
#define PARTITION_STATE_TOP   600
 
#define PARTITION_SPACE_VS_CONTROLS_1   920
 
#define PARTITION_SPACE_VS_CONTROLS_2   800
 
#define PARTITION_SPACE_VS_CAMERA_IN_STATE   1850
 
#define PARTITION_SPACE_VS_CAMERA_IN_SYNTH   1560
 
#define LIST_W   190
 
#define LIST_H   114
 
#define H_PARTITION_RESULTS   140
 

Functions

GtkWindow * widget_get_main_window ()
 getter
 
GtkWindow * widget_get_dialog_window ()
 getter
 
GtkWindow * widget_get_text_window ()
 getter
 
void widget_design_main_window (GtkWindow *main_window, GtkApplication *app)
 
void widget_design_dialog_window (GtkWindow *main_window, GtkWindow *dialog_window)
 
void widget_design_text_window (GtkWindow *main_window, GtkWindow *text_window)
 
const char * widget_get_btt_label_synth ()
 
const char * widget_get_btt_label_state ()
 
const char * widget_get_btt_label_rules ()
 
const char * widget_get_btt_label_data ()
 
void window_design_topbar_left (GtkWidget *header_bar)
 
void window_design_topbar_right (GtkWidget *header_bar, GtkApplication *app)
 
void * widget_get_page_synth ()
 
void * widget_get_page_state ()
 
void * widget_get_page_data ()
 
void * widget_get_page_measure ()
 
void * widget_get_page_engine ()
 
void * widget_get_time_dependent ()
 
void * widget_get_space_vs_non_time_dependent ()
 
void * widget_get_non_time_dependent ()
 
void * widget_get_space_view (int partition_space_vs_camera)
 
void * widget_get_graph_view_control ()
 
void * widget_get_space_edit_control ()
 
void * widget_get_sequence_control ()
 
void widget_set_situations_value (int value)
 
void widget_set_objects_value (int rank, int value)
 
int widget_get_object_transparency (int i)
 
void widget_reset_XYZ_in_state_pane ()
 
void widget_reset_XYZ_scrollbars_rule ()
 
void widget_reset_XYZ_scrollbars_state ()
 
void widget_reset_XYZ_scrollbars_synth ()
 
void * widget_get_pane_all_rules_left ()
 
void * widget_get_pane_selected_rule_right ()
 
void * widget_get_rules_pilot_box ()
 
void * widget_get_rules_tree_tools ()
 
void * widget_get_rules_use ()
 
void * widget_get_selected_rule ()
 
void * widget_get_rule_edition_tools ()
 
void * widget_get_rule_investigation_tools ()
 
void * widget_get_selected_rule_algebra ()
 Provides the three lists needed to describe a rule algebraically.
 
void * widget_get_selected_rule_geometry ()
 
void * widget_get_selected_rule_conditions_list_btt ()
 Builds and presents the conditions list of a rule.
 
void * widget_get_selected_rule_assignations_list_btt ()
 Presents the list of all the elementary actions (assignments) performed when the rule is applied.
 
void * widget_get_selected_rule_identity_btt ()
 Hosts a list of character strings that can be combined to provide a "human readable" rule identifier.
 
GtkEntry widget_set_item_text (GtkWidget *list_box, const char *text, bool editable)
 Format an entry (a text item) in a list.
 
void * widget_get_selected_rule_camera ()
 
void * widget_get_selected_rule_before_after ()
 
void * widget_get_results_box_organize ()
 
void * widget_get_results_box_display ()
 
void * widget_get_results_box_time ()
 
struct TreeNode_twidget_create_user_rules_tree_node (const gchar *text)
 
void widget_add_tree_child_node (struct TreeNode_t *parent, struct TreeNode_t *child)
 
void * widget_get_user_rules_tree ()
 
void * widget_get_text_from_address (gchar *text_name)
 
char * widget_get_address_text_theory ()
 return "./data/text/théorie.txt"
 
char * widget_get_address_text_practice ()
 return "./data/text/pratique.txt"
 
char * widget_get_address_text_alpha_index ()
 return "./alphabetic_index.all"
 
void * widget_get_an_impression_of_what_a_rules_comparator_could_be ()
 phantom documentation used to test the functioning of doxygen
 
void widget_let_us_create_a_complex_useless_and_expensive_tree (struct TreeNode_t *tree_root)
 
void * widget_measure_new ()
 
void * widget_measure_do_select_rules_first ()
 
void * widget_measure_do_depends_on_one_or_two_events ()
 
void * widget_measure_do_depends_on_a_single_event ()
 
void * widget_measure_do_depends_on_two_events ()
 
void * widget_measure_do_select_a_second_rules_set ()
 
void * widget_measure_do_choose_an_event_type ()
 
void * widget_measure_do_correlate ()
 
void * widget_measure_do_insert_in_measurements_list ()
 
void * widget_measure_do_end_creation_of_measurement_process ()
 
void * widget_measure_event_occurences_nb ()
 
void * widget_measure_event_occurences_dates ()
 
void * widget_measure_event_occurences_situations ()
 
void * widget_measure_time_elapsed_between_two_events ()
 
void * widget_measure_third_event_occurences_in_between ()
 

Detailed Description

widgets hierarchy header

This file is part of Gem-graph.

Function Documentation

◆ widget_design_main_window()

void widget_design_main_window ( GtkWindow *  main_window,
GtkApplication *  app 
)
Parameters
*main_window
*app

◆ widget_get_dialog_window()

GtkWindow * widget_get_dialog_window ( )

getter

Since
2024-07
See also
src/signal
Returns
dialog_window

◆ widget_get_main_window()

GtkWindow * widget_get_main_window ( )

getter

Since
2024-07
See also
src/signal
Returns
main_window

◆ widget_get_selected_rule_algebra()

void * widget_get_selected_rule_algebra ( )

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:

  • conditions
  • assignations
  • name (a set of identity elements)
Since
2024-08
See also
src/widget/one_rule/algebra/conditions()
src/widget/one_rule/algebra/assignations()
src/widget/one_rule/algebra/identity()
src/widget/one_rule/dispatch()

◆ widget_get_selected_rule_assignations_list_btt()

void * widget_get_selected_rule_assignations_list_btt ( )

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

|- - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - - >

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)

< - - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - -|

Since
2024-08
See also
src/widget/one_rule/algebra/utilities/widget_set_item_text()
src/fsm/dispatch/fsm_journal_event() < TODO (for each item ?)
src/widget/one_rule/algebra/dispatch()
Returns
the assignations list

◆ widget_get_selected_rule_conditions_list_btt()

void * widget_get_selected_rule_conditions_list_btt ( )

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.

Today, an arbitrary presentation with no link to the XML model and no verification of compliance with the meta-rules. (see below) TODO

|- - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - - >

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)

(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.

< - - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - -|

Since
2024-08
See also
src/widget/one_rule/algebra/utilities/widget_set_item_text()
src/fsm/dispatch/fsm_journal_event() < TODO (for each item ?)
src/widget/one_rule/algebra/dispatch()
Returns
the conditions list

◆ widget_get_selected_rule_identity_btt()

void * widget_get_selected_rule_identity_btt ( )

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.

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.

On the contrary, for the automaton, the identity of each rule is given exclusively by its set of conditions.

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

|- - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - - >

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.).

< - - - - - - - - - - - - - - meta-rules - - - - - - - - - - - - - - -|

Since
2024-08
See also
src/widget/one_rule/algebra/utilities/widget_set_item_text()
src/fsm/dispatch/fsm_journal_event() < TODO (for each item ?)
src/widget/one_rule/algebra/dispatch/gtk_box_append()
Returns
rule identity

◆ widget_get_text_window()

GtkWindow * widget_get_text_window ( )

getter

Since
2024-07
See also
src/signal
Returns
text_window

◆ widget_set_item_text()

GtkEntry widget_set_item_text ( GtkWidget *  list_box,
const char *  text,
bool  editable 
)

Format an entry (a text item) in a list.

Since
2024-08
See also
src/widget/one_rule/algebra/conditions()
src/widget/one_rule/algebra/assign()
src/widget/one_rule/algebra/identity()
Parameters
*list_box
*text
editable
Returns
*entry < a text item