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