1use crate::ffi;
7use glib::{bitflags::bitflags, prelude::*, translate::*};
8
9bitflags! {
10 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
11 #[doc(alias = "PopplerAnnotFlag")]
12 pub struct AnnotFlag: u32 {
13 #[doc(alias = "POPPLER_ANNOT_FLAG_UNKNOWN")]
14 const UNKNOWN = ffi::POPPLER_ANNOT_FLAG_UNKNOWN as _;
15 #[doc(alias = "POPPLER_ANNOT_FLAG_INVISIBLE")]
16 const INVISIBLE = ffi::POPPLER_ANNOT_FLAG_INVISIBLE as _;
17 #[doc(alias = "POPPLER_ANNOT_FLAG_HIDDEN")]
18 const HIDDEN = ffi::POPPLER_ANNOT_FLAG_HIDDEN as _;
19 #[doc(alias = "POPPLER_ANNOT_FLAG_PRINT")]
20 const PRINT = ffi::POPPLER_ANNOT_FLAG_PRINT as _;
21 #[doc(alias = "POPPLER_ANNOT_FLAG_NO_ZOOM")]
22 const NO_ZOOM = ffi::POPPLER_ANNOT_FLAG_NO_ZOOM as _;
23 #[doc(alias = "POPPLER_ANNOT_FLAG_NO_ROTATE")]
24 const NO_ROTATE = ffi::POPPLER_ANNOT_FLAG_NO_ROTATE as _;
25 #[doc(alias = "POPPLER_ANNOT_FLAG_NO_VIEW")]
26 const NO_VIEW = ffi::POPPLER_ANNOT_FLAG_NO_VIEW as _;
27 #[doc(alias = "POPPLER_ANNOT_FLAG_READ_ONLY")]
28 const READ_ONLY = ffi::POPPLER_ANNOT_FLAG_READ_ONLY as _;
29 #[doc(alias = "POPPLER_ANNOT_FLAG_LOCKED")]
30 const LOCKED = ffi::POPPLER_ANNOT_FLAG_LOCKED as _;
31 #[doc(alias = "POPPLER_ANNOT_FLAG_TOGGLE_NO_VIEW")]
32 const TOGGLE_NO_VIEW = ffi::POPPLER_ANNOT_FLAG_TOGGLE_NO_VIEW as _;
33 #[doc(alias = "POPPLER_ANNOT_FLAG_LOCKED_CONTENTS")]
34 const LOCKED_CONTENTS = ffi::POPPLER_ANNOT_FLAG_LOCKED_CONTENTS as _;
35 }
36}
37
38#[doc(hidden)]
39impl IntoGlib for AnnotFlag {
40 type GlibType = ffi::PopplerAnnotFlag;
41
42 #[inline]
43 fn into_glib(self) -> ffi::PopplerAnnotFlag {
44 self.bits()
45 }
46}
47
48#[doc(hidden)]
49impl FromGlib<ffi::PopplerAnnotFlag> for AnnotFlag {
50 #[inline]
51 unsafe fn from_glib(value: ffi::PopplerAnnotFlag) -> Self {
52 Self::from_bits_truncate(value)
53 }
54}
55
56impl StaticType for AnnotFlag {
57 #[inline]
58 #[doc(alias = "poppler_annot_flag_get_type")]
59 fn static_type() -> glib::Type {
60 unsafe { from_glib(ffi::poppler_annot_flag_get_type()) }
61 }
62}
63
64impl glib::HasParamSpec for AnnotFlag {
65 type ParamSpec = glib::ParamSpecFlags;
66 type SetValue = Self;
67 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
68
69 fn param_spec_builder() -> Self::BuilderFn {
70 Self::ParamSpec::builder
71 }
72}
73
74impl glib::value::ValueType for AnnotFlag {
75 type Type = Self;
76}
77
78unsafe impl<'a> glib::value::FromValue<'a> for AnnotFlag {
79 type Checker = glib::value::GenericValueTypeChecker<Self>;
80
81 #[inline]
82 unsafe fn from_value(value: &'a glib::Value) -> Self {
83 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
84 }
85}
86
87impl ToValue for AnnotFlag {
88 #[inline]
89 fn to_value(&self) -> glib::Value {
90 let mut value = glib::Value::for_value_type::<Self>();
91 unsafe {
92 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
93 }
94 value
95 }
96
97 #[inline]
98 fn value_type(&self) -> glib::Type {
99 Self::static_type()
100 }
101}
102
103impl From<AnnotFlag> for glib::Value {
104 #[inline]
105 fn from(v: AnnotFlag) -> Self {
106 ToValue::to_value(&v)
107 }
108}
109
110bitflags! {
111 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
112 #[doc(alias = "PopplerFindFlags")]
113 pub struct FindFlags: u32 {
114 #[doc(alias = "POPPLER_FIND_DEFAULT")]
115 const DEFAULT = ffi::POPPLER_FIND_DEFAULT as _;
116 #[doc(alias = "POPPLER_FIND_CASE_SENSITIVE")]
117 const CASE_SENSITIVE = ffi::POPPLER_FIND_CASE_SENSITIVE as _;
118 #[doc(alias = "POPPLER_FIND_BACKWARDS")]
119 const BACKWARDS = ffi::POPPLER_FIND_BACKWARDS as _;
120 #[doc(alias = "POPPLER_FIND_WHOLE_WORDS_ONLY")]
121 const WHOLE_WORDS_ONLY = ffi::POPPLER_FIND_WHOLE_WORDS_ONLY as _;
122 #[doc(alias = "POPPLER_FIND_IGNORE_DIACRITICS")]
123 const IGNORE_DIACRITICS = ffi::POPPLER_FIND_IGNORE_DIACRITICS as _;
124 #[doc(alias = "POPPLER_FIND_MULTILINE")]
125 const MULTILINE = ffi::POPPLER_FIND_MULTILINE as _;
126 }
127}
128
129#[doc(hidden)]
130impl IntoGlib for FindFlags {
131 type GlibType = ffi::PopplerFindFlags;
132
133 #[inline]
134 fn into_glib(self) -> ffi::PopplerFindFlags {
135 self.bits()
136 }
137}
138
139#[doc(hidden)]
140impl FromGlib<ffi::PopplerFindFlags> for FindFlags {
141 #[inline]
142 unsafe fn from_glib(value: ffi::PopplerFindFlags) -> Self {
143 Self::from_bits_truncate(value)
144 }
145}
146
147impl StaticType for FindFlags {
148 #[inline]
149 #[doc(alias = "poppler_find_flags_get_type")]
150 fn static_type() -> glib::Type {
151 unsafe { from_glib(ffi::poppler_find_flags_get_type()) }
152 }
153}
154
155impl glib::HasParamSpec for FindFlags {
156 type ParamSpec = glib::ParamSpecFlags;
157 type SetValue = Self;
158 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
159
160 fn param_spec_builder() -> Self::BuilderFn {
161 Self::ParamSpec::builder
162 }
163}
164
165impl glib::value::ValueType for FindFlags {
166 type Type = Self;
167}
168
169unsafe impl<'a> glib::value::FromValue<'a> for FindFlags {
170 type Checker = glib::value::GenericValueTypeChecker<Self>;
171
172 #[inline]
173 unsafe fn from_value(value: &'a glib::Value) -> Self {
174 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
175 }
176}
177
178impl ToValue for FindFlags {
179 #[inline]
180 fn to_value(&self) -> glib::Value {
181 let mut value = glib::Value::for_value_type::<Self>();
182 unsafe {
183 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
184 }
185 value
186 }
187
188 #[inline]
189 fn value_type(&self) -> glib::Type {
190 Self::static_type()
191 }
192}
193
194impl From<FindFlags> for glib::Value {
195 #[inline]
196 fn from(v: FindFlags) -> Self {
197 ToValue::to_value(&v)
198 }
199}
200
201bitflags! {
202 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
203 #[doc(alias = "PopplerPermissions")]
204 pub struct Permissions: u32 {
205 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_PRINT")]
206 const OK_TO_PRINT = ffi::POPPLER_PERMISSIONS_OK_TO_PRINT as _;
207 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_MODIFY")]
208 const OK_TO_MODIFY = ffi::POPPLER_PERMISSIONS_OK_TO_MODIFY as _;
209 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_COPY")]
210 const OK_TO_COPY = ffi::POPPLER_PERMISSIONS_OK_TO_COPY as _;
211 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_ADD_NOTES")]
212 const OK_TO_ADD_NOTES = ffi::POPPLER_PERMISSIONS_OK_TO_ADD_NOTES as _;
213 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_FILL_FORM")]
214 const OK_TO_FILL_FORM = ffi::POPPLER_PERMISSIONS_OK_TO_FILL_FORM as _;
215 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_EXTRACT_CONTENTS")]
216 const OK_TO_EXTRACT_CONTENTS = ffi::POPPLER_PERMISSIONS_OK_TO_EXTRACT_CONTENTS as _;
217 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_ASSEMBLE")]
218 const OK_TO_ASSEMBLE = ffi::POPPLER_PERMISSIONS_OK_TO_ASSEMBLE as _;
219 #[doc(alias = "POPPLER_PERMISSIONS_OK_TO_PRINT_HIGH_RESOLUTION")]
220 const OK_TO_PRINT_HIGH_RESOLUTION = ffi::POPPLER_PERMISSIONS_OK_TO_PRINT_HIGH_RESOLUTION as _;
221 #[doc(alias = "POPPLER_PERMISSIONS_FULL")]
222 const FULL = ffi::POPPLER_PERMISSIONS_FULL as _;
223 }
224}
225
226#[doc(hidden)]
227impl IntoGlib for Permissions {
228 type GlibType = ffi::PopplerPermissions;
229
230 #[inline]
231 fn into_glib(self) -> ffi::PopplerPermissions {
232 self.bits()
233 }
234}
235
236#[doc(hidden)]
237impl FromGlib<ffi::PopplerPermissions> for Permissions {
238 #[inline]
239 unsafe fn from_glib(value: ffi::PopplerPermissions) -> Self {
240 Self::from_bits_truncate(value)
241 }
242}
243
244impl StaticType for Permissions {
245 #[inline]
246 #[doc(alias = "poppler_permissions_get_type")]
247 fn static_type() -> glib::Type {
248 unsafe { from_glib(ffi::poppler_permissions_get_type()) }
249 }
250}
251
252impl glib::HasParamSpec for Permissions {
253 type ParamSpec = glib::ParamSpecFlags;
254 type SetValue = Self;
255 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
256
257 fn param_spec_builder() -> Self::BuilderFn {
258 Self::ParamSpec::builder
259 }
260}
261
262impl glib::value::ValueType for Permissions {
263 type Type = Self;
264}
265
266unsafe impl<'a> glib::value::FromValue<'a> for Permissions {
267 type Checker = glib::value::GenericValueTypeChecker<Self>;
268
269 #[inline]
270 unsafe fn from_value(value: &'a glib::Value) -> Self {
271 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
272 }
273}
274
275impl ToValue for Permissions {
276 #[inline]
277 fn to_value(&self) -> glib::Value {
278 let mut value = glib::Value::for_value_type::<Self>();
279 unsafe {
280 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
281 }
282 value
283 }
284
285 #[inline]
286 fn value_type(&self) -> glib::Type {
287 Self::static_type()
288 }
289}
290
291impl From<Permissions> for glib::Value {
292 #[inline]
293 fn from(v: Permissions) -> Self {
294 ToValue::to_value(&v)
295 }
296}
297
298bitflags! {
299 #[cfg_attr(feature = "v25_2", deprecated = "Since 25.2")]
300 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
301 #[doc(alias = "PopplerPrintFlags")]
302 pub struct PrintFlags: u32 {
303 #[doc(alias = "POPPLER_PRINT_DOCUMENT")]
304 const DOCUMENT = ffi::POPPLER_PRINT_DOCUMENT as _;
305 #[doc(alias = "POPPLER_PRINT_MARKUP_ANNOTS")]
306 const MARKUP_ANNOTS = ffi::POPPLER_PRINT_MARKUP_ANNOTS as _;
307 #[doc(alias = "POPPLER_PRINT_STAMP_ANNOTS_ONLY")]
308 const STAMP_ANNOTS_ONLY = ffi::POPPLER_PRINT_STAMP_ANNOTS_ONLY as _;
309 #[doc(alias = "POPPLER_PRINT_ALL")]
310 const ALL = ffi::POPPLER_PRINT_ALL as _;
311 }
312}
313
314#[allow(deprecated)]
315#[doc(hidden)]
316impl IntoGlib for PrintFlags {
317 type GlibType = ffi::PopplerPrintFlags;
318
319 #[inline]
320 fn into_glib(self) -> ffi::PopplerPrintFlags {
321 self.bits()
322 }
323}
324
325#[allow(deprecated)]
326#[doc(hidden)]
327impl FromGlib<ffi::PopplerPrintFlags> for PrintFlags {
328 #[inline]
329 unsafe fn from_glib(value: ffi::PopplerPrintFlags) -> Self {
330 Self::from_bits_truncate(value)
331 }
332}
333
334#[allow(deprecated)]
335impl StaticType for PrintFlags {
336 #[inline]
337 #[doc(alias = "poppler_print_flags_get_type")]
338 fn static_type() -> glib::Type {
339 unsafe { from_glib(ffi::poppler_print_flags_get_type()) }
340 }
341}
342
343#[allow(deprecated)]
344impl glib::HasParamSpec for PrintFlags {
345 type ParamSpec = glib::ParamSpecFlags;
346 type SetValue = Self;
347 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
348
349 fn param_spec_builder() -> Self::BuilderFn {
350 Self::ParamSpec::builder
351 }
352}
353
354#[allow(deprecated)]
355impl glib::value::ValueType for PrintFlags {
356 type Type = Self;
357}
358
359#[allow(deprecated)]
360unsafe impl<'a> glib::value::FromValue<'a> for PrintFlags {
361 type Checker = glib::value::GenericValueTypeChecker<Self>;
362
363 #[inline]
364 unsafe fn from_value(value: &'a glib::Value) -> Self {
365 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
366 }
367}
368
369#[allow(deprecated)]
370impl ToValue for PrintFlags {
371 #[inline]
372 fn to_value(&self) -> glib::Value {
373 let mut value = glib::Value::for_value_type::<Self>();
374 unsafe {
375 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
376 }
377 value
378 }
379
380 #[inline]
381 fn value_type(&self) -> glib::Type {
382 Self::static_type()
383 }
384}
385
386#[allow(deprecated)]
387impl From<PrintFlags> for glib::Value {
388 #[inline]
389 fn from(v: PrintFlags) -> Self {
390 ToValue::to_value(&v)
391 }
392}
393
394#[cfg(feature = "v25_2")]
395bitflags! {
396 #[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
397 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
398 #[doc(alias = "PopplerRenderAnnotsFlags")]
399 pub struct RenderAnnotsFlags: u32 {
400 #[doc(alias = "POPPLER_RENDER_ANNOTS_NONE")]
401 const NONE = ffi::POPPLER_RENDER_ANNOTS_NONE as _;
402 #[doc(alias = "POPPLER_RENDER_ANNOTS_TEXT")]
403 const TEXT = ffi::POPPLER_RENDER_ANNOTS_TEXT as _;
404 #[doc(alias = "POPPLER_RENDER_ANNOTS_LINK")]
405 const LINK = ffi::POPPLER_RENDER_ANNOTS_LINK as _;
406 #[doc(alias = "POPPLER_RENDER_ANNOTS_FREETEXT")]
407 const FREETEXT = ffi::POPPLER_RENDER_ANNOTS_FREETEXT as _;
408 #[doc(alias = "POPPLER_RENDER_ANNOTS_LINE")]
409 const LINE = ffi::POPPLER_RENDER_ANNOTS_LINE as _;
410 #[doc(alias = "POPPLER_RENDER_ANNOTS_SQUARE")]
411 const SQUARE = ffi::POPPLER_RENDER_ANNOTS_SQUARE as _;
412 #[doc(alias = "POPPLER_RENDER_ANNOTS_CIRCLE")]
413 const CIRCLE = ffi::POPPLER_RENDER_ANNOTS_CIRCLE as _;
414 #[doc(alias = "POPPLER_RENDER_ANNOTS_POLYGON")]
415 const POLYGON = ffi::POPPLER_RENDER_ANNOTS_POLYGON as _;
416 #[doc(alias = "POPPLER_RENDER_ANNOTS_POLYLINE")]
417 const POLYLINE = ffi::POPPLER_RENDER_ANNOTS_POLYLINE as _;
418 #[doc(alias = "POPPLER_RENDER_ANNOTS_HIGHLIGHT")]
419 const HIGHLIGHT = ffi::POPPLER_RENDER_ANNOTS_HIGHLIGHT as _;
420 #[doc(alias = "POPPLER_RENDER_ANNOTS_UNDERLINE")]
421 const UNDERLINE = ffi::POPPLER_RENDER_ANNOTS_UNDERLINE as _;
422 #[doc(alias = "POPPLER_RENDER_ANNOTS_SQUIGGLY")]
423 const SQUIGGLY = ffi::POPPLER_RENDER_ANNOTS_SQUIGGLY as _;
424 #[doc(alias = "POPPLER_RENDER_ANNOTS_STRIKEOUT")]
425 const STRIKEOUT = ffi::POPPLER_RENDER_ANNOTS_STRIKEOUT as _;
426 #[doc(alias = "POPPLER_RENDER_ANNOTS_STAMP")]
427 const STAMP = ffi::POPPLER_RENDER_ANNOTS_STAMP as _;
428 #[doc(alias = "POPPLER_RENDER_ANNOTS_CARET")]
429 const CARET = ffi::POPPLER_RENDER_ANNOTS_CARET as _;
430 #[doc(alias = "POPPLER_RENDER_ANNOTS_INK")]
431 const INK = ffi::POPPLER_RENDER_ANNOTS_INK as _;
432 #[doc(alias = "POPPLER_RENDER_ANNOTS_POPUP")]
433 const POPUP = ffi::POPPLER_RENDER_ANNOTS_POPUP as _;
434 #[doc(alias = "POPPLER_RENDER_ANNOTS_FILEATTACHMENT")]
435 const FILEATTACHMENT = ffi::POPPLER_RENDER_ANNOTS_FILEATTACHMENT as _;
436 #[doc(alias = "POPPLER_RENDER_ANNOTS_SOUND")]
437 const SOUND = ffi::POPPLER_RENDER_ANNOTS_SOUND as _;
438 #[doc(alias = "POPPLER_RENDER_ANNOTS_MOVIE")]
439 const MOVIE = ffi::POPPLER_RENDER_ANNOTS_MOVIE as _;
440 #[doc(alias = "POPPLER_RENDER_ANNOTS_WIDGET")]
441 const WIDGET = ffi::POPPLER_RENDER_ANNOTS_WIDGET as _;
442 #[doc(alias = "POPPLER_RENDER_ANNOTS_SCREEN")]
443 const SCREEN = ffi::POPPLER_RENDER_ANNOTS_SCREEN as _;
444 #[doc(alias = "POPPLER_RENDER_ANNOTS_PRINTERMARK")]
445 const PRINTERMARK = ffi::POPPLER_RENDER_ANNOTS_PRINTERMARK as _;
446 #[doc(alias = "POPPLER_RENDER_ANNOTS_TRAPNET")]
447 const TRAPNET = ffi::POPPLER_RENDER_ANNOTS_TRAPNET as _;
448 #[doc(alias = "POPPLER_RENDER_ANNOTS_WATERMARK")]
449 const WATERMARK = ffi::POPPLER_RENDER_ANNOTS_WATERMARK as _;
450 #[doc(alias = "POPPLER_RENDER_ANNOTS_3D")]
451 const _3D = ffi::POPPLER_RENDER_ANNOTS_3D as _;
452 #[doc(alias = "POPPLER_RENDER_ANNOTS_RICHMEDIA")]
453 const RICHMEDIA = ffi::POPPLER_RENDER_ANNOTS_RICHMEDIA as _;
454 #[doc(alias = "POPPLER_RENDER_ANNOTS_PRINT_DOCUMENT")]
455 const PRINT_DOCUMENT = ffi::POPPLER_RENDER_ANNOTS_PRINT_DOCUMENT as _;
456 #[doc(alias = "POPPLER_RENDER_ANNOTS_PRINT_MARKUP")]
457 const PRINT_MARKUP = ffi::POPPLER_RENDER_ANNOTS_PRINT_MARKUP as _;
458 #[doc(alias = "POPPLER_RENDER_ANNOTS_PRINT_STAMP")]
459 const PRINT_STAMP = ffi::POPPLER_RENDER_ANNOTS_PRINT_STAMP as _;
460 #[doc(alias = "POPPLER_RENDER_ANNOTS_PRINT_ALL")]
461 const PRINT_ALL = ffi::POPPLER_RENDER_ANNOTS_PRINT_ALL as _;
462 #[doc(alias = "POPPLER_RENDER_ANNOTS_ALL")]
463 const ALL = ffi::POPPLER_RENDER_ANNOTS_ALL as _;
464 }
465}
466
467#[cfg(feature = "v25_2")]
468#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
469#[doc(hidden)]
470impl IntoGlib for RenderAnnotsFlags {
471 type GlibType = ffi::PopplerRenderAnnotsFlags;
472
473 #[inline]
474 fn into_glib(self) -> ffi::PopplerRenderAnnotsFlags {
475 self.bits()
476 }
477}
478
479#[cfg(feature = "v25_2")]
480#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
481#[doc(hidden)]
482impl FromGlib<ffi::PopplerRenderAnnotsFlags> for RenderAnnotsFlags {
483 #[inline]
484 unsafe fn from_glib(value: ffi::PopplerRenderAnnotsFlags) -> Self {
485 Self::from_bits_truncate(value)
486 }
487}
488
489#[cfg(feature = "v25_2")]
490#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
491impl StaticType for RenderAnnotsFlags {
492 #[inline]
493 #[doc(alias = "poppler_render_annots_flags_get_type")]
494 fn static_type() -> glib::Type {
495 unsafe { from_glib(ffi::poppler_render_annots_flags_get_type()) }
496 }
497}
498
499#[cfg(feature = "v25_2")]
500#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
501impl glib::HasParamSpec for RenderAnnotsFlags {
502 type ParamSpec = glib::ParamSpecFlags;
503 type SetValue = Self;
504 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
505
506 fn param_spec_builder() -> Self::BuilderFn {
507 Self::ParamSpec::builder
508 }
509}
510
511#[cfg(feature = "v25_2")]
512#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
513impl glib::value::ValueType for RenderAnnotsFlags {
514 type Type = Self;
515}
516
517#[cfg(feature = "v25_2")]
518#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
519unsafe impl<'a> glib::value::FromValue<'a> for RenderAnnotsFlags {
520 type Checker = glib::value::GenericValueTypeChecker<Self>;
521
522 #[inline]
523 unsafe fn from_value(value: &'a glib::Value) -> Self {
524 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
525 }
526}
527
528#[cfg(feature = "v25_2")]
529#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
530impl ToValue for RenderAnnotsFlags {
531 #[inline]
532 fn to_value(&self) -> glib::Value {
533 let mut value = glib::Value::for_value_type::<Self>();
534 unsafe {
535 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
536 }
537 value
538 }
539
540 #[inline]
541 fn value_type(&self) -> glib::Type {
542 Self::static_type()
543 }
544}
545
546#[cfg(feature = "v25_2")]
547#[cfg_attr(docsrs, doc(cfg(feature = "v25_2")))]
548impl From<RenderAnnotsFlags> for glib::Value {
549 #[inline]
550 fn from(v: RenderAnnotsFlags) -> Self {
551 ToValue::to_value(&v)
552 }
553}
554
555#[cfg(feature = "v21_12")]
556bitflags! {
557 #[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
558 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
559 #[doc(alias = "PopplerSignatureValidationFlags")]
560 pub struct SignatureValidationFlags: u32 {
561 #[doc(alias = "POPPLER_SIGNATURE_VALIDATION_FLAG_VALIDATE_CERTIFICATE")]
562 const VALIDATE_CERTIFICATE = ffi::POPPLER_SIGNATURE_VALIDATION_FLAG_VALIDATE_CERTIFICATE as _;
563 #[doc(alias = "POPPLER_SIGNATURE_VALIDATION_FLAG_WITHOUT_OCSP_REVOCATION_CHECK")]
564 const WITHOUT_OCSP_REVOCATION_CHECK = ffi::POPPLER_SIGNATURE_VALIDATION_FLAG_WITHOUT_OCSP_REVOCATION_CHECK as _;
565 #[doc(alias = "POPPLER_SIGNATURE_VALIDATION_FLAG_USE_AIA_CERTIFICATE_FETCH")]
566 const USE_AIA_CERTIFICATE_FETCH = ffi::POPPLER_SIGNATURE_VALIDATION_FLAG_USE_AIA_CERTIFICATE_FETCH as _;
567 }
568}
569
570#[cfg(feature = "v21_12")]
571#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
572#[doc(hidden)]
573impl IntoGlib for SignatureValidationFlags {
574 type GlibType = ffi::PopplerSignatureValidationFlags;
575
576 #[inline]
577 fn into_glib(self) -> ffi::PopplerSignatureValidationFlags {
578 self.bits()
579 }
580}
581
582#[cfg(feature = "v21_12")]
583#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
584#[doc(hidden)]
585impl FromGlib<ffi::PopplerSignatureValidationFlags> for SignatureValidationFlags {
586 #[inline]
587 unsafe fn from_glib(value: ffi::PopplerSignatureValidationFlags) -> Self {
588 Self::from_bits_truncate(value)
589 }
590}
591
592#[cfg(feature = "v21_12")]
593#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
594impl StaticType for SignatureValidationFlags {
595 #[inline]
596 #[doc(alias = "poppler_signature_validation_flags_get_type")]
597 fn static_type() -> glib::Type {
598 unsafe { from_glib(ffi::poppler_signature_validation_flags_get_type()) }
599 }
600}
601
602#[cfg(feature = "v21_12")]
603#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
604impl glib::HasParamSpec for SignatureValidationFlags {
605 type ParamSpec = glib::ParamSpecFlags;
606 type SetValue = Self;
607 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
608
609 fn param_spec_builder() -> Self::BuilderFn {
610 Self::ParamSpec::builder
611 }
612}
613
614#[cfg(feature = "v21_12")]
615#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
616impl glib::value::ValueType for SignatureValidationFlags {
617 type Type = Self;
618}
619
620#[cfg(feature = "v21_12")]
621#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
622unsafe impl<'a> glib::value::FromValue<'a> for SignatureValidationFlags {
623 type Checker = glib::value::GenericValueTypeChecker<Self>;
624
625 #[inline]
626 unsafe fn from_value(value: &'a glib::Value) -> Self {
627 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
628 }
629}
630
631#[cfg(feature = "v21_12")]
632#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
633impl ToValue for SignatureValidationFlags {
634 #[inline]
635 fn to_value(&self) -> glib::Value {
636 let mut value = glib::Value::for_value_type::<Self>();
637 unsafe {
638 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
639 }
640 value
641 }
642
643 #[inline]
644 fn value_type(&self) -> glib::Type {
645 Self::static_type()
646 }
647}
648
649#[cfg(feature = "v21_12")]
650#[cfg_attr(docsrs, doc(cfg(feature = "v21_12")))]
651impl From<SignatureValidationFlags> for glib::Value {
652 #[inline]
653 fn from(v: SignatureValidationFlags) -> Self {
654 ToValue::to_value(&v)
655 }
656}
657
658bitflags! {
659 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
660 #[doc(alias = "PopplerStructureGetTextFlags")]
661 pub struct StructureGetTextFlags: u32 {
662 #[doc(alias = "POPPLER_STRUCTURE_GET_TEXT_NONE")]
663 const NONE = ffi::POPPLER_STRUCTURE_GET_TEXT_NONE as _;
664 #[doc(alias = "POPPLER_STRUCTURE_GET_TEXT_RECURSIVE")]
665 const RECURSIVE = ffi::POPPLER_STRUCTURE_GET_TEXT_RECURSIVE as _;
666 }
667}
668
669#[doc(hidden)]
670impl IntoGlib for StructureGetTextFlags {
671 type GlibType = ffi::PopplerStructureGetTextFlags;
672
673 #[inline]
674 fn into_glib(self) -> ffi::PopplerStructureGetTextFlags {
675 self.bits()
676 }
677}
678
679#[doc(hidden)]
680impl FromGlib<ffi::PopplerStructureGetTextFlags> for StructureGetTextFlags {
681 #[inline]
682 unsafe fn from_glib(value: ffi::PopplerStructureGetTextFlags) -> Self {
683 Self::from_bits_truncate(value)
684 }
685}
686
687impl StaticType for StructureGetTextFlags {
688 #[inline]
689 #[doc(alias = "poppler_structure_get_text_flags_get_type")]
690 fn static_type() -> glib::Type {
691 unsafe { from_glib(ffi::poppler_structure_get_text_flags_get_type()) }
692 }
693}
694
695impl glib::HasParamSpec for StructureGetTextFlags {
696 type ParamSpec = glib::ParamSpecFlags;
697 type SetValue = Self;
698 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
699
700 fn param_spec_builder() -> Self::BuilderFn {
701 Self::ParamSpec::builder
702 }
703}
704
705impl glib::value::ValueType for StructureGetTextFlags {
706 type Type = Self;
707}
708
709unsafe impl<'a> glib::value::FromValue<'a> for StructureGetTextFlags {
710 type Checker = glib::value::GenericValueTypeChecker<Self>;
711
712 #[inline]
713 unsafe fn from_value(value: &'a glib::Value) -> Self {
714 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
715 }
716}
717
718impl ToValue for StructureGetTextFlags {
719 #[inline]
720 fn to_value(&self) -> glib::Value {
721 let mut value = glib::Value::for_value_type::<Self>();
722 unsafe {
723 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
724 }
725 value
726 }
727
728 #[inline]
729 fn value_type(&self) -> glib::Type {
730 Self::static_type()
731 }
732}
733
734impl From<StructureGetTextFlags> for glib::Value {
735 #[inline]
736 fn from(v: StructureGetTextFlags) -> Self {
737 ToValue::to_value(&v)
738 }
739}
740
741bitflags! {
742 #[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
743 #[doc(alias = "PopplerViewerPreferences")]
744 pub struct ViewerPreferences: u32 {
745 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_UNSET")]
746 const UNSET = ffi::POPPLER_VIEWER_PREFERENCES_UNSET as _;
747 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR")]
748 const HIDE_TOOLBAR = ffi::POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR as _;
749 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR")]
750 const HIDE_MENUBAR = ffi::POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR as _;
751 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI")]
752 const HIDE_WINDOWUI = ffi::POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI as _;
753 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_FIT_WINDOW")]
754 const FIT_WINDOW = ffi::POPPLER_VIEWER_PREFERENCES_FIT_WINDOW as _;
755 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW")]
756 const CENTER_WINDOW = ffi::POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW as _;
757 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE")]
758 const DISPLAY_DOC_TITLE = ffi::POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE as _;
759 #[doc(alias = "POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL")]
760 const DIRECTION_RTL = ffi::POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL as _;
761 }
762}
763
764#[doc(hidden)]
765impl IntoGlib for ViewerPreferences {
766 type GlibType = ffi::PopplerViewerPreferences;
767
768 #[inline]
769 fn into_glib(self) -> ffi::PopplerViewerPreferences {
770 self.bits()
771 }
772}
773
774#[doc(hidden)]
775impl FromGlib<ffi::PopplerViewerPreferences> for ViewerPreferences {
776 #[inline]
777 unsafe fn from_glib(value: ffi::PopplerViewerPreferences) -> Self {
778 Self::from_bits_truncate(value)
779 }
780}
781
782impl StaticType for ViewerPreferences {
783 #[inline]
784 #[doc(alias = "poppler_viewer_preferences_get_type")]
785 fn static_type() -> glib::Type {
786 unsafe { from_glib(ffi::poppler_viewer_preferences_get_type()) }
787 }
788}
789
790impl glib::HasParamSpec for ViewerPreferences {
791 type ParamSpec = glib::ParamSpecFlags;
792 type SetValue = Self;
793 type BuilderFn = fn(&str) -> glib::ParamSpecFlagsBuilder<Self>;
794
795 fn param_spec_builder() -> Self::BuilderFn {
796 Self::ParamSpec::builder
797 }
798}
799
800impl glib::value::ValueType for ViewerPreferences {
801 type Type = Self;
802}
803
804unsafe impl<'a> glib::value::FromValue<'a> for ViewerPreferences {
805 type Checker = glib::value::GenericValueTypeChecker<Self>;
806
807 #[inline]
808 unsafe fn from_value(value: &'a glib::Value) -> Self {
809 unsafe { from_glib(glib::gobject_ffi::g_value_get_flags(value.to_glib_none().0)) }
810 }
811}
812
813impl ToValue for ViewerPreferences {
814 #[inline]
815 fn to_value(&self) -> glib::Value {
816 let mut value = glib::Value::for_value_type::<Self>();
817 unsafe {
818 glib::gobject_ffi::g_value_set_flags(value.to_glib_none_mut().0, self.into_glib());
819 }
820 value
821 }
822
823 #[inline]
824 fn value_type(&self) -> glib::Type {
825 Self::static_type()
826 }
827}
828
829impl From<ViewerPreferences> for glib::Value {
830 #[inline]
831 fn from(v: ViewerPreferences) -> Self {
832 ToValue::to_value(&v)
833 }
834}