198
197
poppler_fonts_iter_free (pdf_document->fonts_iter);
201
if (pdf_document->layers) {
202
g_list_foreach (pdf_document->layers, (GFunc)g_object_unref, NULL);
203
g_list_free (pdf_document->layers);
206
200
G_OBJECT_CLASS (pdf_document_parent_class)->dispose (object);
3149
3143
markup = g_markup_escape_text (poppler_layer_get_title (layer), -1);
3150
3144
visible = poppler_layer_is_visible (layer);
3151
3145
rb_group = poppler_layer_get_radio_button_group_id (layer);
3152
pdf_document->layers = g_list_append (pdf_document->layers,
3153
g_object_ref (layer));
3154
ev_layer = ev_layer_new (g_list_length (pdf_document->layers) - 1,
3155
poppler_layer_is_parent (layer),
3146
ev_layer = ev_layer_new (poppler_layer_is_parent (layer),
3148
g_object_set_data_full (G_OBJECT (ev_layer),
3150
g_object_ref (layer),
3151
(GDestroyNotify) g_object_unref);
3211
3206
pdf_document_layers_show_layer (EvDocumentLayers *document,
3212
3207
EvLayer *layer)
3214
PdfDocument *pdf_document = PDF_DOCUMENT (document);
3215
guint layer_id = ev_layer_get_id (layer);
3209
PdfDocument *pdf_document = PDF_DOCUMENT (document);
3210
PopplerLayer *poppler_layer;
3217
poppler_layer_show (POPPLER_LAYER (g_list_nth_data (pdf_document->layers, layer_id)));
3212
poppler_layer = POPPLER_LAYER (g_object_get_data (G_OBJECT (layer), "poppler-layer"));
3213
poppler_layer_show (poppler_layer);
3221
3217
pdf_document_layers_hide_layer (EvDocumentLayers *document,
3222
3218
EvLayer *layer)
3224
PdfDocument *pdf_document = PDF_DOCUMENT (document);
3225
guint layer_id = ev_layer_get_id (layer);
3220
PdfDocument *pdf_document = PDF_DOCUMENT (document);
3221
PopplerLayer *poppler_layer;
3227
poppler_layer_hide (POPPLER_LAYER (g_list_nth_data (pdf_document->layers, layer_id)));
3223
poppler_layer = POPPLER_LAYER (g_object_get_data (G_OBJECT (layer), "poppler-layer"));
3224
poppler_layer_hide (poppler_layer);
3230
3227
static gboolean
3231
3228
pdf_document_layers_layer_is_visible (EvDocumentLayers *document,
3232
3229
EvLayer *layer)
3234
PdfDocument *pdf_document = PDF_DOCUMENT (document);
3235
guint layer_id = ev_layer_get_id (layer);
3231
PdfDocument *pdf_document = PDF_DOCUMENT (document);
3232
PopplerLayer *poppler_layer;
3237
return poppler_layer_is_visible (POPPLER_LAYER (g_list_nth_data (pdf_document->layers, layer_id)));
3234
poppler_layer = POPPLER_LAYER (g_object_get_data (G_OBJECT (layer), "poppler-layer"));
3235
return poppler_layer_is_visible (poppler_layer);