1#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8 clippy::approx_constant,
9 clippy::type_complexity,
10 clippy::unreadable_literal,
11 clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15use gdk_pixbuf_sys as gdk_pixbuf;
16use gdk_sys as gdk;
17use gio_sys as gio;
18use glib_sys as glib;
19use gobject_sys as gobject;
20use gtk_sys as gtk;
21
22#[cfg(unix)]
23#[allow(unused_imports)]
24use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
25#[allow(unused_imports)]
26use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
27#[allow(unused_imports)]
28use std::ffi::{
29 c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
30};
31
32#[allow(unused_imports)]
33use glib::{gboolean, gconstpointer, gpointer, GType};
34
35pub type ShumateFileCacheError = c_int;
37pub const SHUMATE_FILE_CACHE_ERROR_FAILED: ShumateFileCacheError = 0;
38
39pub type ShumateGeometryType = c_int;
40pub const SHUMATE_GEOMETRY_TYPE_UNKNOWN: ShumateGeometryType = 0;
41pub const SHUMATE_GEOMETRY_TYPE_POINT: ShumateGeometryType = 1;
42pub const SHUMATE_GEOMETRY_TYPE_MULTIPOINT: ShumateGeometryType = 2;
43pub const SHUMATE_GEOMETRY_TYPE_LINESTRING: ShumateGeometryType = 3;
44pub const SHUMATE_GEOMETRY_TYPE_MULTILINESTRING: ShumateGeometryType = 4;
45pub const SHUMATE_GEOMETRY_TYPE_POLYGON: ShumateGeometryType = 5;
46pub const SHUMATE_GEOMETRY_TYPE_MULTIPOLYGON: ShumateGeometryType = 6;
47
48pub type ShumateMapProjection = c_int;
49pub const SHUMATE_MAP_PROJECTION_MERCATOR: ShumateMapProjection = 0;
50
51pub type ShumateState = c_int;
52pub const SHUMATE_STATE_NONE: ShumateState = 0;
53pub const SHUMATE_STATE_LOADING: ShumateState = 1;
54pub const SHUMATE_STATE_LOADED: ShumateState = 2;
55pub const SHUMATE_STATE_DONE: ShumateState = 3;
56
57pub type ShumateStyleError = c_int;
58pub const SHUMATE_STYLE_ERROR_FAILED: ShumateStyleError = 0;
59pub const SHUMATE_STYLE_ERROR_MALFORMED_STYLE: ShumateStyleError = 1;
60pub const SHUMATE_STYLE_ERROR_UNSUPPORTED_LAYER: ShumateStyleError = 2;
61pub const SHUMATE_STYLE_ERROR_INVALID_EXPRESSION: ShumateStyleError = 3;
62pub const SHUMATE_STYLE_ERROR_SUPPORT_OMITTED: ShumateStyleError = 4;
63pub const SHUMATE_STYLE_ERROR_UNSUPPORTED: ShumateStyleError = 5;
64
65pub type ShumateTileDownloaderError = c_int;
66pub const SHUMATE_TILE_DOWNLOADER_ERROR_FAILED: ShumateTileDownloaderError = 0;
67pub const SHUMATE_TILE_DOWNLOADER_ERROR_BAD_RESPONSE: ShumateTileDownloaderError = 1;
68pub const SHUMATE_TILE_DOWNLOADER_ERROR_COULD_NOT_CONNECT: ShumateTileDownloaderError = 2;
69pub const SHUMATE_TILE_DOWNLOADER_ERROR_MALFORMED_URL: ShumateTileDownloaderError = 3;
70pub const SHUMATE_TILE_DOWNLOADER_ERROR_OFFLINE: ShumateTileDownloaderError = 4;
71
72pub type ShumateUnit = c_int;
73pub const SHUMATE_UNIT_BOTH: ShumateUnit = 0;
74pub const SHUMATE_UNIT_METRIC: ShumateUnit = 1;
75pub const SHUMATE_UNIT_IMPERIAL: ShumateUnit = 2;
76
77pub const SHUMATE_MAJOR_VERSION: c_int = 1;
79pub const SHUMATE_MAP_SOURCE_MFF_RELIEF: &[u8] = b"mff-relief\0";
80pub const SHUMATE_MAP_SOURCE_OSM_CYCLE_MAP: &[u8] = b"osm-cyclemap\0";
81pub const SHUMATE_MAP_SOURCE_OSM_MAPNIK: &[u8] = b"osm-mapnik\0";
82pub const SHUMATE_MAP_SOURCE_OSM_TRANSPORT_MAP: &[u8] = b"osm-transportmap\0";
83pub const SHUMATE_MAP_SOURCE_OWM_CLOUDS: &[u8] = b"owm-clouds\0";
84pub const SHUMATE_MAP_SOURCE_OWM_PRECIPITATION: &[u8] = b"owm-precipitation\0";
85pub const SHUMATE_MAP_SOURCE_OWM_PRESSURE: &[u8] = b"owm-pressure\0";
86pub const SHUMATE_MAP_SOURCE_OWM_TEMPERATURE: &[u8] = b"owm-temperature\0";
87pub const SHUMATE_MAP_SOURCE_OWM_WIND: &[u8] = b"owm-wind\0";
88pub const SHUMATE_MAX_LATITUDE: c_double = 85.0511287798;
89pub const SHUMATE_MAX_LONGITUDE: c_double = 180.0;
90pub const SHUMATE_MIN_LATITUDE: c_double = -85.0511287798;
91pub const SHUMATE_MIN_LONGITUDE: c_double = -180.0;
92
93pub type ShumateVectorSpriteFallbackFunc = Option<
95 unsafe extern "C" fn(
96 *mut ShumateVectorSpriteSheet,
97 *const c_char,
98 c_double,
99 gpointer,
100 ) -> *mut ShumateVectorSprite,
101>;
102
103#[derive(Copy, Clone)]
105#[repr(C)]
106pub struct ShumateCompassClass {
107 pub parent_class: gtk::GtkWidgetClass,
108}
109
110impl ::std::fmt::Debug for ShumateCompassClass {
111 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
112 f.debug_struct(&format!("ShumateCompassClass @ {self:p}"))
113 .field("parent_class", &self.parent_class)
114 .finish()
115 }
116}
117
118#[derive(Copy, Clone)]
119#[repr(C)]
120pub struct ShumateCoordinateClass {
121 pub parent_class: gobject::GInitiallyUnownedClass,
122 pub padding: [gpointer; 16],
123}
124
125impl ::std::fmt::Debug for ShumateCoordinateClass {
126 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
127 f.debug_struct(&format!("ShumateCoordinateClass @ {self:p}"))
128 .field("parent_class", &self.parent_class)
129 .finish()
130 }
131}
132
133#[derive(Copy, Clone)]
134#[repr(C)]
135pub struct ShumateDataSourceClass {
136 pub parent_class: gobject::GObjectClass,
137 pub get_tile_data_async: Option<
138 unsafe extern "C" fn(
139 *mut ShumateDataSource,
140 c_int,
141 c_int,
142 c_int,
143 *mut gio::GCancellable,
144 gio::GAsyncReadyCallback,
145 gpointer,
146 ),
147 >,
148 pub get_tile_data_finish: Option<
149 unsafe extern "C" fn(
150 *mut ShumateDataSource,
151 *mut gio::GAsyncResult,
152 *mut *mut glib::GError,
153 ) -> *mut glib::GBytes,
154 >,
155 pub start_request: Option<
156 unsafe extern "C" fn(
157 *mut ShumateDataSource,
158 c_int,
159 c_int,
160 c_int,
161 *mut gio::GCancellable,
162 ) -> *mut ShumateDataSourceRequest,
163 >,
164 pub padding: [gpointer; 15],
165}
166
167impl ::std::fmt::Debug for ShumateDataSourceClass {
168 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
169 f.debug_struct(&format!("ShumateDataSourceClass @ {self:p}"))
170 .field("parent_class", &self.parent_class)
171 .field("get_tile_data_async", &self.get_tile_data_async)
172 .field("get_tile_data_finish", &self.get_tile_data_finish)
173 .field("start_request", &self.start_request)
174 .finish()
175 }
176}
177
178#[derive(Copy, Clone)]
179#[repr(C)]
180pub struct ShumateDataSourceRequestClass {
181 pub parent_class: gobject::GObjectClass,
182 pub padding: [gpointer; 16],
183}
184
185impl ::std::fmt::Debug for ShumateDataSourceRequestClass {
186 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
187 f.debug_struct(&format!("ShumateDataSourceRequestClass @ {self:p}"))
188 .field("parent_class", &self.parent_class)
189 .finish()
190 }
191}
192
193#[derive(Copy, Clone)]
194#[repr(C)]
195pub struct ShumateFileCacheClass {
196 pub parent_class: gobject::GObjectClass,
197}
198
199impl ::std::fmt::Debug for ShumateFileCacheClass {
200 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
201 f.debug_struct(&format!("ShumateFileCacheClass @ {self:p}"))
202 .field("parent_class", &self.parent_class)
203 .finish()
204 }
205}
206
207#[derive(Copy, Clone)]
208#[repr(C)]
209pub struct ShumateLayerClass {
210 pub parent_class: gtk::GtkWidgetClass,
211 pub get_debug_text: Option<unsafe extern "C" fn(*mut ShumateLayer) -> *mut c_char>,
212 pub padding: [gpointer; 15],
213}
214
215impl ::std::fmt::Debug for ShumateLayerClass {
216 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
217 f.debug_struct(&format!("ShumateLayerClass @ {self:p}"))
218 .field("parent_class", &self.parent_class)
219 .field("get_debug_text", &self.get_debug_text)
220 .finish()
221 }
222}
223
224#[derive(Copy, Clone)]
225#[repr(C)]
226pub struct ShumateLicenseClass {
227 pub parent_class: gtk::GtkWidgetClass,
228}
229
230impl ::std::fmt::Debug for ShumateLicenseClass {
231 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
232 f.debug_struct(&format!("ShumateLicenseClass @ {self:p}"))
233 .field("parent_class", &self.parent_class)
234 .finish()
235 }
236}
237
238#[derive(Copy, Clone)]
239#[repr(C)]
240pub struct ShumateLocationInterface {
241 pub g_iface: gobject::GTypeInterface,
242 pub get_latitude: Option<unsafe extern "C" fn(*mut ShumateLocation) -> c_double>,
243 pub get_longitude: Option<unsafe extern "C" fn(*mut ShumateLocation) -> c_double>,
244 pub set_location: Option<unsafe extern "C" fn(*mut ShumateLocation, c_double, c_double)>,
245}
246
247impl ::std::fmt::Debug for ShumateLocationInterface {
248 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
249 f.debug_struct(&format!("ShumateLocationInterface @ {self:p}"))
250 .field("get_latitude", &self.get_latitude)
251 .field("get_longitude", &self.get_longitude)
252 .field("set_location", &self.set_location)
253 .finish()
254 }
255}
256
257#[derive(Copy, Clone)]
258#[repr(C)]
259pub struct ShumateMapClass {
260 pub parent_class: gtk::GtkWidgetClass,
261}
262
263impl ::std::fmt::Debug for ShumateMapClass {
264 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
265 f.debug_struct(&format!("ShumateMapClass @ {self:p}"))
266 .field("parent_class", &self.parent_class)
267 .finish()
268 }
269}
270
271#[derive(Copy, Clone)]
272#[repr(C)]
273pub struct ShumateMapLayerClass {
274 pub parent_class: ShumateLayerClass,
275}
276
277impl ::std::fmt::Debug for ShumateMapLayerClass {
278 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
279 f.debug_struct(&format!("ShumateMapLayerClass @ {self:p}"))
280 .field("parent_class", &self.parent_class)
281 .finish()
282 }
283}
284
285#[derive(Copy, Clone)]
286#[repr(C)]
287pub struct ShumateMapSourceClass {
288 pub parent_class: gobject::GObjectClass,
289 pub fill_tile_async: Option<
290 unsafe extern "C" fn(
291 *mut ShumateMapSource,
292 *mut ShumateTile,
293 *mut gio::GCancellable,
294 gio::GAsyncReadyCallback,
295 gpointer,
296 ),
297 >,
298 pub fill_tile_finish: Option<
299 unsafe extern "C" fn(
300 *mut ShumateMapSource,
301 *mut gio::GAsyncResult,
302 *mut *mut glib::GError,
303 ) -> gboolean,
304 >,
305 pub padding: [gpointer; 16],
306}
307
308impl ::std::fmt::Debug for ShumateMapSourceClass {
309 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
310 f.debug_struct(&format!("ShumateMapSourceClass @ {self:p}"))
311 .field("parent_class", &self.parent_class)
312 .field("fill_tile_async", &self.fill_tile_async)
313 .field("fill_tile_finish", &self.fill_tile_finish)
314 .finish()
315 }
316}
317
318#[derive(Copy, Clone)]
319#[repr(C)]
320pub struct ShumateMapSourceRegistryClass {
321 pub parent_class: gobject::GObjectClass,
322}
323
324impl ::std::fmt::Debug for ShumateMapSourceRegistryClass {
325 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
326 f.debug_struct(&format!("ShumateMapSourceRegistryClass @ {self:p}"))
327 .field("parent_class", &self.parent_class)
328 .finish()
329 }
330}
331
332#[derive(Copy, Clone)]
333#[repr(C)]
334pub struct ShumateMarkerClass {
335 pub parent_class: gtk::GtkWidgetClass,
336 pub padding: [gpointer; 16],
337}
338
339impl ::std::fmt::Debug for ShumateMarkerClass {
340 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
341 f.debug_struct(&format!("ShumateMarkerClass @ {self:p}"))
342 .field("parent_class", &self.parent_class)
343 .finish()
344 }
345}
346
347#[derive(Copy, Clone)]
348#[repr(C)]
349pub struct ShumateMarkerLayerClass {
350 pub parent_class: ShumateLayerClass,
351}
352
353impl ::std::fmt::Debug for ShumateMarkerLayerClass {
354 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
355 f.debug_struct(&format!("ShumateMarkerLayerClass @ {self:p}"))
356 .field("parent_class", &self.parent_class)
357 .finish()
358 }
359}
360
361#[derive(Copy, Clone)]
362#[repr(C)]
363pub struct ShumatePathLayerClass {
364 pub parent_class: ShumateLayerClass,
365}
366
367impl ::std::fmt::Debug for ShumatePathLayerClass {
368 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
369 f.debug_struct(&format!("ShumatePathLayerClass @ {self:p}"))
370 .field("parent_class", &self.parent_class)
371 .finish()
372 }
373}
374
375#[derive(Copy, Clone)]
376#[repr(C)]
377pub struct ShumatePointClass {
378 pub parent_class: ShumateMarkerClass,
379}
380
381impl ::std::fmt::Debug for ShumatePointClass {
382 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
383 f.debug_struct(&format!("ShumatePointClass @ {self:p}"))
384 .field("parent_class", &self.parent_class)
385 .finish()
386 }
387}
388
389#[derive(Copy, Clone)]
390#[repr(C)]
391pub struct ShumateRasterRendererClass {
392 pub parent_class: ShumateMapSourceClass,
393}
394
395impl ::std::fmt::Debug for ShumateRasterRendererClass {
396 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
397 f.debug_struct(&format!("ShumateRasterRendererClass @ {self:p}"))
398 .field("parent_class", &self.parent_class)
399 .finish()
400 }
401}
402
403#[derive(Copy, Clone)]
404#[repr(C)]
405pub struct ShumateScaleClass {
406 pub parent_class: gtk::GtkWidgetClass,
407}
408
409impl ::std::fmt::Debug for ShumateScaleClass {
410 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
411 f.debug_struct(&format!("ShumateScaleClass @ {self:p}"))
412 .field("parent_class", &self.parent_class)
413 .finish()
414 }
415}
416
417#[derive(Copy, Clone)]
418#[repr(C)]
419pub struct ShumateSimpleMapClass {
420 pub parent_class: gtk::GtkWidgetClass,
421}
422
423impl ::std::fmt::Debug for ShumateSimpleMapClass {
424 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
425 f.debug_struct(&format!("ShumateSimpleMapClass @ {self:p}"))
426 .field("parent_class", &self.parent_class)
427 .finish()
428 }
429}
430
431#[derive(Copy, Clone)]
432#[repr(C)]
433pub struct ShumateSymbolEventClass {
434 pub parent_class: gobject::GObjectClass,
435}
436
437impl ::std::fmt::Debug for ShumateSymbolEventClass {
438 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
439 f.debug_struct(&format!("ShumateSymbolEventClass @ {self:p}"))
440 .field("parent_class", &self.parent_class)
441 .finish()
442 }
443}
444
445#[derive(Copy, Clone)]
446#[repr(C)]
447pub struct ShumateTileClass {
448 pub parent_class: gobject::GObjectClass,
449}
450
451impl ::std::fmt::Debug for ShumateTileClass {
452 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
453 f.debug_struct(&format!("ShumateTileClass @ {self:p}"))
454 .field("parent_class", &self.parent_class)
455 .finish()
456 }
457}
458
459#[derive(Copy, Clone)]
460#[repr(C)]
461pub struct ShumateTileDownloaderClass {
462 pub parent_class: ShumateDataSourceClass,
463}
464
465impl ::std::fmt::Debug for ShumateTileDownloaderClass {
466 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
467 f.debug_struct(&format!("ShumateTileDownloaderClass @ {self:p}"))
468 .field("parent_class", &self.parent_class)
469 .finish()
470 }
471}
472
473#[derive(Copy, Clone)]
474#[repr(C)]
475pub struct ShumateVectorReaderClass {
476 pub parent_class: gobject::GObjectClass,
477}
478
479impl ::std::fmt::Debug for ShumateVectorReaderClass {
480 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
481 f.debug_struct(&format!("ShumateVectorReaderClass @ {self:p}"))
482 .field("parent_class", &self.parent_class)
483 .finish()
484 }
485}
486
487#[derive(Copy, Clone)]
488#[repr(C)]
489pub struct ShumateVectorReaderIterClass {
490 pub parent_class: gobject::GObjectClass,
491}
492
493impl ::std::fmt::Debug for ShumateVectorReaderIterClass {
494 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
495 f.debug_struct(&format!("ShumateVectorReaderIterClass @ {self:p}"))
496 .field("parent_class", &self.parent_class)
497 .finish()
498 }
499}
500
501#[derive(Copy, Clone)]
502#[repr(C)]
503pub struct ShumateVectorRendererClass {
504 pub parent_class: ShumateMapSourceClass,
505}
506
507impl ::std::fmt::Debug for ShumateVectorRendererClass {
508 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
509 f.debug_struct(&format!("ShumateVectorRendererClass @ {self:p}"))
510 .field("parent_class", &self.parent_class)
511 .finish()
512 }
513}
514
515#[derive(Copy, Clone)]
516#[repr(C)]
517pub struct ShumateVectorSpriteClass {
518 pub parent_class: gobject::GObjectClass,
519}
520
521impl ::std::fmt::Debug for ShumateVectorSpriteClass {
522 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
523 f.debug_struct(&format!("ShumateVectorSpriteClass @ {self:p}"))
524 .field("parent_class", &self.parent_class)
525 .finish()
526 }
527}
528
529#[derive(Copy, Clone)]
530#[repr(C)]
531pub struct ShumateVectorSpriteSheetClass {
532 pub parent_class: gobject::GObjectClass,
533}
534
535impl ::std::fmt::Debug for ShumateVectorSpriteSheetClass {
536 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
537 f.debug_struct(&format!("ShumateVectorSpriteSheetClass @ {self:p}"))
538 .field("parent_class", &self.parent_class)
539 .finish()
540 }
541}
542
543#[derive(Copy, Clone)]
544#[repr(C)]
545pub struct ShumateViewportClass {
546 pub parent_class: gobject::GObjectClass,
547}
548
549impl ::std::fmt::Debug for ShumateViewportClass {
550 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
551 f.debug_struct(&format!("ShumateViewportClass @ {self:p}"))
552 .field("parent_class", &self.parent_class)
553 .finish()
554 }
555}
556
557#[repr(C)]
559#[allow(dead_code)]
560pub struct ShumateCompass {
561 _data: [u8; 0],
562 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
563}
564
565impl ::std::fmt::Debug for ShumateCompass {
566 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
567 f.debug_struct(&format!("ShumateCompass @ {self:p}"))
568 .finish()
569 }
570}
571
572#[derive(Copy, Clone)]
573#[repr(C)]
574pub struct ShumateCoordinate {
575 pub parent_instance: gobject::GInitiallyUnowned,
576}
577
578impl ::std::fmt::Debug for ShumateCoordinate {
579 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
580 f.debug_struct(&format!("ShumateCoordinate @ {self:p}"))
581 .field("parent_instance", &self.parent_instance)
582 .finish()
583 }
584}
585
586#[derive(Copy, Clone)]
587#[repr(C)]
588pub struct ShumateDataSource {
589 pub parent_instance: gobject::GObject,
590}
591
592impl ::std::fmt::Debug for ShumateDataSource {
593 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
594 f.debug_struct(&format!("ShumateDataSource @ {self:p}"))
595 .field("parent_instance", &self.parent_instance)
596 .finish()
597 }
598}
599
600#[derive(Copy, Clone)]
601#[repr(C)]
602pub struct ShumateDataSourceRequest {
603 pub parent_instance: gobject::GObject,
604}
605
606impl ::std::fmt::Debug for ShumateDataSourceRequest {
607 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
608 f.debug_struct(&format!("ShumateDataSourceRequest @ {self:p}"))
609 .field("parent_instance", &self.parent_instance)
610 .finish()
611 }
612}
613
614#[repr(C)]
615#[allow(dead_code)]
616pub struct ShumateFileCache {
617 _data: [u8; 0],
618 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
619}
620
621impl ::std::fmt::Debug for ShumateFileCache {
622 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
623 f.debug_struct(&format!("ShumateFileCache @ {self:p}"))
624 .finish()
625 }
626}
627
628#[derive(Copy, Clone)]
629#[repr(C)]
630pub struct ShumateLayer {
631 pub parent_instance: gtk::GtkWidget,
632}
633
634impl ::std::fmt::Debug for ShumateLayer {
635 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
636 f.debug_struct(&format!("ShumateLayer @ {self:p}"))
637 .field("parent_instance", &self.parent_instance)
638 .finish()
639 }
640}
641
642#[repr(C)]
643#[allow(dead_code)]
644pub struct ShumateLicense {
645 _data: [u8; 0],
646 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
647}
648
649impl ::std::fmt::Debug for ShumateLicense {
650 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
651 f.debug_struct(&format!("ShumateLicense @ {self:p}"))
652 .finish()
653 }
654}
655
656#[repr(C)]
657#[allow(dead_code)]
658pub struct ShumateMap {
659 _data: [u8; 0],
660 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
661}
662
663impl ::std::fmt::Debug for ShumateMap {
664 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
665 f.debug_struct(&format!("ShumateMap @ {self:p}")).finish()
666 }
667}
668
669#[repr(C)]
670#[allow(dead_code)]
671pub struct ShumateMapLayer {
672 _data: [u8; 0],
673 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
674}
675
676impl ::std::fmt::Debug for ShumateMapLayer {
677 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
678 f.debug_struct(&format!("ShumateMapLayer @ {self:p}"))
679 .finish()
680 }
681}
682
683#[derive(Copy, Clone)]
684#[repr(C)]
685pub struct ShumateMapSource {
686 pub parent_instance: gobject::GObject,
687}
688
689impl ::std::fmt::Debug for ShumateMapSource {
690 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
691 f.debug_struct(&format!("ShumateMapSource @ {self:p}"))
692 .field("parent_instance", &self.parent_instance)
693 .finish()
694 }
695}
696
697#[repr(C)]
698#[allow(dead_code)]
699pub struct ShumateMapSourceRegistry {
700 _data: [u8; 0],
701 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
702}
703
704impl ::std::fmt::Debug for ShumateMapSourceRegistry {
705 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
706 f.debug_struct(&format!("ShumateMapSourceRegistry @ {self:p}"))
707 .finish()
708 }
709}
710
711#[derive(Copy, Clone)]
712#[repr(C)]
713pub struct ShumateMarker {
714 pub parent_instance: gtk::GtkWidget,
715}
716
717impl ::std::fmt::Debug for ShumateMarker {
718 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
719 f.debug_struct(&format!("ShumateMarker @ {self:p}"))
720 .field("parent_instance", &self.parent_instance)
721 .finish()
722 }
723}
724
725#[repr(C)]
726#[allow(dead_code)]
727pub struct ShumateMarkerLayer {
728 _data: [u8; 0],
729 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
730}
731
732impl ::std::fmt::Debug for ShumateMarkerLayer {
733 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
734 f.debug_struct(&format!("ShumateMarkerLayer @ {self:p}"))
735 .finish()
736 }
737}
738
739#[repr(C)]
740#[allow(dead_code)]
741pub struct ShumatePathLayer {
742 _data: [u8; 0],
743 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
744}
745
746impl ::std::fmt::Debug for ShumatePathLayer {
747 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
748 f.debug_struct(&format!("ShumatePathLayer @ {self:p}"))
749 .finish()
750 }
751}
752
753#[repr(C)]
754#[allow(dead_code)]
755pub struct ShumatePoint {
756 _data: [u8; 0],
757 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
758}
759
760impl ::std::fmt::Debug for ShumatePoint {
761 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
762 f.debug_struct(&format!("ShumatePoint @ {self:p}")).finish()
763 }
764}
765
766#[repr(C)]
767#[allow(dead_code)]
768pub struct ShumateRasterRenderer {
769 _data: [u8; 0],
770 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
771}
772
773impl ::std::fmt::Debug for ShumateRasterRenderer {
774 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
775 f.debug_struct(&format!("ShumateRasterRenderer @ {self:p}"))
776 .finish()
777 }
778}
779
780#[repr(C)]
781#[allow(dead_code)]
782pub struct ShumateScale {
783 _data: [u8; 0],
784 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
785}
786
787impl ::std::fmt::Debug for ShumateScale {
788 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
789 f.debug_struct(&format!("ShumateScale @ {self:p}")).finish()
790 }
791}
792
793#[repr(C)]
794#[allow(dead_code)]
795pub struct ShumateSimpleMap {
796 _data: [u8; 0],
797 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
798}
799
800impl ::std::fmt::Debug for ShumateSimpleMap {
801 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
802 f.debug_struct(&format!("ShumateSimpleMap @ {self:p}"))
803 .finish()
804 }
805}
806
807#[repr(C)]
808#[allow(dead_code)]
809pub struct ShumateSymbolEvent {
810 _data: [u8; 0],
811 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
812}
813
814impl ::std::fmt::Debug for ShumateSymbolEvent {
815 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
816 f.debug_struct(&format!("ShumateSymbolEvent @ {self:p}"))
817 .finish()
818 }
819}
820
821#[repr(C)]
822#[allow(dead_code)]
823pub struct ShumateTile {
824 _data: [u8; 0],
825 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
826}
827
828impl ::std::fmt::Debug for ShumateTile {
829 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
830 f.debug_struct(&format!("ShumateTile @ {self:p}")).finish()
831 }
832}
833
834#[repr(C)]
835#[allow(dead_code)]
836pub struct ShumateTileDownloader {
837 _data: [u8; 0],
838 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
839}
840
841impl ::std::fmt::Debug for ShumateTileDownloader {
842 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
843 f.debug_struct(&format!("ShumateTileDownloader @ {self:p}"))
844 .finish()
845 }
846}
847
848#[repr(C)]
849#[allow(dead_code)]
850pub struct ShumateVectorReader {
851 _data: [u8; 0],
852 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
853}
854
855impl ::std::fmt::Debug for ShumateVectorReader {
856 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
857 f.debug_struct(&format!("ShumateVectorReader @ {self:p}"))
858 .finish()
859 }
860}
861
862#[repr(C)]
863#[allow(dead_code)]
864pub struct ShumateVectorReaderIter {
865 _data: [u8; 0],
866 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
867}
868
869impl ::std::fmt::Debug for ShumateVectorReaderIter {
870 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
871 f.debug_struct(&format!("ShumateVectorReaderIter @ {self:p}"))
872 .finish()
873 }
874}
875
876#[repr(C)]
877#[allow(dead_code)]
878pub struct ShumateVectorRenderer {
879 _data: [u8; 0],
880 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
881}
882
883impl ::std::fmt::Debug for ShumateVectorRenderer {
884 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
885 f.debug_struct(&format!("ShumateVectorRenderer @ {self:p}"))
886 .finish()
887 }
888}
889
890#[repr(C)]
891#[allow(dead_code)]
892pub struct ShumateVectorSprite {
893 _data: [u8; 0],
894 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
895}
896
897impl ::std::fmt::Debug for ShumateVectorSprite {
898 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
899 f.debug_struct(&format!("ShumateVectorSprite @ {self:p}"))
900 .finish()
901 }
902}
903
904#[repr(C)]
905#[allow(dead_code)]
906pub struct ShumateVectorSpriteSheet {
907 _data: [u8; 0],
908 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
909}
910
911impl ::std::fmt::Debug for ShumateVectorSpriteSheet {
912 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
913 f.debug_struct(&format!("ShumateVectorSpriteSheet @ {self:p}"))
914 .finish()
915 }
916}
917
918#[repr(C)]
919#[allow(dead_code)]
920pub struct ShumateViewport {
921 _data: [u8; 0],
922 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
923}
924
925impl ::std::fmt::Debug for ShumateViewport {
926 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
927 f.debug_struct(&format!("ShumateViewport @ {self:p}"))
928 .finish()
929 }
930}
931
932#[repr(C)]
934#[allow(dead_code)]
935pub struct ShumateLocation {
936 _data: [u8; 0],
937 _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
938}
939
940impl ::std::fmt::Debug for ShumateLocation {
941 fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
942 write!(f, "ShumateLocation @ {self:p}")
943 }
944}
945
946extern "C" {
947
948 pub fn shumate_file_cache_error_get_type() -> GType;
952 pub fn shumate_file_cache_error_quark() -> glib::GQuark;
953
954 #[cfg(feature = "v1_2")]
958 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
959 pub fn shumate_geometry_type_get_type() -> GType;
960
961 pub fn shumate_map_projection_get_type() -> GType;
965
966 pub fn shumate_state_get_type() -> GType;
970
971 pub fn shumate_style_error_get_type() -> GType;
975 pub fn shumate_style_error_quark() -> glib::GQuark;
976
977 pub fn shumate_tile_downloader_error_get_type() -> GType;
981 pub fn shumate_tile_downloader_error_quark() -> glib::GQuark;
982
983 pub fn shumate_unit_get_type() -> GType;
987
988 pub fn shumate_compass_get_type() -> GType;
992 pub fn shumate_compass_new(viewport: *mut ShumateViewport) -> *mut ShumateCompass;
993 pub fn shumate_compass_get_viewport(compass: *mut ShumateCompass) -> *mut ShumateViewport;
994 pub fn shumate_compass_set_viewport(
995 compass: *mut ShumateCompass,
996 viewport: *mut ShumateViewport,
997 );
998
999 pub fn shumate_coordinate_get_type() -> GType;
1003 pub fn shumate_coordinate_new() -> *mut ShumateCoordinate;
1004 pub fn shumate_coordinate_new_full(
1005 latitude: c_double,
1006 longitude: c_double,
1007 ) -> *mut ShumateCoordinate;
1008
1009 pub fn shumate_data_source_get_type() -> GType;
1013 #[cfg(feature = "v1_1")]
1014 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1015 pub fn shumate_data_source_get_max_zoom_level(self_: *mut ShumateDataSource) -> c_uint;
1016 #[cfg(feature = "v1_1")]
1017 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1018 pub fn shumate_data_source_get_min_zoom_level(self_: *mut ShumateDataSource) -> c_uint;
1019 pub fn shumate_data_source_get_tile_data_async(
1020 self_: *mut ShumateDataSource,
1021 x: c_int,
1022 y: c_int,
1023 zoom_level: c_int,
1024 cancellable: *mut gio::GCancellable,
1025 callback: gio::GAsyncReadyCallback,
1026 user_data: gpointer,
1027 );
1028 pub fn shumate_data_source_get_tile_data_finish(
1029 self_: *mut ShumateDataSource,
1030 result: *mut gio::GAsyncResult,
1031 error: *mut *mut glib::GError,
1032 ) -> *mut glib::GBytes;
1033 #[cfg(feature = "v1_1")]
1034 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1035 pub fn shumate_data_source_set_max_zoom_level(
1036 self_: *mut ShumateDataSource,
1037 zoom_level: c_uint,
1038 );
1039 #[cfg(feature = "v1_1")]
1040 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1041 pub fn shumate_data_source_set_min_zoom_level(
1042 self_: *mut ShumateDataSource,
1043 zoom_level: c_uint,
1044 );
1045 #[cfg(feature = "v1_1")]
1046 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1047 pub fn shumate_data_source_start_request(
1048 self_: *mut ShumateDataSource,
1049 x: c_int,
1050 y: c_int,
1051 zoom_level: c_int,
1052 cancellable: *mut gio::GCancellable,
1053 ) -> *mut ShumateDataSourceRequest;
1054
1055 #[cfg(feature = "v1_1")]
1059 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1060 pub fn shumate_data_source_request_get_type() -> GType;
1061 #[cfg(feature = "v1_1")]
1062 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1063 pub fn shumate_data_source_request_new(
1064 x: c_int,
1065 y: c_int,
1066 zoom_level: c_int,
1067 ) -> *mut ShumateDataSourceRequest;
1068 #[cfg(feature = "v1_1")]
1069 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1070 pub fn shumate_data_source_request_complete(self_: *mut ShumateDataSourceRequest);
1071 #[cfg(feature = "v1_1")]
1072 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1073 pub fn shumate_data_source_request_emit_data(
1074 self_: *mut ShumateDataSourceRequest,
1075 data: *mut glib::GBytes,
1076 complete: gboolean,
1077 );
1078 #[cfg(feature = "v1_1")]
1079 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1080 pub fn shumate_data_source_request_emit_error(
1081 self_: *mut ShumateDataSourceRequest,
1082 error: *const glib::GError,
1083 );
1084 #[cfg(feature = "v1_1")]
1085 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1086 pub fn shumate_data_source_request_get_data(
1087 self_: *mut ShumateDataSourceRequest,
1088 ) -> *mut glib::GBytes;
1089 #[cfg(feature = "v1_1")]
1090 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1091 pub fn shumate_data_source_request_get_error(
1092 self_: *mut ShumateDataSourceRequest,
1093 ) -> *mut glib::GError;
1094 #[cfg(feature = "v1_1")]
1095 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1096 pub fn shumate_data_source_request_get_x(self_: *mut ShumateDataSourceRequest) -> c_int;
1097 #[cfg(feature = "v1_1")]
1098 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1099 pub fn shumate_data_source_request_get_y(self_: *mut ShumateDataSourceRequest) -> c_int;
1100 #[cfg(feature = "v1_1")]
1101 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1102 pub fn shumate_data_source_request_get_zoom_level(
1103 self_: *mut ShumateDataSourceRequest,
1104 ) -> c_int;
1105 #[cfg(feature = "v1_1")]
1106 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1107 pub fn shumate_data_source_request_is_completed(
1108 self_: *mut ShumateDataSourceRequest,
1109 ) -> gboolean;
1110
1111 pub fn shumate_file_cache_get_type() -> GType;
1115 pub fn shumate_file_cache_new_full(
1116 size_limit: c_uint,
1117 cache_key: *const c_char,
1118 cache_dir: *const c_char,
1119 ) -> *mut ShumateFileCache;
1120 pub fn shumate_file_cache_get_cache_dir(self_: *mut ShumateFileCache) -> *const c_char;
1121 pub fn shumate_file_cache_get_cache_key(self_: *mut ShumateFileCache) -> *const c_char;
1122 pub fn shumate_file_cache_get_size_limit(self_: *mut ShumateFileCache) -> c_uint;
1123 pub fn shumate_file_cache_get_tile_async(
1124 self_: *mut ShumateFileCache,
1125 x: c_int,
1126 y: c_int,
1127 zoom_level: c_int,
1128 cancellable: *mut gio::GCancellable,
1129 callback: gio::GAsyncReadyCallback,
1130 user_data: gpointer,
1131 );
1132 pub fn shumate_file_cache_get_tile_finish(
1133 self_: *mut ShumateFileCache,
1134 etag: *mut *mut c_char,
1135 modtime: *mut *mut glib::GDateTime,
1136 result: *mut gio::GAsyncResult,
1137 error: *mut *mut glib::GError,
1138 ) -> *mut glib::GBytes;
1139 pub fn shumate_file_cache_mark_up_to_date(
1140 self_: *mut ShumateFileCache,
1141 x: c_int,
1142 y: c_int,
1143 zoom_level: c_int,
1144 );
1145 pub fn shumate_file_cache_purge_cache_async(
1146 self_: *mut ShumateFileCache,
1147 cancellable: *mut gio::GCancellable,
1148 callback: gio::GAsyncReadyCallback,
1149 user_data: gpointer,
1150 );
1151 pub fn shumate_file_cache_purge_cache_finish(
1152 self_: *mut ShumateFileCache,
1153 result: *mut gio::GAsyncResult,
1154 error: *mut *mut glib::GError,
1155 ) -> gboolean;
1156 pub fn shumate_file_cache_set_size_limit(self_: *mut ShumateFileCache, size_limit: c_uint);
1157 pub fn shumate_file_cache_store_tile_async(
1158 self_: *mut ShumateFileCache,
1159 x: c_int,
1160 y: c_int,
1161 zoom_level: c_int,
1162 bytes: *mut glib::GBytes,
1163 etag: *const c_char,
1164 cancellable: *mut gio::GCancellable,
1165 callback: gio::GAsyncReadyCallback,
1166 user_data: gpointer,
1167 );
1168 pub fn shumate_file_cache_store_tile_finish(
1169 self_: *mut ShumateFileCache,
1170 result: *mut gio::GAsyncResult,
1171 error: *mut *mut glib::GError,
1172 ) -> gboolean;
1173
1174 pub fn shumate_layer_get_type() -> GType;
1178 pub fn shumate_layer_get_viewport(self_: *mut ShumateLayer) -> *mut ShumateViewport;
1179
1180 pub fn shumate_license_get_type() -> GType;
1184 pub fn shumate_license_new() -> *mut ShumateLicense;
1185 pub fn shumate_license_append_map_source(
1186 license: *mut ShumateLicense,
1187 map_source: *mut ShumateMapSource,
1188 );
1189 pub fn shumate_license_get_extra_text(license: *mut ShumateLicense) -> *const c_char;
1190 pub fn shumate_license_get_xalign(license: *mut ShumateLicense) -> c_float;
1191 pub fn shumate_license_prepend_map_source(
1192 license: *mut ShumateLicense,
1193 map_source: *mut ShumateMapSource,
1194 );
1195 pub fn shumate_license_remove_map_source(
1196 license: *mut ShumateLicense,
1197 map_source: *mut ShumateMapSource,
1198 );
1199 pub fn shumate_license_set_extra_text(license: *mut ShumateLicense, text: *const c_char);
1200 pub fn shumate_license_set_xalign(license: *mut ShumateLicense, xalign: c_float);
1201
1202 pub fn shumate_map_get_type() -> GType;
1206 pub fn shumate_map_new() -> *mut ShumateMap;
1207 pub fn shumate_map_new_simple() -> *mut ShumateMap;
1208 pub fn shumate_map_add_layer(self_: *mut ShumateMap, layer: *mut ShumateLayer);
1209 pub fn shumate_map_center_on(self_: *mut ShumateMap, latitude: c_double, longitude: c_double);
1210 pub fn shumate_map_get_animate_zoom(self_: *mut ShumateMap) -> gboolean;
1211 pub fn shumate_map_get_go_to_duration(self_: *mut ShumateMap) -> c_uint;
1212 pub fn shumate_map_get_state(self_: *mut ShumateMap) -> ShumateState;
1213 pub fn shumate_map_get_viewport(self_: *mut ShumateMap) -> *mut ShumateViewport;
1214 pub fn shumate_map_get_zoom_on_double_click(self_: *mut ShumateMap) -> gboolean;
1215 pub fn shumate_map_go_to(self_: *mut ShumateMap, latitude: c_double, longitude: c_double);
1216 pub fn shumate_map_go_to_full(
1217 self_: *mut ShumateMap,
1218 latitude: c_double,
1219 longitude: c_double,
1220 zoom_level: c_double,
1221 );
1222 pub fn shumate_map_go_to_full_with_duration(
1223 self_: *mut ShumateMap,
1224 latitude: c_double,
1225 longitude: c_double,
1226 zoom_level: c_double,
1227 duration_ms: c_uint,
1228 );
1229 pub fn shumate_map_insert_layer_above(
1230 self_: *mut ShumateMap,
1231 layer: *mut ShumateLayer,
1232 next_sibling: *mut ShumateLayer,
1233 );
1234 pub fn shumate_map_insert_layer_behind(
1235 self_: *mut ShumateMap,
1236 layer: *mut ShumateLayer,
1237 next_sibling: *mut ShumateLayer,
1238 );
1239 pub fn shumate_map_remove_layer(self_: *mut ShumateMap, layer: *mut ShumateLayer);
1240 pub fn shumate_map_set_animate_zoom(self_: *mut ShumateMap, value: gboolean);
1241 pub fn shumate_map_set_go_to_duration(self_: *mut ShumateMap, duration: c_uint);
1242 pub fn shumate_map_set_map_source(self_: *mut ShumateMap, map_source: *mut ShumateMapSource);
1243 pub fn shumate_map_set_zoom_on_double_click(self_: *mut ShumateMap, value: gboolean);
1244 pub fn shumate_map_stop_go_to(self_: *mut ShumateMap);
1245 pub fn shumate_map_zoom_in(self_: *mut ShumateMap);
1246 pub fn shumate_map_zoom_out(self_: *mut ShumateMap);
1247
1248 pub fn shumate_map_layer_get_type() -> GType;
1252 pub fn shumate_map_layer_new(
1253 map_source: *mut ShumateMapSource,
1254 viewport: *mut ShumateViewport,
1255 ) -> *mut ShumateMapLayer;
1256
1257 pub fn shumate_map_source_get_type() -> GType;
1261 pub fn shumate_map_source_fill_tile_async(
1262 self_: *mut ShumateMapSource,
1263 tile: *mut ShumateTile,
1264 cancellable: *mut gio::GCancellable,
1265 callback: gio::GAsyncReadyCallback,
1266 user_data: gpointer,
1267 );
1268 pub fn shumate_map_source_fill_tile_finish(
1269 self_: *mut ShumateMapSource,
1270 result: *mut gio::GAsyncResult,
1271 error: *mut *mut glib::GError,
1272 ) -> gboolean;
1273 pub fn shumate_map_source_get_column_count(
1274 map_source: *mut ShumateMapSource,
1275 zoom_level: c_uint,
1276 ) -> c_uint;
1277 pub fn shumate_map_source_get_id(map_source: *mut ShumateMapSource) -> *const c_char;
1278 pub fn shumate_map_source_get_latitude(
1279 map_source: *mut ShumateMapSource,
1280 zoom_level: c_double,
1281 y: c_double,
1282 ) -> c_double;
1283 pub fn shumate_map_source_get_license(map_source: *mut ShumateMapSource) -> *const c_char;
1284 pub fn shumate_map_source_get_license_uri(map_source: *mut ShumateMapSource) -> *const c_char;
1285 pub fn shumate_map_source_get_longitude(
1286 map_source: *mut ShumateMapSource,
1287 zoom_level: c_double,
1288 x: c_double,
1289 ) -> c_double;
1290 pub fn shumate_map_source_get_max_zoom_level(map_source: *mut ShumateMapSource) -> c_uint;
1291 pub fn shumate_map_source_get_meters_per_pixel(
1292 map_source: *mut ShumateMapSource,
1293 zoom_level: c_double,
1294 latitude: c_double,
1295 longitude: c_double,
1296 ) -> c_double;
1297 pub fn shumate_map_source_get_min_zoom_level(map_source: *mut ShumateMapSource) -> c_uint;
1298 pub fn shumate_map_source_get_name(map_source: *mut ShumateMapSource) -> *const c_char;
1299 pub fn shumate_map_source_get_projection(
1300 map_source: *mut ShumateMapSource,
1301 ) -> ShumateMapProjection;
1302 pub fn shumate_map_source_get_row_count(
1303 map_source: *mut ShumateMapSource,
1304 zoom_level: c_uint,
1305 ) -> c_uint;
1306 pub fn shumate_map_source_get_tile_size(map_source: *mut ShumateMapSource) -> c_uint;
1307 pub fn shumate_map_source_get_tile_size_at_zoom(
1308 map_source: *mut ShumateMapSource,
1309 zoom_level: c_double,
1310 ) -> c_double;
1311 pub fn shumate_map_source_get_x(
1312 map_source: *mut ShumateMapSource,
1313 zoom_level: c_double,
1314 longitude: c_double,
1315 ) -> c_double;
1316 pub fn shumate_map_source_get_y(
1317 map_source: *mut ShumateMapSource,
1318 zoom_level: c_double,
1319 latitude: c_double,
1320 ) -> c_double;
1321 pub fn shumate_map_source_set_id(map_source: *mut ShumateMapSource, id: *const c_char);
1322 pub fn shumate_map_source_set_license(
1323 map_source: *mut ShumateMapSource,
1324 license: *const c_char,
1325 );
1326 pub fn shumate_map_source_set_license_uri(
1327 map_source: *mut ShumateMapSource,
1328 license_uri: *const c_char,
1329 );
1330 pub fn shumate_map_source_set_max_zoom_level(
1331 map_source: *mut ShumateMapSource,
1332 zoom_level: c_uint,
1333 );
1334 pub fn shumate_map_source_set_min_zoom_level(
1335 map_source: *mut ShumateMapSource,
1336 zoom_level: c_uint,
1337 );
1338 pub fn shumate_map_source_set_name(map_source: *mut ShumateMapSource, name: *const c_char);
1339 pub fn shumate_map_source_set_projection(
1340 map_source: *mut ShumateMapSource,
1341 projection: ShumateMapProjection,
1342 );
1343 pub fn shumate_map_source_set_tile_size(map_source: *mut ShumateMapSource, tile_size: c_uint);
1344
1345 pub fn shumate_map_source_registry_get_type() -> GType;
1349 pub fn shumate_map_source_registry_new() -> *mut ShumateMapSourceRegistry;
1350 pub fn shumate_map_source_registry_new_with_defaults() -> *mut ShumateMapSourceRegistry;
1351 pub fn shumate_map_source_registry_add(
1352 self_: *mut ShumateMapSourceRegistry,
1353 map_source: *mut ShumateMapSource,
1354 );
1355 pub fn shumate_map_source_registry_get_by_id(
1356 self_: *mut ShumateMapSourceRegistry,
1357 id: *const c_char,
1358 ) -> *mut ShumateMapSource;
1359 pub fn shumate_map_source_registry_populate_defaults(self_: *mut ShumateMapSourceRegistry);
1360 pub fn shumate_map_source_registry_remove(
1361 self_: *mut ShumateMapSourceRegistry,
1362 id: *const c_char,
1363 );
1364
1365 pub fn shumate_marker_get_type() -> GType;
1369 pub fn shumate_marker_new() -> *mut ShumateMarker;
1370 pub fn shumate_marker_animate_in(marker: *mut ShumateMarker);
1371 pub fn shumate_marker_animate_in_with_delay(marker: *mut ShumateMarker, delay: c_uint);
1372 pub fn shumate_marker_animate_out(marker: *mut ShumateMarker);
1373 pub fn shumate_marker_animate_out_with_delay(marker: *mut ShumateMarker, delay: c_uint);
1374 pub fn shumate_marker_get_child(marker: *mut ShumateMarker) -> *mut gtk::GtkWidget;
1375 pub fn shumate_marker_get_draggable(marker: *mut ShumateMarker) -> gboolean;
1376 pub fn shumate_marker_get_selectable(marker: *mut ShumateMarker) -> gboolean;
1377 pub fn shumate_marker_is_selected(marker: *mut ShumateMarker) -> gboolean;
1378 pub fn shumate_marker_set_child(marker: *mut ShumateMarker, child: *mut gtk::GtkWidget);
1379 pub fn shumate_marker_set_draggable(marker: *mut ShumateMarker, value: gboolean);
1380 pub fn shumate_marker_set_selectable(marker: *mut ShumateMarker, value: gboolean);
1381
1382 pub fn shumate_marker_layer_get_type() -> GType;
1386 pub fn shumate_marker_layer_new(viewport: *mut ShumateViewport) -> *mut ShumateMarkerLayer;
1387 pub fn shumate_marker_layer_new_full(
1388 viewport: *mut ShumateViewport,
1389 mode: gtk::GtkSelectionMode,
1390 ) -> *mut ShumateMarkerLayer;
1391 pub fn shumate_marker_layer_add_marker(
1392 self_: *mut ShumateMarkerLayer,
1393 marker: *mut ShumateMarker,
1394 );
1395 pub fn shumate_marker_layer_get_markers(self_: *mut ShumateMarkerLayer) -> *mut glib::GList;
1396 pub fn shumate_marker_layer_get_selected(self_: *mut ShumateMarkerLayer) -> *mut glib::GList;
1397 pub fn shumate_marker_layer_get_selection_mode(
1398 self_: *mut ShumateMarkerLayer,
1399 ) -> gtk::GtkSelectionMode;
1400 pub fn shumate_marker_layer_remove_all(self_: *mut ShumateMarkerLayer);
1401 pub fn shumate_marker_layer_remove_marker(
1402 self_: *mut ShumateMarkerLayer,
1403 marker: *mut ShumateMarker,
1404 );
1405 pub fn shumate_marker_layer_select_all_markers(self_: *mut ShumateMarkerLayer);
1406 pub fn shumate_marker_layer_select_marker(
1407 self_: *mut ShumateMarkerLayer,
1408 marker: *mut ShumateMarker,
1409 ) -> gboolean;
1410 pub fn shumate_marker_layer_set_selection_mode(
1411 self_: *mut ShumateMarkerLayer,
1412 mode: gtk::GtkSelectionMode,
1413 );
1414 pub fn shumate_marker_layer_unselect_all_markers(self_: *mut ShumateMarkerLayer);
1415 pub fn shumate_marker_layer_unselect_marker(
1416 self_: *mut ShumateMarkerLayer,
1417 marker: *mut ShumateMarker,
1418 );
1419
1420 pub fn shumate_path_layer_get_type() -> GType;
1424 pub fn shumate_path_layer_new(viewport: *mut ShumateViewport) -> *mut ShumatePathLayer;
1425 pub fn shumate_path_layer_add_node(
1426 self_: *mut ShumatePathLayer,
1427 location: *mut ShumateLocation,
1428 );
1429 pub fn shumate_path_layer_get_closed(self_: *mut ShumatePathLayer) -> gboolean;
1430 pub fn shumate_path_layer_get_dash(self_: *mut ShumatePathLayer) -> *mut glib::GList;
1431 pub fn shumate_path_layer_get_fill(self_: *mut ShumatePathLayer) -> gboolean;
1432 pub fn shumate_path_layer_get_fill_color(self_: *mut ShumatePathLayer) -> *mut gdk::GdkRGBA;
1433 pub fn shumate_path_layer_get_nodes(self_: *mut ShumatePathLayer) -> *mut glib::GList;
1434 pub fn shumate_path_layer_get_outline_color(self_: *mut ShumatePathLayer) -> *mut gdk::GdkRGBA;
1435 pub fn shumate_path_layer_get_outline_width(self_: *mut ShumatePathLayer) -> c_double;
1436 pub fn shumate_path_layer_get_stroke(self_: *mut ShumatePathLayer) -> gboolean;
1437 pub fn shumate_path_layer_get_stroke_color(self_: *mut ShumatePathLayer) -> *mut gdk::GdkRGBA;
1438 pub fn shumate_path_layer_get_stroke_width(self_: *mut ShumatePathLayer) -> c_double;
1439 pub fn shumate_path_layer_insert_node(
1440 self_: *mut ShumatePathLayer,
1441 location: *mut ShumateLocation,
1442 position: c_uint,
1443 );
1444 pub fn shumate_path_layer_remove_all(self_: *mut ShumatePathLayer);
1445 pub fn shumate_path_layer_remove_node(
1446 self_: *mut ShumatePathLayer,
1447 location: *mut ShumateLocation,
1448 );
1449 pub fn shumate_path_layer_set_closed(self_: *mut ShumatePathLayer, value: gboolean);
1450 pub fn shumate_path_layer_set_dash(
1451 self_: *mut ShumatePathLayer,
1452 dash_pattern: *mut glib::GList,
1453 );
1454 pub fn shumate_path_layer_set_fill(self_: *mut ShumatePathLayer, value: gboolean);
1455 pub fn shumate_path_layer_set_fill_color(
1456 self_: *mut ShumatePathLayer,
1457 color: *const gdk::GdkRGBA,
1458 );
1459 pub fn shumate_path_layer_set_outline_color(
1460 self_: *mut ShumatePathLayer,
1461 color: *const gdk::GdkRGBA,
1462 );
1463 pub fn shumate_path_layer_set_outline_width(self_: *mut ShumatePathLayer, value: c_double);
1464 pub fn shumate_path_layer_set_stroke(self_: *mut ShumatePathLayer, value: gboolean);
1465 pub fn shumate_path_layer_set_stroke_color(
1466 self_: *mut ShumatePathLayer,
1467 color: *const gdk::GdkRGBA,
1468 );
1469 pub fn shumate_path_layer_set_stroke_width(self_: *mut ShumatePathLayer, value: c_double);
1470
1471 pub fn shumate_point_get_type() -> GType;
1475 pub fn shumate_point_new() -> *mut ShumatePoint;
1476
1477 pub fn shumate_raster_renderer_get_type() -> GType;
1481 pub fn shumate_raster_renderer_new(
1482 data_source: *mut ShumateDataSource,
1483 ) -> *mut ShumateRasterRenderer;
1484 pub fn shumate_raster_renderer_new_from_url(
1485 url_template: *const c_char,
1486 ) -> *mut ShumateRasterRenderer;
1487 pub fn shumate_raster_renderer_new_full(
1488 id: *const c_char,
1489 name: *const c_char,
1490 license: *const c_char,
1491 license_uri: *const c_char,
1492 min_zoom: c_uint,
1493 max_zoom: c_uint,
1494 tile_size: c_uint,
1495 projection: ShumateMapProjection,
1496 data_source: *mut ShumateDataSource,
1497 ) -> *mut ShumateRasterRenderer;
1498 pub fn shumate_raster_renderer_new_full_from_url(
1499 id: *const c_char,
1500 name: *const c_char,
1501 license: *const c_char,
1502 license_uri: *const c_char,
1503 min_zoom: c_uint,
1504 max_zoom: c_uint,
1505 tile_size: c_uint,
1506 projection: ShumateMapProjection,
1507 url_template: *const c_char,
1508 ) -> *mut ShumateRasterRenderer;
1509
1510 pub fn shumate_scale_get_type() -> GType;
1514 pub fn shumate_scale_new(viewport: *mut ShumateViewport) -> *mut ShumateScale;
1515 pub fn shumate_scale_get_max_width(scale: *mut ShumateScale) -> c_uint;
1516 pub fn shumate_scale_get_unit(scale: *mut ShumateScale) -> ShumateUnit;
1517 pub fn shumate_scale_get_viewport(scale: *mut ShumateScale) -> *mut ShumateViewport;
1518 pub fn shumate_scale_set_max_width(scale: *mut ShumateScale, value: c_uint);
1519 pub fn shumate_scale_set_unit(scale: *mut ShumateScale, unit: ShumateUnit);
1520 pub fn shumate_scale_set_viewport(scale: *mut ShumateScale, viewport: *mut ShumateViewport);
1521
1522 pub fn shumate_simple_map_get_type() -> GType;
1526 pub fn shumate_simple_map_new() -> *mut ShumateSimpleMap;
1527 pub fn shumate_simple_map_add_overlay_layer(
1528 self_: *mut ShumateSimpleMap,
1529 layer: *mut ShumateLayer,
1530 );
1531 #[cfg(feature = "v1_4")]
1532 #[cfg_attr(docsrs, doc(cfg(feature = "v1_4")))]
1533 pub fn shumate_simple_map_get_base_map_layer(
1534 self_: *mut ShumateSimpleMap,
1535 ) -> *mut ShumateMapLayer;
1536 pub fn shumate_simple_map_get_compass(self_: *mut ShumateSimpleMap) -> *mut ShumateCompass;
1537 pub fn shumate_simple_map_get_license(self_: *mut ShumateSimpleMap) -> *mut ShumateLicense;
1538 pub fn shumate_simple_map_get_map(self_: *mut ShumateSimpleMap) -> *mut ShumateMap;
1539 pub fn shumate_simple_map_get_map_source(self_: *mut ShumateSimpleMap)
1540 -> *mut ShumateMapSource;
1541 pub fn shumate_simple_map_get_scale(self_: *mut ShumateSimpleMap) -> *mut ShumateScale;
1542 pub fn shumate_simple_map_get_show_zoom_buttons(self_: *mut ShumateSimpleMap) -> gboolean;
1543 pub fn shumate_simple_map_get_viewport(self_: *mut ShumateSimpleMap) -> *mut ShumateViewport;
1544 pub fn shumate_simple_map_insert_overlay_layer_above(
1545 self_: *mut ShumateSimpleMap,
1546 layer: *mut ShumateLayer,
1547 sibling: *mut ShumateLayer,
1548 );
1549 pub fn shumate_simple_map_insert_overlay_layer_behind(
1550 self_: *mut ShumateSimpleMap,
1551 layer: *mut ShumateLayer,
1552 sibling: *mut ShumateLayer,
1553 );
1554 pub fn shumate_simple_map_remove_overlay_layer(
1555 self_: *mut ShumateSimpleMap,
1556 layer: *mut ShumateLayer,
1557 );
1558 pub fn shumate_simple_map_set_map_source(
1559 self_: *mut ShumateSimpleMap,
1560 map_source: *mut ShumateMapSource,
1561 );
1562 pub fn shumate_simple_map_set_show_zoom_buttons(
1563 self_: *mut ShumateSimpleMap,
1564 show_zoom_buttons: gboolean,
1565 );
1566
1567 #[cfg(feature = "v1_1")]
1571 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1572 pub fn shumate_symbol_event_get_type() -> GType;
1573 #[cfg(feature = "v1_1")]
1574 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1575 pub fn shumate_symbol_event_get_feature_id(self_: *mut ShumateSymbolEvent) -> *const c_char;
1576 #[cfg(feature = "v1_1")]
1577 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1578 pub fn shumate_symbol_event_get_keys(self_: *mut ShumateSymbolEvent) -> c_char;
1579 #[cfg(feature = "v1_1")]
1580 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1581 pub fn shumate_symbol_event_get_layer(self_: *mut ShumateSymbolEvent) -> *const c_char;
1582 #[cfg(feature = "v1_5")]
1583 #[cfg_attr(docsrs, doc(cfg(feature = "v1_5")))]
1584 pub fn shumate_symbol_event_get_n_press(self_: *mut ShumateSymbolEvent) -> c_int;
1585 #[cfg(feature = "v1_1")]
1586 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1587 pub fn shumate_symbol_event_get_source_layer(self_: *mut ShumateSymbolEvent) -> *const c_char;
1588 #[cfg(feature = "v1_1")]
1589 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1590 pub fn shumate_symbol_event_get_tag(
1591 self_: *mut ShumateSymbolEvent,
1592 tag_name: *const c_char,
1593 ) -> *const c_char;
1594
1595 pub fn shumate_tile_get_type() -> GType;
1599 pub fn shumate_tile_new() -> *mut ShumateTile;
1600 pub fn shumate_tile_new_full(
1601 x: c_uint,
1602 y: c_uint,
1603 size: c_uint,
1604 zoom_level: c_uint,
1605 ) -> *mut ShumateTile;
1606 pub fn shumate_tile_get_fade_in(self_: *mut ShumateTile) -> gboolean;
1607 pub fn shumate_tile_get_paintable(self_: *mut ShumateTile) -> *mut gdk::GdkPaintable;
1608 #[cfg(feature = "v1_1")]
1609 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1610 pub fn shumate_tile_get_scale_factor(self_: *mut ShumateTile) -> c_double;
1611 pub fn shumate_tile_get_size(self_: *mut ShumateTile) -> c_uint;
1612 pub fn shumate_tile_get_state(self_: *mut ShumateTile) -> ShumateState;
1613 pub fn shumate_tile_get_x(self_: *mut ShumateTile) -> c_uint;
1614 pub fn shumate_tile_get_y(self_: *mut ShumateTile) -> c_uint;
1615 pub fn shumate_tile_get_zoom_level(self_: *mut ShumateTile) -> c_uint;
1616 pub fn shumate_tile_set_fade_in(self_: *mut ShumateTile, fade_in: gboolean);
1617 pub fn shumate_tile_set_paintable(self_: *mut ShumateTile, paintable: *mut gdk::GdkPaintable);
1618 #[cfg(feature = "v1_1")]
1619 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1620 pub fn shumate_tile_set_scale_factor(self_: *mut ShumateTile, scale_factor: c_double);
1621 pub fn shumate_tile_set_size(self_: *mut ShumateTile, size: c_uint);
1622 pub fn shumate_tile_set_state(self_: *mut ShumateTile, state: ShumateState);
1623 pub fn shumate_tile_set_x(self_: *mut ShumateTile, x: c_uint);
1624 pub fn shumate_tile_set_y(self_: *mut ShumateTile, y: c_uint);
1625 pub fn shumate_tile_set_zoom_level(self_: *mut ShumateTile, zoom_level: c_uint);
1626
1627 pub fn shumate_tile_downloader_get_type() -> GType;
1631 pub fn shumate_tile_downloader_new(url_template: *const c_char) -> *mut ShumateTileDownloader;
1632
1633 #[cfg(feature = "v1_2")]
1637 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1638 pub fn shumate_vector_reader_get_type() -> GType;
1639 #[cfg(feature = "v1_2")]
1640 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1641 pub fn shumate_vector_reader_new(bytes: *mut glib::GBytes) -> *mut ShumateVectorReader;
1642 #[cfg(feature = "v1_2")]
1643 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1644 pub fn shumate_vector_reader_iterate(
1645 self_: *mut ShumateVectorReader,
1646 ) -> *mut ShumateVectorReaderIter;
1647
1648 #[cfg(feature = "v1_2")]
1652 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1653 pub fn shumate_vector_reader_iter_get_type() -> GType;
1654 #[cfg(feature = "v1_2")]
1655 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1656 pub fn shumate_vector_reader_iter_feature_contains_point(
1657 self_: *mut ShumateVectorReaderIter,
1658 x: c_double,
1659 y: c_double,
1660 ) -> gboolean;
1661 #[cfg(feature = "v1_2")]
1662 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1663 pub fn shumate_vector_reader_iter_get_feature_geometry_type(
1664 self_: *mut ShumateVectorReaderIter,
1665 ) -> ShumateGeometryType;
1666 #[cfg(feature = "v1_2")]
1667 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1668 pub fn shumate_vector_reader_iter_get_feature_id(self_: *mut ShumateVectorReaderIter) -> u64;
1669 #[cfg(feature = "v1_2")]
1670 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1671 pub fn shumate_vector_reader_iter_get_feature_keys(
1672 self_: *mut ShumateVectorReaderIter,
1673 ) -> *mut *const c_char;
1674 #[cfg(feature = "v1_2")]
1675 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1676 pub fn shumate_vector_reader_iter_get_feature_point(
1677 self_: *mut ShumateVectorReaderIter,
1678 x: *mut c_double,
1679 y: *mut c_double,
1680 ) -> gboolean;
1681 #[cfg(feature = "v1_2")]
1682 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1683 pub fn shumate_vector_reader_iter_get_feature_tag(
1684 self_: *mut ShumateVectorReaderIter,
1685 key: *const c_char,
1686 value: *mut gobject::GValue,
1687 ) -> gboolean;
1688 #[cfg(feature = "v1_2")]
1689 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1690 pub fn shumate_vector_reader_iter_get_layer_count(
1691 self_: *mut ShumateVectorReaderIter,
1692 ) -> c_uint;
1693 #[cfg(feature = "v1_2")]
1694 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1695 pub fn shumate_vector_reader_iter_get_layer_extent(
1696 self_: *mut ShumateVectorReaderIter,
1697 ) -> c_uint;
1698 #[cfg(feature = "v1_2")]
1699 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1700 pub fn shumate_vector_reader_iter_get_layer_feature_count(
1701 self_: *mut ShumateVectorReaderIter,
1702 ) -> c_uint;
1703 #[cfg(feature = "v1_2")]
1704 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1705 pub fn shumate_vector_reader_iter_get_layer_name(
1706 self_: *mut ShumateVectorReaderIter,
1707 ) -> *const c_char;
1708 #[cfg(feature = "v1_2")]
1709 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1710 pub fn shumate_vector_reader_iter_get_reader(
1711 self_: *mut ShumateVectorReaderIter,
1712 ) -> *mut ShumateVectorReader;
1713 #[cfg(feature = "v1_2")]
1714 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1715 pub fn shumate_vector_reader_iter_next_feature(self_: *mut ShumateVectorReaderIter)
1716 -> gboolean;
1717 #[cfg(feature = "v1_2")]
1718 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1719 pub fn shumate_vector_reader_iter_read_feature(
1720 self_: *mut ShumateVectorReaderIter,
1721 index: c_int,
1722 );
1723 #[cfg(feature = "v1_2")]
1724 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1725 pub fn shumate_vector_reader_iter_read_layer(self_: *mut ShumateVectorReaderIter, index: c_int);
1726 #[cfg(feature = "v1_2")]
1727 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1728 pub fn shumate_vector_reader_iter_read_layer_by_name(
1729 self_: *mut ShumateVectorReaderIter,
1730 name: *const c_char,
1731 ) -> gboolean;
1732
1733 pub fn shumate_vector_renderer_get_type() -> GType;
1737 pub fn shumate_vector_renderer_new(
1738 id: *const c_char,
1739 style_json: *const c_char,
1740 error: *mut *mut glib::GError,
1741 ) -> *mut ShumateVectorRenderer;
1742 pub fn shumate_vector_renderer_is_supported() -> gboolean;
1743 #[cfg(feature = "v1_1")]
1744 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1745 pub fn shumate_vector_renderer_get_sprite_sheet(
1746 self_: *mut ShumateVectorRenderer,
1747 ) -> *mut ShumateVectorSpriteSheet;
1748 #[cfg(feature = "v1_2")]
1749 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1750 pub fn shumate_vector_renderer_set_data_source(
1751 self_: *mut ShumateVectorRenderer,
1752 name: *const c_char,
1753 data_source: *mut ShumateDataSource,
1754 );
1755 #[cfg(feature = "v1_1")]
1756 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1757 pub fn shumate_vector_renderer_set_sprite_sheet(
1758 self_: *mut ShumateVectorRenderer,
1759 sprites: *mut ShumateVectorSpriteSheet,
1760 );
1761 pub fn shumate_vector_renderer_set_sprite_sheet_data(
1762 self_: *mut ShumateVectorRenderer,
1763 sprites_pixbuf: *mut gdk_pixbuf::GdkPixbuf,
1764 sprites_json: *const c_char,
1765 error: *mut *mut glib::GError,
1766 ) -> gboolean;
1767
1768 #[cfg(feature = "v1_1")]
1772 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1773 pub fn shumate_vector_sprite_get_type() -> GType;
1774 #[cfg(feature = "v1_1")]
1775 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1776 pub fn shumate_vector_sprite_new(
1777 source_paintable: *mut gdk::GdkPaintable,
1778 ) -> *mut ShumateVectorSprite;
1779 #[cfg(feature = "v1_1")]
1780 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1781 pub fn shumate_vector_sprite_new_full(
1782 source_paintable: *mut gdk::GdkPaintable,
1783 width: c_int,
1784 height: c_int,
1785 scale_factor: c_double,
1786 source_rect: *mut gdk::GdkRectangle,
1787 ) -> *mut ShumateVectorSprite;
1788 #[cfg(feature = "v1_1")]
1789 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1790 pub fn shumate_vector_sprite_get_height(self_: *mut ShumateVectorSprite) -> c_int;
1791 #[cfg(feature = "v1_1")]
1792 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1793 pub fn shumate_vector_sprite_get_scale_factor(self_: *mut ShumateVectorSprite) -> c_double;
1794 #[cfg(feature = "v1_1")]
1795 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1796 pub fn shumate_vector_sprite_get_source_paintable(
1797 self_: *mut ShumateVectorSprite,
1798 ) -> *mut gdk::GdkPaintable;
1799 #[cfg(feature = "v1_1")]
1800 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1801 pub fn shumate_vector_sprite_get_source_rect(
1802 self_: *mut ShumateVectorSprite,
1803 ) -> *mut gdk::GdkRectangle;
1804 #[cfg(feature = "v1_1")]
1805 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1806 pub fn shumate_vector_sprite_get_width(self_: *mut ShumateVectorSprite) -> c_int;
1807
1808 #[cfg(feature = "v1_1")]
1812 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1813 pub fn shumate_vector_sprite_sheet_get_type() -> GType;
1814 #[cfg(feature = "v1_1")]
1815 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1816 pub fn shumate_vector_sprite_sheet_new() -> *mut ShumateVectorSpriteSheet;
1817 #[cfg(feature = "v1_1")]
1818 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1819 pub fn shumate_vector_sprite_sheet_add_page(
1820 self_: *mut ShumateVectorSpriteSheet,
1821 texture: *mut gdk::GdkTexture,
1822 json: *const c_char,
1823 default_scale: c_double,
1824 error: *mut *mut glib::GError,
1825 ) -> gboolean;
1826 #[cfg(feature = "v1_1")]
1827 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1828 pub fn shumate_vector_sprite_sheet_add_sprite(
1829 self_: *mut ShumateVectorSpriteSheet,
1830 name: *const c_char,
1831 sprite: *mut ShumateVectorSprite,
1832 );
1833 #[cfg(feature = "v1_1")]
1834 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1835 pub fn shumate_vector_sprite_sheet_get_sprite(
1836 self_: *mut ShumateVectorSpriteSheet,
1837 name: *const c_char,
1838 scale: c_double,
1839 ) -> *mut ShumateVectorSprite;
1840 #[cfg(feature = "v1_1")]
1841 #[cfg_attr(docsrs, doc(cfg(feature = "v1_1")))]
1842 pub fn shumate_vector_sprite_sheet_set_fallback(
1843 self_: *mut ShumateVectorSpriteSheet,
1844 fallback: ShumateVectorSpriteFallbackFunc,
1845 user_data: gpointer,
1846 notify: glib::GDestroyNotify,
1847 );
1848
1849 pub fn shumate_viewport_get_type() -> GType;
1853 pub fn shumate_viewport_new() -> *mut ShumateViewport;
1854 pub fn shumate_viewport_get_max_zoom_level(self_: *mut ShumateViewport) -> c_uint;
1855 pub fn shumate_viewport_get_min_zoom_level(self_: *mut ShumateViewport) -> c_uint;
1856 pub fn shumate_viewport_get_reference_map_source(
1857 self_: *mut ShumateViewport,
1858 ) -> *mut ShumateMapSource;
1859 pub fn shumate_viewport_get_rotation(self_: *mut ShumateViewport) -> c_double;
1860 pub fn shumate_viewport_get_zoom_level(self_: *mut ShumateViewport) -> c_double;
1861 pub fn shumate_viewport_location_to_widget_coords(
1862 self_: *mut ShumateViewport,
1863 widget: *mut gtk::GtkWidget,
1864 latitude: c_double,
1865 longitude: c_double,
1866 x: *mut c_double,
1867 y: *mut c_double,
1868 );
1869 pub fn shumate_viewport_set_max_zoom_level(self_: *mut ShumateViewport, max_zoom_level: c_uint);
1870 pub fn shumate_viewport_set_min_zoom_level(self_: *mut ShumateViewport, min_zoom_level: c_uint);
1871 pub fn shumate_viewport_set_reference_map_source(
1872 self_: *mut ShumateViewport,
1873 map_source: *mut ShumateMapSource,
1874 );
1875 pub fn shumate_viewport_set_rotation(self_: *mut ShumateViewport, rotation: c_double);
1876 pub fn shumate_viewport_set_zoom_level(self_: *mut ShumateViewport, zoom_level: c_double);
1877 pub fn shumate_viewport_widget_coords_to_location(
1878 self_: *mut ShumateViewport,
1879 widget: *mut gtk::GtkWidget,
1880 x: c_double,
1881 y: c_double,
1882 latitude: *mut c_double,
1883 longitude: *mut c_double,
1884 );
1885
1886 pub fn shumate_location_get_type() -> GType;
1890 #[cfg(feature = "v1_2")]
1891 #[cfg_attr(docsrs, doc(cfg(feature = "v1_2")))]
1892 pub fn shumate_location_distance(
1893 self_: *mut ShumateLocation,
1894 other: *mut ShumateLocation,
1895 ) -> c_double;
1896 pub fn shumate_location_get_latitude(location: *mut ShumateLocation) -> c_double;
1897 pub fn shumate_location_get_longitude(location: *mut ShumateLocation) -> c_double;
1898 pub fn shumate_location_set_location(
1899 location: *mut ShumateLocation,
1900 latitude: c_double,
1901 longitude: c_double,
1902 );
1903
1904 pub fn shumate_get_user_agent() -> *const c_char;
1908 pub fn shumate_set_user_agent(new_user_agent: *const c_char);
1909
1910}