78extern void print_cp2k (
int f, GtkTextBuffer * buffer);
82extern GtkWidget *
cpmd_box (GtkWidget *
box, gchar *
lab,
int v_space,
int h_space,
int dim);
88double default_cp2k_options[41] = {0.0, 86400.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 300.0,
89 4.0, 0.0, 0.0, 50.0, 0.000001, 20.0, 0.00001, 2.0, 0.0, 0.0,
90 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
91 0.0, 7.0, 10000.0, 2.5, 300.0, 1.0, 10000.0, 0.0001, 10.0, 0.0,
95double default_cp2k_extra[3][4] = {{0.0, 0.0, 0.0, 0.0}, {0.0, 0.0, 0.0, 0.0}, {-1.0, -1.0, 1.0, 0.0}};
99int cp2k_default_num[12] = {7, 3, 3, 4, 3, 11, 8, 4, 10, 9, 4, 2};
102 "VIBRATIONAL_ANALYSIS",
"LINEAR_RESPONSE",
"EHRENFEST_DYN",
" ",
" ",
" ",
" "},
103 {
"LOW",
"MEDIUM",
"HIGH",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
104 {
"GPW",
"GAPW",
"GAPW_XC",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
105 {
"ATOMIC",
"CORE",
"RANDOM",
"RESTART",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
106 {
"BROYDEN",
"CG",
"DIIS",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
107 {
"BLYP",
"B3LYP",
"BEEFVDW",
"BP",
"HCTH120",
"LDA",
"OLYP",
"PADE",
"PBE",
"PBE0",
"TPSS"},
108 {
"XYZ",
"XY",
"XZ",
"YZ",
"X",
"Y",
"Z",
"NONE",
" ",
" ",
" "},
109 {
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
110 {
"CUBIC",
"HEXAGONAL",
"ORTHORHOMBIC",
"RHOMBOHEDRAL",
111 "TETRAGONAL_AB",
"TETRAGONAL_AC",
"TETRAGONAL_BC",
"MONOCLINIC",
"TRICLINIC",
"NONE",
" "},
112 {
"ISOKIN",
"LANGEVIN",
"NPE_F",
"NPE_I",
"NPT_F",
"NPT_I",
"NVE",
"NVT",
"NVT_ADIABATIC",
" ",
" "},
113 {
"BFGS",
"CG",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "}};
115gchar *
cp2k_vdw_keywords[2][3] = {{
"DRSLL",
"LMKLL",
"RVV10"}, {
"DFTD2",
"DFTD3",
"DFTD3(BJ)"}};
118 i18n(
"Single Point Energy and Forces Calculation"),
119 i18n(
"Geometry Optimization"),
i18n(
"Molecular Dynamics"),
120 i18n(
"Vibrational Analysis"),
i18n(
"Linear Response Calculation"),
i18n(
"Ehrenfest Dynamics"),
" ",
" ",
" ",
" "},
121 {
i18n(
"Low"),
i18n(
"Medium"),
i18n(
"High"),
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
122 {
i18n(
"Gaussian and Plane Waves Method"),
123 i18n(
"Gaussian and Augmented Plane Waves Method"),
124 i18n(
"Gaussian and Augmented Plane Waves Method Only for XC"),
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
125 {
i18n(
"Generate an Atomic Density Using the Atomic Code"),
126 i18n(
"Diagonalize the Core Hamiltonian"),
127 i18n(
"Use Random Wave-function Coefficients"),
128 i18n(
"Use the RESTART File"),
" ",
" ",
" ",
" ",
" ",
" ",
" "},
129 {
i18n(
"Broyden Mixing Approximating the Inverse Hessian"),
130 i18n(
"Conjugate Gradients"),
i18n(
"Direct Inversion in the Iterative Subspace"),
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
131 {
"Becke + Lee-Yang-Parr",
i18n(
"Becke Three-parameters Hybrid + LYP"),
i18n(
"Bayesian Error Estimation + van der Walls"),
132 "Becke + Perdew",
"Hamprecht-Cohen-Tozer-Handy",
i18n(
"Local Density Approximation"),
"Handy-Cohen + LYP",
"Padé",
133 "Perdew + Burke-Ernzerhof",
i18n(
"Parameter-free PBE"),
"Tao-Perdew-Staroverov-Scuseria"},
134 {
i18n(
"3 Dimensional (XYZ)"),
i18n(
"2 Dimensional (XY)"),
i18n(
"2 Dimensional (XZ)"),
i18n(
"2 Dimensional (YZ)"),
135 i18n(
"1 Dimensional (X)"),
i18n(
"1 Dimensional (Y)"),
i18n(
"1 Dimensional (Z)"),
i18n(
"Isolated System"),
" ",
" ",
" "},
136 {
i18n(
"Box Parameters (a,b,c and α,β,γ)"),
i18n(
"Lattice Vectors"),
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "},
137 {
i18n(
"Cubic (a = b = c, α = β = γ = 90°)"),
i18n(
"Hexagonal (a = b ≠ c, α = β = 90°, γ = 60°)"),
138 i18n(
"Orthorhombic (a ≠ b ≠ c, α = β = γ = 90°)"),
i18n(
"Rhombohedral (a = b = c, α = β = γ ≠ 90°)"),
139 i18n(
"Tetragonal (a = b ≠ c, α = β = γ = 90°)"),
i18n(
"Tetragonal (a = c ≠ b, α = β = γ = 90°)"),
i18n(
"Tetragonal (a ≠ b = c, α = β = γ = 90°)"),
140 i18n(
"Monoclinic (a ≠ b ≠ c ≠ a, α = γ = 90°, β ≠ 90°)"),
i18n(
"Triclinic (a ≠ b ≠ c ≠ a, α ≠ β ≠ γ ≠ α ≠ 90°)"),
i18n(
"No Cell Symmetry"),
" "},
141 {
i18n(
"Constant kinetic energy"),
i18n(
"Langevin dynamics (constant temperature)"),
i18n(
"Constant pressure ensemble (no thermostat)"),
142 i18n(
"Constant pressure ensemble using an isotropic cell (no thermostat)"),
i18n(
"Constant temperature and pressure using a flexible cell"),
143 i18n(
"Constant temperature and pressure using an isotropic cell"),
i18n(
"Constant energy (µ-canonical)"),
i18n(
"Constant temperature and volume (canonical)"),
144 i18n(
"Adiabatic dynamics in constant temperature and volume ensemble (CAFES)"),
" ",
" "},
145 {
i18n(
"Diagonalization of a full Hessian matrix"),
i18n(
"Conjugate gradients"),
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "}};
147gchar *
cp2k_vdw_text[2][3] = {{
i18n(
"Dion-Rydberg-Schroeder-Langreth-Lundqvist non-local van der Waals density functional"),
148 i18n(
"Lee-Murray-Kong-Lundqvist-Langreth non-local van der Waals density functional"),
149 i18n(
"Revised Vydrov-van Voorhis non-local van der Waals density functional")},
150 {
i18n(
"Grimme D2 method"),
i18n(
"Grimme D3 method (zero damping)"),
i18n(
"Grimme D3 method (Becke-Johnson damping)")}};
154 i18n(
"Max CPU time:"),
155 i18n(
"Print level:"),
156 i18n(
"Use restart information:"),
157 i18n(
"File that contains the restart information:"),
158 i18n(
"File that contains the basis set(s):"),
159 i18n(
"File that contains the pseudo-potential(s):"),
160 i18n(
"File that contains the wave-function:"),
162 i18n(
"Density cutoff for the finest grid level:"),
163 i18n(
"Number of multi-grids:"),
164 i18n(
"Quickstep method:"),
165 i18n(
"Initial guess for the wave-function:"),
166 i18n(
"Maximum inner-SCF cycle(s):"),
167 i18n(
"Convergence threshold:"),
168 i18n(
"Maximum outer-SCF cycle(s):"),
169 i18n(
"Convergence threshold:"),
170 i18n(
"Orbital transformation minimizer:"),
171 i18n(
"DFT functional:"),
172 i18n(
"Spin unrestricted calculation"),
173 i18n(
"Multiplicity"),
174 i18n(
"Use van der Waals interactions"),
175 i18n(
"Restricted Open Kohn-Sham 'ROKS'"),
177 i18n(
"Stress tensor"),
178 i18n(
"Mulliken population"),
179 i18n(
"Löwdin population"),
181 i18n(
"Periodicity:"),
182 i18n(
"Lattice parameters:"),
185 i18n(
"Maximum number of MD steps:"),
186 i18n(
"MD time step:"),
187 i18n(
"Initial temperature:"),
188 i18n(
"Geometry optimizer:"),
189 i18n(
"Maximum number of optimization steps:"),
190 i18n(
"Atomic forces convergence criterion:"),
191 i18n(
"Save information every:"),
192 i18n(
"Add constraint(s)")};
195 i18n(
"provides the general control parameters for the calculation to be performed"),
196 i18n(
"describes how the interatomic forces will be evaluated"),
197 i18n(
"describes the model: symmetry, periodicity and atomic species, pseudo-potentials and coordinates"),
198 i18n(
"describes the displacement of the atoms for molecular dynamics and geometry optimization"),
199 i18n(
"To describe the thermostat(s) for molecular dynamics"),
200 i18n(
"To describe the parameters required for restart")};
208 {
"TIMECON",
" ",
" ",
" "},
209 {
" ",
" ",
" ",
" "},
210 {
"LENGTH",
"MTS",
"TIMECON",
"YOSHIDA"}};
215int cp2k_opts_type[4][
NC2OP] = {{ 2, 1, 2, 3, 4, 4, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
216 { 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 2, 3, 1, 3, 3, 3, 3, 3, 3, 3},
217 { 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
218 { 2, -2, 1, 1, 1, 2, 1, 1, 1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}};
251 gtk_text_buffer_get_start_iter (
qmbuffer[0], & bStart);
252 gtk_text_buffer_get_end_iter (
qmbuffer[0], & bEnd);
253 gtk_text_buffer_delete (
qmbuffer[0], & bStart, & bEnd);
269 i = GPOINTER_TO_INT(data);
275 if (v > 0.0)
tmp_cp2k -> extra_opts[0][2] = v;
279 if (v > 0.0)
tmp_cp2k -> extra_opts[1][0] = v;
283 if ((
int)v == -1 || (
int)v > 0)
tmp_cp2k -> extra_opts[2][i-
CP2POR] = v;
313 i = GPOINTER_TO_INT(data);
331 i = GPOINTER_TO_INT(data);
363 gchar * cp2k_vdw_vars[2] = {
i18n(
"Type of potential:"),
i18n(
"Cutoff:")};
366 i = (
id == 0) ? 2 : 3;
467 i = GPOINTER_TO_INT(data);
470 gchar * cp2k_roks_options[2] = {
i18n(
"Energy scaling:"),
i18n(
"Spin configuration <sup>*</sup>:")};
471 gchar * cp2k_orb_options[2] = {
i18n(
"Number of HOMO levels (-1 for all):"),
i18n(
"Number of LUMO levels (-1 for all):")};
473 gchar * str = g_strdup_printf (_(
"%s - options"),
i18n(
global_opts[i]));
516 add_box_child_start (GTK_ORIENTATION_VERTICAL,
vbox, gtk_label_new (_(
"* for the singly occupied orbitals")), FALSE, FALSE, 5);
550 i = GPOINTER_TO_INT(data);
591 i = GPOINTER_TO_INT(data);
633 i = GPOINTER_TO_INT(data) -
CP2FRE;
636 gtk_text_buffer_get_start_iter (textbuf, & bStart);
637 gtk_text_buffer_get_end_iter (textbuf, & bEnd);
641 tmp_cp2k -> files[i] = g_strdup_printf (
"%s", gtk_text_buffer_get_text (textbuf, & bStart, & bEnd, FALSE));
648 if (
tmp_cp2k -> spec_files[j][k] != NULL) g_free (
tmp_cp2k -> spec_files[j][k]);
649 tmp_cp2k -> spec_files[j][k] = g_strdup_printf (
"%s", gtk_text_buffer_get_text (textbuf, & bStart, & bEnd, FALSE));
650 if (g_strcmp0 (
tmp_cp2k -> spec_files[j][k],
"") == 0)
652 tmp_cp2k -> spec_files[j][k] = NULL;
674 gchar * info[2] = {
i18n(
"<b>-</b> Select and use set of parameters from the database: "),
675 i18n(
"<b>-</b> Define and use other set of parameters: ")};
676 gchar * data_name[2][2] = {{
i18n(
"\t\tAvailable basis set for "),
i18n(
"\t\tAvailable pseudo-potential for ")},
677 {
i18n(
"\t\tBasis set for "),
i18n(
"\t\tPseudo-potential for ")}};
687 str = g_strdup_printf (
"%s%s", _(data_name[i][j]),
qm_proj ->
chemistry -> label[spec]);
693 if (
tmp_cp2k -> spec_data[spec][j] > -1)
700 str = g_strdup_printf (
"<b>%s</b>", _(
"None"));
708 GINT_TO_POINTER(j+10),
tmp_cp2k -> spec_files[spec][j]), FALSE, FALSE, 5);
731 i = GPOINTER_TO_INT(data);
751 gtk_assistant_remove_page (GTK_ASSISTANT(
qm_assistant), 5);
763 gtk_assistant_insert_page (assist, page, 5);
765 gtk_assistant_set_page_type (assist, page, GTK_ASSISTANT_PAGE_CONTENT);
766 gtk_assistant_set_page_complete (assist, page, TRUE);
772 if (j == 2 || j == 3)
821 for (i=0; i<
NC2OP; i++)
891 if (
icomb == 5 && (k == 0 || k == 3 || k == 4 || k == 6 || k == 7 || k == 8 || k == 10))
901 g_signal_connect (G_OBJECT (widg),
"changed", G_CALLBACK(
changed_cp2k_box), GINT_TO_POINTER(j));
941 gchar * str = g_strdup_printf (_(
" %s provides official CP2K atomic basis sets and pseudo-potentials, are included:"),
PACKAGE);
945 markup_label(_(
"<sup><tt>\t - BASIS_MOLOPT\t\t(CP2K v9.1, released: <b>2021-12-31</b>)</tt></sup>\n"
946 "<sup><tt>\t - GTH_BASIS_SETS\t\t(CP2K v9.1, released: <b>2021-12-31</b>)</tt></sup>\n"
947 "<sup><tt>\t - BASIS_SET\t\t(CP2K v9.1, released: <b>2021-12-31</b>)</tt></sup>\n"
948 "<sup><tt>\t - POTENTIAL\t\t(CP2K v9.1, released: <b>2021-12-31</b>)</tt></sup>"), -1, -1, 0.1, 0.5), FALSE, FALSE, 0);
950 markup_label(_(
" Following your selection the files that contains the parameters for your calculation will be generated automatically.\n"
951 " Alternatively it is possible to define and use your own set of parameters."), -1, -1, 0.0, 0.5), FALSE, FALSE, 20);
979 return g_strdup_printf (_(
"Details of the <b>%s</b> section that %s"),
cpsect[p],
cpelemts[p+1]);
983 return g_strdup_printf (
"%s",
cpelemts[p+1]);
1014 tmp_cp2k -> input_type = GPOINTER_TO_INT (data);
1032 GtkWidget * main_box;
1033 gchar * filename[4] = {
i18n(
"CP2K main input file '*.inp'"),
1034 "forces.inc",
"system.inc",
"motion.inc"};
1035 gchar * filetext[4] = {
"<b>&GLOBAL</b>\n...\n<b>&END GLOBAL</b>\n\n<b>@INCLUDE</b> 'forces.inc'\n\n<b>@INCLUDE</b> 'motion.inc'",
1036 "<b>&FORCE_EVAL</b>\n...\n<b>@INCLUDE</b> 'system.inc'\n<b>&END FORCE_EVAL</b>",
1037 "<b>&SUBSYS</b>\n...\n<b>&END SUBSYS</b>",
1038 "<b>&MOTION</b>\n...\n<b>&END MOTION</b>"};
1039 GtkWidget *
vbox, * vbx, * hbx;
1046 add_box_child_start (GTK_ORIENTATION_HORIZONTAL, hbx, gtk_label_new (_(
"CP2K input file '*.inp'")), FALSE, FALSE, 5);
1047 vframe = gtk_frame_new (NULL);
1048 gtk_frame_set_label_widget (GTK_FRAME(vframe), hbx);
1050 gtk_frame_set_shadow_type (GTK_FRAME(vframe), GTK_SHADOW_ETCHED_IN);
1060 add_box_child_start (GTK_ORIENTATION_HORIZONTAL, hbx,
markup_label(
"<b>&SUBSYS</b>\n...\n<b>&END SUBSYS</b>", 150, -1, 0.0, 0.5), FALSE, FALSE, 10);
1074 add_box_child_start (GTK_ORIENTATION_HORIZONTAL, hbx, gtk_label_new ((! i) ? _(filename[i]) : filename[i]), FALSE, FALSE, 5);
1075 vframe = gtk_frame_new (NULL);
1076 gtk_frame_set_label_widget (GTK_FRAME(vframe), hbx);
1078 gtk_frame_set_shadow_type (GTK_FRAME(vframe), GTK_SHADOW_ETCHED_IN);
1104 gchar *
text = _(
"The CP2K input system offers to have the information gathered in a single, rather long, file\n"
1105 "or separated in several files each of them dedicated to a particular section of the input: ");
1110 gchar * ftext[2] = {
i18n(
"Single input file"),
i18n(
"Multiple files")};
1116 gtk_widget_set_size_request (
vfbox[i], (i==0) ? 200 : 400, -1);
1125 if (i) gtk_check_button_set_group ((GtkCheckButton *)
filebut[i], (GtkCheckButton *)
filebut[0]);
1133 filebut[i] = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON(
filebut[0]), _(ftext[i]));
1156 return g_strdup_printf (_(
"The CP2K input structure"));
1160 return g_strdup_printf (_(
"The %s section"),
cpsect[p-1]);
1164 return g_strdup_printf (_(
"The MOTION section - thermostat(s)"));
1168 return g_strdup_printf (_(
"The MOTION section - restart(s)"));
1222 gtk_assistant_append_page (assist, page);
1224 gtk_assistant_set_page_type (assist, page, GTK_ASSISTANT_PAGE_CONTENT);
1225 gtk_assistant_set_page_complete (assist, page, TRUE);
1228 info = g_strdup_printf (_(
"<b> Finalize the creation of the CP2K input files now !</b>"));
1231 add_box_child_start (GTK_ORIENTATION_VERTICAL, conclu,
markup_label(_(
"\n \t<b>Note: </b>You can re-open this assistant later if required to adjust your choices\n"), -1, -1, 0.0, 0.5), FALSE, FALSE, 0);
1232 gtk_assistant_append_page (assist, conclu);
1233 gtk_assistant_set_page_title (assist, conclu, _(
"Create the input files now !"));
1234 gtk_assistant_set_page_type (assist, conclu, GTK_ASSISTANT_PAGE_CONFIRM);
1235 gtk_assistant_set_page_complete (assist, conclu, TRUE);
1236 gtk_assistant_update_buttons_state (assist);
1255 box ->
param[1][0] == 90.0)
return 0;
1259 box ->
param[1][0] != 90.0)
return 3;
GtkTextBuffer * qmbuffer[MAXDATAQM+2]
Variable declarations for the MD input preparation assistants.
Callback declarations for main window.
integer(kind=c_int) function chemistry()
Variable declarations for the creation of the CP2K input file(s).
gchar * cp2k_default_text[11][11]
double default_cp2k_extra[3][4]
gchar * cp2k_vdw_keywords[2][3]
GtkWidget * prepare_basis_combo(int sp, int obj)
prepare basis set / pseudopotential combo box
gchar * cp2k_default_keywords[11][11]
double default_vdw_cut[2]
double default_cp2k_options[41]
GtkWidget * cp2k_spec_combo
G_MODULE_EXPORT void update_cp2k_option(GtkEntry *res, gpointer data)
update CP2K option entry callback
void cp2k_fix_molecule()
CP2K assistant fixing fragment(s) - creating the dialog.
void print_cp2k(int f, GtkTextBuffer *buffer)
print the CP2K input file section
GtkWidget * option_box[4]
GtkWidget * cp2k_section_box(int s)
create the CP2K assistant section box
void field_unselect_all()
unselect all atoms
int cp2k_opts_type[4][NC2OP]
gchar * cp_section_name(int p)
get CP2K section name
void create_selection_button(GtkWidget *box, int num, int id, gpointer data)
create thermostat atom(s) selection button
GtkWidget * checked_box[2]
GtkWidget * cpmd_box(GtkWidget *box, gchar *lab, int v_space, int h_space, int dim)
prepare a labelled box widget for the CPMD input creation assistant
GtkWidget * create_cp2k_spec_box(int spec)
create a CP2K chemical species option combo box
GtkWidget * cp2k_spec_box[2]
void add_cp2k_pages()
add pages to the CP2 assistant
GtkWidget * init_cp2k()
initialize the CP2K input creation assistant
G_MODULE_EXPORT void update_cp2k_check(GtkToggleButton *but, gpointer data)
update some CP2K parameter toggle callback GTK3
ColRGBA init_color(int id, int numid)
initialize color based id number over total number of elements
G_MODULE_EXPORT void cp2k_file_info(GtkTextBuffer *textbuf, gpointer data)
update the C2PK information textview
GtkWidget * qm_preview_box(int c, int s, int l)
prepare preview section widgets
int find_cp2k_sym()
find the CP2K symmetry parameter based on the cell properties
GtkWidget * cp2k_vdw_box[2]
G_MODULE_EXPORT void changed_cp2k_option_box(GtkComboBox *box, gpointer data)
change a GtkComboBox while creating a CP2K input file
G_MODULE_EXPORT void update_cp2k_parameter(GtkEntry *res, gpointer data)
update some CP2K parameters
GtkWidget * vbox_cp2k(int s)
create the CP2K assistant page vertical box
gchar * cp2k_vdw_text[2][3]
void print_start_buffer()
update of the GtkTextBuffer showing the CP2K input
G_MODULE_EXPORT void select_input_type(GtkToggleButton *but, gpointer data)
select the input file type
GtkWidget * motion_box[2]
GtkWidget * create_vdw_box(int id)
create the VdW informaiton and option(s) widgets
G_MODULE_EXPORT void changed_cp2k_box(GtkComboBox *box, gpointer data)
change CP2K option
G_MODULE_EXPORT void update_cp2k_option_check(GtkToggleButton *but, gpointer data)
CP2K option toggle callback GTK3.
int var_by_cp2sections[4]
void cp2k_option_box(GtkWidget *box, int id)
create a CP2K option combo box
gboolean cp2k_with_motion()
CP2K MD calculation ?
GtkWidget * thermo_box()
create the thermostat configuration widgets
gchar * page_name_cp2k(int p)
get CP2K assistant page name
char * k_thermo[CP2NTHERM][4]
GtkWidget * spec_data_combo[2]
GtkWidget * file_info(int id)
create the assistant page that present the input file(s) properties
GtkWidget * cp2k_thermo_box
G_MODULE_EXPORT void cp2k_option_dialog(GtkWidget *but, gpointer data)
CP2K option dialog - creating the dialog.
Variable declarations for the creation of the CPMD input file.
double string_to_double(gpointer string)
convert string to double
Global variable declarations Global convenience function declarations Global data structure defin...
void run_this_gtk_dialog(GtkWidget *dial, GCallback handler, gpointer data)
run a GTK (3 and 4) basic GtkDialog
int combo_get_active(GtkWidget *combo)
retrieve the active item's position
GtkWidget * create_entry(GCallback handler, int dim, int cdim, gboolean key_release, gpointer data)
Create a GtkEntry.
void update_entry_double(GtkEntry *entry, double doubleval)
update the content of a GtkEntry as double
GtkWidget * create_text_view(int dimx, int dimy, int edit, int mono, GCallback handler, gpointer data, gchar *text)
create a GtkTextView and display some text
GtkWidget * dialogmodal(gchar *str, GtkWindow *parent)
Create a new dialog modal window.
void combo_set_active(GtkWidget *combo, int pos)
set the active item's position
const gchar * entry_get_text(GtkEntry *entry)
get the text in a GtkEntry
void update_entry_int(GtkEntry *entry, int intval)
update the content of a GtkEntry as int
GtkWidget * stock_image(const gchar *stock_id)
create a GtkImage for the Gtk database
GtkWidget * radio_button(gchar *text, int dimx, int dimy, gboolean state, GCallback handler, gpointer data)
create a radio button
GtkWidget * check_button(gchar *text, int dimx, int dimy, gboolean state, GCallback handler, gpointer data)
create a check button
GtkWidget * create_button(gchar *text, int image_format, gchar *image, int dimx, int dimy, int relief, GCallback handler, gpointer data)
create a simple button
GtkWidget * create_combo()
create a GtkCombox widget, note deprecated in GTK4
GtkWidget * dialog_get_content_area(GtkWidget *widg)
prepare GtkWidget to insert content in a GtkDialog window
GtkWidget * markup_label(gchar *text, int dimx, int dimy, float ax, float ay)
create a GtkLabel with pango markup
void add_box_child_start(int orientation, GtkWidget *widg, GtkWidget *child, gboolean expand, gboolean fill, int padding)
Add a GtkWidget in a GtkBox at the initial position.
void widget_set_sensitive(GtkWidget *widg, gboolean sensitive)
Set sensitivity for a GtkWidget, ensuring it is a GtkWidget.
GtkWidget * create_hbox(int spacing)
create a GtkBox with horizontal orientation
void combo_text_append(GtkWidget *combo, gchar *text)
append text in GtkComboBox widget
G_MODULE_EXPORT void run_destroy_dialog(GtkDialog *dialog, gint response_id, gpointer data)
to destroy a GtkDialog when the dialog emit the closing signal
GtkWidget * destroy_this_widget(GtkWidget *widg)
destroy a GtkWidget
void add_container_child(int type, GtkWidget *widg, GtkWidget *child)
Add a GtkWidget into another GtkWidget.
void hide_the_widgets(GtkWidget *widg)
hide GtkWidget
GtkWidget * create_vbox(int spacing)
create a GtkBox with vertical orientation
int button_get_status(GtkWidget *button)
get status of check / toggle button
void show_the_widgets(GtkWidget *widg)
show GtkWidget
void motion(glwin *view, gint x, gint y, GdkModifierType state)
mouse motion in the OpenGL window
Variable declarations related to the OpenGL window Function declarations related to the OpenGL wind...
Function declarations for the creation of the OpenGL window.
Messaging function declarations.
Function declarations for reading atomes project file Function declarations for saving atomes proje...