1use crate::StyleProvider;
6use glib::{
7 prelude::*,
8 signal::{connect_raw, SignalHandlerId},
9 translate::*,
10};
11use std::{boxed::Box as Box_, fmt, mem::transmute};
12
13glib::wrapper! {
14 #[doc(alias = "GtkSettings")]
678 pub struct Settings(Object<ffi::GtkSettings, ffi::GtkSettingsClass>) @implements StyleProvider;
679
680 match fn {
681 type_ => || ffi::gtk_settings_get_type(),
682 }
683}
684
685impl Settings {
686 pub const NONE: Option<&'static Settings> = None;
687
688 #[doc(alias = "gtk_settings_get_default")]
696 #[doc(alias = "get_default")]
697 #[allow(clippy::should_implement_trait)]
698 pub fn default() -> Option<Settings> {
699 assert_initialized_main_thread!();
700 unsafe { from_glib_none(ffi::gtk_settings_get_default()) }
701 }
702
703 #[doc(alias = "gtk_settings_get_for_screen")]
711 #[doc(alias = "get_for_screen")]
712 pub fn for_screen(screen: &gdk::Screen) -> Option<Settings> {
713 assert_initialized_main_thread!();
714 unsafe { from_glib_none(ffi::gtk_settings_get_for_screen(screen.to_glib_none().0)) }
715 }
716}
717
718mod sealed {
719 pub trait Sealed {}
720 impl<T: super::IsA<super::Settings>> Sealed for T {}
721}
722
723pub trait GtkSettingsExt: IsA<Settings> + sealed::Sealed + 'static {
729 #[doc(alias = "gtk_settings_reset_property")]
736 fn reset_property(&self, name: &str) {
737 unsafe {
738 ffi::gtk_settings_reset_property(self.as_ref().to_glib_none().0, name.to_glib_none().0);
739 }
740 }
741
742 #[doc(alias = "gtk-alternative-button-order")]
743 fn is_gtk_alternative_button_order(&self) -> bool {
744 ObjectExt::property(self.as_ref(), "gtk-alternative-button-order")
745 }
746
747 #[doc(alias = "gtk-alternative-button-order")]
748 fn set_gtk_alternative_button_order(&self, gtk_alternative_button_order: bool) {
749 ObjectExt::set_property(
750 self.as_ref(),
751 "gtk-alternative-button-order",
752 gtk_alternative_button_order,
753 )
754 }
755
756 #[doc(alias = "gtk-alternative-sort-arrows")]
760 fn is_gtk_alternative_sort_arrows(&self) -> bool {
761 ObjectExt::property(self.as_ref(), "gtk-alternative-sort-arrows")
762 }
763
764 #[doc(alias = "gtk-alternative-sort-arrows")]
768 fn set_gtk_alternative_sort_arrows(&self, gtk_alternative_sort_arrows: bool) {
769 ObjectExt::set_property(
770 self.as_ref(),
771 "gtk-alternative-sort-arrows",
772 gtk_alternative_sort_arrows,
773 )
774 }
775
776 #[doc(alias = "gtk-application-prefer-dark-theme")]
788 fn is_gtk_application_prefer_dark_theme(&self) -> bool {
789 ObjectExt::property(self.as_ref(), "gtk-application-prefer-dark-theme")
790 }
791
792 #[doc(alias = "gtk-application-prefer-dark-theme")]
804 fn set_gtk_application_prefer_dark_theme(&self, gtk_application_prefer_dark_theme: bool) {
805 ObjectExt::set_property(
806 self.as_ref(),
807 "gtk-application-prefer-dark-theme",
808 gtk_application_prefer_dark_theme,
809 )
810 }
811
812 #[cfg(feature = "v3_24")]
813 #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
814 #[doc(alias = "gtk-cursor-aspect-ratio")]
815 fn gtk_cursor_aspect_ratio(&self) -> f32 {
816 ObjectExt::property(self.as_ref(), "gtk-cursor-aspect-ratio")
817 }
818
819 #[cfg(feature = "v3_24")]
820 #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
821 #[doc(alias = "gtk-cursor-aspect-ratio")]
822 fn set_gtk_cursor_aspect_ratio(&self, gtk_cursor_aspect_ratio: f32) {
823 ObjectExt::set_property(
824 self.as_ref(),
825 "gtk-cursor-aspect-ratio",
826 gtk_cursor_aspect_ratio,
827 )
828 }
829
830 #[doc(alias = "gtk-cursor-blink")]
835 fn is_gtk_cursor_blink(&self) -> bool {
836 ObjectExt::property(self.as_ref(), "gtk-cursor-blink")
837 }
838
839 #[doc(alias = "gtk-cursor-blink")]
844 fn set_gtk_cursor_blink(&self, gtk_cursor_blink: bool) {
845 ObjectExt::set_property(self.as_ref(), "gtk-cursor-blink", gtk_cursor_blink)
846 }
847
848 #[doc(alias = "gtk-cursor-blink-time")]
849 fn gtk_cursor_blink_time(&self) -> i32 {
850 ObjectExt::property(self.as_ref(), "gtk-cursor-blink-time")
851 }
852
853 #[doc(alias = "gtk-cursor-blink-time")]
854 fn set_gtk_cursor_blink_time(&self, gtk_cursor_blink_time: i32) {
855 ObjectExt::set_property(
856 self.as_ref(),
857 "gtk-cursor-blink-time",
858 gtk_cursor_blink_time,
859 )
860 }
861
862 #[doc(alias = "gtk-cursor-blink-timeout")]
868 fn gtk_cursor_blink_timeout(&self) -> i32 {
869 ObjectExt::property(self.as_ref(), "gtk-cursor-blink-timeout")
870 }
871
872 #[doc(alias = "gtk-cursor-blink-timeout")]
878 fn set_gtk_cursor_blink_timeout(&self, gtk_cursor_blink_timeout: i32) {
879 ObjectExt::set_property(
880 self.as_ref(),
881 "gtk-cursor-blink-timeout",
882 gtk_cursor_blink_timeout,
883 )
884 }
885
886 #[doc(alias = "gtk-cursor-theme-name")]
887 fn gtk_cursor_theme_name(&self) -> Option<glib::GString> {
888 ObjectExt::property(self.as_ref(), "gtk-cursor-theme-name")
889 }
890
891 #[doc(alias = "gtk-cursor-theme-name")]
892 fn set_gtk_cursor_theme_name(&self, gtk_cursor_theme_name: Option<&str>) {
893 ObjectExt::set_property(
894 self.as_ref(),
895 "gtk-cursor-theme-name",
896 gtk_cursor_theme_name,
897 )
898 }
899
900 #[doc(alias = "gtk-cursor-theme-size")]
901 fn gtk_cursor_theme_size(&self) -> i32 {
902 ObjectExt::property(self.as_ref(), "gtk-cursor-theme-size")
903 }
904
905 #[doc(alias = "gtk-cursor-theme-size")]
906 fn set_gtk_cursor_theme_size(&self, gtk_cursor_theme_size: i32) {
907 ObjectExt::set_property(
908 self.as_ref(),
909 "gtk-cursor-theme-size",
910 gtk_cursor_theme_size,
911 )
912 }
913
914 #[doc(alias = "gtk-decoration-layout")]
935 fn gtk_decoration_layout(&self) -> Option<glib::GString> {
936 ObjectExt::property(self.as_ref(), "gtk-decoration-layout")
937 }
938
939 #[doc(alias = "gtk-decoration-layout")]
960 fn set_gtk_decoration_layout(&self, gtk_decoration_layout: Option<&str>) {
961 ObjectExt::set_property(
962 self.as_ref(),
963 "gtk-decoration-layout",
964 gtk_decoration_layout,
965 )
966 }
967
968 #[doc(alias = "gtk-dialogs-use-header")]
975 fn is_gtk_dialogs_use_header(&self) -> bool {
976 ObjectExt::property(self.as_ref(), "gtk-dialogs-use-header")
977 }
978
979 #[doc(alias = "gtk-dialogs-use-header")]
986 fn set_gtk_dialogs_use_header(&self, gtk_dialogs_use_header: bool) {
987 ObjectExt::set_property(
988 self.as_ref(),
989 "gtk-dialogs-use-header",
990 gtk_dialogs_use_header,
991 )
992 }
993
994 #[doc(alias = "gtk-dnd-drag-threshold")]
995 fn gtk_dnd_drag_threshold(&self) -> i32 {
996 ObjectExt::property(self.as_ref(), "gtk-dnd-drag-threshold")
997 }
998
999 #[doc(alias = "gtk-dnd-drag-threshold")]
1000 fn set_gtk_dnd_drag_threshold(&self, gtk_dnd_drag_threshold: i32) {
1001 ObjectExt::set_property(
1002 self.as_ref(),
1003 "gtk-dnd-drag-threshold",
1004 gtk_dnd_drag_threshold,
1005 )
1006 }
1007
1008 #[doc(alias = "gtk-double-click-distance")]
1009 fn gtk_double_click_distance(&self) -> i32 {
1010 ObjectExt::property(self.as_ref(), "gtk-double-click-distance")
1011 }
1012
1013 #[doc(alias = "gtk-double-click-distance")]
1014 fn set_gtk_double_click_distance(&self, gtk_double_click_distance: i32) {
1015 ObjectExt::set_property(
1016 self.as_ref(),
1017 "gtk-double-click-distance",
1018 gtk_double_click_distance,
1019 )
1020 }
1021
1022 #[doc(alias = "gtk-double-click-time")]
1023 fn gtk_double_click_time(&self) -> i32 {
1024 ObjectExt::property(self.as_ref(), "gtk-double-click-time")
1025 }
1026
1027 #[doc(alias = "gtk-double-click-time")]
1028 fn set_gtk_double_click_time(&self, gtk_double_click_time: i32) {
1029 ObjectExt::set_property(
1030 self.as_ref(),
1031 "gtk-double-click-time",
1032 gtk_double_click_time,
1033 )
1034 }
1035
1036 #[doc(alias = "gtk-enable-accels")]
1039 fn is_gtk_enable_accels(&self) -> bool {
1040 ObjectExt::property(self.as_ref(), "gtk-enable-accels")
1041 }
1042
1043 #[doc(alias = "gtk-enable-accels")]
1046 fn set_gtk_enable_accels(&self, gtk_enable_accels: bool) {
1047 ObjectExt::set_property(self.as_ref(), "gtk-enable-accels", gtk_enable_accels)
1048 }
1049
1050 #[doc(alias = "gtk-enable-animations")]
1051 fn is_gtk_enable_animations(&self) -> bool {
1052 ObjectExt::property(self.as_ref(), "gtk-enable-animations")
1053 }
1054
1055 #[doc(alias = "gtk-enable-animations")]
1056 fn set_gtk_enable_animations(&self, gtk_enable_animations: bool) {
1057 ObjectExt::set_property(
1058 self.as_ref(),
1059 "gtk-enable-animations",
1060 gtk_enable_animations,
1061 )
1062 }
1063
1064 #[doc(alias = "gtk-enable-event-sounds")]
1072 fn is_gtk_enable_event_sounds(&self) -> bool {
1073 ObjectExt::property(self.as_ref(), "gtk-enable-event-sounds")
1074 }
1075
1076 #[doc(alias = "gtk-enable-event-sounds")]
1084 fn set_gtk_enable_event_sounds(&self, gtk_enable_event_sounds: bool) {
1085 ObjectExt::set_property(
1086 self.as_ref(),
1087 "gtk-enable-event-sounds",
1088 gtk_enable_event_sounds,
1089 )
1090 }
1091
1092 #[doc(alias = "gtk-enable-input-feedback-sounds")]
1100 fn is_gtk_enable_input_feedback_sounds(&self) -> bool {
1101 ObjectExt::property(self.as_ref(), "gtk-enable-input-feedback-sounds")
1102 }
1103
1104 #[doc(alias = "gtk-enable-input-feedback-sounds")]
1112 fn set_gtk_enable_input_feedback_sounds(&self, gtk_enable_input_feedback_sounds: bool) {
1113 ObjectExt::set_property(
1114 self.as_ref(),
1115 "gtk-enable-input-feedback-sounds",
1116 gtk_enable_input_feedback_sounds,
1117 )
1118 }
1119
1120 #[doc(alias = "gtk-enable-primary-paste")]
1123 fn is_gtk_enable_primary_paste(&self) -> bool {
1124 ObjectExt::property(self.as_ref(), "gtk-enable-primary-paste")
1125 }
1126
1127 #[doc(alias = "gtk-enable-primary-paste")]
1130 fn set_gtk_enable_primary_paste(&self, gtk_enable_primary_paste: bool) {
1131 ObjectExt::set_property(
1132 self.as_ref(),
1133 "gtk-enable-primary-paste",
1134 gtk_enable_primary_paste,
1135 )
1136 }
1137
1138 #[doc(alias = "gtk-entry-password-hint-timeout")]
1142 fn gtk_entry_password_hint_timeout(&self) -> u32 {
1143 ObjectExt::property(self.as_ref(), "gtk-entry-password-hint-timeout")
1144 }
1145
1146 #[doc(alias = "gtk-entry-password-hint-timeout")]
1150 fn set_gtk_entry_password_hint_timeout(&self, gtk_entry_password_hint_timeout: u32) {
1151 ObjectExt::set_property(
1152 self.as_ref(),
1153 "gtk-entry-password-hint-timeout",
1154 gtk_entry_password_hint_timeout,
1155 )
1156 }
1157
1158 #[doc(alias = "gtk-entry-select-on-focus")]
1159 fn is_gtk_entry_select_on_focus(&self) -> bool {
1160 ObjectExt::property(self.as_ref(), "gtk-entry-select-on-focus")
1161 }
1162
1163 #[doc(alias = "gtk-entry-select-on-focus")]
1164 fn set_gtk_entry_select_on_focus(&self, gtk_entry_select_on_focus: bool) {
1165 ObjectExt::set_property(
1166 self.as_ref(),
1167 "gtk-entry-select-on-focus",
1168 gtk_entry_select_on_focus,
1169 )
1170 }
1171
1172 #[doc(alias = "gtk-error-bell")]
1178 fn is_gtk_error_bell(&self) -> bool {
1179 ObjectExt::property(self.as_ref(), "gtk-error-bell")
1180 }
1181
1182 #[doc(alias = "gtk-error-bell")]
1188 fn set_gtk_error_bell(&self, gtk_error_bell: bool) {
1189 ObjectExt::set_property(self.as_ref(), "gtk-error-bell", gtk_error_bell)
1190 }
1191
1192 #[doc(alias = "gtk-font-name")]
1194 fn gtk_font_name(&self) -> Option<glib::GString> {
1195 ObjectExt::property(self.as_ref(), "gtk-font-name")
1196 }
1197
1198 #[doc(alias = "gtk-font-name")]
1200 fn set_gtk_font_name(&self, gtk_font_name: Option<&str>) {
1201 ObjectExt::set_property(self.as_ref(), "gtk-font-name", gtk_font_name)
1202 }
1203
1204 #[doc(alias = "gtk-fontconfig-timestamp")]
1205 fn gtk_fontconfig_timestamp(&self) -> u32 {
1206 ObjectExt::property(self.as_ref(), "gtk-fontconfig-timestamp")
1207 }
1208
1209 #[doc(alias = "gtk-fontconfig-timestamp")]
1210 fn set_gtk_fontconfig_timestamp(&self, gtk_fontconfig_timestamp: u32) {
1211 ObjectExt::set_property(
1212 self.as_ref(),
1213 "gtk-fontconfig-timestamp",
1214 gtk_fontconfig_timestamp,
1215 )
1216 }
1217
1218 #[doc(alias = "gtk-icon-theme-name")]
1219 fn gtk_icon_theme_name(&self) -> Option<glib::GString> {
1220 ObjectExt::property(self.as_ref(), "gtk-icon-theme-name")
1221 }
1222
1223 #[doc(alias = "gtk-icon-theme-name")]
1224 fn set_gtk_icon_theme_name(&self, gtk_icon_theme_name: Option<&str>) {
1225 ObjectExt::set_property(self.as_ref(), "gtk-icon-theme-name", gtk_icon_theme_name)
1226 }
1227
1228 #[doc(alias = "gtk-im-module")]
1236 fn gtk_im_module(&self) -> Option<glib::GString> {
1237 ObjectExt::property(self.as_ref(), "gtk-im-module")
1238 }
1239
1240 #[doc(alias = "gtk-im-module")]
1248 fn set_gtk_im_module(&self, gtk_im_module: Option<&str>) {
1249 ObjectExt::set_property(self.as_ref(), "gtk-im-module", gtk_im_module)
1250 }
1251
1252 #[doc(alias = "gtk-key-theme-name")]
1253 fn gtk_key_theme_name(&self) -> Option<glib::GString> {
1254 ObjectExt::property(self.as_ref(), "gtk-key-theme-name")
1255 }
1256
1257 #[doc(alias = "gtk-key-theme-name")]
1258 fn set_gtk_key_theme_name(&self, gtk_key_theme_name: Option<&str>) {
1259 ObjectExt::set_property(self.as_ref(), "gtk-key-theme-name", gtk_key_theme_name)
1260 }
1261
1262 #[doc(alias = "gtk-keynav-use-caret")]
1266 fn is_gtk_keynav_use_caret(&self) -> bool {
1267 ObjectExt::property(self.as_ref(), "gtk-keynav-use-caret")
1268 }
1269
1270 #[doc(alias = "gtk-keynav-use-caret")]
1274 fn set_gtk_keynav_use_caret(&self, gtk_keynav_use_caret: bool) {
1275 ObjectExt::set_property(self.as_ref(), "gtk-keynav-use-caret", gtk_keynav_use_caret)
1276 }
1277
1278 #[doc(alias = "gtk-label-select-on-focus")]
1279 fn is_gtk_label_select_on_focus(&self) -> bool {
1280 ObjectExt::property(self.as_ref(), "gtk-label-select-on-focus")
1281 }
1282
1283 #[doc(alias = "gtk-label-select-on-focus")]
1284 fn set_gtk_label_select_on_focus(&self, gtk_label_select_on_focus: bool) {
1285 ObjectExt::set_property(
1286 self.as_ref(),
1287 "gtk-label-select-on-focus",
1288 gtk_label_select_on_focus,
1289 )
1290 }
1291
1292 #[doc(alias = "gtk-long-press-time")]
1294 fn gtk_long_press_time(&self) -> u32 {
1295 ObjectExt::property(self.as_ref(), "gtk-long-press-time")
1296 }
1297
1298 #[doc(alias = "gtk-long-press-time")]
1300 fn set_gtk_long_press_time(&self, gtk_long_press_time: u32) {
1301 ObjectExt::set_property(self.as_ref(), "gtk-long-press-time", gtk_long_press_time)
1302 }
1303
1304 #[doc(alias = "gtk-modules")]
1305 fn gtk_modules(&self) -> Option<glib::GString> {
1306 ObjectExt::property(self.as_ref(), "gtk-modules")
1307 }
1308
1309 #[doc(alias = "gtk-modules")]
1310 fn set_gtk_modules(&self, gtk_modules: Option<&str>) {
1311 ObjectExt::set_property(self.as_ref(), "gtk-modules", gtk_modules)
1312 }
1313
1314 #[cfg(feature = "v3_24_9")]
1318 #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_9")))]
1319 #[doc(alias = "gtk-overlay-scrolling")]
1320 fn is_gtk_overlay_scrolling(&self) -> bool {
1321 ObjectExt::property(self.as_ref(), "gtk-overlay-scrolling")
1322 }
1323
1324 #[cfg(feature = "v3_24_9")]
1328 #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_9")))]
1329 #[doc(alias = "gtk-overlay-scrolling")]
1330 fn set_gtk_overlay_scrolling(&self, gtk_overlay_scrolling: bool) {
1331 ObjectExt::set_property(
1332 self.as_ref(),
1333 "gtk-overlay-scrolling",
1334 gtk_overlay_scrolling,
1335 )
1336 }
1337
1338 #[doc(alias = "gtk-primary-button-warps-slider")]
1347 fn is_gtk_primary_button_warps_slider(&self) -> bool {
1348 ObjectExt::property(self.as_ref(), "gtk-primary-button-warps-slider")
1349 }
1350
1351 #[doc(alias = "gtk-primary-button-warps-slider")]
1360 fn set_gtk_primary_button_warps_slider(&self, gtk_primary_button_warps_slider: bool) {
1361 ObjectExt::set_property(
1362 self.as_ref(),
1363 "gtk-primary-button-warps-slider",
1364 gtk_primary_button_warps_slider,
1365 )
1366 }
1367
1368 #[doc(alias = "gtk-print-backends")]
1372 fn gtk_print_backends(&self) -> Option<glib::GString> {
1373 ObjectExt::property(self.as_ref(), "gtk-print-backends")
1374 }
1375
1376 #[doc(alias = "gtk-print-backends")]
1380 fn set_gtk_print_backends(&self, gtk_print_backends: Option<&str>) {
1381 ObjectExt::set_property(self.as_ref(), "gtk-print-backends", gtk_print_backends)
1382 }
1383
1384 #[doc(alias = "gtk-print-preview-command")]
1394 fn gtk_print_preview_command(&self) -> Option<glib::GString> {
1395 ObjectExt::property(self.as_ref(), "gtk-print-preview-command")
1396 }
1397
1398 #[doc(alias = "gtk-print-preview-command")]
1408 fn set_gtk_print_preview_command(&self, gtk_print_preview_command: Option<&str>) {
1409 ObjectExt::set_property(
1410 self.as_ref(),
1411 "gtk-print-preview-command",
1412 gtk_print_preview_command,
1413 )
1414 }
1415
1416 #[doc(alias = "gtk-recent-files-enabled")]
1419 fn is_gtk_recent_files_enabled(&self) -> bool {
1420 ObjectExt::property(self.as_ref(), "gtk-recent-files-enabled")
1421 }
1422
1423 #[doc(alias = "gtk-recent-files-enabled")]
1426 fn set_gtk_recent_files_enabled(&self, gtk_recent_files_enabled: bool) {
1427 ObjectExt::set_property(
1428 self.as_ref(),
1429 "gtk-recent-files-enabled",
1430 gtk_recent_files_enabled,
1431 )
1432 }
1433
1434 #[doc(alias = "gtk-recent-files-max-age")]
1439 fn gtk_recent_files_max_age(&self) -> i32 {
1440 ObjectExt::property(self.as_ref(), "gtk-recent-files-max-age")
1441 }
1442
1443 #[doc(alias = "gtk-recent-files-max-age")]
1448 fn set_gtk_recent_files_max_age(&self, gtk_recent_files_max_age: i32) {
1449 ObjectExt::set_property(
1450 self.as_ref(),
1451 "gtk-recent-files-max-age",
1452 gtk_recent_files_max_age,
1453 )
1454 }
1455
1456 #[doc(alias = "gtk-shell-shows-app-menu")]
1457 fn is_gtk_shell_shows_app_menu(&self) -> bool {
1458 ObjectExt::property(self.as_ref(), "gtk-shell-shows-app-menu")
1459 }
1460
1461 #[doc(alias = "gtk-shell-shows-app-menu")]
1462 fn set_gtk_shell_shows_app_menu(&self, gtk_shell_shows_app_menu: bool) {
1463 ObjectExt::set_property(
1464 self.as_ref(),
1465 "gtk-shell-shows-app-menu",
1466 gtk_shell_shows_app_menu,
1467 )
1468 }
1469
1470 #[doc(alias = "gtk-shell-shows-desktop")]
1471 fn is_gtk_shell_shows_desktop(&self) -> bool {
1472 ObjectExt::property(self.as_ref(), "gtk-shell-shows-desktop")
1473 }
1474
1475 #[doc(alias = "gtk-shell-shows-desktop")]
1476 fn set_gtk_shell_shows_desktop(&self, gtk_shell_shows_desktop: bool) {
1477 ObjectExt::set_property(
1478 self.as_ref(),
1479 "gtk-shell-shows-desktop",
1480 gtk_shell_shows_desktop,
1481 )
1482 }
1483
1484 #[doc(alias = "gtk-shell-shows-menubar")]
1485 fn is_gtk_shell_shows_menubar(&self) -> bool {
1486 ObjectExt::property(self.as_ref(), "gtk-shell-shows-menubar")
1487 }
1488
1489 #[doc(alias = "gtk-shell-shows-menubar")]
1490 fn set_gtk_shell_shows_menubar(&self, gtk_shell_shows_menubar: bool) {
1491 ObjectExt::set_property(
1492 self.as_ref(),
1493 "gtk-shell-shows-menubar",
1494 gtk_shell_shows_menubar,
1495 )
1496 }
1497
1498 #[doc(alias = "gtk-sound-theme-name")]
1506 fn gtk_sound_theme_name(&self) -> Option<glib::GString> {
1507 ObjectExt::property(self.as_ref(), "gtk-sound-theme-name")
1508 }
1509
1510 #[doc(alias = "gtk-sound-theme-name")]
1518 fn set_gtk_sound_theme_name(&self, gtk_sound_theme_name: Option<&str>) {
1519 ObjectExt::set_property(self.as_ref(), "gtk-sound-theme-name", gtk_sound_theme_name)
1520 }
1521
1522 #[doc(alias = "gtk-split-cursor")]
1523 fn is_gtk_split_cursor(&self) -> bool {
1524 ObjectExt::property(self.as_ref(), "gtk-split-cursor")
1525 }
1526
1527 #[doc(alias = "gtk-split-cursor")]
1528 fn set_gtk_split_cursor(&self, gtk_split_cursor: bool) {
1529 ObjectExt::set_property(self.as_ref(), "gtk-split-cursor", gtk_split_cursor)
1530 }
1531
1532 #[doc(alias = "gtk-theme-name")]
1533 fn gtk_theme_name(&self) -> Option<glib::GString> {
1534 ObjectExt::property(self.as_ref(), "gtk-theme-name")
1535 }
1536
1537 #[doc(alias = "gtk-theme-name")]
1538 fn set_gtk_theme_name(&self, gtk_theme_name: Option<&str>) {
1539 ObjectExt::set_property(self.as_ref(), "gtk-theme-name", gtk_theme_name)
1540 }
1541
1542 #[doc(alias = "gtk-titlebar-double-click")]
1548 fn gtk_titlebar_double_click(&self) -> Option<glib::GString> {
1549 ObjectExt::property(self.as_ref(), "gtk-titlebar-double-click")
1550 }
1551
1552 #[doc(alias = "gtk-titlebar-double-click")]
1558 fn set_gtk_titlebar_double_click(&self, gtk_titlebar_double_click: Option<&str>) {
1559 ObjectExt::set_property(
1560 self.as_ref(),
1561 "gtk-titlebar-double-click",
1562 gtk_titlebar_double_click,
1563 )
1564 }
1565
1566 #[doc(alias = "gtk-titlebar-middle-click")]
1572 fn gtk_titlebar_middle_click(&self) -> Option<glib::GString> {
1573 ObjectExt::property(self.as_ref(), "gtk-titlebar-middle-click")
1574 }
1575
1576 #[doc(alias = "gtk-titlebar-middle-click")]
1582 fn set_gtk_titlebar_middle_click(&self, gtk_titlebar_middle_click: Option<&str>) {
1583 ObjectExt::set_property(
1584 self.as_ref(),
1585 "gtk-titlebar-middle-click",
1586 gtk_titlebar_middle_click,
1587 )
1588 }
1589
1590 #[doc(alias = "gtk-titlebar-right-click")]
1596 fn gtk_titlebar_right_click(&self) -> Option<glib::GString> {
1597 ObjectExt::property(self.as_ref(), "gtk-titlebar-right-click")
1598 }
1599
1600 #[doc(alias = "gtk-titlebar-right-click")]
1606 fn set_gtk_titlebar_right_click(&self, gtk_titlebar_right_click: Option<&str>) {
1607 ObjectExt::set_property(
1608 self.as_ref(),
1609 "gtk-titlebar-right-click",
1610 gtk_titlebar_right_click,
1611 )
1612 }
1613
1614 #[doc(alias = "gtk-xft-antialias")]
1615 fn gtk_xft_antialias(&self) -> i32 {
1616 ObjectExt::property(self.as_ref(), "gtk-xft-antialias")
1617 }
1618
1619 #[doc(alias = "gtk-xft-antialias")]
1620 fn set_gtk_xft_antialias(&self, gtk_xft_antialias: i32) {
1621 ObjectExt::set_property(self.as_ref(), "gtk-xft-antialias", gtk_xft_antialias)
1622 }
1623
1624 #[doc(alias = "gtk-xft-dpi")]
1625 fn gtk_xft_dpi(&self) -> i32 {
1626 ObjectExt::property(self.as_ref(), "gtk-xft-dpi")
1627 }
1628
1629 #[doc(alias = "gtk-xft-dpi")]
1630 fn set_gtk_xft_dpi(&self, gtk_xft_dpi: i32) {
1631 ObjectExt::set_property(self.as_ref(), "gtk-xft-dpi", gtk_xft_dpi)
1632 }
1633
1634 #[doc(alias = "gtk-xft-hinting")]
1635 fn gtk_xft_hinting(&self) -> i32 {
1636 ObjectExt::property(self.as_ref(), "gtk-xft-hinting")
1637 }
1638
1639 #[doc(alias = "gtk-xft-hinting")]
1640 fn set_gtk_xft_hinting(&self, gtk_xft_hinting: i32) {
1641 ObjectExt::set_property(self.as_ref(), "gtk-xft-hinting", gtk_xft_hinting)
1642 }
1643
1644 #[doc(alias = "gtk-xft-hintstyle")]
1645 fn gtk_xft_hintstyle(&self) -> Option<glib::GString> {
1646 ObjectExt::property(self.as_ref(), "gtk-xft-hintstyle")
1647 }
1648
1649 #[doc(alias = "gtk-xft-hintstyle")]
1650 fn set_gtk_xft_hintstyle(&self, gtk_xft_hintstyle: Option<&str>) {
1651 ObjectExt::set_property(self.as_ref(), "gtk-xft-hintstyle", gtk_xft_hintstyle)
1652 }
1653
1654 #[doc(alias = "gtk-xft-rgba")]
1655 fn gtk_xft_rgba(&self) -> Option<glib::GString> {
1656 ObjectExt::property(self.as_ref(), "gtk-xft-rgba")
1657 }
1658
1659 #[doc(alias = "gtk-xft-rgba")]
1660 fn set_gtk_xft_rgba(&self, gtk_xft_rgba: Option<&str>) {
1661 ObjectExt::set_property(self.as_ref(), "gtk-xft-rgba", gtk_xft_rgba)
1662 }
1663
1664 #[doc(alias = "gtk-alternative-button-order")]
1665 fn connect_gtk_alternative_button_order_notify<F: Fn(&Self) + 'static>(
1666 &self,
1667 f: F,
1668 ) -> SignalHandlerId {
1669 unsafe extern "C" fn notify_gtk_alternative_button_order_trampoline<
1670 P: IsA<Settings>,
1671 F: Fn(&P) + 'static,
1672 >(
1673 this: *mut ffi::GtkSettings,
1674 _param_spec: glib::ffi::gpointer,
1675 f: glib::ffi::gpointer,
1676 ) {
1677 let f: &F = &*(f as *const F);
1678 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1679 }
1680 unsafe {
1681 let f: Box_<F> = Box_::new(f);
1682 connect_raw(
1683 self.as_ptr() as *mut _,
1684 b"notify::gtk-alternative-button-order\0".as_ptr() as *const _,
1685 Some(transmute::<_, unsafe extern "C" fn()>(
1686 notify_gtk_alternative_button_order_trampoline::<Self, F> as *const (),
1687 )),
1688 Box_::into_raw(f),
1689 )
1690 }
1691 }
1692
1693 #[doc(alias = "gtk-alternative-sort-arrows")]
1694 fn connect_gtk_alternative_sort_arrows_notify<F: Fn(&Self) + 'static>(
1695 &self,
1696 f: F,
1697 ) -> SignalHandlerId {
1698 unsafe extern "C" fn notify_gtk_alternative_sort_arrows_trampoline<
1699 P: IsA<Settings>,
1700 F: Fn(&P) + 'static,
1701 >(
1702 this: *mut ffi::GtkSettings,
1703 _param_spec: glib::ffi::gpointer,
1704 f: glib::ffi::gpointer,
1705 ) {
1706 let f: &F = &*(f as *const F);
1707 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1708 }
1709 unsafe {
1710 let f: Box_<F> = Box_::new(f);
1711 connect_raw(
1712 self.as_ptr() as *mut _,
1713 b"notify::gtk-alternative-sort-arrows\0".as_ptr() as *const _,
1714 Some(transmute::<_, unsafe extern "C" fn()>(
1715 notify_gtk_alternative_sort_arrows_trampoline::<Self, F> as *const (),
1716 )),
1717 Box_::into_raw(f),
1718 )
1719 }
1720 }
1721
1722 #[doc(alias = "gtk-application-prefer-dark-theme")]
1723 fn connect_gtk_application_prefer_dark_theme_notify<F: Fn(&Self) + 'static>(
1724 &self,
1725 f: F,
1726 ) -> SignalHandlerId {
1727 unsafe extern "C" fn notify_gtk_application_prefer_dark_theme_trampoline<
1728 P: IsA<Settings>,
1729 F: Fn(&P) + 'static,
1730 >(
1731 this: *mut ffi::GtkSettings,
1732 _param_spec: glib::ffi::gpointer,
1733 f: glib::ffi::gpointer,
1734 ) {
1735 let f: &F = &*(f as *const F);
1736 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1737 }
1738 unsafe {
1739 let f: Box_<F> = Box_::new(f);
1740 connect_raw(
1741 self.as_ptr() as *mut _,
1742 b"notify::gtk-application-prefer-dark-theme\0".as_ptr() as *const _,
1743 Some(transmute::<_, unsafe extern "C" fn()>(
1744 notify_gtk_application_prefer_dark_theme_trampoline::<Self, F> as *const (),
1745 )),
1746 Box_::into_raw(f),
1747 )
1748 }
1749 }
1750
1751 #[cfg(feature = "v3_24")]
1752 #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
1753 #[doc(alias = "gtk-cursor-aspect-ratio")]
1754 fn connect_gtk_cursor_aspect_ratio_notify<F: Fn(&Self) + 'static>(
1755 &self,
1756 f: F,
1757 ) -> SignalHandlerId {
1758 unsafe extern "C" fn notify_gtk_cursor_aspect_ratio_trampoline<
1759 P: IsA<Settings>,
1760 F: Fn(&P) + 'static,
1761 >(
1762 this: *mut ffi::GtkSettings,
1763 _param_spec: glib::ffi::gpointer,
1764 f: glib::ffi::gpointer,
1765 ) {
1766 let f: &F = &*(f as *const F);
1767 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1768 }
1769 unsafe {
1770 let f: Box_<F> = Box_::new(f);
1771 connect_raw(
1772 self.as_ptr() as *mut _,
1773 b"notify::gtk-cursor-aspect-ratio\0".as_ptr() as *const _,
1774 Some(transmute::<_, unsafe extern "C" fn()>(
1775 notify_gtk_cursor_aspect_ratio_trampoline::<Self, F> as *const (),
1776 )),
1777 Box_::into_raw(f),
1778 )
1779 }
1780 }
1781
1782 #[doc(alias = "gtk-cursor-blink")]
1783 fn connect_gtk_cursor_blink_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
1784 unsafe extern "C" fn notify_gtk_cursor_blink_trampoline<
1785 P: IsA<Settings>,
1786 F: Fn(&P) + 'static,
1787 >(
1788 this: *mut ffi::GtkSettings,
1789 _param_spec: glib::ffi::gpointer,
1790 f: glib::ffi::gpointer,
1791 ) {
1792 let f: &F = &*(f as *const F);
1793 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1794 }
1795 unsafe {
1796 let f: Box_<F> = Box_::new(f);
1797 connect_raw(
1798 self.as_ptr() as *mut _,
1799 b"notify::gtk-cursor-blink\0".as_ptr() as *const _,
1800 Some(transmute::<_, unsafe extern "C" fn()>(
1801 notify_gtk_cursor_blink_trampoline::<Self, F> as *const (),
1802 )),
1803 Box_::into_raw(f),
1804 )
1805 }
1806 }
1807
1808 #[doc(alias = "gtk-cursor-blink-time")]
1809 fn connect_gtk_cursor_blink_time_notify<F: Fn(&Self) + 'static>(
1810 &self,
1811 f: F,
1812 ) -> SignalHandlerId {
1813 unsafe extern "C" fn notify_gtk_cursor_blink_time_trampoline<
1814 P: IsA<Settings>,
1815 F: Fn(&P) + 'static,
1816 >(
1817 this: *mut ffi::GtkSettings,
1818 _param_spec: glib::ffi::gpointer,
1819 f: glib::ffi::gpointer,
1820 ) {
1821 let f: &F = &*(f as *const F);
1822 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1823 }
1824 unsafe {
1825 let f: Box_<F> = Box_::new(f);
1826 connect_raw(
1827 self.as_ptr() as *mut _,
1828 b"notify::gtk-cursor-blink-time\0".as_ptr() as *const _,
1829 Some(transmute::<_, unsafe extern "C" fn()>(
1830 notify_gtk_cursor_blink_time_trampoline::<Self, F> as *const (),
1831 )),
1832 Box_::into_raw(f),
1833 )
1834 }
1835 }
1836
1837 #[doc(alias = "gtk-cursor-blink-timeout")]
1838 fn connect_gtk_cursor_blink_timeout_notify<F: Fn(&Self) + 'static>(
1839 &self,
1840 f: F,
1841 ) -> SignalHandlerId {
1842 unsafe extern "C" fn notify_gtk_cursor_blink_timeout_trampoline<
1843 P: IsA<Settings>,
1844 F: Fn(&P) + 'static,
1845 >(
1846 this: *mut ffi::GtkSettings,
1847 _param_spec: glib::ffi::gpointer,
1848 f: glib::ffi::gpointer,
1849 ) {
1850 let f: &F = &*(f as *const F);
1851 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1852 }
1853 unsafe {
1854 let f: Box_<F> = Box_::new(f);
1855 connect_raw(
1856 self.as_ptr() as *mut _,
1857 b"notify::gtk-cursor-blink-timeout\0".as_ptr() as *const _,
1858 Some(transmute::<_, unsafe extern "C" fn()>(
1859 notify_gtk_cursor_blink_timeout_trampoline::<Self, F> as *const (),
1860 )),
1861 Box_::into_raw(f),
1862 )
1863 }
1864 }
1865
1866 #[doc(alias = "gtk-cursor-theme-name")]
1867 fn connect_gtk_cursor_theme_name_notify<F: Fn(&Self) + 'static>(
1868 &self,
1869 f: F,
1870 ) -> SignalHandlerId {
1871 unsafe extern "C" fn notify_gtk_cursor_theme_name_trampoline<
1872 P: IsA<Settings>,
1873 F: Fn(&P) + 'static,
1874 >(
1875 this: *mut ffi::GtkSettings,
1876 _param_spec: glib::ffi::gpointer,
1877 f: glib::ffi::gpointer,
1878 ) {
1879 let f: &F = &*(f as *const F);
1880 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1881 }
1882 unsafe {
1883 let f: Box_<F> = Box_::new(f);
1884 connect_raw(
1885 self.as_ptr() as *mut _,
1886 b"notify::gtk-cursor-theme-name\0".as_ptr() as *const _,
1887 Some(transmute::<_, unsafe extern "C" fn()>(
1888 notify_gtk_cursor_theme_name_trampoline::<Self, F> as *const (),
1889 )),
1890 Box_::into_raw(f),
1891 )
1892 }
1893 }
1894
1895 #[doc(alias = "gtk-cursor-theme-size")]
1896 fn connect_gtk_cursor_theme_size_notify<F: Fn(&Self) + 'static>(
1897 &self,
1898 f: F,
1899 ) -> SignalHandlerId {
1900 unsafe extern "C" fn notify_gtk_cursor_theme_size_trampoline<
1901 P: IsA<Settings>,
1902 F: Fn(&P) + 'static,
1903 >(
1904 this: *mut ffi::GtkSettings,
1905 _param_spec: glib::ffi::gpointer,
1906 f: glib::ffi::gpointer,
1907 ) {
1908 let f: &F = &*(f as *const F);
1909 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1910 }
1911 unsafe {
1912 let f: Box_<F> = Box_::new(f);
1913 connect_raw(
1914 self.as_ptr() as *mut _,
1915 b"notify::gtk-cursor-theme-size\0".as_ptr() as *const _,
1916 Some(transmute::<_, unsafe extern "C" fn()>(
1917 notify_gtk_cursor_theme_size_trampoline::<Self, F> as *const (),
1918 )),
1919 Box_::into_raw(f),
1920 )
1921 }
1922 }
1923
1924 #[doc(alias = "gtk-decoration-layout")]
1925 fn connect_gtk_decoration_layout_notify<F: Fn(&Self) + 'static>(
1926 &self,
1927 f: F,
1928 ) -> SignalHandlerId {
1929 unsafe extern "C" fn notify_gtk_decoration_layout_trampoline<
1930 P: IsA<Settings>,
1931 F: Fn(&P) + 'static,
1932 >(
1933 this: *mut ffi::GtkSettings,
1934 _param_spec: glib::ffi::gpointer,
1935 f: glib::ffi::gpointer,
1936 ) {
1937 let f: &F = &*(f as *const F);
1938 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1939 }
1940 unsafe {
1941 let f: Box_<F> = Box_::new(f);
1942 connect_raw(
1943 self.as_ptr() as *mut _,
1944 b"notify::gtk-decoration-layout\0".as_ptr() as *const _,
1945 Some(transmute::<_, unsafe extern "C" fn()>(
1946 notify_gtk_decoration_layout_trampoline::<Self, F> as *const (),
1947 )),
1948 Box_::into_raw(f),
1949 )
1950 }
1951 }
1952
1953 #[doc(alias = "gtk-dialogs-use-header")]
1954 fn connect_gtk_dialogs_use_header_notify<F: Fn(&Self) + 'static>(
1955 &self,
1956 f: F,
1957 ) -> SignalHandlerId {
1958 unsafe extern "C" fn notify_gtk_dialogs_use_header_trampoline<
1959 P: IsA<Settings>,
1960 F: Fn(&P) + 'static,
1961 >(
1962 this: *mut ffi::GtkSettings,
1963 _param_spec: glib::ffi::gpointer,
1964 f: glib::ffi::gpointer,
1965 ) {
1966 let f: &F = &*(f as *const F);
1967 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1968 }
1969 unsafe {
1970 let f: Box_<F> = Box_::new(f);
1971 connect_raw(
1972 self.as_ptr() as *mut _,
1973 b"notify::gtk-dialogs-use-header\0".as_ptr() as *const _,
1974 Some(transmute::<_, unsafe extern "C" fn()>(
1975 notify_gtk_dialogs_use_header_trampoline::<Self, F> as *const (),
1976 )),
1977 Box_::into_raw(f),
1978 )
1979 }
1980 }
1981
1982 #[doc(alias = "gtk-dnd-drag-threshold")]
1983 fn connect_gtk_dnd_drag_threshold_notify<F: Fn(&Self) + 'static>(
1984 &self,
1985 f: F,
1986 ) -> SignalHandlerId {
1987 unsafe extern "C" fn notify_gtk_dnd_drag_threshold_trampoline<
1988 P: IsA<Settings>,
1989 F: Fn(&P) + 'static,
1990 >(
1991 this: *mut ffi::GtkSettings,
1992 _param_spec: glib::ffi::gpointer,
1993 f: glib::ffi::gpointer,
1994 ) {
1995 let f: &F = &*(f as *const F);
1996 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
1997 }
1998 unsafe {
1999 let f: Box_<F> = Box_::new(f);
2000 connect_raw(
2001 self.as_ptr() as *mut _,
2002 b"notify::gtk-dnd-drag-threshold\0".as_ptr() as *const _,
2003 Some(transmute::<_, unsafe extern "C" fn()>(
2004 notify_gtk_dnd_drag_threshold_trampoline::<Self, F> as *const (),
2005 )),
2006 Box_::into_raw(f),
2007 )
2008 }
2009 }
2010
2011 #[doc(alias = "gtk-double-click-distance")]
2012 fn connect_gtk_double_click_distance_notify<F: Fn(&Self) + 'static>(
2013 &self,
2014 f: F,
2015 ) -> SignalHandlerId {
2016 unsafe extern "C" fn notify_gtk_double_click_distance_trampoline<
2017 P: IsA<Settings>,
2018 F: Fn(&P) + 'static,
2019 >(
2020 this: *mut ffi::GtkSettings,
2021 _param_spec: glib::ffi::gpointer,
2022 f: glib::ffi::gpointer,
2023 ) {
2024 let f: &F = &*(f as *const F);
2025 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2026 }
2027 unsafe {
2028 let f: Box_<F> = Box_::new(f);
2029 connect_raw(
2030 self.as_ptr() as *mut _,
2031 b"notify::gtk-double-click-distance\0".as_ptr() as *const _,
2032 Some(transmute::<_, unsafe extern "C" fn()>(
2033 notify_gtk_double_click_distance_trampoline::<Self, F> as *const (),
2034 )),
2035 Box_::into_raw(f),
2036 )
2037 }
2038 }
2039
2040 #[doc(alias = "gtk-double-click-time")]
2041 fn connect_gtk_double_click_time_notify<F: Fn(&Self) + 'static>(
2042 &self,
2043 f: F,
2044 ) -> SignalHandlerId {
2045 unsafe extern "C" fn notify_gtk_double_click_time_trampoline<
2046 P: IsA<Settings>,
2047 F: Fn(&P) + 'static,
2048 >(
2049 this: *mut ffi::GtkSettings,
2050 _param_spec: glib::ffi::gpointer,
2051 f: glib::ffi::gpointer,
2052 ) {
2053 let f: &F = &*(f as *const F);
2054 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2055 }
2056 unsafe {
2057 let f: Box_<F> = Box_::new(f);
2058 connect_raw(
2059 self.as_ptr() as *mut _,
2060 b"notify::gtk-double-click-time\0".as_ptr() as *const _,
2061 Some(transmute::<_, unsafe extern "C" fn()>(
2062 notify_gtk_double_click_time_trampoline::<Self, F> as *const (),
2063 )),
2064 Box_::into_raw(f),
2065 )
2066 }
2067 }
2068
2069 #[doc(alias = "gtk-enable-accels")]
2070 fn connect_gtk_enable_accels_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2071 unsafe extern "C" fn notify_gtk_enable_accels_trampoline<
2072 P: IsA<Settings>,
2073 F: Fn(&P) + 'static,
2074 >(
2075 this: *mut ffi::GtkSettings,
2076 _param_spec: glib::ffi::gpointer,
2077 f: glib::ffi::gpointer,
2078 ) {
2079 let f: &F = &*(f as *const F);
2080 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2081 }
2082 unsafe {
2083 let f: Box_<F> = Box_::new(f);
2084 connect_raw(
2085 self.as_ptr() as *mut _,
2086 b"notify::gtk-enable-accels\0".as_ptr() as *const _,
2087 Some(transmute::<_, unsafe extern "C" fn()>(
2088 notify_gtk_enable_accels_trampoline::<Self, F> as *const (),
2089 )),
2090 Box_::into_raw(f),
2091 )
2092 }
2093 }
2094
2095 #[doc(alias = "gtk-enable-animations")]
2096 fn connect_gtk_enable_animations_notify<F: Fn(&Self) + 'static>(
2097 &self,
2098 f: F,
2099 ) -> SignalHandlerId {
2100 unsafe extern "C" fn notify_gtk_enable_animations_trampoline<
2101 P: IsA<Settings>,
2102 F: Fn(&P) + 'static,
2103 >(
2104 this: *mut ffi::GtkSettings,
2105 _param_spec: glib::ffi::gpointer,
2106 f: glib::ffi::gpointer,
2107 ) {
2108 let f: &F = &*(f as *const F);
2109 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2110 }
2111 unsafe {
2112 let f: Box_<F> = Box_::new(f);
2113 connect_raw(
2114 self.as_ptr() as *mut _,
2115 b"notify::gtk-enable-animations\0".as_ptr() as *const _,
2116 Some(transmute::<_, unsafe extern "C" fn()>(
2117 notify_gtk_enable_animations_trampoline::<Self, F> as *const (),
2118 )),
2119 Box_::into_raw(f),
2120 )
2121 }
2122 }
2123
2124 #[doc(alias = "gtk-enable-event-sounds")]
2125 fn connect_gtk_enable_event_sounds_notify<F: Fn(&Self) + 'static>(
2126 &self,
2127 f: F,
2128 ) -> SignalHandlerId {
2129 unsafe extern "C" fn notify_gtk_enable_event_sounds_trampoline<
2130 P: IsA<Settings>,
2131 F: Fn(&P) + 'static,
2132 >(
2133 this: *mut ffi::GtkSettings,
2134 _param_spec: glib::ffi::gpointer,
2135 f: glib::ffi::gpointer,
2136 ) {
2137 let f: &F = &*(f as *const F);
2138 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2139 }
2140 unsafe {
2141 let f: Box_<F> = Box_::new(f);
2142 connect_raw(
2143 self.as_ptr() as *mut _,
2144 b"notify::gtk-enable-event-sounds\0".as_ptr() as *const _,
2145 Some(transmute::<_, unsafe extern "C" fn()>(
2146 notify_gtk_enable_event_sounds_trampoline::<Self, F> as *const (),
2147 )),
2148 Box_::into_raw(f),
2149 )
2150 }
2151 }
2152
2153 #[doc(alias = "gtk-enable-input-feedback-sounds")]
2154 fn connect_gtk_enable_input_feedback_sounds_notify<F: Fn(&Self) + 'static>(
2155 &self,
2156 f: F,
2157 ) -> SignalHandlerId {
2158 unsafe extern "C" fn notify_gtk_enable_input_feedback_sounds_trampoline<
2159 P: IsA<Settings>,
2160 F: Fn(&P) + 'static,
2161 >(
2162 this: *mut ffi::GtkSettings,
2163 _param_spec: glib::ffi::gpointer,
2164 f: glib::ffi::gpointer,
2165 ) {
2166 let f: &F = &*(f as *const F);
2167 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2168 }
2169 unsafe {
2170 let f: Box_<F> = Box_::new(f);
2171 connect_raw(
2172 self.as_ptr() as *mut _,
2173 b"notify::gtk-enable-input-feedback-sounds\0".as_ptr() as *const _,
2174 Some(transmute::<_, unsafe extern "C" fn()>(
2175 notify_gtk_enable_input_feedback_sounds_trampoline::<Self, F> as *const (),
2176 )),
2177 Box_::into_raw(f),
2178 )
2179 }
2180 }
2181
2182 #[doc(alias = "gtk-enable-primary-paste")]
2183 fn connect_gtk_enable_primary_paste_notify<F: Fn(&Self) + 'static>(
2184 &self,
2185 f: F,
2186 ) -> SignalHandlerId {
2187 unsafe extern "C" fn notify_gtk_enable_primary_paste_trampoline<
2188 P: IsA<Settings>,
2189 F: Fn(&P) + 'static,
2190 >(
2191 this: *mut ffi::GtkSettings,
2192 _param_spec: glib::ffi::gpointer,
2193 f: glib::ffi::gpointer,
2194 ) {
2195 let f: &F = &*(f as *const F);
2196 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2197 }
2198 unsafe {
2199 let f: Box_<F> = Box_::new(f);
2200 connect_raw(
2201 self.as_ptr() as *mut _,
2202 b"notify::gtk-enable-primary-paste\0".as_ptr() as *const _,
2203 Some(transmute::<_, unsafe extern "C" fn()>(
2204 notify_gtk_enable_primary_paste_trampoline::<Self, F> as *const (),
2205 )),
2206 Box_::into_raw(f),
2207 )
2208 }
2209 }
2210
2211 #[doc(alias = "gtk-entry-password-hint-timeout")]
2212 fn connect_gtk_entry_password_hint_timeout_notify<F: Fn(&Self) + 'static>(
2213 &self,
2214 f: F,
2215 ) -> SignalHandlerId {
2216 unsafe extern "C" fn notify_gtk_entry_password_hint_timeout_trampoline<
2217 P: IsA<Settings>,
2218 F: Fn(&P) + 'static,
2219 >(
2220 this: *mut ffi::GtkSettings,
2221 _param_spec: glib::ffi::gpointer,
2222 f: glib::ffi::gpointer,
2223 ) {
2224 let f: &F = &*(f as *const F);
2225 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2226 }
2227 unsafe {
2228 let f: Box_<F> = Box_::new(f);
2229 connect_raw(
2230 self.as_ptr() as *mut _,
2231 b"notify::gtk-entry-password-hint-timeout\0".as_ptr() as *const _,
2232 Some(transmute::<_, unsafe extern "C" fn()>(
2233 notify_gtk_entry_password_hint_timeout_trampoline::<Self, F> as *const (),
2234 )),
2235 Box_::into_raw(f),
2236 )
2237 }
2238 }
2239
2240 #[doc(alias = "gtk-entry-select-on-focus")]
2241 fn connect_gtk_entry_select_on_focus_notify<F: Fn(&Self) + 'static>(
2242 &self,
2243 f: F,
2244 ) -> SignalHandlerId {
2245 unsafe extern "C" fn notify_gtk_entry_select_on_focus_trampoline<
2246 P: IsA<Settings>,
2247 F: Fn(&P) + 'static,
2248 >(
2249 this: *mut ffi::GtkSettings,
2250 _param_spec: glib::ffi::gpointer,
2251 f: glib::ffi::gpointer,
2252 ) {
2253 let f: &F = &*(f as *const F);
2254 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2255 }
2256 unsafe {
2257 let f: Box_<F> = Box_::new(f);
2258 connect_raw(
2259 self.as_ptr() as *mut _,
2260 b"notify::gtk-entry-select-on-focus\0".as_ptr() as *const _,
2261 Some(transmute::<_, unsafe extern "C" fn()>(
2262 notify_gtk_entry_select_on_focus_trampoline::<Self, F> as *const (),
2263 )),
2264 Box_::into_raw(f),
2265 )
2266 }
2267 }
2268
2269 #[doc(alias = "gtk-error-bell")]
2270 fn connect_gtk_error_bell_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2271 unsafe extern "C" fn notify_gtk_error_bell_trampoline<
2272 P: IsA<Settings>,
2273 F: Fn(&P) + 'static,
2274 >(
2275 this: *mut ffi::GtkSettings,
2276 _param_spec: glib::ffi::gpointer,
2277 f: glib::ffi::gpointer,
2278 ) {
2279 let f: &F = &*(f as *const F);
2280 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2281 }
2282 unsafe {
2283 let f: Box_<F> = Box_::new(f);
2284 connect_raw(
2285 self.as_ptr() as *mut _,
2286 b"notify::gtk-error-bell\0".as_ptr() as *const _,
2287 Some(transmute::<_, unsafe extern "C" fn()>(
2288 notify_gtk_error_bell_trampoline::<Self, F> as *const (),
2289 )),
2290 Box_::into_raw(f),
2291 )
2292 }
2293 }
2294
2295 #[doc(alias = "gtk-font-name")]
2296 fn connect_gtk_font_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2297 unsafe extern "C" fn notify_gtk_font_name_trampoline<
2298 P: IsA<Settings>,
2299 F: Fn(&P) + 'static,
2300 >(
2301 this: *mut ffi::GtkSettings,
2302 _param_spec: glib::ffi::gpointer,
2303 f: glib::ffi::gpointer,
2304 ) {
2305 let f: &F = &*(f as *const F);
2306 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2307 }
2308 unsafe {
2309 let f: Box_<F> = Box_::new(f);
2310 connect_raw(
2311 self.as_ptr() as *mut _,
2312 b"notify::gtk-font-name\0".as_ptr() as *const _,
2313 Some(transmute::<_, unsafe extern "C" fn()>(
2314 notify_gtk_font_name_trampoline::<Self, F> as *const (),
2315 )),
2316 Box_::into_raw(f),
2317 )
2318 }
2319 }
2320
2321 #[doc(alias = "gtk-fontconfig-timestamp")]
2322 fn connect_gtk_fontconfig_timestamp_notify<F: Fn(&Self) + 'static>(
2323 &self,
2324 f: F,
2325 ) -> SignalHandlerId {
2326 unsafe extern "C" fn notify_gtk_fontconfig_timestamp_trampoline<
2327 P: IsA<Settings>,
2328 F: Fn(&P) + 'static,
2329 >(
2330 this: *mut ffi::GtkSettings,
2331 _param_spec: glib::ffi::gpointer,
2332 f: glib::ffi::gpointer,
2333 ) {
2334 let f: &F = &*(f as *const F);
2335 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2336 }
2337 unsafe {
2338 let f: Box_<F> = Box_::new(f);
2339 connect_raw(
2340 self.as_ptr() as *mut _,
2341 b"notify::gtk-fontconfig-timestamp\0".as_ptr() as *const _,
2342 Some(transmute::<_, unsafe extern "C" fn()>(
2343 notify_gtk_fontconfig_timestamp_trampoline::<Self, F> as *const (),
2344 )),
2345 Box_::into_raw(f),
2346 )
2347 }
2348 }
2349
2350 #[doc(alias = "gtk-icon-theme-name")]
2351 fn connect_gtk_icon_theme_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2352 unsafe extern "C" fn notify_gtk_icon_theme_name_trampoline<
2353 P: IsA<Settings>,
2354 F: Fn(&P) + 'static,
2355 >(
2356 this: *mut ffi::GtkSettings,
2357 _param_spec: glib::ffi::gpointer,
2358 f: glib::ffi::gpointer,
2359 ) {
2360 let f: &F = &*(f as *const F);
2361 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2362 }
2363 unsafe {
2364 let f: Box_<F> = Box_::new(f);
2365 connect_raw(
2366 self.as_ptr() as *mut _,
2367 b"notify::gtk-icon-theme-name\0".as_ptr() as *const _,
2368 Some(transmute::<_, unsafe extern "C" fn()>(
2369 notify_gtk_icon_theme_name_trampoline::<Self, F> as *const (),
2370 )),
2371 Box_::into_raw(f),
2372 )
2373 }
2374 }
2375
2376 #[doc(alias = "gtk-im-module")]
2377 fn connect_gtk_im_module_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2378 unsafe extern "C" fn notify_gtk_im_module_trampoline<
2379 P: IsA<Settings>,
2380 F: Fn(&P) + 'static,
2381 >(
2382 this: *mut ffi::GtkSettings,
2383 _param_spec: glib::ffi::gpointer,
2384 f: glib::ffi::gpointer,
2385 ) {
2386 let f: &F = &*(f as *const F);
2387 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2388 }
2389 unsafe {
2390 let f: Box_<F> = Box_::new(f);
2391 connect_raw(
2392 self.as_ptr() as *mut _,
2393 b"notify::gtk-im-module\0".as_ptr() as *const _,
2394 Some(transmute::<_, unsafe extern "C" fn()>(
2395 notify_gtk_im_module_trampoline::<Self, F> as *const (),
2396 )),
2397 Box_::into_raw(f),
2398 )
2399 }
2400 }
2401
2402 #[doc(alias = "gtk-key-theme-name")]
2403 fn connect_gtk_key_theme_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2404 unsafe extern "C" fn notify_gtk_key_theme_name_trampoline<
2405 P: IsA<Settings>,
2406 F: Fn(&P) + 'static,
2407 >(
2408 this: *mut ffi::GtkSettings,
2409 _param_spec: glib::ffi::gpointer,
2410 f: glib::ffi::gpointer,
2411 ) {
2412 let f: &F = &*(f as *const F);
2413 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2414 }
2415 unsafe {
2416 let f: Box_<F> = Box_::new(f);
2417 connect_raw(
2418 self.as_ptr() as *mut _,
2419 b"notify::gtk-key-theme-name\0".as_ptr() as *const _,
2420 Some(transmute::<_, unsafe extern "C" fn()>(
2421 notify_gtk_key_theme_name_trampoline::<Self, F> as *const (),
2422 )),
2423 Box_::into_raw(f),
2424 )
2425 }
2426 }
2427
2428 #[doc(alias = "gtk-keynav-use-caret")]
2429 fn connect_gtk_keynav_use_caret_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2430 unsafe extern "C" fn notify_gtk_keynav_use_caret_trampoline<
2431 P: IsA<Settings>,
2432 F: Fn(&P) + 'static,
2433 >(
2434 this: *mut ffi::GtkSettings,
2435 _param_spec: glib::ffi::gpointer,
2436 f: glib::ffi::gpointer,
2437 ) {
2438 let f: &F = &*(f as *const F);
2439 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2440 }
2441 unsafe {
2442 let f: Box_<F> = Box_::new(f);
2443 connect_raw(
2444 self.as_ptr() as *mut _,
2445 b"notify::gtk-keynav-use-caret\0".as_ptr() as *const _,
2446 Some(transmute::<_, unsafe extern "C" fn()>(
2447 notify_gtk_keynav_use_caret_trampoline::<Self, F> as *const (),
2448 )),
2449 Box_::into_raw(f),
2450 )
2451 }
2452 }
2453
2454 #[doc(alias = "gtk-label-select-on-focus")]
2455 fn connect_gtk_label_select_on_focus_notify<F: Fn(&Self) + 'static>(
2456 &self,
2457 f: F,
2458 ) -> SignalHandlerId {
2459 unsafe extern "C" fn notify_gtk_label_select_on_focus_trampoline<
2460 P: IsA<Settings>,
2461 F: Fn(&P) + 'static,
2462 >(
2463 this: *mut ffi::GtkSettings,
2464 _param_spec: glib::ffi::gpointer,
2465 f: glib::ffi::gpointer,
2466 ) {
2467 let f: &F = &*(f as *const F);
2468 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2469 }
2470 unsafe {
2471 let f: Box_<F> = Box_::new(f);
2472 connect_raw(
2473 self.as_ptr() as *mut _,
2474 b"notify::gtk-label-select-on-focus\0".as_ptr() as *const _,
2475 Some(transmute::<_, unsafe extern "C" fn()>(
2476 notify_gtk_label_select_on_focus_trampoline::<Self, F> as *const (),
2477 )),
2478 Box_::into_raw(f),
2479 )
2480 }
2481 }
2482
2483 #[doc(alias = "gtk-long-press-time")]
2484 fn connect_gtk_long_press_time_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2485 unsafe extern "C" fn notify_gtk_long_press_time_trampoline<
2486 P: IsA<Settings>,
2487 F: Fn(&P) + 'static,
2488 >(
2489 this: *mut ffi::GtkSettings,
2490 _param_spec: glib::ffi::gpointer,
2491 f: glib::ffi::gpointer,
2492 ) {
2493 let f: &F = &*(f as *const F);
2494 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2495 }
2496 unsafe {
2497 let f: Box_<F> = Box_::new(f);
2498 connect_raw(
2499 self.as_ptr() as *mut _,
2500 b"notify::gtk-long-press-time\0".as_ptr() as *const _,
2501 Some(transmute::<_, unsafe extern "C" fn()>(
2502 notify_gtk_long_press_time_trampoline::<Self, F> as *const (),
2503 )),
2504 Box_::into_raw(f),
2505 )
2506 }
2507 }
2508
2509 #[doc(alias = "gtk-modules")]
2510 fn connect_gtk_modules_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2511 unsafe extern "C" fn notify_gtk_modules_trampoline<
2512 P: IsA<Settings>,
2513 F: Fn(&P) + 'static,
2514 >(
2515 this: *mut ffi::GtkSettings,
2516 _param_spec: glib::ffi::gpointer,
2517 f: glib::ffi::gpointer,
2518 ) {
2519 let f: &F = &*(f as *const F);
2520 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2521 }
2522 unsafe {
2523 let f: Box_<F> = Box_::new(f);
2524 connect_raw(
2525 self.as_ptr() as *mut _,
2526 b"notify::gtk-modules\0".as_ptr() as *const _,
2527 Some(transmute::<_, unsafe extern "C" fn()>(
2528 notify_gtk_modules_trampoline::<Self, F> as *const (),
2529 )),
2530 Box_::into_raw(f),
2531 )
2532 }
2533 }
2534
2535 #[cfg(feature = "v3_24_9")]
2536 #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_9")))]
2537 #[doc(alias = "gtk-overlay-scrolling")]
2538 fn connect_gtk_overlay_scrolling_notify<F: Fn(&Self) + 'static>(
2539 &self,
2540 f: F,
2541 ) -> SignalHandlerId {
2542 unsafe extern "C" fn notify_gtk_overlay_scrolling_trampoline<
2543 P: IsA<Settings>,
2544 F: Fn(&P) + 'static,
2545 >(
2546 this: *mut ffi::GtkSettings,
2547 _param_spec: glib::ffi::gpointer,
2548 f: glib::ffi::gpointer,
2549 ) {
2550 let f: &F = &*(f as *const F);
2551 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2552 }
2553 unsafe {
2554 let f: Box_<F> = Box_::new(f);
2555 connect_raw(
2556 self.as_ptr() as *mut _,
2557 b"notify::gtk-overlay-scrolling\0".as_ptr() as *const _,
2558 Some(transmute::<_, unsafe extern "C" fn()>(
2559 notify_gtk_overlay_scrolling_trampoline::<Self, F> as *const (),
2560 )),
2561 Box_::into_raw(f),
2562 )
2563 }
2564 }
2565
2566 #[doc(alias = "gtk-primary-button-warps-slider")]
2567 fn connect_gtk_primary_button_warps_slider_notify<F: Fn(&Self) + 'static>(
2568 &self,
2569 f: F,
2570 ) -> SignalHandlerId {
2571 unsafe extern "C" fn notify_gtk_primary_button_warps_slider_trampoline<
2572 P: IsA<Settings>,
2573 F: Fn(&P) + 'static,
2574 >(
2575 this: *mut ffi::GtkSettings,
2576 _param_spec: glib::ffi::gpointer,
2577 f: glib::ffi::gpointer,
2578 ) {
2579 let f: &F = &*(f as *const F);
2580 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2581 }
2582 unsafe {
2583 let f: Box_<F> = Box_::new(f);
2584 connect_raw(
2585 self.as_ptr() as *mut _,
2586 b"notify::gtk-primary-button-warps-slider\0".as_ptr() as *const _,
2587 Some(transmute::<_, unsafe extern "C" fn()>(
2588 notify_gtk_primary_button_warps_slider_trampoline::<Self, F> as *const (),
2589 )),
2590 Box_::into_raw(f),
2591 )
2592 }
2593 }
2594
2595 #[doc(alias = "gtk-print-backends")]
2596 fn connect_gtk_print_backends_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2597 unsafe extern "C" fn notify_gtk_print_backends_trampoline<
2598 P: IsA<Settings>,
2599 F: Fn(&P) + 'static,
2600 >(
2601 this: *mut ffi::GtkSettings,
2602 _param_spec: glib::ffi::gpointer,
2603 f: glib::ffi::gpointer,
2604 ) {
2605 let f: &F = &*(f as *const F);
2606 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2607 }
2608 unsafe {
2609 let f: Box_<F> = Box_::new(f);
2610 connect_raw(
2611 self.as_ptr() as *mut _,
2612 b"notify::gtk-print-backends\0".as_ptr() as *const _,
2613 Some(transmute::<_, unsafe extern "C" fn()>(
2614 notify_gtk_print_backends_trampoline::<Self, F> as *const (),
2615 )),
2616 Box_::into_raw(f),
2617 )
2618 }
2619 }
2620
2621 #[doc(alias = "gtk-print-preview-command")]
2622 fn connect_gtk_print_preview_command_notify<F: Fn(&Self) + 'static>(
2623 &self,
2624 f: F,
2625 ) -> SignalHandlerId {
2626 unsafe extern "C" fn notify_gtk_print_preview_command_trampoline<
2627 P: IsA<Settings>,
2628 F: Fn(&P) + 'static,
2629 >(
2630 this: *mut ffi::GtkSettings,
2631 _param_spec: glib::ffi::gpointer,
2632 f: glib::ffi::gpointer,
2633 ) {
2634 let f: &F = &*(f as *const F);
2635 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2636 }
2637 unsafe {
2638 let f: Box_<F> = Box_::new(f);
2639 connect_raw(
2640 self.as_ptr() as *mut _,
2641 b"notify::gtk-print-preview-command\0".as_ptr() as *const _,
2642 Some(transmute::<_, unsafe extern "C" fn()>(
2643 notify_gtk_print_preview_command_trampoline::<Self, F> as *const (),
2644 )),
2645 Box_::into_raw(f),
2646 )
2647 }
2648 }
2649
2650 #[doc(alias = "gtk-recent-files-enabled")]
2651 fn connect_gtk_recent_files_enabled_notify<F: Fn(&Self) + 'static>(
2652 &self,
2653 f: F,
2654 ) -> SignalHandlerId {
2655 unsafe extern "C" fn notify_gtk_recent_files_enabled_trampoline<
2656 P: IsA<Settings>,
2657 F: Fn(&P) + 'static,
2658 >(
2659 this: *mut ffi::GtkSettings,
2660 _param_spec: glib::ffi::gpointer,
2661 f: glib::ffi::gpointer,
2662 ) {
2663 let f: &F = &*(f as *const F);
2664 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2665 }
2666 unsafe {
2667 let f: Box_<F> = Box_::new(f);
2668 connect_raw(
2669 self.as_ptr() as *mut _,
2670 b"notify::gtk-recent-files-enabled\0".as_ptr() as *const _,
2671 Some(transmute::<_, unsafe extern "C" fn()>(
2672 notify_gtk_recent_files_enabled_trampoline::<Self, F> as *const (),
2673 )),
2674 Box_::into_raw(f),
2675 )
2676 }
2677 }
2678
2679 #[doc(alias = "gtk-recent-files-max-age")]
2680 fn connect_gtk_recent_files_max_age_notify<F: Fn(&Self) + 'static>(
2681 &self,
2682 f: F,
2683 ) -> SignalHandlerId {
2684 unsafe extern "C" fn notify_gtk_recent_files_max_age_trampoline<
2685 P: IsA<Settings>,
2686 F: Fn(&P) + 'static,
2687 >(
2688 this: *mut ffi::GtkSettings,
2689 _param_spec: glib::ffi::gpointer,
2690 f: glib::ffi::gpointer,
2691 ) {
2692 let f: &F = &*(f as *const F);
2693 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2694 }
2695 unsafe {
2696 let f: Box_<F> = Box_::new(f);
2697 connect_raw(
2698 self.as_ptr() as *mut _,
2699 b"notify::gtk-recent-files-max-age\0".as_ptr() as *const _,
2700 Some(transmute::<_, unsafe extern "C" fn()>(
2701 notify_gtk_recent_files_max_age_trampoline::<Self, F> as *const (),
2702 )),
2703 Box_::into_raw(f),
2704 )
2705 }
2706 }
2707
2708 #[doc(alias = "gtk-shell-shows-app-menu")]
2709 fn connect_gtk_shell_shows_app_menu_notify<F: Fn(&Self) + 'static>(
2710 &self,
2711 f: F,
2712 ) -> SignalHandlerId {
2713 unsafe extern "C" fn notify_gtk_shell_shows_app_menu_trampoline<
2714 P: IsA<Settings>,
2715 F: Fn(&P) + 'static,
2716 >(
2717 this: *mut ffi::GtkSettings,
2718 _param_spec: glib::ffi::gpointer,
2719 f: glib::ffi::gpointer,
2720 ) {
2721 let f: &F = &*(f as *const F);
2722 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2723 }
2724 unsafe {
2725 let f: Box_<F> = Box_::new(f);
2726 connect_raw(
2727 self.as_ptr() as *mut _,
2728 b"notify::gtk-shell-shows-app-menu\0".as_ptr() as *const _,
2729 Some(transmute::<_, unsafe extern "C" fn()>(
2730 notify_gtk_shell_shows_app_menu_trampoline::<Self, F> as *const (),
2731 )),
2732 Box_::into_raw(f),
2733 )
2734 }
2735 }
2736
2737 #[doc(alias = "gtk-shell-shows-desktop")]
2738 fn connect_gtk_shell_shows_desktop_notify<F: Fn(&Self) + 'static>(
2739 &self,
2740 f: F,
2741 ) -> SignalHandlerId {
2742 unsafe extern "C" fn notify_gtk_shell_shows_desktop_trampoline<
2743 P: IsA<Settings>,
2744 F: Fn(&P) + 'static,
2745 >(
2746 this: *mut ffi::GtkSettings,
2747 _param_spec: glib::ffi::gpointer,
2748 f: glib::ffi::gpointer,
2749 ) {
2750 let f: &F = &*(f as *const F);
2751 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2752 }
2753 unsafe {
2754 let f: Box_<F> = Box_::new(f);
2755 connect_raw(
2756 self.as_ptr() as *mut _,
2757 b"notify::gtk-shell-shows-desktop\0".as_ptr() as *const _,
2758 Some(transmute::<_, unsafe extern "C" fn()>(
2759 notify_gtk_shell_shows_desktop_trampoline::<Self, F> as *const (),
2760 )),
2761 Box_::into_raw(f),
2762 )
2763 }
2764 }
2765
2766 #[doc(alias = "gtk-shell-shows-menubar")]
2767 fn connect_gtk_shell_shows_menubar_notify<F: Fn(&Self) + 'static>(
2768 &self,
2769 f: F,
2770 ) -> SignalHandlerId {
2771 unsafe extern "C" fn notify_gtk_shell_shows_menubar_trampoline<
2772 P: IsA<Settings>,
2773 F: Fn(&P) + 'static,
2774 >(
2775 this: *mut ffi::GtkSettings,
2776 _param_spec: glib::ffi::gpointer,
2777 f: glib::ffi::gpointer,
2778 ) {
2779 let f: &F = &*(f as *const F);
2780 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2781 }
2782 unsafe {
2783 let f: Box_<F> = Box_::new(f);
2784 connect_raw(
2785 self.as_ptr() as *mut _,
2786 b"notify::gtk-shell-shows-menubar\0".as_ptr() as *const _,
2787 Some(transmute::<_, unsafe extern "C" fn()>(
2788 notify_gtk_shell_shows_menubar_trampoline::<Self, F> as *const (),
2789 )),
2790 Box_::into_raw(f),
2791 )
2792 }
2793 }
2794
2795 #[doc(alias = "gtk-sound-theme-name")]
2796 fn connect_gtk_sound_theme_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2797 unsafe extern "C" fn notify_gtk_sound_theme_name_trampoline<
2798 P: IsA<Settings>,
2799 F: Fn(&P) + 'static,
2800 >(
2801 this: *mut ffi::GtkSettings,
2802 _param_spec: glib::ffi::gpointer,
2803 f: glib::ffi::gpointer,
2804 ) {
2805 let f: &F = &*(f as *const F);
2806 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2807 }
2808 unsafe {
2809 let f: Box_<F> = Box_::new(f);
2810 connect_raw(
2811 self.as_ptr() as *mut _,
2812 b"notify::gtk-sound-theme-name\0".as_ptr() as *const _,
2813 Some(transmute::<_, unsafe extern "C" fn()>(
2814 notify_gtk_sound_theme_name_trampoline::<Self, F> as *const (),
2815 )),
2816 Box_::into_raw(f),
2817 )
2818 }
2819 }
2820
2821 #[doc(alias = "gtk-split-cursor")]
2822 fn connect_gtk_split_cursor_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2823 unsafe extern "C" fn notify_gtk_split_cursor_trampoline<
2824 P: IsA<Settings>,
2825 F: Fn(&P) + 'static,
2826 >(
2827 this: *mut ffi::GtkSettings,
2828 _param_spec: glib::ffi::gpointer,
2829 f: glib::ffi::gpointer,
2830 ) {
2831 let f: &F = &*(f as *const F);
2832 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2833 }
2834 unsafe {
2835 let f: Box_<F> = Box_::new(f);
2836 connect_raw(
2837 self.as_ptr() as *mut _,
2838 b"notify::gtk-split-cursor\0".as_ptr() as *const _,
2839 Some(transmute::<_, unsafe extern "C" fn()>(
2840 notify_gtk_split_cursor_trampoline::<Self, F> as *const (),
2841 )),
2842 Box_::into_raw(f),
2843 )
2844 }
2845 }
2846
2847 #[doc(alias = "gtk-theme-name")]
2848 fn connect_gtk_theme_name_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2849 unsafe extern "C" fn notify_gtk_theme_name_trampoline<
2850 P: IsA<Settings>,
2851 F: Fn(&P) + 'static,
2852 >(
2853 this: *mut ffi::GtkSettings,
2854 _param_spec: glib::ffi::gpointer,
2855 f: glib::ffi::gpointer,
2856 ) {
2857 let f: &F = &*(f as *const F);
2858 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2859 }
2860 unsafe {
2861 let f: Box_<F> = Box_::new(f);
2862 connect_raw(
2863 self.as_ptr() as *mut _,
2864 b"notify::gtk-theme-name\0".as_ptr() as *const _,
2865 Some(transmute::<_, unsafe extern "C" fn()>(
2866 notify_gtk_theme_name_trampoline::<Self, F> as *const (),
2867 )),
2868 Box_::into_raw(f),
2869 )
2870 }
2871 }
2872
2873 #[doc(alias = "gtk-titlebar-double-click")]
2874 fn connect_gtk_titlebar_double_click_notify<F: Fn(&Self) + 'static>(
2875 &self,
2876 f: F,
2877 ) -> SignalHandlerId {
2878 unsafe extern "C" fn notify_gtk_titlebar_double_click_trampoline<
2879 P: IsA<Settings>,
2880 F: Fn(&P) + 'static,
2881 >(
2882 this: *mut ffi::GtkSettings,
2883 _param_spec: glib::ffi::gpointer,
2884 f: glib::ffi::gpointer,
2885 ) {
2886 let f: &F = &*(f as *const F);
2887 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2888 }
2889 unsafe {
2890 let f: Box_<F> = Box_::new(f);
2891 connect_raw(
2892 self.as_ptr() as *mut _,
2893 b"notify::gtk-titlebar-double-click\0".as_ptr() as *const _,
2894 Some(transmute::<_, unsafe extern "C" fn()>(
2895 notify_gtk_titlebar_double_click_trampoline::<Self, F> as *const (),
2896 )),
2897 Box_::into_raw(f),
2898 )
2899 }
2900 }
2901
2902 #[doc(alias = "gtk-titlebar-middle-click")]
2903 fn connect_gtk_titlebar_middle_click_notify<F: Fn(&Self) + 'static>(
2904 &self,
2905 f: F,
2906 ) -> SignalHandlerId {
2907 unsafe extern "C" fn notify_gtk_titlebar_middle_click_trampoline<
2908 P: IsA<Settings>,
2909 F: Fn(&P) + 'static,
2910 >(
2911 this: *mut ffi::GtkSettings,
2912 _param_spec: glib::ffi::gpointer,
2913 f: glib::ffi::gpointer,
2914 ) {
2915 let f: &F = &*(f as *const F);
2916 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2917 }
2918 unsafe {
2919 let f: Box_<F> = Box_::new(f);
2920 connect_raw(
2921 self.as_ptr() as *mut _,
2922 b"notify::gtk-titlebar-middle-click\0".as_ptr() as *const _,
2923 Some(transmute::<_, unsafe extern "C" fn()>(
2924 notify_gtk_titlebar_middle_click_trampoline::<Self, F> as *const (),
2925 )),
2926 Box_::into_raw(f),
2927 )
2928 }
2929 }
2930
2931 #[doc(alias = "gtk-titlebar-right-click")]
2932 fn connect_gtk_titlebar_right_click_notify<F: Fn(&Self) + 'static>(
2933 &self,
2934 f: F,
2935 ) -> SignalHandlerId {
2936 unsafe extern "C" fn notify_gtk_titlebar_right_click_trampoline<
2937 P: IsA<Settings>,
2938 F: Fn(&P) + 'static,
2939 >(
2940 this: *mut ffi::GtkSettings,
2941 _param_spec: glib::ffi::gpointer,
2942 f: glib::ffi::gpointer,
2943 ) {
2944 let f: &F = &*(f as *const F);
2945 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2946 }
2947 unsafe {
2948 let f: Box_<F> = Box_::new(f);
2949 connect_raw(
2950 self.as_ptr() as *mut _,
2951 b"notify::gtk-titlebar-right-click\0".as_ptr() as *const _,
2952 Some(transmute::<_, unsafe extern "C" fn()>(
2953 notify_gtk_titlebar_right_click_trampoline::<Self, F> as *const (),
2954 )),
2955 Box_::into_raw(f),
2956 )
2957 }
2958 }
2959
2960 #[doc(alias = "gtk-xft-antialias")]
2961 fn connect_gtk_xft_antialias_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2962 unsafe extern "C" fn notify_gtk_xft_antialias_trampoline<
2963 P: IsA<Settings>,
2964 F: Fn(&P) + 'static,
2965 >(
2966 this: *mut ffi::GtkSettings,
2967 _param_spec: glib::ffi::gpointer,
2968 f: glib::ffi::gpointer,
2969 ) {
2970 let f: &F = &*(f as *const F);
2971 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2972 }
2973 unsafe {
2974 let f: Box_<F> = Box_::new(f);
2975 connect_raw(
2976 self.as_ptr() as *mut _,
2977 b"notify::gtk-xft-antialias\0".as_ptr() as *const _,
2978 Some(transmute::<_, unsafe extern "C" fn()>(
2979 notify_gtk_xft_antialias_trampoline::<Self, F> as *const (),
2980 )),
2981 Box_::into_raw(f),
2982 )
2983 }
2984 }
2985
2986 #[doc(alias = "gtk-xft-dpi")]
2987 fn connect_gtk_xft_dpi_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
2988 unsafe extern "C" fn notify_gtk_xft_dpi_trampoline<
2989 P: IsA<Settings>,
2990 F: Fn(&P) + 'static,
2991 >(
2992 this: *mut ffi::GtkSettings,
2993 _param_spec: glib::ffi::gpointer,
2994 f: glib::ffi::gpointer,
2995 ) {
2996 let f: &F = &*(f as *const F);
2997 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
2998 }
2999 unsafe {
3000 let f: Box_<F> = Box_::new(f);
3001 connect_raw(
3002 self.as_ptr() as *mut _,
3003 b"notify::gtk-xft-dpi\0".as_ptr() as *const _,
3004 Some(transmute::<_, unsafe extern "C" fn()>(
3005 notify_gtk_xft_dpi_trampoline::<Self, F> as *const (),
3006 )),
3007 Box_::into_raw(f),
3008 )
3009 }
3010 }
3011
3012 #[doc(alias = "gtk-xft-hinting")]
3013 fn connect_gtk_xft_hinting_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
3014 unsafe extern "C" fn notify_gtk_xft_hinting_trampoline<
3015 P: IsA<Settings>,
3016 F: Fn(&P) + 'static,
3017 >(
3018 this: *mut ffi::GtkSettings,
3019 _param_spec: glib::ffi::gpointer,
3020 f: glib::ffi::gpointer,
3021 ) {
3022 let f: &F = &*(f as *const F);
3023 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
3024 }
3025 unsafe {
3026 let f: Box_<F> = Box_::new(f);
3027 connect_raw(
3028 self.as_ptr() as *mut _,
3029 b"notify::gtk-xft-hinting\0".as_ptr() as *const _,
3030 Some(transmute::<_, unsafe extern "C" fn()>(
3031 notify_gtk_xft_hinting_trampoline::<Self, F> as *const (),
3032 )),
3033 Box_::into_raw(f),
3034 )
3035 }
3036 }
3037
3038 #[doc(alias = "gtk-xft-hintstyle")]
3039 fn connect_gtk_xft_hintstyle_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
3040 unsafe extern "C" fn notify_gtk_xft_hintstyle_trampoline<
3041 P: IsA<Settings>,
3042 F: Fn(&P) + 'static,
3043 >(
3044 this: *mut ffi::GtkSettings,
3045 _param_spec: glib::ffi::gpointer,
3046 f: glib::ffi::gpointer,
3047 ) {
3048 let f: &F = &*(f as *const F);
3049 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
3050 }
3051 unsafe {
3052 let f: Box_<F> = Box_::new(f);
3053 connect_raw(
3054 self.as_ptr() as *mut _,
3055 b"notify::gtk-xft-hintstyle\0".as_ptr() as *const _,
3056 Some(transmute::<_, unsafe extern "C" fn()>(
3057 notify_gtk_xft_hintstyle_trampoline::<Self, F> as *const (),
3058 )),
3059 Box_::into_raw(f),
3060 )
3061 }
3062 }
3063
3064 #[doc(alias = "gtk-xft-rgba")]
3065 fn connect_gtk_xft_rgba_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
3066 unsafe extern "C" fn notify_gtk_xft_rgba_trampoline<
3067 P: IsA<Settings>,
3068 F: Fn(&P) + 'static,
3069 >(
3070 this: *mut ffi::GtkSettings,
3071 _param_spec: glib::ffi::gpointer,
3072 f: glib::ffi::gpointer,
3073 ) {
3074 let f: &F = &*(f as *const F);
3075 f(Settings::from_glib_borrow(this).unsafe_cast_ref())
3076 }
3077 unsafe {
3078 let f: Box_<F> = Box_::new(f);
3079 connect_raw(
3080 self.as_ptr() as *mut _,
3081 b"notify::gtk-xft-rgba\0".as_ptr() as *const _,
3082 Some(transmute::<_, unsafe extern "C" fn()>(
3083 notify_gtk_xft_rgba_trampoline::<Self, F> as *const (),
3084 )),
3085 Box_::into_raw(f),
3086 )
3087 }
3088 }
3089}
3090
3091impl<O: IsA<Settings>> GtkSettingsExt for O {}
3092
3093impl fmt::Display for Settings {
3094 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
3095 f.write_str("Settings")
3096 }
3097}