AboutDialog

Struct AboutDialog 

Source
pub struct AboutDialog { /* private fields */ }
Expand description

A struct for a dialog to show about your application.

Dialogs like this are used in the traditional Help > About dialogs found in most programs. In this case, this AboutDialog uses, like the rest of the library, the OS’ native toolkit to show it. This may create inconsistency in some situations, for example in web apps.

§Examples

Basic about dialog:

use nvdialog_rs::AboutDialog;

let dialog = AboutDialog::new()
                .name("App Name".into())
                .description("A short description for your app".into())
                .version("0.1.0")
                .build();

dialog.show()

Implementations§

Source§

impl AboutDialog

Source

pub fn new() -> Self

Examples found in repository?
examples/about-dialog.rs (line 21)
4fn main() {
5    nvdialog_rs::init().expect("failed to initialize libnvdialog");
6    let extensions = ["png", "jpeg", "jpg", "ico", "webp"];
7    let filedlg = FileDialog::new(
8        "Choose the icon for the dialog",
9        FileDialogType::OpenFile,
10        Some(extensions),
11    );
12    let filename = filedlg.retrieve_filename().unwrap_or_else(|| {
13        eprintln!("No filename given!");
14        abort()
15    });
16    let img = Image::from_filename(filename).unwrap_or_else(|e| {
17        eprintln!("Failed to read image! {}", e.to_string());
18        abort();
19    });
20
21    let dialog = AboutDialog::new()
22        .name("NvDialog Example")
23        .description(
24            "An example of using nvdialog-rs and NvdAboutDialog, with a custom user-picked icon",
25        )
26        .icon(img)
27        .build();
28
29    dialog.show();
30}
Source

pub fn name<S: ToString>(self, name: S) -> Self

Examples found in repository?
examples/about-dialog.rs (line 22)
4fn main() {
5    nvdialog_rs::init().expect("failed to initialize libnvdialog");
6    let extensions = ["png", "jpeg", "jpg", "ico", "webp"];
7    let filedlg = FileDialog::new(
8        "Choose the icon for the dialog",
9        FileDialogType::OpenFile,
10        Some(extensions),
11    );
12    let filename = filedlg.retrieve_filename().unwrap_or_else(|| {
13        eprintln!("No filename given!");
14        abort()
15    });
16    let img = Image::from_filename(filename).unwrap_or_else(|e| {
17        eprintln!("Failed to read image! {}", e.to_string());
18        abort();
19    });
20
21    let dialog = AboutDialog::new()
22        .name("NvDialog Example")
23        .description(
24            "An example of using nvdialog-rs and NvdAboutDialog, with a custom user-picked icon",
25        )
26        .icon(img)
27        .build();
28
29    dialog.show();
30}
Source

pub fn description<S: ToString>(self, description: S) -> Self

Examples found in repository?
examples/about-dialog.rs (lines 23-25)
4fn main() {
5    nvdialog_rs::init().expect("failed to initialize libnvdialog");
6    let extensions = ["png", "jpeg", "jpg", "ico", "webp"];
7    let filedlg = FileDialog::new(
8        "Choose the icon for the dialog",
9        FileDialogType::OpenFile,
10        Some(extensions),
11    );
12    let filename = filedlg.retrieve_filename().unwrap_or_else(|| {
13        eprintln!("No filename given!");
14        abort()
15    });
16    let img = Image::from_filename(filename).unwrap_or_else(|e| {
17        eprintln!("Failed to read image! {}", e.to_string());
18        abort();
19    });
20
21    let dialog = AboutDialog::new()
22        .name("NvDialog Example")
23        .description(
24            "An example of using nvdialog-rs and NvdAboutDialog, with a custom user-picked icon",
25        )
26        .icon(img)
27        .build();
28
29    dialog.show();
30}
Source

pub fn version<S: ToString>(self, version: S) -> Self

Source

pub fn icon(self, icon: Image) -> Self

Examples found in repository?
examples/about-dialog.rs (line 26)
4fn main() {
5    nvdialog_rs::init().expect("failed to initialize libnvdialog");
6    let extensions = ["png", "jpeg", "jpg", "ico", "webp"];
7    let filedlg = FileDialog::new(
8        "Choose the icon for the dialog",
9        FileDialogType::OpenFile,
10        Some(extensions),
11    );
12    let filename = filedlg.retrieve_filename().unwrap_or_else(|| {
13        eprintln!("No filename given!");
14        abort()
15    });
16    let img = Image::from_filename(filename).unwrap_or_else(|e| {
17        eprintln!("Failed to read image! {}", e.to_string());
18        abort();
19    });
20
21    let dialog = AboutDialog::new()
22        .name("NvDialog Example")
23        .description(
24            "An example of using nvdialog-rs and NvdAboutDialog, with a custom user-picked icon",
25        )
26        .icon(img)
27        .build();
28
29    dialog.show();
30}
Source

pub fn build(self) -> Self

Examples found in repository?
examples/about-dialog.rs (line 27)
4fn main() {
5    nvdialog_rs::init().expect("failed to initialize libnvdialog");
6    let extensions = ["png", "jpeg", "jpg", "ico", "webp"];
7    let filedlg = FileDialog::new(
8        "Choose the icon for the dialog",
9        FileDialogType::OpenFile,
10        Some(extensions),
11    );
12    let filename = filedlg.retrieve_filename().unwrap_or_else(|| {
13        eprintln!("No filename given!");
14        abort()
15    });
16    let img = Image::from_filename(filename).unwrap_or_else(|e| {
17        eprintln!("Failed to read image! {}", e.to_string());
18        abort();
19    });
20
21    let dialog = AboutDialog::new()
22        .name("NvDialog Example")
23        .description(
24            "An example of using nvdialog-rs and NvdAboutDialog, with a custom user-picked icon",
25        )
26        .icon(img)
27        .build();
28
29    dialog.show();
30}

Trait Implementations§

Source§

impl Drop for AboutDialog

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl Object for AboutDialog

Source§

type NativeType = _NvdAboutDialog

The type of the underlying native object, created by NvDialog. It will be used as a pointer to provide compatibility with the NvDialog API.
Source§

type ReturnValue = ()

The value that should be returned from Self::show. It should match the value that the dialog returns when it is presented to the user.
Source§

fn get_raw(&self) -> *mut Self::NativeType

Returns the raw object created by NvDialog internally. This should never return null.
Source§

fn show(&self)

Presents the dialog to the user. If Self::ReturnValue is not () then it will also return that value. Sometimes this serves as an alias to the type’s implementation of the analogous function. If you cannot afford the overhead, you can use that instead.
Source§

fn free(&mut self)

Frees the underlying native object. This should not be usually called manually, instead the Drop implementation should handle it when the time is correct. Be wary, if you do call this, you might run into double freeing errors.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.