Add wordchar wrap mode (#1306)

* Add wordchar wrap mode

* documentation

* Fix docs generation to properly include options for wrap-mode

---------

Co-authored-by: Cal <unnaturaltwilight@gmail.com>
This commit is contained in:
UnnaturalTwilight 2025-05-13 17:13:15 -04:00 committed by GitHub
parent e953141fa9
commit 15315a05ec
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1053,7 +1053,7 @@ fn build_gtk_label(bargs: &mut BuilderArgs) -> Result<gtk::Label> {
prop(justify: as_string = "left") { prop(justify: as_string = "left") {
gtk_widget.set_justify(parse_justification(&justify)?); gtk_widget.set_justify(parse_justification(&justify)?);
}, },
// @prop wrap-mode - how text is wrapped. possible options: $wrap-mode // @prop wrap-mode - how text is wrapped. possible options: $wrap_mode
prop(wrap_mode: as_string = "word") { prop(wrap_mode: as_string = "word") {
gtk_widget.set_wrap_mode(parse_wrap_mode(&wrap_mode)?); gtk_widget.set_wrap_mode(parse_wrap_mode(&wrap_mode)?);
}, },
@ -1412,11 +1412,12 @@ fn parse_gravity(g: &str) -> Result<gtk::pango::Gravity> {
} }
} }
/// @var wrap-mode - "word", "char" /// @var wrap_mode - "word", "char", "wordchar"
fn parse_wrap_mode(w: &str) -> Result<gtk::pango::WrapMode> { fn parse_wrap_mode(w: &str) -> Result<gtk::pango::WrapMode> {
enum_parse! { "wrap-mode", w, enum_parse! { "wrap-mode", w,
"word" => gtk::pango::WrapMode::Word, "word" => gtk::pango::WrapMode::Word,
"char" => gtk::pango::WrapMode::Char "char" => gtk::pango::WrapMode::Char,
"wordchar" => gtk::pango::WrapMode::WordChar
} }
} }