1 // This file was generated by gir (https://github.com/gtk-rs/gir) 2 // from gir-files (https://github.com/gtk-rs/gir-files) 3 // DO NOT EDIT 4 5 use glib::translate::*; 6 use glib::value::FromValue; 7 use glib::value::ToValue; 8 use glib::StaticType; 9 use glib::Type; 10 use std::fmt; 11 12 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 13 #[non_exhaustive] 14 #[doc(alias = "AtkCoordType")] 15 pub enum CoordType { 16 #[doc(alias = "ATK_XY_SCREEN")] 17 Screen, 18 #[doc(alias = "ATK_XY_WINDOW")] 19 Window, 20 #[doc(alias = "ATK_XY_PARENT")] 21 Parent, 22 #[doc(hidden)] 23 __Unknown(i32), 24 } 25 26 impl fmt::Display for CoordType { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result27 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 28 write!( 29 f, 30 "CoordType::{}", 31 match *self { 32 Self::Screen => "Screen", 33 Self::Window => "Window", 34 Self::Parent => "Parent", 35 _ => "Unknown", 36 } 37 ) 38 } 39 } 40 41 #[doc(hidden)] 42 impl IntoGlib for CoordType { 43 type GlibType = ffi::AtkCoordType; 44 into_glib(self) -> ffi::AtkCoordType45 fn into_glib(self) -> ffi::AtkCoordType { 46 match self { 47 Self::Screen => ffi::ATK_XY_SCREEN, 48 Self::Window => ffi::ATK_XY_WINDOW, 49 Self::Parent => ffi::ATK_XY_PARENT, 50 Self::__Unknown(value) => value, 51 } 52 } 53 } 54 55 #[doc(hidden)] 56 impl FromGlib<ffi::AtkCoordType> for CoordType { from_glib(value: ffi::AtkCoordType) -> Self57 unsafe fn from_glib(value: ffi::AtkCoordType) -> Self { 58 skip_assert_initialized!(); 59 match value { 60 ffi::ATK_XY_SCREEN => Self::Screen, 61 ffi::ATK_XY_WINDOW => Self::Window, 62 ffi::ATK_XY_PARENT => Self::Parent, 63 value => Self::__Unknown(value), 64 } 65 } 66 } 67 68 impl StaticType for CoordType { static_type() -> Type69 fn static_type() -> Type { 70 unsafe { from_glib(ffi::atk_coord_type_get_type()) } 71 } 72 } 73 74 impl glib::value::ValueType for CoordType { 75 type Type = Self; 76 } 77 78 unsafe impl<'a> FromValue<'a> for CoordType { 79 type Checker = glib::value::GenericValueTypeChecker<Self>; 80 from_value(value: &'a glib::Value) -> Self81 unsafe fn from_value(value: &'a glib::Value) -> Self { 82 skip_assert_initialized!(); 83 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 84 } 85 } 86 87 impl ToValue for CoordType { to_value(&self) -> glib::Value88 fn to_value(&self) -> glib::Value { 89 let mut value = glib::Value::for_value_type::<Self>(); 90 unsafe { 91 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 92 } 93 value 94 } 95 value_type(&self) -> glib::Type96 fn value_type(&self) -> glib::Type { 97 Self::static_type() 98 } 99 } 100 101 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 102 #[non_exhaustive] 103 #[doc(alias = "AtkLayer")] 104 pub enum Layer { 105 #[doc(alias = "ATK_LAYER_INVALID")] 106 Invalid, 107 #[doc(alias = "ATK_LAYER_BACKGROUND")] 108 Background, 109 #[doc(alias = "ATK_LAYER_CANVAS")] 110 Canvas, 111 #[doc(alias = "ATK_LAYER_WIDGET")] 112 Widget, 113 #[doc(alias = "ATK_LAYER_MDI")] 114 Mdi, 115 #[doc(alias = "ATK_LAYER_POPUP")] 116 Popup, 117 #[doc(alias = "ATK_LAYER_OVERLAY")] 118 Overlay, 119 #[doc(alias = "ATK_LAYER_WINDOW")] 120 Window, 121 #[doc(hidden)] 122 __Unknown(i32), 123 } 124 125 impl fmt::Display for Layer { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result126 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 127 write!( 128 f, 129 "Layer::{}", 130 match *self { 131 Self::Invalid => "Invalid", 132 Self::Background => "Background", 133 Self::Canvas => "Canvas", 134 Self::Widget => "Widget", 135 Self::Mdi => "Mdi", 136 Self::Popup => "Popup", 137 Self::Overlay => "Overlay", 138 Self::Window => "Window", 139 _ => "Unknown", 140 } 141 ) 142 } 143 } 144 145 #[doc(hidden)] 146 impl IntoGlib for Layer { 147 type GlibType = ffi::AtkLayer; 148 into_glib(self) -> ffi::AtkLayer149 fn into_glib(self) -> ffi::AtkLayer { 150 match self { 151 Self::Invalid => ffi::ATK_LAYER_INVALID, 152 Self::Background => ffi::ATK_LAYER_BACKGROUND, 153 Self::Canvas => ffi::ATK_LAYER_CANVAS, 154 Self::Widget => ffi::ATK_LAYER_WIDGET, 155 Self::Mdi => ffi::ATK_LAYER_MDI, 156 Self::Popup => ffi::ATK_LAYER_POPUP, 157 Self::Overlay => ffi::ATK_LAYER_OVERLAY, 158 Self::Window => ffi::ATK_LAYER_WINDOW, 159 Self::__Unknown(value) => value, 160 } 161 } 162 } 163 164 #[doc(hidden)] 165 impl FromGlib<ffi::AtkLayer> for Layer { from_glib(value: ffi::AtkLayer) -> Self166 unsafe fn from_glib(value: ffi::AtkLayer) -> Self { 167 skip_assert_initialized!(); 168 match value { 169 ffi::ATK_LAYER_INVALID => Self::Invalid, 170 ffi::ATK_LAYER_BACKGROUND => Self::Background, 171 ffi::ATK_LAYER_CANVAS => Self::Canvas, 172 ffi::ATK_LAYER_WIDGET => Self::Widget, 173 ffi::ATK_LAYER_MDI => Self::Mdi, 174 ffi::ATK_LAYER_POPUP => Self::Popup, 175 ffi::ATK_LAYER_OVERLAY => Self::Overlay, 176 ffi::ATK_LAYER_WINDOW => Self::Window, 177 value => Self::__Unknown(value), 178 } 179 } 180 } 181 182 impl StaticType for Layer { static_type() -> Type183 fn static_type() -> Type { 184 unsafe { from_glib(ffi::atk_layer_get_type()) } 185 } 186 } 187 188 impl glib::value::ValueType for Layer { 189 type Type = Self; 190 } 191 192 unsafe impl<'a> FromValue<'a> for Layer { 193 type Checker = glib::value::GenericValueTypeChecker<Self>; 194 from_value(value: &'a glib::Value) -> Self195 unsafe fn from_value(value: &'a glib::Value) -> Self { 196 skip_assert_initialized!(); 197 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 198 } 199 } 200 201 impl ToValue for Layer { to_value(&self) -> glib::Value202 fn to_value(&self) -> glib::Value { 203 let mut value = glib::Value::for_value_type::<Self>(); 204 unsafe { 205 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 206 } 207 value 208 } 209 value_type(&self) -> glib::Type210 fn value_type(&self) -> glib::Type { 211 Self::static_type() 212 } 213 } 214 215 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 216 #[non_exhaustive] 217 #[doc(alias = "AtkRelationType")] 218 pub enum RelationType { 219 #[doc(alias = "ATK_RELATION_NULL")] 220 Null, 221 #[doc(alias = "ATK_RELATION_CONTROLLED_BY")] 222 ControlledBy, 223 #[doc(alias = "ATK_RELATION_CONTROLLER_FOR")] 224 ControllerFor, 225 #[doc(alias = "ATK_RELATION_LABEL_FOR")] 226 LabelFor, 227 #[doc(alias = "ATK_RELATION_LABELLED_BY")] 228 LabelledBy, 229 #[doc(alias = "ATK_RELATION_MEMBER_OF")] 230 MemberOf, 231 #[doc(alias = "ATK_RELATION_NODE_CHILD_OF")] 232 NodeChildOf, 233 #[doc(alias = "ATK_RELATION_FLOWS_TO")] 234 FlowsTo, 235 #[doc(alias = "ATK_RELATION_FLOWS_FROM")] 236 FlowsFrom, 237 #[doc(alias = "ATK_RELATION_SUBWINDOW_OF")] 238 SubwindowOf, 239 #[doc(alias = "ATK_RELATION_EMBEDS")] 240 Embeds, 241 #[doc(alias = "ATK_RELATION_EMBEDDED_BY")] 242 EmbeddedBy, 243 #[doc(alias = "ATK_RELATION_POPUP_FOR")] 244 PopupFor, 245 #[doc(alias = "ATK_RELATION_PARENT_WINDOW_OF")] 246 ParentWindowOf, 247 #[doc(alias = "ATK_RELATION_DESCRIBED_BY")] 248 DescribedBy, 249 #[doc(alias = "ATK_RELATION_DESCRIPTION_FOR")] 250 DescriptionFor, 251 #[doc(alias = "ATK_RELATION_NODE_PARENT_OF")] 252 NodeParentOf, 253 #[doc(alias = "ATK_RELATION_DETAILS")] 254 Details, 255 #[doc(alias = "ATK_RELATION_DETAILS_FOR")] 256 DetailsFor, 257 #[doc(alias = "ATK_RELATION_ERROR_MESSAGE")] 258 ErrorMessage, 259 #[doc(alias = "ATK_RELATION_ERROR_FOR")] 260 ErrorFor, 261 #[doc(alias = "ATK_RELATION_LAST_DEFINED")] 262 LastDefined, 263 #[doc(hidden)] 264 __Unknown(i32), 265 } 266 267 impl RelationType { 268 #[doc(alias = "atk_relation_type_for_name")] for_name(name: &str) -> RelationType269 pub fn for_name(name: &str) -> RelationType { 270 assert_initialized_main_thread!(); 271 unsafe { from_glib(ffi::atk_relation_type_for_name(name.to_glib_none().0)) } 272 } 273 274 #[doc(alias = "atk_relation_type_get_name")] 275 #[doc(alias = "get_name")] name(self) -> Option<glib::GString>276 pub fn name(self) -> Option<glib::GString> { 277 assert_initialized_main_thread!(); 278 unsafe { from_glib_none(ffi::atk_relation_type_get_name(self.into_glib())) } 279 } 280 } 281 282 impl fmt::Display for RelationType { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result283 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 284 write!( 285 f, 286 "RelationType::{}", 287 match *self { 288 Self::Null => "Null", 289 Self::ControlledBy => "ControlledBy", 290 Self::ControllerFor => "ControllerFor", 291 Self::LabelFor => "LabelFor", 292 Self::LabelledBy => "LabelledBy", 293 Self::MemberOf => "MemberOf", 294 Self::NodeChildOf => "NodeChildOf", 295 Self::FlowsTo => "FlowsTo", 296 Self::FlowsFrom => "FlowsFrom", 297 Self::SubwindowOf => "SubwindowOf", 298 Self::Embeds => "Embeds", 299 Self::EmbeddedBy => "EmbeddedBy", 300 Self::PopupFor => "PopupFor", 301 Self::ParentWindowOf => "ParentWindowOf", 302 Self::DescribedBy => "DescribedBy", 303 Self::DescriptionFor => "DescriptionFor", 304 Self::NodeParentOf => "NodeParentOf", 305 Self::Details => "Details", 306 Self::DetailsFor => "DetailsFor", 307 Self::ErrorMessage => "ErrorMessage", 308 Self::ErrorFor => "ErrorFor", 309 Self::LastDefined => "LastDefined", 310 _ => "Unknown", 311 } 312 ) 313 } 314 } 315 316 #[doc(hidden)] 317 impl IntoGlib for RelationType { 318 type GlibType = ffi::AtkRelationType; 319 into_glib(self) -> ffi::AtkRelationType320 fn into_glib(self) -> ffi::AtkRelationType { 321 match self { 322 Self::Null => ffi::ATK_RELATION_NULL, 323 Self::ControlledBy => ffi::ATK_RELATION_CONTROLLED_BY, 324 Self::ControllerFor => ffi::ATK_RELATION_CONTROLLER_FOR, 325 Self::LabelFor => ffi::ATK_RELATION_LABEL_FOR, 326 Self::LabelledBy => ffi::ATK_RELATION_LABELLED_BY, 327 Self::MemberOf => ffi::ATK_RELATION_MEMBER_OF, 328 Self::NodeChildOf => ffi::ATK_RELATION_NODE_CHILD_OF, 329 Self::FlowsTo => ffi::ATK_RELATION_FLOWS_TO, 330 Self::FlowsFrom => ffi::ATK_RELATION_FLOWS_FROM, 331 Self::SubwindowOf => ffi::ATK_RELATION_SUBWINDOW_OF, 332 Self::Embeds => ffi::ATK_RELATION_EMBEDS, 333 Self::EmbeddedBy => ffi::ATK_RELATION_EMBEDDED_BY, 334 Self::PopupFor => ffi::ATK_RELATION_POPUP_FOR, 335 Self::ParentWindowOf => ffi::ATK_RELATION_PARENT_WINDOW_OF, 336 Self::DescribedBy => ffi::ATK_RELATION_DESCRIBED_BY, 337 Self::DescriptionFor => ffi::ATK_RELATION_DESCRIPTION_FOR, 338 Self::NodeParentOf => ffi::ATK_RELATION_NODE_PARENT_OF, 339 Self::Details => ffi::ATK_RELATION_DETAILS, 340 Self::DetailsFor => ffi::ATK_RELATION_DETAILS_FOR, 341 Self::ErrorMessage => ffi::ATK_RELATION_ERROR_MESSAGE, 342 Self::ErrorFor => ffi::ATK_RELATION_ERROR_FOR, 343 Self::LastDefined => ffi::ATK_RELATION_LAST_DEFINED, 344 Self::__Unknown(value) => value, 345 } 346 } 347 } 348 349 #[doc(hidden)] 350 impl FromGlib<ffi::AtkRelationType> for RelationType { from_glib(value: ffi::AtkRelationType) -> Self351 unsafe fn from_glib(value: ffi::AtkRelationType) -> Self { 352 skip_assert_initialized!(); 353 match value { 354 ffi::ATK_RELATION_NULL => Self::Null, 355 ffi::ATK_RELATION_CONTROLLED_BY => Self::ControlledBy, 356 ffi::ATK_RELATION_CONTROLLER_FOR => Self::ControllerFor, 357 ffi::ATK_RELATION_LABEL_FOR => Self::LabelFor, 358 ffi::ATK_RELATION_LABELLED_BY => Self::LabelledBy, 359 ffi::ATK_RELATION_MEMBER_OF => Self::MemberOf, 360 ffi::ATK_RELATION_NODE_CHILD_OF => Self::NodeChildOf, 361 ffi::ATK_RELATION_FLOWS_TO => Self::FlowsTo, 362 ffi::ATK_RELATION_FLOWS_FROM => Self::FlowsFrom, 363 ffi::ATK_RELATION_SUBWINDOW_OF => Self::SubwindowOf, 364 ffi::ATK_RELATION_EMBEDS => Self::Embeds, 365 ffi::ATK_RELATION_EMBEDDED_BY => Self::EmbeddedBy, 366 ffi::ATK_RELATION_POPUP_FOR => Self::PopupFor, 367 ffi::ATK_RELATION_PARENT_WINDOW_OF => Self::ParentWindowOf, 368 ffi::ATK_RELATION_DESCRIBED_BY => Self::DescribedBy, 369 ffi::ATK_RELATION_DESCRIPTION_FOR => Self::DescriptionFor, 370 ffi::ATK_RELATION_NODE_PARENT_OF => Self::NodeParentOf, 371 ffi::ATK_RELATION_DETAILS => Self::Details, 372 ffi::ATK_RELATION_DETAILS_FOR => Self::DetailsFor, 373 ffi::ATK_RELATION_ERROR_MESSAGE => Self::ErrorMessage, 374 ffi::ATK_RELATION_ERROR_FOR => Self::ErrorFor, 375 ffi::ATK_RELATION_LAST_DEFINED => Self::LastDefined, 376 value => Self::__Unknown(value), 377 } 378 } 379 } 380 381 impl StaticType for RelationType { static_type() -> Type382 fn static_type() -> Type { 383 unsafe { from_glib(ffi::atk_relation_type_get_type()) } 384 } 385 } 386 387 impl glib::value::ValueType for RelationType { 388 type Type = Self; 389 } 390 391 unsafe impl<'a> FromValue<'a> for RelationType { 392 type Checker = glib::value::GenericValueTypeChecker<Self>; 393 from_value(value: &'a glib::Value) -> Self394 unsafe fn from_value(value: &'a glib::Value) -> Self { 395 skip_assert_initialized!(); 396 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 397 } 398 } 399 400 impl ToValue for RelationType { to_value(&self) -> glib::Value401 fn to_value(&self) -> glib::Value { 402 let mut value = glib::Value::for_value_type::<Self>(); 403 unsafe { 404 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 405 } 406 value 407 } 408 value_type(&self) -> glib::Type409 fn value_type(&self) -> glib::Type { 410 Self::static_type() 411 } 412 } 413 414 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 415 #[non_exhaustive] 416 #[doc(alias = "AtkRole")] 417 pub enum Role { 418 #[doc(alias = "ATK_ROLE_INVALID")] 419 Invalid, 420 #[doc(alias = "ATK_ROLE_ACCEL_LABEL")] 421 AcceleratorLabel, 422 #[doc(alias = "ATK_ROLE_ALERT")] 423 Alert, 424 #[doc(alias = "ATK_ROLE_ANIMATION")] 425 Animation, 426 #[doc(alias = "ATK_ROLE_ARROW")] 427 Arrow, 428 #[doc(alias = "ATK_ROLE_CALENDAR")] 429 Calendar, 430 #[doc(alias = "ATK_ROLE_CANVAS")] 431 Canvas, 432 #[doc(alias = "ATK_ROLE_CHECK_BOX")] 433 CheckBox, 434 #[doc(alias = "ATK_ROLE_CHECK_MENU_ITEM")] 435 CheckMenuItem, 436 #[doc(alias = "ATK_ROLE_COLOR_CHOOSER")] 437 ColorChooser, 438 #[doc(alias = "ATK_ROLE_COLUMN_HEADER")] 439 ColumnHeader, 440 #[doc(alias = "ATK_ROLE_COMBO_BOX")] 441 ComboBox, 442 #[doc(alias = "ATK_ROLE_DATE_EDITOR")] 443 DateEditor, 444 #[doc(alias = "ATK_ROLE_DESKTOP_ICON")] 445 DesktopIcon, 446 #[doc(alias = "ATK_ROLE_DESKTOP_FRAME")] 447 DesktopFrame, 448 #[doc(alias = "ATK_ROLE_DIAL")] 449 Dial, 450 #[doc(alias = "ATK_ROLE_DIALOG")] 451 Dialog, 452 #[doc(alias = "ATK_ROLE_DIRECTORY_PANE")] 453 DirectoryPane, 454 #[doc(alias = "ATK_ROLE_DRAWING_AREA")] 455 DrawingArea, 456 #[doc(alias = "ATK_ROLE_FILE_CHOOSER")] 457 FileChooser, 458 #[doc(alias = "ATK_ROLE_FILLER")] 459 Filler, 460 #[doc(alias = "ATK_ROLE_FONT_CHOOSER")] 461 FontChooser, 462 #[doc(alias = "ATK_ROLE_FRAME")] 463 Frame, 464 #[doc(alias = "ATK_ROLE_GLASS_PANE")] 465 GlassPane, 466 #[doc(alias = "ATK_ROLE_HTML_CONTAINER")] 467 HtmlContainer, 468 #[doc(alias = "ATK_ROLE_ICON")] 469 Icon, 470 #[doc(alias = "ATK_ROLE_IMAGE")] 471 Image, 472 #[doc(alias = "ATK_ROLE_INTERNAL_FRAME")] 473 InternalFrame, 474 #[doc(alias = "ATK_ROLE_LABEL")] 475 Label, 476 #[doc(alias = "ATK_ROLE_LAYERED_PANE")] 477 LayeredPane, 478 #[doc(alias = "ATK_ROLE_LIST")] 479 List, 480 #[doc(alias = "ATK_ROLE_LIST_ITEM")] 481 ListItem, 482 #[doc(alias = "ATK_ROLE_MENU")] 483 Menu, 484 #[doc(alias = "ATK_ROLE_MENU_BAR")] 485 MenuBar, 486 #[doc(alias = "ATK_ROLE_MENU_ITEM")] 487 MenuItem, 488 #[doc(alias = "ATK_ROLE_OPTION_PANE")] 489 OptionPane, 490 #[doc(alias = "ATK_ROLE_PAGE_TAB")] 491 PageTab, 492 #[doc(alias = "ATK_ROLE_PAGE_TAB_LIST")] 493 PageTabList, 494 #[doc(alias = "ATK_ROLE_PANEL")] 495 Panel, 496 #[doc(alias = "ATK_ROLE_PASSWORD_TEXT")] 497 PasswordText, 498 #[doc(alias = "ATK_ROLE_POPUP_MENU")] 499 PopupMenu, 500 #[doc(alias = "ATK_ROLE_PROGRESS_BAR")] 501 ProgressBar, 502 #[doc(alias = "ATK_ROLE_PUSH_BUTTON")] 503 PushButton, 504 #[doc(alias = "ATK_ROLE_RADIO_BUTTON")] 505 RadioButton, 506 #[doc(alias = "ATK_ROLE_RADIO_MENU_ITEM")] 507 RadioMenuItem, 508 #[doc(alias = "ATK_ROLE_ROOT_PANE")] 509 RootPane, 510 #[doc(alias = "ATK_ROLE_ROW_HEADER")] 511 RowHeader, 512 #[doc(alias = "ATK_ROLE_SCROLL_BAR")] 513 ScrollBar, 514 #[doc(alias = "ATK_ROLE_SCROLL_PANE")] 515 ScrollPane, 516 #[doc(alias = "ATK_ROLE_SEPARATOR")] 517 Separator, 518 #[doc(alias = "ATK_ROLE_SLIDER")] 519 Slider, 520 #[doc(alias = "ATK_ROLE_SPLIT_PANE")] 521 SplitPane, 522 #[doc(alias = "ATK_ROLE_SPIN_BUTTON")] 523 SpinButton, 524 #[doc(alias = "ATK_ROLE_STATUSBAR")] 525 Statusbar, 526 #[doc(alias = "ATK_ROLE_TABLE")] 527 Table, 528 #[doc(alias = "ATK_ROLE_TABLE_CELL")] 529 TableCell, 530 #[doc(alias = "ATK_ROLE_TABLE_COLUMN_HEADER")] 531 TableColumnHeader, 532 #[doc(alias = "ATK_ROLE_TABLE_ROW_HEADER")] 533 TableRowHeader, 534 #[doc(alias = "ATK_ROLE_TEAR_OFF_MENU_ITEM")] 535 TearOffMenuItem, 536 #[doc(alias = "ATK_ROLE_TERMINAL")] 537 Terminal, 538 #[doc(alias = "ATK_ROLE_TEXT")] 539 Text, 540 #[doc(alias = "ATK_ROLE_TOGGLE_BUTTON")] 541 ToggleButton, 542 #[doc(alias = "ATK_ROLE_TOOL_BAR")] 543 ToolBar, 544 #[doc(alias = "ATK_ROLE_TOOL_TIP")] 545 ToolTip, 546 #[doc(alias = "ATK_ROLE_TREE")] 547 Tree, 548 #[doc(alias = "ATK_ROLE_TREE_TABLE")] 549 TreeTable, 550 #[doc(alias = "ATK_ROLE_UNKNOWN")] 551 Unknown, 552 #[doc(alias = "ATK_ROLE_VIEWPORT")] 553 Viewport, 554 #[doc(alias = "ATK_ROLE_WINDOW")] 555 Window, 556 #[doc(alias = "ATK_ROLE_HEADER")] 557 Header, 558 #[doc(alias = "ATK_ROLE_FOOTER")] 559 Footer, 560 #[doc(alias = "ATK_ROLE_PARAGRAPH")] 561 Paragraph, 562 #[doc(alias = "ATK_ROLE_RULER")] 563 Ruler, 564 #[doc(alias = "ATK_ROLE_APPLICATION")] 565 Application, 566 #[doc(alias = "ATK_ROLE_AUTOCOMPLETE")] 567 Autocomplete, 568 #[doc(alias = "ATK_ROLE_EDITBAR")] 569 EditBar, 570 #[doc(alias = "ATK_ROLE_EMBEDDED")] 571 Embedded, 572 #[doc(alias = "ATK_ROLE_ENTRY")] 573 Entry, 574 #[doc(alias = "ATK_ROLE_CHART")] 575 Chart, 576 #[doc(alias = "ATK_ROLE_CAPTION")] 577 Caption, 578 #[doc(alias = "ATK_ROLE_DOCUMENT_FRAME")] 579 DocumentFrame, 580 #[doc(alias = "ATK_ROLE_HEADING")] 581 Heading, 582 #[doc(alias = "ATK_ROLE_PAGE")] 583 Page, 584 #[doc(alias = "ATK_ROLE_SECTION")] 585 Section, 586 #[doc(alias = "ATK_ROLE_REDUNDANT_OBJECT")] 587 RedundantObject, 588 #[doc(alias = "ATK_ROLE_FORM")] 589 Form, 590 #[doc(alias = "ATK_ROLE_LINK")] 591 Link, 592 #[doc(alias = "ATK_ROLE_INPUT_METHOD_WINDOW")] 593 InputMethodWindow, 594 #[doc(alias = "ATK_ROLE_TABLE_ROW")] 595 TableRow, 596 #[doc(alias = "ATK_ROLE_TREE_ITEM")] 597 TreeItem, 598 #[doc(alias = "ATK_ROLE_DOCUMENT_SPREADSHEET")] 599 DocumentSpreadsheet, 600 #[doc(alias = "ATK_ROLE_DOCUMENT_PRESENTATION")] 601 DocumentPresentation, 602 #[doc(alias = "ATK_ROLE_DOCUMENT_TEXT")] 603 DocumentText, 604 #[doc(alias = "ATK_ROLE_DOCUMENT_WEB")] 605 DocumentWeb, 606 #[doc(alias = "ATK_ROLE_DOCUMENT_EMAIL")] 607 DocumentEmail, 608 #[doc(alias = "ATK_ROLE_COMMENT")] 609 Comment, 610 #[doc(alias = "ATK_ROLE_LIST_BOX")] 611 ListBox, 612 #[doc(alias = "ATK_ROLE_GROUPING")] 613 Grouping, 614 #[doc(alias = "ATK_ROLE_IMAGE_MAP")] 615 ImageMap, 616 #[doc(alias = "ATK_ROLE_NOTIFICATION")] 617 Notification, 618 #[doc(alias = "ATK_ROLE_INFO_BAR")] 619 InfoBar, 620 #[doc(alias = "ATK_ROLE_LEVEL_BAR")] 621 LevelBar, 622 #[doc(alias = "ATK_ROLE_TITLE_BAR")] 623 TitleBar, 624 #[doc(alias = "ATK_ROLE_BLOCK_QUOTE")] 625 BlockQuote, 626 #[doc(alias = "ATK_ROLE_AUDIO")] 627 Audio, 628 #[doc(alias = "ATK_ROLE_VIDEO")] 629 Video, 630 #[doc(alias = "ATK_ROLE_DEFINITION")] 631 Definition, 632 #[doc(alias = "ATK_ROLE_ARTICLE")] 633 Article, 634 #[doc(alias = "ATK_ROLE_LANDMARK")] 635 Landmark, 636 #[doc(alias = "ATK_ROLE_LOG")] 637 Log, 638 #[doc(alias = "ATK_ROLE_MARQUEE")] 639 Marquee, 640 #[doc(alias = "ATK_ROLE_MATH")] 641 Math, 642 #[doc(alias = "ATK_ROLE_RATING")] 643 Rating, 644 #[doc(alias = "ATK_ROLE_TIMER")] 645 Timer, 646 #[doc(alias = "ATK_ROLE_DESCRIPTION_LIST")] 647 DescriptionList, 648 #[doc(alias = "ATK_ROLE_DESCRIPTION_TERM")] 649 DescriptionTerm, 650 #[doc(alias = "ATK_ROLE_DESCRIPTION_VALUE")] 651 DescriptionValue, 652 #[doc(alias = "ATK_ROLE_STATIC")] 653 Static, 654 #[doc(alias = "ATK_ROLE_MATH_FRACTION")] 655 MathFraction, 656 #[doc(alias = "ATK_ROLE_MATH_ROOT")] 657 MathRoot, 658 #[doc(alias = "ATK_ROLE_SUBSCRIPT")] 659 Subscript, 660 #[doc(alias = "ATK_ROLE_SUPERSCRIPT")] 661 Superscript, 662 #[doc(alias = "ATK_ROLE_FOOTNOTE")] 663 Footnote, 664 #[doc(alias = "ATK_ROLE_CONTENT_DELETION")] 665 ContentDeletion, 666 #[doc(alias = "ATK_ROLE_CONTENT_INSERTION")] 667 ContentInsertion, 668 #[doc(alias = "ATK_ROLE_MARK")] 669 Mark, 670 #[doc(alias = "ATK_ROLE_SUGGESTION")] 671 Suggestion, 672 #[doc(alias = "ATK_ROLE_LAST_DEFINED")] 673 LastDefined, 674 #[doc(hidden)] 675 __Unknown(i32), 676 } 677 678 impl Role { 679 #[doc(alias = "atk_role_for_name")] for_name(name: &str) -> Role680 pub fn for_name(name: &str) -> Role { 681 assert_initialized_main_thread!(); 682 unsafe { from_glib(ffi::atk_role_for_name(name.to_glib_none().0)) } 683 } 684 685 #[doc(alias = "atk_role_get_localized_name")] 686 #[doc(alias = "get_localized_name")] localized_name(self) -> Option<glib::GString>687 pub fn localized_name(self) -> Option<glib::GString> { 688 assert_initialized_main_thread!(); 689 unsafe { from_glib_none(ffi::atk_role_get_localized_name(self.into_glib())) } 690 } 691 692 #[doc(alias = "atk_role_get_name")] 693 #[doc(alias = "get_name")] name(self) -> Option<glib::GString>694 pub fn name(self) -> Option<glib::GString> { 695 assert_initialized_main_thread!(); 696 unsafe { from_glib_none(ffi::atk_role_get_name(self.into_glib())) } 697 } 698 } 699 700 impl fmt::Display for Role { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result701 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 702 write!( 703 f, 704 "Role::{}", 705 match *self { 706 Self::Invalid => "Invalid", 707 Self::AcceleratorLabel => "AcceleratorLabel", 708 Self::Alert => "Alert", 709 Self::Animation => "Animation", 710 Self::Arrow => "Arrow", 711 Self::Calendar => "Calendar", 712 Self::Canvas => "Canvas", 713 Self::CheckBox => "CheckBox", 714 Self::CheckMenuItem => "CheckMenuItem", 715 Self::ColorChooser => "ColorChooser", 716 Self::ColumnHeader => "ColumnHeader", 717 Self::ComboBox => "ComboBox", 718 Self::DateEditor => "DateEditor", 719 Self::DesktopIcon => "DesktopIcon", 720 Self::DesktopFrame => "DesktopFrame", 721 Self::Dial => "Dial", 722 Self::Dialog => "Dialog", 723 Self::DirectoryPane => "DirectoryPane", 724 Self::DrawingArea => "DrawingArea", 725 Self::FileChooser => "FileChooser", 726 Self::Filler => "Filler", 727 Self::FontChooser => "FontChooser", 728 Self::Frame => "Frame", 729 Self::GlassPane => "GlassPane", 730 Self::HtmlContainer => "HtmlContainer", 731 Self::Icon => "Icon", 732 Self::Image => "Image", 733 Self::InternalFrame => "InternalFrame", 734 Self::Label => "Label", 735 Self::LayeredPane => "LayeredPane", 736 Self::List => "List", 737 Self::ListItem => "ListItem", 738 Self::Menu => "Menu", 739 Self::MenuBar => "MenuBar", 740 Self::MenuItem => "MenuItem", 741 Self::OptionPane => "OptionPane", 742 Self::PageTab => "PageTab", 743 Self::PageTabList => "PageTabList", 744 Self::Panel => "Panel", 745 Self::PasswordText => "PasswordText", 746 Self::PopupMenu => "PopupMenu", 747 Self::ProgressBar => "ProgressBar", 748 Self::PushButton => "PushButton", 749 Self::RadioButton => "RadioButton", 750 Self::RadioMenuItem => "RadioMenuItem", 751 Self::RootPane => "RootPane", 752 Self::RowHeader => "RowHeader", 753 Self::ScrollBar => "ScrollBar", 754 Self::ScrollPane => "ScrollPane", 755 Self::Separator => "Separator", 756 Self::Slider => "Slider", 757 Self::SplitPane => "SplitPane", 758 Self::SpinButton => "SpinButton", 759 Self::Statusbar => "Statusbar", 760 Self::Table => "Table", 761 Self::TableCell => "TableCell", 762 Self::TableColumnHeader => "TableColumnHeader", 763 Self::TableRowHeader => "TableRowHeader", 764 Self::TearOffMenuItem => "TearOffMenuItem", 765 Self::Terminal => "Terminal", 766 Self::Text => "Text", 767 Self::ToggleButton => "ToggleButton", 768 Self::ToolBar => "ToolBar", 769 Self::ToolTip => "ToolTip", 770 Self::Tree => "Tree", 771 Self::TreeTable => "TreeTable", 772 Self::Unknown => "Unknown", 773 Self::Viewport => "Viewport", 774 Self::Window => "Window", 775 Self::Header => "Header", 776 Self::Footer => "Footer", 777 Self::Paragraph => "Paragraph", 778 Self::Ruler => "Ruler", 779 Self::Application => "Application", 780 Self::Autocomplete => "Autocomplete", 781 Self::EditBar => "EditBar", 782 Self::Embedded => "Embedded", 783 Self::Entry => "Entry", 784 Self::Chart => "Chart", 785 Self::Caption => "Caption", 786 Self::DocumentFrame => "DocumentFrame", 787 Self::Heading => "Heading", 788 Self::Page => "Page", 789 Self::Section => "Section", 790 Self::RedundantObject => "RedundantObject", 791 Self::Form => "Form", 792 Self::Link => "Link", 793 Self::InputMethodWindow => "InputMethodWindow", 794 Self::TableRow => "TableRow", 795 Self::TreeItem => "TreeItem", 796 Self::DocumentSpreadsheet => "DocumentSpreadsheet", 797 Self::DocumentPresentation => "DocumentPresentation", 798 Self::DocumentText => "DocumentText", 799 Self::DocumentWeb => "DocumentWeb", 800 Self::DocumentEmail => "DocumentEmail", 801 Self::Comment => "Comment", 802 Self::ListBox => "ListBox", 803 Self::Grouping => "Grouping", 804 Self::ImageMap => "ImageMap", 805 Self::Notification => "Notification", 806 Self::InfoBar => "InfoBar", 807 Self::LevelBar => "LevelBar", 808 Self::TitleBar => "TitleBar", 809 Self::BlockQuote => "BlockQuote", 810 Self::Audio => "Audio", 811 Self::Video => "Video", 812 Self::Definition => "Definition", 813 Self::Article => "Article", 814 Self::Landmark => "Landmark", 815 Self::Log => "Log", 816 Self::Marquee => "Marquee", 817 Self::Math => "Math", 818 Self::Rating => "Rating", 819 Self::Timer => "Timer", 820 Self::DescriptionList => "DescriptionList", 821 Self::DescriptionTerm => "DescriptionTerm", 822 Self::DescriptionValue => "DescriptionValue", 823 Self::Static => "Static", 824 Self::MathFraction => "MathFraction", 825 Self::MathRoot => "MathRoot", 826 Self::Subscript => "Subscript", 827 Self::Superscript => "Superscript", 828 Self::Footnote => "Footnote", 829 Self::ContentDeletion => "ContentDeletion", 830 Self::ContentInsertion => "ContentInsertion", 831 Self::Mark => "Mark", 832 Self::Suggestion => "Suggestion", 833 Self::LastDefined => "LastDefined", 834 _ => "Unknown", 835 } 836 ) 837 } 838 } 839 840 #[doc(hidden)] 841 impl IntoGlib for Role { 842 type GlibType = ffi::AtkRole; 843 into_glib(self) -> ffi::AtkRole844 fn into_glib(self) -> ffi::AtkRole { 845 match self { 846 Self::Invalid => ffi::ATK_ROLE_INVALID, 847 Self::AcceleratorLabel => ffi::ATK_ROLE_ACCEL_LABEL, 848 Self::Alert => ffi::ATK_ROLE_ALERT, 849 Self::Animation => ffi::ATK_ROLE_ANIMATION, 850 Self::Arrow => ffi::ATK_ROLE_ARROW, 851 Self::Calendar => ffi::ATK_ROLE_CALENDAR, 852 Self::Canvas => ffi::ATK_ROLE_CANVAS, 853 Self::CheckBox => ffi::ATK_ROLE_CHECK_BOX, 854 Self::CheckMenuItem => ffi::ATK_ROLE_CHECK_MENU_ITEM, 855 Self::ColorChooser => ffi::ATK_ROLE_COLOR_CHOOSER, 856 Self::ColumnHeader => ffi::ATK_ROLE_COLUMN_HEADER, 857 Self::ComboBox => ffi::ATK_ROLE_COMBO_BOX, 858 Self::DateEditor => ffi::ATK_ROLE_DATE_EDITOR, 859 Self::DesktopIcon => ffi::ATK_ROLE_DESKTOP_ICON, 860 Self::DesktopFrame => ffi::ATK_ROLE_DESKTOP_FRAME, 861 Self::Dial => ffi::ATK_ROLE_DIAL, 862 Self::Dialog => ffi::ATK_ROLE_DIALOG, 863 Self::DirectoryPane => ffi::ATK_ROLE_DIRECTORY_PANE, 864 Self::DrawingArea => ffi::ATK_ROLE_DRAWING_AREA, 865 Self::FileChooser => ffi::ATK_ROLE_FILE_CHOOSER, 866 Self::Filler => ffi::ATK_ROLE_FILLER, 867 Self::FontChooser => ffi::ATK_ROLE_FONT_CHOOSER, 868 Self::Frame => ffi::ATK_ROLE_FRAME, 869 Self::GlassPane => ffi::ATK_ROLE_GLASS_PANE, 870 Self::HtmlContainer => ffi::ATK_ROLE_HTML_CONTAINER, 871 Self::Icon => ffi::ATK_ROLE_ICON, 872 Self::Image => ffi::ATK_ROLE_IMAGE, 873 Self::InternalFrame => ffi::ATK_ROLE_INTERNAL_FRAME, 874 Self::Label => ffi::ATK_ROLE_LABEL, 875 Self::LayeredPane => ffi::ATK_ROLE_LAYERED_PANE, 876 Self::List => ffi::ATK_ROLE_LIST, 877 Self::ListItem => ffi::ATK_ROLE_LIST_ITEM, 878 Self::Menu => ffi::ATK_ROLE_MENU, 879 Self::MenuBar => ffi::ATK_ROLE_MENU_BAR, 880 Self::MenuItem => ffi::ATK_ROLE_MENU_ITEM, 881 Self::OptionPane => ffi::ATK_ROLE_OPTION_PANE, 882 Self::PageTab => ffi::ATK_ROLE_PAGE_TAB, 883 Self::PageTabList => ffi::ATK_ROLE_PAGE_TAB_LIST, 884 Self::Panel => ffi::ATK_ROLE_PANEL, 885 Self::PasswordText => ffi::ATK_ROLE_PASSWORD_TEXT, 886 Self::PopupMenu => ffi::ATK_ROLE_POPUP_MENU, 887 Self::ProgressBar => ffi::ATK_ROLE_PROGRESS_BAR, 888 Self::PushButton => ffi::ATK_ROLE_PUSH_BUTTON, 889 Self::RadioButton => ffi::ATK_ROLE_RADIO_BUTTON, 890 Self::RadioMenuItem => ffi::ATK_ROLE_RADIO_MENU_ITEM, 891 Self::RootPane => ffi::ATK_ROLE_ROOT_PANE, 892 Self::RowHeader => ffi::ATK_ROLE_ROW_HEADER, 893 Self::ScrollBar => ffi::ATK_ROLE_SCROLL_BAR, 894 Self::ScrollPane => ffi::ATK_ROLE_SCROLL_PANE, 895 Self::Separator => ffi::ATK_ROLE_SEPARATOR, 896 Self::Slider => ffi::ATK_ROLE_SLIDER, 897 Self::SplitPane => ffi::ATK_ROLE_SPLIT_PANE, 898 Self::SpinButton => ffi::ATK_ROLE_SPIN_BUTTON, 899 Self::Statusbar => ffi::ATK_ROLE_STATUSBAR, 900 Self::Table => ffi::ATK_ROLE_TABLE, 901 Self::TableCell => ffi::ATK_ROLE_TABLE_CELL, 902 Self::TableColumnHeader => ffi::ATK_ROLE_TABLE_COLUMN_HEADER, 903 Self::TableRowHeader => ffi::ATK_ROLE_TABLE_ROW_HEADER, 904 Self::TearOffMenuItem => ffi::ATK_ROLE_TEAR_OFF_MENU_ITEM, 905 Self::Terminal => ffi::ATK_ROLE_TERMINAL, 906 Self::Text => ffi::ATK_ROLE_TEXT, 907 Self::ToggleButton => ffi::ATK_ROLE_TOGGLE_BUTTON, 908 Self::ToolBar => ffi::ATK_ROLE_TOOL_BAR, 909 Self::ToolTip => ffi::ATK_ROLE_TOOL_TIP, 910 Self::Tree => ffi::ATK_ROLE_TREE, 911 Self::TreeTable => ffi::ATK_ROLE_TREE_TABLE, 912 Self::Unknown => ffi::ATK_ROLE_UNKNOWN, 913 Self::Viewport => ffi::ATK_ROLE_VIEWPORT, 914 Self::Window => ffi::ATK_ROLE_WINDOW, 915 Self::Header => ffi::ATK_ROLE_HEADER, 916 Self::Footer => ffi::ATK_ROLE_FOOTER, 917 Self::Paragraph => ffi::ATK_ROLE_PARAGRAPH, 918 Self::Ruler => ffi::ATK_ROLE_RULER, 919 Self::Application => ffi::ATK_ROLE_APPLICATION, 920 Self::Autocomplete => ffi::ATK_ROLE_AUTOCOMPLETE, 921 Self::EditBar => ffi::ATK_ROLE_EDITBAR, 922 Self::Embedded => ffi::ATK_ROLE_EMBEDDED, 923 Self::Entry => ffi::ATK_ROLE_ENTRY, 924 Self::Chart => ffi::ATK_ROLE_CHART, 925 Self::Caption => ffi::ATK_ROLE_CAPTION, 926 Self::DocumentFrame => ffi::ATK_ROLE_DOCUMENT_FRAME, 927 Self::Heading => ffi::ATK_ROLE_HEADING, 928 Self::Page => ffi::ATK_ROLE_PAGE, 929 Self::Section => ffi::ATK_ROLE_SECTION, 930 Self::RedundantObject => ffi::ATK_ROLE_REDUNDANT_OBJECT, 931 Self::Form => ffi::ATK_ROLE_FORM, 932 Self::Link => ffi::ATK_ROLE_LINK, 933 Self::InputMethodWindow => ffi::ATK_ROLE_INPUT_METHOD_WINDOW, 934 Self::TableRow => ffi::ATK_ROLE_TABLE_ROW, 935 Self::TreeItem => ffi::ATK_ROLE_TREE_ITEM, 936 Self::DocumentSpreadsheet => ffi::ATK_ROLE_DOCUMENT_SPREADSHEET, 937 Self::DocumentPresentation => ffi::ATK_ROLE_DOCUMENT_PRESENTATION, 938 Self::DocumentText => ffi::ATK_ROLE_DOCUMENT_TEXT, 939 Self::DocumentWeb => ffi::ATK_ROLE_DOCUMENT_WEB, 940 Self::DocumentEmail => ffi::ATK_ROLE_DOCUMENT_EMAIL, 941 Self::Comment => ffi::ATK_ROLE_COMMENT, 942 Self::ListBox => ffi::ATK_ROLE_LIST_BOX, 943 Self::Grouping => ffi::ATK_ROLE_GROUPING, 944 Self::ImageMap => ffi::ATK_ROLE_IMAGE_MAP, 945 Self::Notification => ffi::ATK_ROLE_NOTIFICATION, 946 Self::InfoBar => ffi::ATK_ROLE_INFO_BAR, 947 Self::LevelBar => ffi::ATK_ROLE_LEVEL_BAR, 948 Self::TitleBar => ffi::ATK_ROLE_TITLE_BAR, 949 Self::BlockQuote => ffi::ATK_ROLE_BLOCK_QUOTE, 950 Self::Audio => ffi::ATK_ROLE_AUDIO, 951 Self::Video => ffi::ATK_ROLE_VIDEO, 952 Self::Definition => ffi::ATK_ROLE_DEFINITION, 953 Self::Article => ffi::ATK_ROLE_ARTICLE, 954 Self::Landmark => ffi::ATK_ROLE_LANDMARK, 955 Self::Log => ffi::ATK_ROLE_LOG, 956 Self::Marquee => ffi::ATK_ROLE_MARQUEE, 957 Self::Math => ffi::ATK_ROLE_MATH, 958 Self::Rating => ffi::ATK_ROLE_RATING, 959 Self::Timer => ffi::ATK_ROLE_TIMER, 960 Self::DescriptionList => ffi::ATK_ROLE_DESCRIPTION_LIST, 961 Self::DescriptionTerm => ffi::ATK_ROLE_DESCRIPTION_TERM, 962 Self::DescriptionValue => ffi::ATK_ROLE_DESCRIPTION_VALUE, 963 Self::Static => ffi::ATK_ROLE_STATIC, 964 Self::MathFraction => ffi::ATK_ROLE_MATH_FRACTION, 965 Self::MathRoot => ffi::ATK_ROLE_MATH_ROOT, 966 Self::Subscript => ffi::ATK_ROLE_SUBSCRIPT, 967 Self::Superscript => ffi::ATK_ROLE_SUPERSCRIPT, 968 Self::Footnote => ffi::ATK_ROLE_FOOTNOTE, 969 Self::ContentDeletion => ffi::ATK_ROLE_CONTENT_DELETION, 970 Self::ContentInsertion => ffi::ATK_ROLE_CONTENT_INSERTION, 971 Self::Mark => ffi::ATK_ROLE_MARK, 972 Self::Suggestion => ffi::ATK_ROLE_SUGGESTION, 973 Self::LastDefined => ffi::ATK_ROLE_LAST_DEFINED, 974 Self::__Unknown(value) => value, 975 } 976 } 977 } 978 979 #[doc(hidden)] 980 impl FromGlib<ffi::AtkRole> for Role { from_glib(value: ffi::AtkRole) -> Self981 unsafe fn from_glib(value: ffi::AtkRole) -> Self { 982 skip_assert_initialized!(); 983 match value { 984 ffi::ATK_ROLE_INVALID => Self::Invalid, 985 ffi::ATK_ROLE_ACCEL_LABEL => Self::AcceleratorLabel, 986 ffi::ATK_ROLE_ALERT => Self::Alert, 987 ffi::ATK_ROLE_ANIMATION => Self::Animation, 988 ffi::ATK_ROLE_ARROW => Self::Arrow, 989 ffi::ATK_ROLE_CALENDAR => Self::Calendar, 990 ffi::ATK_ROLE_CANVAS => Self::Canvas, 991 ffi::ATK_ROLE_CHECK_BOX => Self::CheckBox, 992 ffi::ATK_ROLE_CHECK_MENU_ITEM => Self::CheckMenuItem, 993 ffi::ATK_ROLE_COLOR_CHOOSER => Self::ColorChooser, 994 ffi::ATK_ROLE_COLUMN_HEADER => Self::ColumnHeader, 995 ffi::ATK_ROLE_COMBO_BOX => Self::ComboBox, 996 ffi::ATK_ROLE_DATE_EDITOR => Self::DateEditor, 997 ffi::ATK_ROLE_DESKTOP_ICON => Self::DesktopIcon, 998 ffi::ATK_ROLE_DESKTOP_FRAME => Self::DesktopFrame, 999 ffi::ATK_ROLE_DIAL => Self::Dial, 1000 ffi::ATK_ROLE_DIALOG => Self::Dialog, 1001 ffi::ATK_ROLE_DIRECTORY_PANE => Self::DirectoryPane, 1002 ffi::ATK_ROLE_DRAWING_AREA => Self::DrawingArea, 1003 ffi::ATK_ROLE_FILE_CHOOSER => Self::FileChooser, 1004 ffi::ATK_ROLE_FILLER => Self::Filler, 1005 ffi::ATK_ROLE_FONT_CHOOSER => Self::FontChooser, 1006 ffi::ATK_ROLE_FRAME => Self::Frame, 1007 ffi::ATK_ROLE_GLASS_PANE => Self::GlassPane, 1008 ffi::ATK_ROLE_HTML_CONTAINER => Self::HtmlContainer, 1009 ffi::ATK_ROLE_ICON => Self::Icon, 1010 ffi::ATK_ROLE_IMAGE => Self::Image, 1011 ffi::ATK_ROLE_INTERNAL_FRAME => Self::InternalFrame, 1012 ffi::ATK_ROLE_LABEL => Self::Label, 1013 ffi::ATK_ROLE_LAYERED_PANE => Self::LayeredPane, 1014 ffi::ATK_ROLE_LIST => Self::List, 1015 ffi::ATK_ROLE_LIST_ITEM => Self::ListItem, 1016 ffi::ATK_ROLE_MENU => Self::Menu, 1017 ffi::ATK_ROLE_MENU_BAR => Self::MenuBar, 1018 ffi::ATK_ROLE_MENU_ITEM => Self::MenuItem, 1019 ffi::ATK_ROLE_OPTION_PANE => Self::OptionPane, 1020 ffi::ATK_ROLE_PAGE_TAB => Self::PageTab, 1021 ffi::ATK_ROLE_PAGE_TAB_LIST => Self::PageTabList, 1022 ffi::ATK_ROLE_PANEL => Self::Panel, 1023 ffi::ATK_ROLE_PASSWORD_TEXT => Self::PasswordText, 1024 ffi::ATK_ROLE_POPUP_MENU => Self::PopupMenu, 1025 ffi::ATK_ROLE_PROGRESS_BAR => Self::ProgressBar, 1026 ffi::ATK_ROLE_PUSH_BUTTON => Self::PushButton, 1027 ffi::ATK_ROLE_RADIO_BUTTON => Self::RadioButton, 1028 ffi::ATK_ROLE_RADIO_MENU_ITEM => Self::RadioMenuItem, 1029 ffi::ATK_ROLE_ROOT_PANE => Self::RootPane, 1030 ffi::ATK_ROLE_ROW_HEADER => Self::RowHeader, 1031 ffi::ATK_ROLE_SCROLL_BAR => Self::ScrollBar, 1032 ffi::ATK_ROLE_SCROLL_PANE => Self::ScrollPane, 1033 ffi::ATK_ROLE_SEPARATOR => Self::Separator, 1034 ffi::ATK_ROLE_SLIDER => Self::Slider, 1035 ffi::ATK_ROLE_SPLIT_PANE => Self::SplitPane, 1036 ffi::ATK_ROLE_SPIN_BUTTON => Self::SpinButton, 1037 ffi::ATK_ROLE_STATUSBAR => Self::Statusbar, 1038 ffi::ATK_ROLE_TABLE => Self::Table, 1039 ffi::ATK_ROLE_TABLE_CELL => Self::TableCell, 1040 ffi::ATK_ROLE_TABLE_COLUMN_HEADER => Self::TableColumnHeader, 1041 ffi::ATK_ROLE_TABLE_ROW_HEADER => Self::TableRowHeader, 1042 ffi::ATK_ROLE_TEAR_OFF_MENU_ITEM => Self::TearOffMenuItem, 1043 ffi::ATK_ROLE_TERMINAL => Self::Terminal, 1044 ffi::ATK_ROLE_TEXT => Self::Text, 1045 ffi::ATK_ROLE_TOGGLE_BUTTON => Self::ToggleButton, 1046 ffi::ATK_ROLE_TOOL_BAR => Self::ToolBar, 1047 ffi::ATK_ROLE_TOOL_TIP => Self::ToolTip, 1048 ffi::ATK_ROLE_TREE => Self::Tree, 1049 ffi::ATK_ROLE_TREE_TABLE => Self::TreeTable, 1050 ffi::ATK_ROLE_UNKNOWN => Self::Unknown, 1051 ffi::ATK_ROLE_VIEWPORT => Self::Viewport, 1052 ffi::ATK_ROLE_WINDOW => Self::Window, 1053 ffi::ATK_ROLE_HEADER => Self::Header, 1054 ffi::ATK_ROLE_FOOTER => Self::Footer, 1055 ffi::ATK_ROLE_PARAGRAPH => Self::Paragraph, 1056 ffi::ATK_ROLE_RULER => Self::Ruler, 1057 ffi::ATK_ROLE_APPLICATION => Self::Application, 1058 ffi::ATK_ROLE_AUTOCOMPLETE => Self::Autocomplete, 1059 ffi::ATK_ROLE_EDITBAR => Self::EditBar, 1060 ffi::ATK_ROLE_EMBEDDED => Self::Embedded, 1061 ffi::ATK_ROLE_ENTRY => Self::Entry, 1062 ffi::ATK_ROLE_CHART => Self::Chart, 1063 ffi::ATK_ROLE_CAPTION => Self::Caption, 1064 ffi::ATK_ROLE_DOCUMENT_FRAME => Self::DocumentFrame, 1065 ffi::ATK_ROLE_HEADING => Self::Heading, 1066 ffi::ATK_ROLE_PAGE => Self::Page, 1067 ffi::ATK_ROLE_SECTION => Self::Section, 1068 ffi::ATK_ROLE_REDUNDANT_OBJECT => Self::RedundantObject, 1069 ffi::ATK_ROLE_FORM => Self::Form, 1070 ffi::ATK_ROLE_LINK => Self::Link, 1071 ffi::ATK_ROLE_INPUT_METHOD_WINDOW => Self::InputMethodWindow, 1072 ffi::ATK_ROLE_TABLE_ROW => Self::TableRow, 1073 ffi::ATK_ROLE_TREE_ITEM => Self::TreeItem, 1074 ffi::ATK_ROLE_DOCUMENT_SPREADSHEET => Self::DocumentSpreadsheet, 1075 ffi::ATK_ROLE_DOCUMENT_PRESENTATION => Self::DocumentPresentation, 1076 ffi::ATK_ROLE_DOCUMENT_TEXT => Self::DocumentText, 1077 ffi::ATK_ROLE_DOCUMENT_WEB => Self::DocumentWeb, 1078 ffi::ATK_ROLE_DOCUMENT_EMAIL => Self::DocumentEmail, 1079 ffi::ATK_ROLE_COMMENT => Self::Comment, 1080 ffi::ATK_ROLE_LIST_BOX => Self::ListBox, 1081 ffi::ATK_ROLE_GROUPING => Self::Grouping, 1082 ffi::ATK_ROLE_IMAGE_MAP => Self::ImageMap, 1083 ffi::ATK_ROLE_NOTIFICATION => Self::Notification, 1084 ffi::ATK_ROLE_INFO_BAR => Self::InfoBar, 1085 ffi::ATK_ROLE_LEVEL_BAR => Self::LevelBar, 1086 ffi::ATK_ROLE_TITLE_BAR => Self::TitleBar, 1087 ffi::ATK_ROLE_BLOCK_QUOTE => Self::BlockQuote, 1088 ffi::ATK_ROLE_AUDIO => Self::Audio, 1089 ffi::ATK_ROLE_VIDEO => Self::Video, 1090 ffi::ATK_ROLE_DEFINITION => Self::Definition, 1091 ffi::ATK_ROLE_ARTICLE => Self::Article, 1092 ffi::ATK_ROLE_LANDMARK => Self::Landmark, 1093 ffi::ATK_ROLE_LOG => Self::Log, 1094 ffi::ATK_ROLE_MARQUEE => Self::Marquee, 1095 ffi::ATK_ROLE_MATH => Self::Math, 1096 ffi::ATK_ROLE_RATING => Self::Rating, 1097 ffi::ATK_ROLE_TIMER => Self::Timer, 1098 ffi::ATK_ROLE_DESCRIPTION_LIST => Self::DescriptionList, 1099 ffi::ATK_ROLE_DESCRIPTION_TERM => Self::DescriptionTerm, 1100 ffi::ATK_ROLE_DESCRIPTION_VALUE => Self::DescriptionValue, 1101 ffi::ATK_ROLE_STATIC => Self::Static, 1102 ffi::ATK_ROLE_MATH_FRACTION => Self::MathFraction, 1103 ffi::ATK_ROLE_MATH_ROOT => Self::MathRoot, 1104 ffi::ATK_ROLE_SUBSCRIPT => Self::Subscript, 1105 ffi::ATK_ROLE_SUPERSCRIPT => Self::Superscript, 1106 ffi::ATK_ROLE_FOOTNOTE => Self::Footnote, 1107 ffi::ATK_ROLE_CONTENT_DELETION => Self::ContentDeletion, 1108 ffi::ATK_ROLE_CONTENT_INSERTION => Self::ContentInsertion, 1109 ffi::ATK_ROLE_MARK => Self::Mark, 1110 ffi::ATK_ROLE_SUGGESTION => Self::Suggestion, 1111 ffi::ATK_ROLE_LAST_DEFINED => Self::LastDefined, 1112 value => Self::__Unknown(value), 1113 } 1114 } 1115 } 1116 1117 impl StaticType for Role { static_type() -> Type1118 fn static_type() -> Type { 1119 unsafe { from_glib(ffi::atk_role_get_type()) } 1120 } 1121 } 1122 1123 impl glib::value::ValueType for Role { 1124 type Type = Self; 1125 } 1126 1127 unsafe impl<'a> FromValue<'a> for Role { 1128 type Checker = glib::value::GenericValueTypeChecker<Self>; 1129 from_value(value: &'a glib::Value) -> Self1130 unsafe fn from_value(value: &'a glib::Value) -> Self { 1131 skip_assert_initialized!(); 1132 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 1133 } 1134 } 1135 1136 impl ToValue for Role { to_value(&self) -> glib::Value1137 fn to_value(&self) -> glib::Value { 1138 let mut value = glib::Value::for_value_type::<Self>(); 1139 unsafe { 1140 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 1141 } 1142 value 1143 } 1144 value_type(&self) -> glib::Type1145 fn value_type(&self) -> glib::Type { 1146 Self::static_type() 1147 } 1148 } 1149 1150 #[cfg(any(feature = "v2_30", feature = "dox"))] 1151 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1152 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 1153 #[non_exhaustive] 1154 #[doc(alias = "AtkScrollType")] 1155 pub enum ScrollType { 1156 #[doc(alias = "ATK_SCROLL_TOP_LEFT")] 1157 TopLeft, 1158 #[doc(alias = "ATK_SCROLL_BOTTOM_RIGHT")] 1159 BottomRight, 1160 #[doc(alias = "ATK_SCROLL_TOP_EDGE")] 1161 TopEdge, 1162 #[doc(alias = "ATK_SCROLL_BOTTOM_EDGE")] 1163 BottomEdge, 1164 #[doc(alias = "ATK_SCROLL_LEFT_EDGE")] 1165 LeftEdge, 1166 #[doc(alias = "ATK_SCROLL_RIGHT_EDGE")] 1167 RightEdge, 1168 #[doc(alias = "ATK_SCROLL_ANYWHERE")] 1169 Anywhere, 1170 #[doc(hidden)] 1171 __Unknown(i32), 1172 } 1173 1174 #[cfg(any(feature = "v2_30", feature = "dox"))] 1175 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1176 impl fmt::Display for ScrollType { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result1177 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 1178 write!( 1179 f, 1180 "ScrollType::{}", 1181 match *self { 1182 Self::TopLeft => "TopLeft", 1183 Self::BottomRight => "BottomRight", 1184 Self::TopEdge => "TopEdge", 1185 Self::BottomEdge => "BottomEdge", 1186 Self::LeftEdge => "LeftEdge", 1187 Self::RightEdge => "RightEdge", 1188 Self::Anywhere => "Anywhere", 1189 _ => "Unknown", 1190 } 1191 ) 1192 } 1193 } 1194 1195 #[cfg(any(feature = "v2_30", feature = "dox"))] 1196 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1197 #[doc(hidden)] 1198 impl IntoGlib for ScrollType { 1199 type GlibType = ffi::AtkScrollType; 1200 into_glib(self) -> ffi::AtkScrollType1201 fn into_glib(self) -> ffi::AtkScrollType { 1202 match self { 1203 Self::TopLeft => ffi::ATK_SCROLL_TOP_LEFT, 1204 Self::BottomRight => ffi::ATK_SCROLL_BOTTOM_RIGHT, 1205 Self::TopEdge => ffi::ATK_SCROLL_TOP_EDGE, 1206 Self::BottomEdge => ffi::ATK_SCROLL_BOTTOM_EDGE, 1207 Self::LeftEdge => ffi::ATK_SCROLL_LEFT_EDGE, 1208 Self::RightEdge => ffi::ATK_SCROLL_RIGHT_EDGE, 1209 Self::Anywhere => ffi::ATK_SCROLL_ANYWHERE, 1210 Self::__Unknown(value) => value, 1211 } 1212 } 1213 } 1214 1215 #[cfg(any(feature = "v2_30", feature = "dox"))] 1216 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1217 #[doc(hidden)] 1218 impl FromGlib<ffi::AtkScrollType> for ScrollType { from_glib(value: ffi::AtkScrollType) -> Self1219 unsafe fn from_glib(value: ffi::AtkScrollType) -> Self { 1220 skip_assert_initialized!(); 1221 match value { 1222 ffi::ATK_SCROLL_TOP_LEFT => Self::TopLeft, 1223 ffi::ATK_SCROLL_BOTTOM_RIGHT => Self::BottomRight, 1224 ffi::ATK_SCROLL_TOP_EDGE => Self::TopEdge, 1225 ffi::ATK_SCROLL_BOTTOM_EDGE => Self::BottomEdge, 1226 ffi::ATK_SCROLL_LEFT_EDGE => Self::LeftEdge, 1227 ffi::ATK_SCROLL_RIGHT_EDGE => Self::RightEdge, 1228 ffi::ATK_SCROLL_ANYWHERE => Self::Anywhere, 1229 value => Self::__Unknown(value), 1230 } 1231 } 1232 } 1233 1234 #[cfg(any(feature = "v2_30", feature = "dox"))] 1235 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1236 impl StaticType for ScrollType { static_type() -> Type1237 fn static_type() -> Type { 1238 unsafe { from_glib(ffi::atk_scroll_type_get_type()) } 1239 } 1240 } 1241 1242 #[cfg(any(feature = "v2_30", feature = "dox"))] 1243 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1244 impl glib::value::ValueType for ScrollType { 1245 type Type = Self; 1246 } 1247 1248 #[cfg(any(feature = "v2_30", feature = "dox"))] 1249 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1250 unsafe impl<'a> FromValue<'a> for ScrollType { 1251 type Checker = glib::value::GenericValueTypeChecker<Self>; 1252 from_value(value: &'a glib::Value) -> Self1253 unsafe fn from_value(value: &'a glib::Value) -> Self { 1254 skip_assert_initialized!(); 1255 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 1256 } 1257 } 1258 1259 #[cfg(any(feature = "v2_30", feature = "dox"))] 1260 #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))] 1261 impl ToValue for ScrollType { to_value(&self) -> glib::Value1262 fn to_value(&self) -> glib::Value { 1263 let mut value = glib::Value::for_value_type::<Self>(); 1264 unsafe { 1265 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 1266 } 1267 value 1268 } 1269 value_type(&self) -> glib::Type1270 fn value_type(&self) -> glib::Type { 1271 Self::static_type() 1272 } 1273 } 1274 1275 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 1276 #[non_exhaustive] 1277 #[doc(alias = "AtkStateType")] 1278 pub enum StateType { 1279 #[doc(alias = "ATK_STATE_INVALID")] 1280 Invalid, 1281 #[doc(alias = "ATK_STATE_ACTIVE")] 1282 Active, 1283 #[doc(alias = "ATK_STATE_ARMED")] 1284 Armed, 1285 #[doc(alias = "ATK_STATE_BUSY")] 1286 Busy, 1287 #[doc(alias = "ATK_STATE_CHECKED")] 1288 Checked, 1289 #[doc(alias = "ATK_STATE_DEFUNCT")] 1290 Defunct, 1291 #[doc(alias = "ATK_STATE_EDITABLE")] 1292 Editable, 1293 #[doc(alias = "ATK_STATE_ENABLED")] 1294 Enabled, 1295 #[doc(alias = "ATK_STATE_EXPANDABLE")] 1296 Expandable, 1297 #[doc(alias = "ATK_STATE_EXPANDED")] 1298 Expanded, 1299 #[doc(alias = "ATK_STATE_FOCUSABLE")] 1300 Focusable, 1301 #[doc(alias = "ATK_STATE_FOCUSED")] 1302 Focused, 1303 #[doc(alias = "ATK_STATE_HORIZONTAL")] 1304 Horizontal, 1305 #[doc(alias = "ATK_STATE_ICONIFIED")] 1306 Iconified, 1307 #[doc(alias = "ATK_STATE_MODAL")] 1308 Modal, 1309 #[doc(alias = "ATK_STATE_MULTI_LINE")] 1310 MultiLine, 1311 #[doc(alias = "ATK_STATE_MULTISELECTABLE")] 1312 Multiselectable, 1313 #[doc(alias = "ATK_STATE_OPAQUE")] 1314 Opaque, 1315 #[doc(alias = "ATK_STATE_PRESSED")] 1316 Pressed, 1317 #[doc(alias = "ATK_STATE_RESIZABLE")] 1318 Resizable, 1319 #[doc(alias = "ATK_STATE_SELECTABLE")] 1320 Selectable, 1321 #[doc(alias = "ATK_STATE_SELECTED")] 1322 Selected, 1323 #[doc(alias = "ATK_STATE_SENSITIVE")] 1324 Sensitive, 1325 #[doc(alias = "ATK_STATE_SHOWING")] 1326 Showing, 1327 #[doc(alias = "ATK_STATE_SINGLE_LINE")] 1328 SingleLine, 1329 #[doc(alias = "ATK_STATE_STALE")] 1330 Stale, 1331 #[doc(alias = "ATK_STATE_TRANSIENT")] 1332 Transient, 1333 #[doc(alias = "ATK_STATE_VERTICAL")] 1334 Vertical, 1335 #[doc(alias = "ATK_STATE_VISIBLE")] 1336 Visible, 1337 #[doc(alias = "ATK_STATE_MANAGES_DESCENDANTS")] 1338 ManagesDescendants, 1339 #[doc(alias = "ATK_STATE_INDETERMINATE")] 1340 Indeterminate, 1341 #[doc(alias = "ATK_STATE_TRUNCATED")] 1342 Truncated, 1343 #[doc(alias = "ATK_STATE_REQUIRED")] 1344 Required, 1345 #[doc(alias = "ATK_STATE_INVALID_ENTRY")] 1346 InvalidEntry, 1347 #[doc(alias = "ATK_STATE_SUPPORTS_AUTOCOMPLETION")] 1348 SupportsAutocompletion, 1349 #[doc(alias = "ATK_STATE_SELECTABLE_TEXT")] 1350 SelectableText, 1351 #[doc(alias = "ATK_STATE_DEFAULT")] 1352 Default, 1353 #[doc(alias = "ATK_STATE_ANIMATED")] 1354 Animated, 1355 #[doc(alias = "ATK_STATE_VISITED")] 1356 Visited, 1357 #[doc(alias = "ATK_STATE_CHECKABLE")] 1358 Checkable, 1359 #[doc(alias = "ATK_STATE_HAS_POPUP")] 1360 HasPopup, 1361 #[doc(alias = "ATK_STATE_HAS_TOOLTIP")] 1362 HasTooltip, 1363 #[doc(alias = "ATK_STATE_READ_ONLY")] 1364 ReadOnly, 1365 #[doc(alias = "ATK_STATE_LAST_DEFINED")] 1366 LastDefined, 1367 #[doc(hidden)] 1368 __Unknown(i32), 1369 } 1370 1371 impl StateType { 1372 #[doc(alias = "atk_state_type_for_name")] for_name(name: &str) -> StateType1373 pub fn for_name(name: &str) -> StateType { 1374 assert_initialized_main_thread!(); 1375 unsafe { from_glib(ffi::atk_state_type_for_name(name.to_glib_none().0)) } 1376 } 1377 1378 #[doc(alias = "atk_state_type_get_name")] 1379 #[doc(alias = "get_name")] name(self) -> Option<glib::GString>1380 pub fn name(self) -> Option<glib::GString> { 1381 assert_initialized_main_thread!(); 1382 unsafe { from_glib_none(ffi::atk_state_type_get_name(self.into_glib())) } 1383 } 1384 } 1385 1386 impl fmt::Display for StateType { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result1387 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 1388 write!( 1389 f, 1390 "StateType::{}", 1391 match *self { 1392 Self::Invalid => "Invalid", 1393 Self::Active => "Active", 1394 Self::Armed => "Armed", 1395 Self::Busy => "Busy", 1396 Self::Checked => "Checked", 1397 Self::Defunct => "Defunct", 1398 Self::Editable => "Editable", 1399 Self::Enabled => "Enabled", 1400 Self::Expandable => "Expandable", 1401 Self::Expanded => "Expanded", 1402 Self::Focusable => "Focusable", 1403 Self::Focused => "Focused", 1404 Self::Horizontal => "Horizontal", 1405 Self::Iconified => "Iconified", 1406 Self::Modal => "Modal", 1407 Self::MultiLine => "MultiLine", 1408 Self::Multiselectable => "Multiselectable", 1409 Self::Opaque => "Opaque", 1410 Self::Pressed => "Pressed", 1411 Self::Resizable => "Resizable", 1412 Self::Selectable => "Selectable", 1413 Self::Selected => "Selected", 1414 Self::Sensitive => "Sensitive", 1415 Self::Showing => "Showing", 1416 Self::SingleLine => "SingleLine", 1417 Self::Stale => "Stale", 1418 Self::Transient => "Transient", 1419 Self::Vertical => "Vertical", 1420 Self::Visible => "Visible", 1421 Self::ManagesDescendants => "ManagesDescendants", 1422 Self::Indeterminate => "Indeterminate", 1423 Self::Truncated => "Truncated", 1424 Self::Required => "Required", 1425 Self::InvalidEntry => "InvalidEntry", 1426 Self::SupportsAutocompletion => "SupportsAutocompletion", 1427 Self::SelectableText => "SelectableText", 1428 Self::Default => "Default", 1429 Self::Animated => "Animated", 1430 Self::Visited => "Visited", 1431 Self::Checkable => "Checkable", 1432 Self::HasPopup => "HasPopup", 1433 Self::HasTooltip => "HasTooltip", 1434 Self::ReadOnly => "ReadOnly", 1435 Self::LastDefined => "LastDefined", 1436 _ => "Unknown", 1437 } 1438 ) 1439 } 1440 } 1441 1442 #[doc(hidden)] 1443 impl IntoGlib for StateType { 1444 type GlibType = ffi::AtkStateType; 1445 into_glib(self) -> ffi::AtkStateType1446 fn into_glib(self) -> ffi::AtkStateType { 1447 match self { 1448 Self::Invalid => ffi::ATK_STATE_INVALID, 1449 Self::Active => ffi::ATK_STATE_ACTIVE, 1450 Self::Armed => ffi::ATK_STATE_ARMED, 1451 Self::Busy => ffi::ATK_STATE_BUSY, 1452 Self::Checked => ffi::ATK_STATE_CHECKED, 1453 Self::Defunct => ffi::ATK_STATE_DEFUNCT, 1454 Self::Editable => ffi::ATK_STATE_EDITABLE, 1455 Self::Enabled => ffi::ATK_STATE_ENABLED, 1456 Self::Expandable => ffi::ATK_STATE_EXPANDABLE, 1457 Self::Expanded => ffi::ATK_STATE_EXPANDED, 1458 Self::Focusable => ffi::ATK_STATE_FOCUSABLE, 1459 Self::Focused => ffi::ATK_STATE_FOCUSED, 1460 Self::Horizontal => ffi::ATK_STATE_HORIZONTAL, 1461 Self::Iconified => ffi::ATK_STATE_ICONIFIED, 1462 Self::Modal => ffi::ATK_STATE_MODAL, 1463 Self::MultiLine => ffi::ATK_STATE_MULTI_LINE, 1464 Self::Multiselectable => ffi::ATK_STATE_MULTISELECTABLE, 1465 Self::Opaque => ffi::ATK_STATE_OPAQUE, 1466 Self::Pressed => ffi::ATK_STATE_PRESSED, 1467 Self::Resizable => ffi::ATK_STATE_RESIZABLE, 1468 Self::Selectable => ffi::ATK_STATE_SELECTABLE, 1469 Self::Selected => ffi::ATK_STATE_SELECTED, 1470 Self::Sensitive => ffi::ATK_STATE_SENSITIVE, 1471 Self::Showing => ffi::ATK_STATE_SHOWING, 1472 Self::SingleLine => ffi::ATK_STATE_SINGLE_LINE, 1473 Self::Stale => ffi::ATK_STATE_STALE, 1474 Self::Transient => ffi::ATK_STATE_TRANSIENT, 1475 Self::Vertical => ffi::ATK_STATE_VERTICAL, 1476 Self::Visible => ffi::ATK_STATE_VISIBLE, 1477 Self::ManagesDescendants => ffi::ATK_STATE_MANAGES_DESCENDANTS, 1478 Self::Indeterminate => ffi::ATK_STATE_INDETERMINATE, 1479 Self::Truncated => ffi::ATK_STATE_TRUNCATED, 1480 Self::Required => ffi::ATK_STATE_REQUIRED, 1481 Self::InvalidEntry => ffi::ATK_STATE_INVALID_ENTRY, 1482 Self::SupportsAutocompletion => ffi::ATK_STATE_SUPPORTS_AUTOCOMPLETION, 1483 Self::SelectableText => ffi::ATK_STATE_SELECTABLE_TEXT, 1484 Self::Default => ffi::ATK_STATE_DEFAULT, 1485 Self::Animated => ffi::ATK_STATE_ANIMATED, 1486 Self::Visited => ffi::ATK_STATE_VISITED, 1487 Self::Checkable => ffi::ATK_STATE_CHECKABLE, 1488 Self::HasPopup => ffi::ATK_STATE_HAS_POPUP, 1489 Self::HasTooltip => ffi::ATK_STATE_HAS_TOOLTIP, 1490 Self::ReadOnly => ffi::ATK_STATE_READ_ONLY, 1491 Self::LastDefined => ffi::ATK_STATE_LAST_DEFINED, 1492 Self::__Unknown(value) => value, 1493 } 1494 } 1495 } 1496 1497 #[doc(hidden)] 1498 impl FromGlib<ffi::AtkStateType> for StateType { from_glib(value: ffi::AtkStateType) -> Self1499 unsafe fn from_glib(value: ffi::AtkStateType) -> Self { 1500 skip_assert_initialized!(); 1501 match value { 1502 ffi::ATK_STATE_INVALID => Self::Invalid, 1503 ffi::ATK_STATE_ACTIVE => Self::Active, 1504 ffi::ATK_STATE_ARMED => Self::Armed, 1505 ffi::ATK_STATE_BUSY => Self::Busy, 1506 ffi::ATK_STATE_CHECKED => Self::Checked, 1507 ffi::ATK_STATE_DEFUNCT => Self::Defunct, 1508 ffi::ATK_STATE_EDITABLE => Self::Editable, 1509 ffi::ATK_STATE_ENABLED => Self::Enabled, 1510 ffi::ATK_STATE_EXPANDABLE => Self::Expandable, 1511 ffi::ATK_STATE_EXPANDED => Self::Expanded, 1512 ffi::ATK_STATE_FOCUSABLE => Self::Focusable, 1513 ffi::ATK_STATE_FOCUSED => Self::Focused, 1514 ffi::ATK_STATE_HORIZONTAL => Self::Horizontal, 1515 ffi::ATK_STATE_ICONIFIED => Self::Iconified, 1516 ffi::ATK_STATE_MODAL => Self::Modal, 1517 ffi::ATK_STATE_MULTI_LINE => Self::MultiLine, 1518 ffi::ATK_STATE_MULTISELECTABLE => Self::Multiselectable, 1519 ffi::ATK_STATE_OPAQUE => Self::Opaque, 1520 ffi::ATK_STATE_PRESSED => Self::Pressed, 1521 ffi::ATK_STATE_RESIZABLE => Self::Resizable, 1522 ffi::ATK_STATE_SELECTABLE => Self::Selectable, 1523 ffi::ATK_STATE_SELECTED => Self::Selected, 1524 ffi::ATK_STATE_SENSITIVE => Self::Sensitive, 1525 ffi::ATK_STATE_SHOWING => Self::Showing, 1526 ffi::ATK_STATE_SINGLE_LINE => Self::SingleLine, 1527 ffi::ATK_STATE_STALE => Self::Stale, 1528 ffi::ATK_STATE_TRANSIENT => Self::Transient, 1529 ffi::ATK_STATE_VERTICAL => Self::Vertical, 1530 ffi::ATK_STATE_VISIBLE => Self::Visible, 1531 ffi::ATK_STATE_MANAGES_DESCENDANTS => Self::ManagesDescendants, 1532 ffi::ATK_STATE_INDETERMINATE => Self::Indeterminate, 1533 ffi::ATK_STATE_TRUNCATED => Self::Truncated, 1534 ffi::ATK_STATE_REQUIRED => Self::Required, 1535 ffi::ATK_STATE_INVALID_ENTRY => Self::InvalidEntry, 1536 ffi::ATK_STATE_SUPPORTS_AUTOCOMPLETION => Self::SupportsAutocompletion, 1537 ffi::ATK_STATE_SELECTABLE_TEXT => Self::SelectableText, 1538 ffi::ATK_STATE_DEFAULT => Self::Default, 1539 ffi::ATK_STATE_ANIMATED => Self::Animated, 1540 ffi::ATK_STATE_VISITED => Self::Visited, 1541 ffi::ATK_STATE_CHECKABLE => Self::Checkable, 1542 ffi::ATK_STATE_HAS_POPUP => Self::HasPopup, 1543 ffi::ATK_STATE_HAS_TOOLTIP => Self::HasTooltip, 1544 ffi::ATK_STATE_READ_ONLY => Self::ReadOnly, 1545 ffi::ATK_STATE_LAST_DEFINED => Self::LastDefined, 1546 value => Self::__Unknown(value), 1547 } 1548 } 1549 } 1550 1551 impl StaticType for StateType { static_type() -> Type1552 fn static_type() -> Type { 1553 unsafe { from_glib(ffi::atk_state_type_get_type()) } 1554 } 1555 } 1556 1557 impl glib::value::ValueType for StateType { 1558 type Type = Self; 1559 } 1560 1561 unsafe impl<'a> FromValue<'a> for StateType { 1562 type Checker = glib::value::GenericValueTypeChecker<Self>; 1563 from_value(value: &'a glib::Value) -> Self1564 unsafe fn from_value(value: &'a glib::Value) -> Self { 1565 skip_assert_initialized!(); 1566 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 1567 } 1568 } 1569 1570 impl ToValue for StateType { to_value(&self) -> glib::Value1571 fn to_value(&self) -> glib::Value { 1572 let mut value = glib::Value::for_value_type::<Self>(); 1573 unsafe { 1574 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 1575 } 1576 value 1577 } 1578 value_type(&self) -> glib::Type1579 fn value_type(&self) -> glib::Type { 1580 Self::static_type() 1581 } 1582 } 1583 1584 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 1585 #[non_exhaustive] 1586 #[doc(alias = "AtkTextAttribute")] 1587 pub enum TextAttribute { 1588 #[doc(alias = "ATK_TEXT_ATTR_INVALID")] 1589 Invalid, 1590 #[doc(alias = "ATK_TEXT_ATTR_LEFT_MARGIN")] 1591 LeftMargin, 1592 #[doc(alias = "ATK_TEXT_ATTR_RIGHT_MARGIN")] 1593 RightMargin, 1594 #[doc(alias = "ATK_TEXT_ATTR_INDENT")] 1595 Indent, 1596 #[doc(alias = "ATK_TEXT_ATTR_INVISIBLE")] 1597 Invisible, 1598 #[doc(alias = "ATK_TEXT_ATTR_EDITABLE")] 1599 Editable, 1600 #[doc(alias = "ATK_TEXT_ATTR_PIXELS_ABOVE_LINES")] 1601 PixelsAboveLines, 1602 #[doc(alias = "ATK_TEXT_ATTR_PIXELS_BELOW_LINES")] 1603 PixelsBelowLines, 1604 #[doc(alias = "ATK_TEXT_ATTR_PIXELS_INSIDE_WRAP")] 1605 PixelsInsideWrap, 1606 #[doc(alias = "ATK_TEXT_ATTR_BG_FULL_HEIGHT")] 1607 BgFullHeight, 1608 #[doc(alias = "ATK_TEXT_ATTR_RISE")] 1609 Rise, 1610 #[doc(alias = "ATK_TEXT_ATTR_UNDERLINE")] 1611 Underline, 1612 #[doc(alias = "ATK_TEXT_ATTR_STRIKETHROUGH")] 1613 Strikethrough, 1614 #[doc(alias = "ATK_TEXT_ATTR_SIZE")] 1615 Size, 1616 #[doc(alias = "ATK_TEXT_ATTR_SCALE")] 1617 Scale, 1618 #[doc(alias = "ATK_TEXT_ATTR_WEIGHT")] 1619 Weight, 1620 #[doc(alias = "ATK_TEXT_ATTR_LANGUAGE")] 1621 Language, 1622 #[doc(alias = "ATK_TEXT_ATTR_FAMILY_NAME")] 1623 FamilyName, 1624 #[doc(alias = "ATK_TEXT_ATTR_BG_COLOR")] 1625 BgColor, 1626 #[doc(alias = "ATK_TEXT_ATTR_FG_COLOR")] 1627 FgColor, 1628 #[doc(alias = "ATK_TEXT_ATTR_BG_STIPPLE")] 1629 BgStipple, 1630 #[doc(alias = "ATK_TEXT_ATTR_FG_STIPPLE")] 1631 FgStipple, 1632 #[doc(alias = "ATK_TEXT_ATTR_WRAP_MODE")] 1633 WrapMode, 1634 #[doc(alias = "ATK_TEXT_ATTR_DIRECTION")] 1635 Direction, 1636 #[doc(alias = "ATK_TEXT_ATTR_JUSTIFICATION")] 1637 Justification, 1638 #[doc(alias = "ATK_TEXT_ATTR_STRETCH")] 1639 Stretch, 1640 #[doc(alias = "ATK_TEXT_ATTR_VARIANT")] 1641 Variant, 1642 #[doc(alias = "ATK_TEXT_ATTR_STYLE")] 1643 Style, 1644 #[doc(alias = "ATK_TEXT_ATTR_TEXT_POSITION")] 1645 TextPosition, 1646 #[doc(alias = "ATK_TEXT_ATTR_LAST_DEFINED")] 1647 LastDefined, 1648 #[doc(hidden)] 1649 __Unknown(i32), 1650 } 1651 1652 impl TextAttribute { 1653 #[doc(alias = "atk_text_attribute_for_name")] for_name(name: &str) -> TextAttribute1654 pub fn for_name(name: &str) -> TextAttribute { 1655 assert_initialized_main_thread!(); 1656 unsafe { from_glib(ffi::atk_text_attribute_for_name(name.to_glib_none().0)) } 1657 } 1658 1659 #[doc(alias = "atk_text_attribute_get_name")] 1660 #[doc(alias = "get_name")] name(self) -> Option<glib::GString>1661 pub fn name(self) -> Option<glib::GString> { 1662 assert_initialized_main_thread!(); 1663 unsafe { from_glib_none(ffi::atk_text_attribute_get_name(self.into_glib())) } 1664 } 1665 1666 #[doc(alias = "atk_text_attribute_get_value")] 1667 #[doc(alias = "get_value")] value(self, index_: i32) -> Option<glib::GString>1668 pub fn value(self, index_: i32) -> Option<glib::GString> { 1669 assert_initialized_main_thread!(); 1670 unsafe { from_glib_none(ffi::atk_text_attribute_get_value(self.into_glib(), index_)) } 1671 } 1672 } 1673 1674 impl fmt::Display for TextAttribute { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result1675 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 1676 write!( 1677 f, 1678 "TextAttribute::{}", 1679 match *self { 1680 Self::Invalid => "Invalid", 1681 Self::LeftMargin => "LeftMargin", 1682 Self::RightMargin => "RightMargin", 1683 Self::Indent => "Indent", 1684 Self::Invisible => "Invisible", 1685 Self::Editable => "Editable", 1686 Self::PixelsAboveLines => "PixelsAboveLines", 1687 Self::PixelsBelowLines => "PixelsBelowLines", 1688 Self::PixelsInsideWrap => "PixelsInsideWrap", 1689 Self::BgFullHeight => "BgFullHeight", 1690 Self::Rise => "Rise", 1691 Self::Underline => "Underline", 1692 Self::Strikethrough => "Strikethrough", 1693 Self::Size => "Size", 1694 Self::Scale => "Scale", 1695 Self::Weight => "Weight", 1696 Self::Language => "Language", 1697 Self::FamilyName => "FamilyName", 1698 Self::BgColor => "BgColor", 1699 Self::FgColor => "FgColor", 1700 Self::BgStipple => "BgStipple", 1701 Self::FgStipple => "FgStipple", 1702 Self::WrapMode => "WrapMode", 1703 Self::Direction => "Direction", 1704 Self::Justification => "Justification", 1705 Self::Stretch => "Stretch", 1706 Self::Variant => "Variant", 1707 Self::Style => "Style", 1708 Self::TextPosition => "TextPosition", 1709 Self::LastDefined => "LastDefined", 1710 _ => "Unknown", 1711 } 1712 ) 1713 } 1714 } 1715 1716 #[doc(hidden)] 1717 impl IntoGlib for TextAttribute { 1718 type GlibType = ffi::AtkTextAttribute; 1719 into_glib(self) -> ffi::AtkTextAttribute1720 fn into_glib(self) -> ffi::AtkTextAttribute { 1721 match self { 1722 Self::Invalid => ffi::ATK_TEXT_ATTR_INVALID, 1723 Self::LeftMargin => ffi::ATK_TEXT_ATTR_LEFT_MARGIN, 1724 Self::RightMargin => ffi::ATK_TEXT_ATTR_RIGHT_MARGIN, 1725 Self::Indent => ffi::ATK_TEXT_ATTR_INDENT, 1726 Self::Invisible => ffi::ATK_TEXT_ATTR_INVISIBLE, 1727 Self::Editable => ffi::ATK_TEXT_ATTR_EDITABLE, 1728 Self::PixelsAboveLines => ffi::ATK_TEXT_ATTR_PIXELS_ABOVE_LINES, 1729 Self::PixelsBelowLines => ffi::ATK_TEXT_ATTR_PIXELS_BELOW_LINES, 1730 Self::PixelsInsideWrap => ffi::ATK_TEXT_ATTR_PIXELS_INSIDE_WRAP, 1731 Self::BgFullHeight => ffi::ATK_TEXT_ATTR_BG_FULL_HEIGHT, 1732 Self::Rise => ffi::ATK_TEXT_ATTR_RISE, 1733 Self::Underline => ffi::ATK_TEXT_ATTR_UNDERLINE, 1734 Self::Strikethrough => ffi::ATK_TEXT_ATTR_STRIKETHROUGH, 1735 Self::Size => ffi::ATK_TEXT_ATTR_SIZE, 1736 Self::Scale => ffi::ATK_TEXT_ATTR_SCALE, 1737 Self::Weight => ffi::ATK_TEXT_ATTR_WEIGHT, 1738 Self::Language => ffi::ATK_TEXT_ATTR_LANGUAGE, 1739 Self::FamilyName => ffi::ATK_TEXT_ATTR_FAMILY_NAME, 1740 Self::BgColor => ffi::ATK_TEXT_ATTR_BG_COLOR, 1741 Self::FgColor => ffi::ATK_TEXT_ATTR_FG_COLOR, 1742 Self::BgStipple => ffi::ATK_TEXT_ATTR_BG_STIPPLE, 1743 Self::FgStipple => ffi::ATK_TEXT_ATTR_FG_STIPPLE, 1744 Self::WrapMode => ffi::ATK_TEXT_ATTR_WRAP_MODE, 1745 Self::Direction => ffi::ATK_TEXT_ATTR_DIRECTION, 1746 Self::Justification => ffi::ATK_TEXT_ATTR_JUSTIFICATION, 1747 Self::Stretch => ffi::ATK_TEXT_ATTR_STRETCH, 1748 Self::Variant => ffi::ATK_TEXT_ATTR_VARIANT, 1749 Self::Style => ffi::ATK_TEXT_ATTR_STYLE, 1750 Self::TextPosition => ffi::ATK_TEXT_ATTR_TEXT_POSITION, 1751 Self::LastDefined => ffi::ATK_TEXT_ATTR_LAST_DEFINED, 1752 Self::__Unknown(value) => value, 1753 } 1754 } 1755 } 1756 1757 #[doc(hidden)] 1758 impl FromGlib<ffi::AtkTextAttribute> for TextAttribute { from_glib(value: ffi::AtkTextAttribute) -> Self1759 unsafe fn from_glib(value: ffi::AtkTextAttribute) -> Self { 1760 skip_assert_initialized!(); 1761 match value { 1762 ffi::ATK_TEXT_ATTR_INVALID => Self::Invalid, 1763 ffi::ATK_TEXT_ATTR_LEFT_MARGIN => Self::LeftMargin, 1764 ffi::ATK_TEXT_ATTR_RIGHT_MARGIN => Self::RightMargin, 1765 ffi::ATK_TEXT_ATTR_INDENT => Self::Indent, 1766 ffi::ATK_TEXT_ATTR_INVISIBLE => Self::Invisible, 1767 ffi::ATK_TEXT_ATTR_EDITABLE => Self::Editable, 1768 ffi::ATK_TEXT_ATTR_PIXELS_ABOVE_LINES => Self::PixelsAboveLines, 1769 ffi::ATK_TEXT_ATTR_PIXELS_BELOW_LINES => Self::PixelsBelowLines, 1770 ffi::ATK_TEXT_ATTR_PIXELS_INSIDE_WRAP => Self::PixelsInsideWrap, 1771 ffi::ATK_TEXT_ATTR_BG_FULL_HEIGHT => Self::BgFullHeight, 1772 ffi::ATK_TEXT_ATTR_RISE => Self::Rise, 1773 ffi::ATK_TEXT_ATTR_UNDERLINE => Self::Underline, 1774 ffi::ATK_TEXT_ATTR_STRIKETHROUGH => Self::Strikethrough, 1775 ffi::ATK_TEXT_ATTR_SIZE => Self::Size, 1776 ffi::ATK_TEXT_ATTR_SCALE => Self::Scale, 1777 ffi::ATK_TEXT_ATTR_WEIGHT => Self::Weight, 1778 ffi::ATK_TEXT_ATTR_LANGUAGE => Self::Language, 1779 ffi::ATK_TEXT_ATTR_FAMILY_NAME => Self::FamilyName, 1780 ffi::ATK_TEXT_ATTR_BG_COLOR => Self::BgColor, 1781 ffi::ATK_TEXT_ATTR_FG_COLOR => Self::FgColor, 1782 ffi::ATK_TEXT_ATTR_BG_STIPPLE => Self::BgStipple, 1783 ffi::ATK_TEXT_ATTR_FG_STIPPLE => Self::FgStipple, 1784 ffi::ATK_TEXT_ATTR_WRAP_MODE => Self::WrapMode, 1785 ffi::ATK_TEXT_ATTR_DIRECTION => Self::Direction, 1786 ffi::ATK_TEXT_ATTR_JUSTIFICATION => Self::Justification, 1787 ffi::ATK_TEXT_ATTR_STRETCH => Self::Stretch, 1788 ffi::ATK_TEXT_ATTR_VARIANT => Self::Variant, 1789 ffi::ATK_TEXT_ATTR_STYLE => Self::Style, 1790 ffi::ATK_TEXT_ATTR_TEXT_POSITION => Self::TextPosition, 1791 ffi::ATK_TEXT_ATTR_LAST_DEFINED => Self::LastDefined, 1792 value => Self::__Unknown(value), 1793 } 1794 } 1795 } 1796 1797 impl StaticType for TextAttribute { static_type() -> Type1798 fn static_type() -> Type { 1799 unsafe { from_glib(ffi::atk_text_attribute_get_type()) } 1800 } 1801 } 1802 1803 impl glib::value::ValueType for TextAttribute { 1804 type Type = Self; 1805 } 1806 1807 unsafe impl<'a> FromValue<'a> for TextAttribute { 1808 type Checker = glib::value::GenericValueTypeChecker<Self>; 1809 from_value(value: &'a glib::Value) -> Self1810 unsafe fn from_value(value: &'a glib::Value) -> Self { 1811 skip_assert_initialized!(); 1812 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 1813 } 1814 } 1815 1816 impl ToValue for TextAttribute { to_value(&self) -> glib::Value1817 fn to_value(&self) -> glib::Value { 1818 let mut value = glib::Value::for_value_type::<Self>(); 1819 unsafe { 1820 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 1821 } 1822 value 1823 } 1824 value_type(&self) -> glib::Type1825 fn value_type(&self) -> glib::Type { 1826 Self::static_type() 1827 } 1828 } 1829 1830 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 1831 #[non_exhaustive] 1832 #[doc(alias = "AtkTextBoundary")] 1833 pub enum TextBoundary { 1834 #[doc(alias = "ATK_TEXT_BOUNDARY_CHAR")] 1835 Char, 1836 #[doc(alias = "ATK_TEXT_BOUNDARY_WORD_START")] 1837 WordStart, 1838 #[doc(alias = "ATK_TEXT_BOUNDARY_WORD_END")] 1839 WordEnd, 1840 #[doc(alias = "ATK_TEXT_BOUNDARY_SENTENCE_START")] 1841 SentenceStart, 1842 #[doc(alias = "ATK_TEXT_BOUNDARY_SENTENCE_END")] 1843 SentenceEnd, 1844 #[doc(alias = "ATK_TEXT_BOUNDARY_LINE_START")] 1845 LineStart, 1846 #[doc(alias = "ATK_TEXT_BOUNDARY_LINE_END")] 1847 LineEnd, 1848 #[doc(hidden)] 1849 __Unknown(i32), 1850 } 1851 1852 impl fmt::Display for TextBoundary { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result1853 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 1854 write!( 1855 f, 1856 "TextBoundary::{}", 1857 match *self { 1858 Self::Char => "Char", 1859 Self::WordStart => "WordStart", 1860 Self::WordEnd => "WordEnd", 1861 Self::SentenceStart => "SentenceStart", 1862 Self::SentenceEnd => "SentenceEnd", 1863 Self::LineStart => "LineStart", 1864 Self::LineEnd => "LineEnd", 1865 _ => "Unknown", 1866 } 1867 ) 1868 } 1869 } 1870 1871 #[doc(hidden)] 1872 impl IntoGlib for TextBoundary { 1873 type GlibType = ffi::AtkTextBoundary; 1874 into_glib(self) -> ffi::AtkTextBoundary1875 fn into_glib(self) -> ffi::AtkTextBoundary { 1876 match self { 1877 Self::Char => ffi::ATK_TEXT_BOUNDARY_CHAR, 1878 Self::WordStart => ffi::ATK_TEXT_BOUNDARY_WORD_START, 1879 Self::WordEnd => ffi::ATK_TEXT_BOUNDARY_WORD_END, 1880 Self::SentenceStart => ffi::ATK_TEXT_BOUNDARY_SENTENCE_START, 1881 Self::SentenceEnd => ffi::ATK_TEXT_BOUNDARY_SENTENCE_END, 1882 Self::LineStart => ffi::ATK_TEXT_BOUNDARY_LINE_START, 1883 Self::LineEnd => ffi::ATK_TEXT_BOUNDARY_LINE_END, 1884 Self::__Unknown(value) => value, 1885 } 1886 } 1887 } 1888 1889 #[doc(hidden)] 1890 impl FromGlib<ffi::AtkTextBoundary> for TextBoundary { from_glib(value: ffi::AtkTextBoundary) -> Self1891 unsafe fn from_glib(value: ffi::AtkTextBoundary) -> Self { 1892 skip_assert_initialized!(); 1893 match value { 1894 ffi::ATK_TEXT_BOUNDARY_CHAR => Self::Char, 1895 ffi::ATK_TEXT_BOUNDARY_WORD_START => Self::WordStart, 1896 ffi::ATK_TEXT_BOUNDARY_WORD_END => Self::WordEnd, 1897 ffi::ATK_TEXT_BOUNDARY_SENTENCE_START => Self::SentenceStart, 1898 ffi::ATK_TEXT_BOUNDARY_SENTENCE_END => Self::SentenceEnd, 1899 ffi::ATK_TEXT_BOUNDARY_LINE_START => Self::LineStart, 1900 ffi::ATK_TEXT_BOUNDARY_LINE_END => Self::LineEnd, 1901 value => Self::__Unknown(value), 1902 } 1903 } 1904 } 1905 1906 impl StaticType for TextBoundary { static_type() -> Type1907 fn static_type() -> Type { 1908 unsafe { from_glib(ffi::atk_text_boundary_get_type()) } 1909 } 1910 } 1911 1912 impl glib::value::ValueType for TextBoundary { 1913 type Type = Self; 1914 } 1915 1916 unsafe impl<'a> FromValue<'a> for TextBoundary { 1917 type Checker = glib::value::GenericValueTypeChecker<Self>; 1918 from_value(value: &'a glib::Value) -> Self1919 unsafe fn from_value(value: &'a glib::Value) -> Self { 1920 skip_assert_initialized!(); 1921 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 1922 } 1923 } 1924 1925 impl ToValue for TextBoundary { to_value(&self) -> glib::Value1926 fn to_value(&self) -> glib::Value { 1927 let mut value = glib::Value::for_value_type::<Self>(); 1928 unsafe { 1929 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 1930 } 1931 value 1932 } 1933 value_type(&self) -> glib::Type1934 fn value_type(&self) -> glib::Type { 1935 Self::static_type() 1936 } 1937 } 1938 1939 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 1940 #[non_exhaustive] 1941 #[doc(alias = "AtkTextClipType")] 1942 pub enum TextClipType { 1943 #[doc(alias = "ATK_TEXT_CLIP_NONE")] 1944 None, 1945 #[doc(alias = "ATK_TEXT_CLIP_MIN")] 1946 Min, 1947 #[doc(alias = "ATK_TEXT_CLIP_MAX")] 1948 Max, 1949 #[doc(alias = "ATK_TEXT_CLIP_BOTH")] 1950 Both, 1951 #[doc(hidden)] 1952 __Unknown(i32), 1953 } 1954 1955 impl fmt::Display for TextClipType { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result1956 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 1957 write!( 1958 f, 1959 "TextClipType::{}", 1960 match *self { 1961 Self::None => "None", 1962 Self::Min => "Min", 1963 Self::Max => "Max", 1964 Self::Both => "Both", 1965 _ => "Unknown", 1966 } 1967 ) 1968 } 1969 } 1970 1971 #[doc(hidden)] 1972 impl IntoGlib for TextClipType { 1973 type GlibType = ffi::AtkTextClipType; 1974 into_glib(self) -> ffi::AtkTextClipType1975 fn into_glib(self) -> ffi::AtkTextClipType { 1976 match self { 1977 Self::None => ffi::ATK_TEXT_CLIP_NONE, 1978 Self::Min => ffi::ATK_TEXT_CLIP_MIN, 1979 Self::Max => ffi::ATK_TEXT_CLIP_MAX, 1980 Self::Both => ffi::ATK_TEXT_CLIP_BOTH, 1981 Self::__Unknown(value) => value, 1982 } 1983 } 1984 } 1985 1986 #[doc(hidden)] 1987 impl FromGlib<ffi::AtkTextClipType> for TextClipType { from_glib(value: ffi::AtkTextClipType) -> Self1988 unsafe fn from_glib(value: ffi::AtkTextClipType) -> Self { 1989 skip_assert_initialized!(); 1990 match value { 1991 ffi::ATK_TEXT_CLIP_NONE => Self::None, 1992 ffi::ATK_TEXT_CLIP_MIN => Self::Min, 1993 ffi::ATK_TEXT_CLIP_MAX => Self::Max, 1994 ffi::ATK_TEXT_CLIP_BOTH => Self::Both, 1995 value => Self::__Unknown(value), 1996 } 1997 } 1998 } 1999 2000 impl StaticType for TextClipType { static_type() -> Type2001 fn static_type() -> Type { 2002 unsafe { from_glib(ffi::atk_text_clip_type_get_type()) } 2003 } 2004 } 2005 2006 impl glib::value::ValueType for TextClipType { 2007 type Type = Self; 2008 } 2009 2010 unsafe impl<'a> FromValue<'a> for TextClipType { 2011 type Checker = glib::value::GenericValueTypeChecker<Self>; 2012 from_value(value: &'a glib::Value) -> Self2013 unsafe fn from_value(value: &'a glib::Value) -> Self { 2014 skip_assert_initialized!(); 2015 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 2016 } 2017 } 2018 2019 impl ToValue for TextClipType { to_value(&self) -> glib::Value2020 fn to_value(&self) -> glib::Value { 2021 let mut value = glib::Value::for_value_type::<Self>(); 2022 unsafe { 2023 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 2024 } 2025 value 2026 } 2027 value_type(&self) -> glib::Type2028 fn value_type(&self) -> glib::Type { 2029 Self::static_type() 2030 } 2031 } 2032 2033 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 2034 #[non_exhaustive] 2035 #[doc(alias = "AtkTextGranularity")] 2036 pub enum TextGranularity { 2037 #[doc(alias = "ATK_TEXT_GRANULARITY_CHAR")] 2038 Char, 2039 #[doc(alias = "ATK_TEXT_GRANULARITY_WORD")] 2040 Word, 2041 #[doc(alias = "ATK_TEXT_GRANULARITY_SENTENCE")] 2042 Sentence, 2043 #[doc(alias = "ATK_TEXT_GRANULARITY_LINE")] 2044 Line, 2045 #[doc(alias = "ATK_TEXT_GRANULARITY_PARAGRAPH")] 2046 Paragraph, 2047 #[doc(hidden)] 2048 __Unknown(i32), 2049 } 2050 2051 impl fmt::Display for TextGranularity { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result2052 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 2053 write!( 2054 f, 2055 "TextGranularity::{}", 2056 match *self { 2057 Self::Char => "Char", 2058 Self::Word => "Word", 2059 Self::Sentence => "Sentence", 2060 Self::Line => "Line", 2061 Self::Paragraph => "Paragraph", 2062 _ => "Unknown", 2063 } 2064 ) 2065 } 2066 } 2067 2068 #[doc(hidden)] 2069 impl IntoGlib for TextGranularity { 2070 type GlibType = ffi::AtkTextGranularity; 2071 into_glib(self) -> ffi::AtkTextGranularity2072 fn into_glib(self) -> ffi::AtkTextGranularity { 2073 match self { 2074 Self::Char => ffi::ATK_TEXT_GRANULARITY_CHAR, 2075 Self::Word => ffi::ATK_TEXT_GRANULARITY_WORD, 2076 Self::Sentence => ffi::ATK_TEXT_GRANULARITY_SENTENCE, 2077 Self::Line => ffi::ATK_TEXT_GRANULARITY_LINE, 2078 Self::Paragraph => ffi::ATK_TEXT_GRANULARITY_PARAGRAPH, 2079 Self::__Unknown(value) => value, 2080 } 2081 } 2082 } 2083 2084 #[doc(hidden)] 2085 impl FromGlib<ffi::AtkTextGranularity> for TextGranularity { from_glib(value: ffi::AtkTextGranularity) -> Self2086 unsafe fn from_glib(value: ffi::AtkTextGranularity) -> Self { 2087 skip_assert_initialized!(); 2088 match value { 2089 ffi::ATK_TEXT_GRANULARITY_CHAR => Self::Char, 2090 ffi::ATK_TEXT_GRANULARITY_WORD => Self::Word, 2091 ffi::ATK_TEXT_GRANULARITY_SENTENCE => Self::Sentence, 2092 ffi::ATK_TEXT_GRANULARITY_LINE => Self::Line, 2093 ffi::ATK_TEXT_GRANULARITY_PARAGRAPH => Self::Paragraph, 2094 value => Self::__Unknown(value), 2095 } 2096 } 2097 } 2098 2099 impl StaticType for TextGranularity { static_type() -> Type2100 fn static_type() -> Type { 2101 unsafe { from_glib(ffi::atk_text_granularity_get_type()) } 2102 } 2103 } 2104 2105 impl glib::value::ValueType for TextGranularity { 2106 type Type = Self; 2107 } 2108 2109 unsafe impl<'a> FromValue<'a> for TextGranularity { 2110 type Checker = glib::value::GenericValueTypeChecker<Self>; 2111 from_value(value: &'a glib::Value) -> Self2112 unsafe fn from_value(value: &'a glib::Value) -> Self { 2113 skip_assert_initialized!(); 2114 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 2115 } 2116 } 2117 2118 impl ToValue for TextGranularity { to_value(&self) -> glib::Value2119 fn to_value(&self) -> glib::Value { 2120 let mut value = glib::Value::for_value_type::<Self>(); 2121 unsafe { 2122 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 2123 } 2124 value 2125 } 2126 value_type(&self) -> glib::Type2127 fn value_type(&self) -> glib::Type { 2128 Self::static_type() 2129 } 2130 } 2131 2132 #[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)] 2133 #[non_exhaustive] 2134 #[doc(alias = "AtkValueType")] 2135 pub enum ValueType { 2136 #[doc(alias = "ATK_VALUE_VERY_WEAK")] 2137 VeryWeak, 2138 #[doc(alias = "ATK_VALUE_WEAK")] 2139 Weak, 2140 #[doc(alias = "ATK_VALUE_ACCEPTABLE")] 2141 Acceptable, 2142 #[doc(alias = "ATK_VALUE_STRONG")] 2143 Strong, 2144 #[doc(alias = "ATK_VALUE_VERY_STRONG")] 2145 VeryStrong, 2146 #[doc(alias = "ATK_VALUE_VERY_LOW")] 2147 VeryLow, 2148 #[doc(alias = "ATK_VALUE_LOW")] 2149 Low, 2150 #[doc(alias = "ATK_VALUE_MEDIUM")] 2151 Medium, 2152 #[doc(alias = "ATK_VALUE_HIGH")] 2153 High, 2154 #[doc(alias = "ATK_VALUE_VERY_HIGH")] 2155 VeryHigh, 2156 #[doc(alias = "ATK_VALUE_VERY_BAD")] 2157 VeryBad, 2158 #[doc(alias = "ATK_VALUE_BAD")] 2159 Bad, 2160 #[doc(alias = "ATK_VALUE_GOOD")] 2161 Good, 2162 #[doc(alias = "ATK_VALUE_VERY_GOOD")] 2163 VeryGood, 2164 #[doc(alias = "ATK_VALUE_BEST")] 2165 Best, 2166 #[doc(alias = "ATK_VALUE_LAST_DEFINED")] 2167 LastDefined, 2168 #[doc(hidden)] 2169 __Unknown(i32), 2170 } 2171 2172 impl ValueType { 2173 #[doc(alias = "atk_value_type_get_localized_name")] 2174 #[doc(alias = "get_localized_name")] localized_name(self) -> Option<glib::GString>2175 pub fn localized_name(self) -> Option<glib::GString> { 2176 assert_initialized_main_thread!(); 2177 unsafe { from_glib_none(ffi::atk_value_type_get_localized_name(self.into_glib())) } 2178 } 2179 2180 #[doc(alias = "atk_value_type_get_name")] 2181 #[doc(alias = "get_name")] name(self) -> Option<glib::GString>2182 pub fn name(self) -> Option<glib::GString> { 2183 assert_initialized_main_thread!(); 2184 unsafe { from_glib_none(ffi::atk_value_type_get_name(self.into_glib())) } 2185 } 2186 } 2187 2188 impl fmt::Display for ValueType { fmt(&self, f: &mut fmt::Formatter) -> fmt::Result2189 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { 2190 write!( 2191 f, 2192 "ValueType::{}", 2193 match *self { 2194 Self::VeryWeak => "VeryWeak", 2195 Self::Weak => "Weak", 2196 Self::Acceptable => "Acceptable", 2197 Self::Strong => "Strong", 2198 Self::VeryStrong => "VeryStrong", 2199 Self::VeryLow => "VeryLow", 2200 Self::Low => "Low", 2201 Self::Medium => "Medium", 2202 Self::High => "High", 2203 Self::VeryHigh => "VeryHigh", 2204 Self::VeryBad => "VeryBad", 2205 Self::Bad => "Bad", 2206 Self::Good => "Good", 2207 Self::VeryGood => "VeryGood", 2208 Self::Best => "Best", 2209 Self::LastDefined => "LastDefined", 2210 _ => "Unknown", 2211 } 2212 ) 2213 } 2214 } 2215 2216 #[doc(hidden)] 2217 impl IntoGlib for ValueType { 2218 type GlibType = ffi::AtkValueType; 2219 into_glib(self) -> ffi::AtkValueType2220 fn into_glib(self) -> ffi::AtkValueType { 2221 match self { 2222 Self::VeryWeak => ffi::ATK_VALUE_VERY_WEAK, 2223 Self::Weak => ffi::ATK_VALUE_WEAK, 2224 Self::Acceptable => ffi::ATK_VALUE_ACCEPTABLE, 2225 Self::Strong => ffi::ATK_VALUE_STRONG, 2226 Self::VeryStrong => ffi::ATK_VALUE_VERY_STRONG, 2227 Self::VeryLow => ffi::ATK_VALUE_VERY_LOW, 2228 Self::Low => ffi::ATK_VALUE_LOW, 2229 Self::Medium => ffi::ATK_VALUE_MEDIUM, 2230 Self::High => ffi::ATK_VALUE_HIGH, 2231 Self::VeryHigh => ffi::ATK_VALUE_VERY_HIGH, 2232 Self::VeryBad => ffi::ATK_VALUE_VERY_BAD, 2233 Self::Bad => ffi::ATK_VALUE_BAD, 2234 Self::Good => ffi::ATK_VALUE_GOOD, 2235 Self::VeryGood => ffi::ATK_VALUE_VERY_GOOD, 2236 Self::Best => ffi::ATK_VALUE_BEST, 2237 Self::LastDefined => ffi::ATK_VALUE_LAST_DEFINED, 2238 Self::__Unknown(value) => value, 2239 } 2240 } 2241 } 2242 2243 #[doc(hidden)] 2244 impl FromGlib<ffi::AtkValueType> for ValueType { from_glib(value: ffi::AtkValueType) -> Self2245 unsafe fn from_glib(value: ffi::AtkValueType) -> Self { 2246 skip_assert_initialized!(); 2247 match value { 2248 ffi::ATK_VALUE_VERY_WEAK => Self::VeryWeak, 2249 ffi::ATK_VALUE_WEAK => Self::Weak, 2250 ffi::ATK_VALUE_ACCEPTABLE => Self::Acceptable, 2251 ffi::ATK_VALUE_STRONG => Self::Strong, 2252 ffi::ATK_VALUE_VERY_STRONG => Self::VeryStrong, 2253 ffi::ATK_VALUE_VERY_LOW => Self::VeryLow, 2254 ffi::ATK_VALUE_LOW => Self::Low, 2255 ffi::ATK_VALUE_MEDIUM => Self::Medium, 2256 ffi::ATK_VALUE_HIGH => Self::High, 2257 ffi::ATK_VALUE_VERY_HIGH => Self::VeryHigh, 2258 ffi::ATK_VALUE_VERY_BAD => Self::VeryBad, 2259 ffi::ATK_VALUE_BAD => Self::Bad, 2260 ffi::ATK_VALUE_GOOD => Self::Good, 2261 ffi::ATK_VALUE_VERY_GOOD => Self::VeryGood, 2262 ffi::ATK_VALUE_BEST => Self::Best, 2263 ffi::ATK_VALUE_LAST_DEFINED => Self::LastDefined, 2264 value => Self::__Unknown(value), 2265 } 2266 } 2267 } 2268 2269 impl StaticType for ValueType { static_type() -> Type2270 fn static_type() -> Type { 2271 unsafe { from_glib(ffi::atk_value_type_get_type()) } 2272 } 2273 } 2274 2275 impl glib::value::ValueType for ValueType { 2276 type Type = Self; 2277 } 2278 2279 unsafe impl<'a> FromValue<'a> for ValueType { 2280 type Checker = glib::value::GenericValueTypeChecker<Self>; 2281 from_value(value: &'a glib::Value) -> Self2282 unsafe fn from_value(value: &'a glib::Value) -> Self { 2283 skip_assert_initialized!(); 2284 from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0)) 2285 } 2286 } 2287 2288 impl ToValue for ValueType { to_value(&self) -> glib::Value2289 fn to_value(&self) -> glib::Value { 2290 let mut value = glib::Value::for_value_type::<Self>(); 2291 unsafe { 2292 glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, self.into_glib()); 2293 } 2294 value 2295 } 2296 value_type(&self) -> glib::Type2297 fn value_type(&self) -> glib::Type { 2298 Self::static_type() 2299 } 2300 } 2301