aboutsummaryrefslogtreecommitdiffstats
path: root/embed/ephy-embed-persist.h
blob: b078a236a7caf7607597979fba80427675d579e1 (plain) (blame)
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
/*
 *  Copyright © 2000-2003 Marco Pesenti Gritti
 *  Copyright © 2003 Christian Persch
 *
 *  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, 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.
 *
 *  $Id$
 */

#ifndef EPHY_EMBED_PERSIST_H
#define EPHY_EMBED_PERSIST_H

#include "ephy-embed.h"

#include <glib-object.h>
#include <glib.h>

#include <gtk/gtkwindow.h>

G_BEGIN_DECLS

#define EPHY_TYPE_EMBED_PERSIST     (ephy_embed_persist_get_type ())
#define EPHY_EMBED_PERSIST(o)       (G_TYPE_CHECK_INSTANCE_CAST ((o), EPHY_TYPE_EMBED_PERSIST, EphyEmbedPersist))
#define EPHY_EMBED_PERSIST_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), EPHY_TYPE_EMBED_PERSIST, EphyEmbedPersistClass))
#define EPHY_IS_EMBED_PERSIST(o)    (G_TYPE_CHECK_INSTANCE_TYPE ((o), EPHY_TYPE_EMBED_PERSIST))
#define EPHY_IS_EMBED_PERSIST_CLASS(k)  (G_TYPE_CHECK_CLASS_TYPE ((k), EPHY_TYPE_EMBED_PERSIST))
#define EPHY_EMBED_PERSIST_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), EPHY_TYPE_EMBED_PERSIST, EphyEmbedPersistClass))

typedef struct _EphyEmbedPersistClass   EphyEmbedPersistClass;
typedef struct _EphyEmbedPersist    EphyEmbedPersist;
typedef struct _EphyEmbedPersistPrivate EphyEmbedPersistPrivate;

typedef enum
{
    EPHY_EMBED_PERSIST_COPY_PAGE        = 1 << 0,
    EPHY_EMBED_PERSIST_MAINDOC      = 1 << 1,
    EPHY_EMBED_PERSIST_NO_VIEW      = 1 << 2,
    EPHY_EMBED_PERSIST_ASK_DESTINATION  = 1 << 3,
    EPHY_EMBED_PERSIST_DO_CONVERSION    = 1 << 4,
    EPHY_EMBED_PERSIST_FROM_CACHE       = 1 << 5,
    EPHY_EMBED_PERSIST_NO_CERTDIALOGS   = 1 << 6,
    EPHY_EMBED_PERSIST_NO_COOKIES       = 1 << 7
} EphyEmbedPersistFlags;

struct _EphyEmbedPersist
{
    GObject parent;

    /*< private >*/
    EphyEmbedPersistPrivate *priv;
};

struct _EphyEmbedPersistClass
{
    GObjectClass parent_class;

    void     (* completed)  (EphyEmbedPersist *persist);
    void     (* cancelled)  (EphyEmbedPersist *persist);

    /* Methods */

    gboolean (* save)   (EphyEmbedPersist *persist);

    void     (* cancel) (EphyEmbedPersist *persist);
    char *   (* to_string)  (EphyEmbedPersist *persist);
};

GType            ephy_embed_persist_flags_get_type  (void);

GType            ephy_embed_persist_get_type        (void);

gboolean         ephy_embed_persist_save        (EphyEmbedPersist *persist);

void             ephy_embed_persist_cancel      (EphyEmbedPersist *persist);

void             ephy_embed_persist_set_dest        (EphyEmbedPersist *persist,
                                 const char *value);

void             ephy_embed_persist_set_embed       (EphyEmbedPersist *persist,
                                 EphyEmbed *value);

void             ephy_embed_persist_set_fc_title    (EphyEmbedPersist *persist,
                                 const char *value);

void             ephy_embed_persist_set_fc_parent   (EphyEmbedPersist *persist,
                                 GtkWindow *value);

void             ephy_embed_persist_set_flags       (EphyEmbedPersist *persist,
                                 EphyEmbedPersistFlags value);

void             ephy_embed_persist_set_max_size    (EphyEmbedPersist *persist,
                                 gint64 value);

void             ephy_embed_persist_set_persist_key (EphyEmbedPersist *persist,
                                 const char *value);

void             ephy_embed_persist_set_source      (EphyEmbedPersist *persist,
                                 const char *value);
void             ephy_embed_persist_set_user_time   (EphyEmbedPersist *persist,
                                 guint32 user_time);

const char      *ephy_embed_persist_get_dest        (EphyEmbedPersist *persist);

EphyEmbed       *ephy_embed_persist_get_embed       (EphyEmbedPersist *persist);

const char      *ephy_embed_persist_get_fc_title    (EphyEmbedPersist *persist);

GtkWindow       *ephy_embed_persist_get_fc_parent   (EphyEmbedPersist *persist);

EphyEmbedPersistFlags    ephy_embed_persist_get_flags       (EphyEmbedPersist *persist);

gint64           ephy_embed_persist_get_max_size    (EphyEmbedPersist *persist);

const char      *ephy_embed_persist_get_persist_key (EphyEmbedPersist *persist);

const char      *ephy_embed_persist_get_source      (EphyEmbedPersist *persist);

guint32          ephy_embed_persist_get_user_time   (EphyEmbedPersist *persist);

char            *ephy_embed_persist_to_string       (EphyEmbedPersist *persist);

G_END_DECLS

#endif