Add Imaginate help docs link to UI

This commit is contained in:
Keavon Chambers 2023-03-25 01:04:58 -07:00
parent 6438a2a403
commit b9374ff88b
1 changed files with 37 additions and 14 deletions

View File

@ -691,20 +691,43 @@ pub fn imaginate_properties(document_node: &DocumentNode, node_id: NodeId, conte
ImaginateServerStatus::Connected => "Connected", ImaginateServerStatus::Connected => "Connected",
}; };
let widgets = vec![ let widgets = vec![
WidgetHolder::text_widget("Server"), vec![
WidgetHolder::unrelated_separator(), WidgetHolder::text_widget("Server"),
IconButton::new("Settings", 24) WidgetHolder::unrelated_separator(),
.tooltip("Preferences: Imaginate") IconButton::new("Settings", 24)
.on_update(|_| DialogMessage::RequestPreferencesDialog.into()) .tooltip("Preferences: Imaginate")
.widget_holder(), .on_update(|_| DialogMessage::RequestPreferencesDialog.into())
WidgetHolder::unrelated_separator(), .widget_holder(),
WidgetHolder::bold_text(status), WidgetHolder::unrelated_separator(),
WidgetHolder::related_separator(), WidgetHolder::bold_text(status),
IconButton::new("Reload", 24) ],
.tooltip("Refresh connection status") if context.persistent_data.imaginate_server_status == ImaginateServerStatus::Unavailable {
.on_update(|_| PortfolioMessage::ImaginateCheckServerStatus.into()) vec![
.widget_holder(), WidgetHolder::unrelated_separator(),
]; TextButton::new("Help")
.tooltip("Learn how to connect Imaginate to an image generation server")
.on_update(|_| {
FrontendMessage::TriggerVisitLink {
url: "https://github.com/GraphiteEditor/Graphite/discussions/1089".to_string(),
}
.into()
})
.widget_holder(),
]
} else {
vec![]
},
vec![
WidgetHolder::related_separator(),
IconButton::new("Reload", 24)
.tooltip("Refresh connection status")
.on_update(|_| PortfolioMessage::ImaginateCheckServerStatus.into())
.widget_holder(),
],
]
.into_iter()
.flatten()
.collect();
LayoutGroup::Row { widgets }.with_tooltip("Connection status to the server that computes generated images") LayoutGroup::Row { widgets }.with_tooltip("Connection status to the server that computes generated images")
}; };