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