Trait ParamSpecBuilderExt

pub trait ParamSpecBuilderExt<'a>: Sized {
Show 15 methods // Required methods fn set_nick(&mut self, nick: Option<&'a str>); fn set_blurb(&mut self, blurb: Option<&'a str>); fn set_flags(&mut self, flags: ParamFlags); fn current_flags(&self) -> ParamFlags; // Provided methods fn nick(self, nick: &'a str) -> Self { ... } fn blurb(self, blurb: &'a str) -> Self { ... } fn flags(self, flags: ParamFlags) -> Self { ... } fn read_only(self) -> Self { ... } fn write_only(self) -> Self { ... } fn readwrite(self) -> Self { ... } fn construct(self) -> Self { ... } fn construct_only(self) -> Self { ... } fn lax_validation(self) -> Self { ... } fn explicit_notify(self) -> Self { ... } fn deprecated(self) -> Self { ... }
}
Expand description

A trait implemented by the various ParamSpec builder types.

It is useful for providing a builder pattern for ParamSpec defined outside of GLib like in GStreamer or GTK 4.

Required Methods§

fn set_nick(&mut self, nick: Option<&'a str>)

Implementation detail.

fn set_blurb(&mut self, blurb: Option<&'a str>)

Implementation detail.

fn set_flags(&mut self, flags: ParamFlags)

Implementation detail.

fn current_flags(&self) -> ParamFlags

Implementation detail.

Provided Methods§

fn nick(self, nick: &'a str) -> Self

By default, the nickname of its redirect target will be used if it has one. Otherwise, self.name will be used.

fn blurb(self, blurb: &'a str) -> Self

Default: None

fn flags(self, flags: ParamFlags) -> Self

Default: glib::ParamFlags::READWRITE

fn read_only(self) -> Self

Mark the property as read only and drops the READWRITE flag set by default.

fn write_only(self) -> Self

Mark the property as write only and drops the READWRITE flag set by default.

fn readwrite(self) -> Self

Mark the property as readwrite, it is the default value.

fn construct(self) -> Self

Mark the property as construct

fn construct_only(self) -> Self

Mark the property as construct only

fn lax_validation(self) -> Self

Mark the property as lax validation

fn explicit_notify(self) -> Self

Mark the property as explicit notify

fn deprecated(self) -> Self

Mark the property as deprecated

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecExpressionBuilder<'a>

§

fn set_nick(&mut self, nick: Option<&'a str>)

Default: self.name

§

fn set_blurb(&mut self, blurb: Option<&'a str>)

Default: self.name

§

fn set_flags(&mut self, flags: ParamFlags)

Default: glib::ParamFlags::READWRITE

§

fn current_flags(&self) -> ParamFlags

Implementation detail.

Implementors§

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecBooleanBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecCharBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecDoubleBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecFloatBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecGTypeBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecInt64Builder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecIntBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecLongBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecParamBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecPointerBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecStringBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecUCharBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecUInt64Builder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecUIntBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecULongBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecUnicharBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecValueArrayBuilder<'a>

§

impl<'a> ParamSpecBuilderExt<'a> for ParamSpecVariantBuilder<'a>

§

impl<'a, T> ParamSpecBuilderExt<'a> for ParamSpecBoxedBuilder<'a, T>
where T: StaticType,

§

impl<'a, T> ParamSpecBuilderExt<'a> for ParamSpecEnumBuilder<'a, T>
where T: StaticType + FromGlib<i32> + IntoGlib<GlibType = i32>,

§

impl<'a, T> ParamSpecBuilderExt<'a> for ParamSpecFlagsBuilder<'a, T>
where T: StaticType + FromGlib<u32> + IntoGlib<GlibType = u32>,

§

impl<'a, T> ParamSpecBuilderExt<'a> for ParamSpecObjectBuilder<'a, T>
where T: StaticType,