File: gwymoduleutils.h

package info (click to toggle)
gwyddion 2.62-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 51,952 kB
  • sloc: ansic: 398,486; python: 7,877; sh: 5,492; makefile: 4,723; xml: 3,883; cpp: 1,969; pascal: 418; perl: 154; ruby: 130
file content (121 lines) | stat: -rw-r--r-- 7,368 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
/*
 *  $Id: gwymoduleutils.h 24994 2022-09-02 14:40:28Z yeti-dn $
 *  Copyright (C) 2007-2022 David Necas (Yeti), Petr Klapetek.
 *  E-mail: yeti@gwyddion.net, klapetek@gwyddion.net.
 *
 *  This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public
 *  License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any
 *  later version.
 *
 *  This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
 *  warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
 *  details.
 *
 *  You should have received a copy of the GNU General Public License along with this program; if not, write to the
 *  Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 */

#ifndef __GWY_MODULE_UTILS_H__
#define __GWY_MODULE_UTILS_H__

#include <stdio.h>
#include <gtk/gtkwindow.h>
#include <libprocess/surface.h>
#include <libprocess/lawn.h>
#include <libgwydgets/gwydataview.h>
#include <libgwydgets/gwygraphmodel.h>
#include <libgwydgets/gwyinventorystore.h>
#include <app/datachooser.h>
#include <app/params.h>

G_BEGIN_DECLS

typedef enum {
    GWY_PREVIEW_SURFACE_DENSITY = 1 << 0,
    GWY_PREVIEW_SURFACE_FILL    = 1 << 1,
} GwyPreviewSurfaceFlags;

typedef gchar* (*GwySaveAuxiliaryCreate)(gpointer user_data,
                                         gssize *data_len);
typedef void (*GwySaveAuxiliaryDestroy)(gchar *data,
                                        gpointer user_data);

gboolean      gwy_save_auxiliary_data                   (const gchar *title,
                                                         GtkWindow *parent,
                                                         gssize data_len,
                                                         const gchar *data);
gboolean      gwy_save_auxiliary_with_callback          (const gchar *title,
                                                         GtkWindow *parent,
                                                         GwySaveAuxiliaryCreate create,
                                                         GwySaveAuxiliaryDestroy destroy,
                                                         gpointer user_data);
gboolean      gwy_module_data_load                      (const gchar *modname,
                                                         const gchar *filename,
                                                         gchar **contents,
                                                         gsize *length,
                                                         GError **error);
gboolean      gwy_module_data_save                      (const gchar *modname,
                                                         const gchar *filename,
                                                         gchar *contents,
                                                         gssize length,
                                                         GError **error);
FILE*         gwy_module_data_fopen                     (const gchar *modname,
                                                         const gchar *filename,
                                                         const gchar *mode,
                                                         GError **error);
void          gwy_set_data_preview_size                 (GwyDataView *data_view,
                                                         gint max_size);
gboolean      gwy_require_image_same_units              (GwyDataField *field,
                                                         GwyContainer *data,
                                                         gint id,
                                                         const gchar *name);
gboolean      gwy_require_square_image                  (GwyDataField *field,
                                                         GwyContainer *data,
                                                         gint id,
                                                         const gchar *name);
GtkWidget*    gwy_create_preview                        (GwyContainer *data,
                                                         gint id,
                                                         gint size,
                                                         gboolean have_mask);
GtkWidget*    gwy_create_dialog_preview_hbox            (GtkDialog *dialog,
                                                         GwyDataView *dataview,
                                                         gboolean pack_end);
GwySelection* gwy_create_preview_vector_layer           (GwyDataView *dataview,
                                                         gint id,
                                                         const gchar *name,
                                                         gint max_objects,
                                                         gboolean editable);
void          gwy_param_active_page_link_to_notebook    (GwyParams *params,
                                                         gint id,
                                                         GtkNotebook *notebook);
GtkWidget*    gwy_create_expander_with_param            (const gchar *label,
                                                         GwyParams *params,
                                                         gint id);
GtkTreeModel* gwy_create_inventory_model_without_default(GwyInventoryStore *store);
void          gwy_select_in_filtered_inventory_treeeview(GtkTreeView *treeview,
                                                         const gchar *name);
gint          gwy_app_add_graph_or_curves               (GwyGraphModel *gmodel,
                                                         GwyContainer *data,
                                                         const GwyAppDataId *target_graph,
                                                         gint colorstep);
void          gwy_preview_surface_to_datafield          (GwySurface *surface,
                                                         GwyDataField *dfield,
                                                         gint max_xres,
                                                         gint max_yres,
                                                         GwyPreviewSurfaceFlags flags);
GtkWidget*    gwy_app_wait_preview_data_field           (GwyDataField *dfield,
                                                         GwyContainer *data,
                                                         gint id);
gint          gwy_run_subdialog                         (GtkDialog *dialog);
gboolean      gwy_app_data_id_verify_channel            (GwyAppDataId *id);
gboolean      gwy_app_data_id_verify_graph              (GwyAppDataId *id);
gboolean      gwy_app_data_id_verify_volume             (GwyAppDataId *id);
gboolean      gwy_app_data_id_verify_xyz                (GwyAppDataId *id);
gboolean      gwy_app_data_id_verify_curve_map          (GwyAppDataId *id);
gboolean      gwy_app_data_id_verify_spectra            (GwyAppDataId *id);

G_END_DECLS

#endif /* __GWY_MODULE_UTILS_H__ */

/* vim: set cin et columns=120 tw=118 ts=4 sw=4 cino=>1s,e0,n0,f0,{0,}0,^0,\:1s,=0,g1s,h0,t0,+1s,c3,(0,u0 : */