2 * Copyright (C) 2006 John Ellis
3 * Copyright (C) 2008 - 2022 The Geeqie Team
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License along
18 * with this program; if not, write to the Free Software Foundation, Inc.,
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24 * @brief Diagrams to be included in the Doxygen output
26 * The contents are diagrams to be included in the Doxygen output.
27 * The .c file extension is so that Doxygen will process it.
31 * @page diagrams Diagrams
32 * @section options_overview Options Overview
34 * #_ConfOptions #_LayoutOptions
41 * options.h : ConfOptions
43 * options.h : Options applicable to **all** Layout Windows
44 * options.h : These are in the <global> section of geeqierc.xml
45 * options.h : Available to all modules via the global variable **options**
46 * typedefs.h : LayoutOptions
48 * typedefs.h : Options applicable to **each** Layout Window
49 * typedefs.h : These are in the <layout> section of geeqierc.xml
50 * typedefs.h : There is one <layout> section for each Layout Window displayed
51 * typedefs.h : Available via **<layout_window>->options**
57 * @page diagrams Diagrams
58 * @section options_diagrams_main Options - New Window From Main
61 * #layout_new_from_default
62 * #load_config_from_file
64 * #setup_default_options
70 * : **init_options()**
72 * Set **options** = ConfOptions from hard-coded init values;
76 * : **setup_default_options()**
78 * set hard-coded ConfOptions:
88 * shell path and options
95 * --new-instance) then (yes)
97 * : **load_options()**
101 * : GQ_SYSTEM_WIDE_DIR
108 * /.geeqie/geeqierc.xml;
112 * : **load_config_from_file()**
114 * set **options** from file
115 * and all <layout window>->options in file;
120 * if (broken config. file
122 * or no layout section loaded
123 * (i.e. session not saved)) then (yes)
125 * : **layout_new_from_default()**;
126 * if (default.xml exists) then (yes)
128 * layout_window default options
129 * from default.xml file;
132 * layout_window default options;
138 * : Send --new-window request to remote
139 * No return to this point
140 * This instance terminates;
144 * : Enter gtk main loop;
151 * @page diagrams Diagrams
152 * @section options_diagrams_remote Options - New Window From Remote
153 * #layout_new_from_default
159 * : **layout_new_from_default()**;
160 * if (default.xml exists) then (yes)
162 * layout_window default options
163 * from default.xml file;
166 * layout_window default options;
169 * : set path from PWD;
174 * @page diagrams Diagrams
175 * @section options_diagrams_menu Options - New Window From Menu
176 * #layout_menu_new_window_cb
177 * #layout_menu_window_from_current_cb
178 * #layout_new_from_default
181 * group layout_util.c
187 * : **layout_new_from_default()**;
188 * if (default.xml exists) then (yes)
190 * layout_window default options
191 * from default.xml file;
194 * layout_window default options;
201 * **layout_menu_window_from_current_cb()**
202 * copy layout_window options
203 * from current window;
208 * **layout_menu_new_window_cb()**
209 * load layout_window options
210 * from saved xml file list;
218 * @ref options_overview Options Overview