Compare commits
No commits in common. "5d57787d75199fece0384f1c33ac152a57ad736c" and "48ef1448ebda8f1fa56366642033c7c0699f5059" have entirely different histories.
5d57787d75
...
48ef1448eb
44
src/main.c
44
src/main.c
|
@ -42,49 +42,5 @@ int main(int argc, char **argv)
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* Comment gem_graph_client crée-t-il son application et sa fenêtre ?
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_new() est une fonction primitive de gtk.h
|
|
||||||
* qui permet de donner au gestionnaire de bureau, Gnome, les informations
|
|
||||||
* nécessaires et suffisantes pour initialiser une nouvelle application.
|
|
||||||
*
|
|
||||||
* Ces informations sont :
|
|
||||||
* - le nom de l'application (son identité) et
|
|
||||||
* - des flags initialiséà leurs valeurs par défaut
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_new() est réécrite à la fin de application.c
|
|
||||||
*
|
|
||||||
* Une fois l'espace mémoire nécessaire réservé,
|
|
||||||
* la nouvelle application peut démarrer
|
|
||||||
* et c'est une autre primitive de gtk.h : g_application_run()
|
|
||||||
* qui donne à Gnome l'ordre de lancer le thread
|
|
||||||
* qui exécutera cette application.
|
|
||||||
*
|
|
||||||
* Une fois l'application lancée, main() n'a plus rien à faire.
|
|
||||||
* La suite va se dérouler d'abord dans application.c puis dans window.c
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* How does gem_graph_client create its application and window?
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_new() is a primitive function of gtk.h
|
|
||||||
* which provides the desktop manager, Gnome, with the information
|
|
||||||
* necessary and sufficient information to initialize a new application.
|
|
||||||
*
|
|
||||||
* This information is :
|
|
||||||
* - the application name (its identity) and
|
|
||||||
* - some flags set to their default values
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_new() is rewritten at the end of application.c
|
|
||||||
*
|
|
||||||
* Once the necessary memory space has been reserved,
|
|
||||||
* the new application can start
|
|
||||||
* and this is another gtk.h primitive: g_application_run()
|
|
||||||
* which instructs Gnome to launch the thread
|
|
||||||
* which will run this application.
|
|
||||||
*
|
|
||||||
* Once the application has been launched, main() has nothing more to do.
|
|
||||||
* The rest will take place first in application.c and then in window.c.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
|
@ -151,61 +151,3 @@ GemGraphClientApplication *gem_graph_client_application_new(
|
||||||
|
|
||||||
/* https://docs.gtk.org/gtk4/input-handling.html */
|
/* https://docs.gtk.org/gtk4/input-handling.html */
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Le rôle de application.c est de donner au gestionnaire de bureau Gnome
|
|
||||||
* toutes les informations nécessaires
|
|
||||||
* au fonctionnement de l'application gem_graph_client.
|
|
||||||
*
|
|
||||||
* Lorsque Gnome reçoit de gtk la commande : g_application_run()
|
|
||||||
* il répond en exécutant deux fonctions primitives
|
|
||||||
* qui doivent se trouver dans application.c :
|
|
||||||
* - gem_graph_client_application_class_init() et
|
|
||||||
* - gem_graph_client_application_init()
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_class_init()
|
|
||||||
* crée la classe application qui décrira l'application gem_graph_client
|
|
||||||
* et la rend active.
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_init()
|
|
||||||
* spécifie les propriétés de l'application de manière plus détaillée.
|
|
||||||
* L'une de ses premières tâches et de désactiver des actions
|
|
||||||
* qui pourraient être demandées par l'utilisateur
|
|
||||||
* alors que l'application n'est pas encore prête à y répondre.
|
|
||||||
*
|
|
||||||
* Lorsque la totalité de l'application aura été mise en place
|
|
||||||
* et qu'elle sera fonctionnelle,
|
|
||||||
* la fenêtre sera créée et ces actions seront réactivées par :
|
|
||||||
* gem_graph_client_application_activate()
|
|
||||||
*
|
|
||||||
* La description de la fenêtre se trouvent dans
|
|
||||||
* - window.c (description dynamique des widgets)
|
|
||||||
* - events.c
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The role of application.c is to give the Gnome desktop manager
|
|
||||||
* all the necessary information to run the application gem_graph_client.
|
|
||||||
*
|
|
||||||
* When Gnome receives the g_application_run() command from gtk
|
|
||||||
* it responds by executing two primitive functions
|
|
||||||
* described in the application.c file:
|
|
||||||
* - gem_graph_client_application_class_init() and
|
|
||||||
* - gem_graph_client_application_init()
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_class_init()
|
|
||||||
* creates the application class that describes the gem_graph_client
|
|
||||||
* application and makes it active.
|
|
||||||
*
|
|
||||||
* gem_graph_client_application_init()
|
|
||||||
* specifies the application's properties in greater detail.
|
|
||||||
* One of its first tasks is to disable actions which may be requested by the user
|
|
||||||
* when the application is not yet ready to respond.
|
|
||||||
*
|
|
||||||
* Once the entire application is up and functional,
|
|
||||||
* the window will be created and these actions will be reactivated by :
|
|
||||||
* gem_graph_client_application_activate()
|
|
||||||
*
|
|
||||||
* Once the application is up and running, the window can be created.
|
|
||||||
* Window operations are described in window.c
|
|
||||||
*/
|
|
||||||
|
|
|
@ -272,5 +272,3 @@ GtkWidget *create_tree_button(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* https://docs.gtk.org/gtk4/getting_started.html */
|
/* https://docs.gtk.org/gtk4/getting_started.html */
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue