mirror of
https://github.com/YGGverse/Yoda.git
synced 2025-09-13 07:22:16 +00:00
make results optional
This commit is contained in:
parent
89aed28056
commit
ad8ebe87e5
@ -25,7 +25,7 @@ impl Header {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Actions
|
// Actions
|
||||||
pub fn update(&self, title: GString, description: GString) {
|
pub fn update(&self, title: Option<GString>, description: Option<GString>) {
|
||||||
self.subject.update(title, description);
|
self.subject.update(title, description);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
use gtk::glib::GString;
|
||||||
use gtk::prelude::WidgetExt;
|
use gtk::prelude::WidgetExt;
|
||||||
use gtk::{pango::EllipsizeMode, Label};
|
use gtk::{pango::EllipsizeMode, Label};
|
||||||
|
|
||||||
@ -19,9 +20,12 @@ impl Description {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Actions
|
// Actions
|
||||||
pub fn update(&self, text: &str) {
|
pub fn update(&self, text: Option<GString>) {
|
||||||
self.widget.set_text(text);
|
match text {
|
||||||
self.widget.set_visible(!text.is_empty());
|
Some(value) => self.widget.set_text(&value),
|
||||||
|
None => self.widget.set_text(""), // @TODO
|
||||||
|
};
|
||||||
|
self.widget.set_visible(!self.widget.text().is_empty());
|
||||||
}
|
}
|
||||||
|
|
||||||
// Getters
|
// Getters
|
||||||
|
@ -34,9 +34,9 @@ impl Subject {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Actions
|
// Actions
|
||||||
pub fn update(&self, title: GString, description: GString) {
|
pub fn update(&self, title: Option<GString>, description: Option<GString>) {
|
||||||
self.title.update(&title);
|
self.title.update(title);
|
||||||
self.description.update(&description);
|
self.description.update(description);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Getters
|
// Getters
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
use gtk::{pango::EllipsizeMode, Label};
|
use gtk::{glib::GString, pango::EllipsizeMode, Label};
|
||||||
|
|
||||||
const DEFAULT_TEXT: &str = "Yoda"; // @TODO
|
const DEFAULT_TEXT: &str = "Yoda"; // @TODO
|
||||||
|
|
||||||
@ -20,13 +20,13 @@ impl Title {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Actions
|
// Actions
|
||||||
pub fn update(&self, text: &str) {
|
pub fn update(&self, text: Option<GString>) {
|
||||||
if text.is_empty() {
|
match text {
|
||||||
self.widget.set_text(DEFAULT_TEXT);
|
Some(value) => self
|
||||||
} else {
|
.widget
|
||||||
self.widget
|
.set_text(&format!("{} - {}", value, DEFAULT_TEXT)),
|
||||||
.set_text(&format!("{} - {}", text, DEFAULT_TEXT));
|
None => self.widget.set_text(DEFAULT_TEXT),
|
||||||
}
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
// Getters
|
// Getters
|
||||||
|
@ -57,11 +57,11 @@ impl Main {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Getters
|
// Getters
|
||||||
pub fn tab_page_title(&self) -> GString {
|
pub fn tab_page_title(&self) -> Option<GString> {
|
||||||
self.tab.page_title()
|
self.tab.page_title()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn tab_page_description(&self) -> GString {
|
pub fn tab_page_description(&self) -> Option<GString> {
|
||||||
self.tab.page_description()
|
self.tab.page_description()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -150,7 +150,7 @@ impl Tab {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Getters
|
// Getters
|
||||||
pub fn page_title(&self) -> GString {
|
pub fn page_title(&self) -> Option<GString> {
|
||||||
// Get current page
|
// Get current page
|
||||||
if let Some(page_number) = self.widget.current_page() {
|
if let Some(page_number) = self.widget.current_page() {
|
||||||
// Get default widget to extract it name as the ID for childs
|
// Get default widget to extract it name as the ID for childs
|
||||||
@ -159,15 +159,15 @@ impl Tab {
|
|||||||
let id = &widget.widget_name();
|
let id = &widget.widget_name();
|
||||||
// Get page by widget ID
|
// Get page by widget ID
|
||||||
if let Some(page) = self.pages.borrow().get(id) {
|
if let Some(page) = self.pages.borrow().get(id) {
|
||||||
return page.title();
|
return Some(page.title());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GString::new() // @TODO
|
None
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn page_description(&self) -> GString {
|
pub fn page_description(&self) -> Option<GString> {
|
||||||
// Get current page
|
// Get current page
|
||||||
if let Some(page_number) = self.widget.current_page() {
|
if let Some(page_number) = self.widget.current_page() {
|
||||||
// Get default widget to extract it name as the ID for childs
|
// Get default widget to extract it name as the ID for childs
|
||||||
@ -176,12 +176,12 @@ impl Tab {
|
|||||||
let id = &widget.widget_name();
|
let id = &widget.widget_name();
|
||||||
// Get page by widget ID
|
// Get page by widget ID
|
||||||
if let Some(page) = self.pages.borrow().get(id) {
|
if let Some(page) = self.pages.borrow().get(id) {
|
||||||
return page.description();
|
return Some(page.description());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GString::new() // @TODO
|
None
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn widget(&self) -> &Notebook {
|
pub fn widget(&self) -> &Notebook {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user