}
fn create_toolbar(app: &AppContext<MainWindow>) {
- app.toolbar_item("new_notebook").icon(UiIconSet::NewFolder.as_str()).action("new_notebook").create();
- app.toolbar_item("go_back").icon(UiIconSet::GoBack.as_str()).action("go_back").create();
- app.toolbar_item("go_forward").icon(UiIconSet::GoForward.as_str()).action("go_forward").create();
- app.toolbar_item("new_note").icon(UiIconSet::NewDocument.as_str()).action("new_note").states(&[AppStates::NoteEnableNew as i32]).create();
+ app.toolbar_item("new_notebook").icon(UiIconSet::NewFolder).action("new_notebook").create();
+ app.toolbar_item("go_back").icon(UiIconSet::GoBack).action("go_back").create();
+ app.toolbar_item("go_forward").icon(UiIconSet::GoForward).action("go_forward").create();
+ app.toolbar_item("new_note").icon(UiIconSet::NewDocument).action("new_note").states(&[AppStates::NoteEnableNew as i32]).create();
app.toolbar_content_toggleitem("note_maximize")
- .icon0(UiIconSet::ViewFullscreen.as_str())
- .icon1(UiIconSet::ViewRestore.as_str())
+ .icon0(UiIconSet::ViewFullscreen)
+ .icon1(UiIconSet::ViewRestore)
.action("notebook_view_changed")
.varname("note_maximized")
.create();
- app.toolbar_item("add_attachment").icon(UiIconSet::Add.as_str()).action("add_attachment").create();
+ app.toolbar_item("add_attachment").icon(UiIconSet::Add).action("add_attachment").create();
app.toolbar_add_default("new_notebook", ToolbarItemPosition::SidebarLeft);
app.toolbar_add_default("go_back", ToolbarItemPosition::Left);
self
}
- pub fn icon(&mut self, icon: &str) -> &mut Self {
- let cstr = CString::new(icon).unwrap();
+ pub fn icon(&mut self, icon: impl Into<String>) -> &mut Self {
+ let cstr = CString::new(icon.into()).unwrap();
unsafe {
ui_button_args_set_icon(self.args, cstr.as_ptr());
}
self
}
- pub fn icon(&mut self, icon: &str) -> &mut Self {
- let cstr = CString::new(icon).unwrap();
+ pub fn icon(&mut self, icon: impl Into<String>) -> &mut Self {
+ let cstr = CString::new(icon.into()).unwrap();
unsafe {
ui_toggle_args_set_icon(self.args, cstr.as_ptr());
}
self
}
- pub fn icon0(&mut self, icon: &str) -> &mut Self {
- let cstr = CString::new(icon).unwrap();
+ pub fn icon0(&mut self, icon: impl Into<String>) -> &mut Self {
+ let cstr = CString::new(icon.into()).unwrap();
unsafe {
ui_content_toggle_args_set_icon0(self.args, cstr.as_ptr());
}
self
}
- pub fn icon1(&mut self, icon: &str) -> &mut Self {
- let cstr = CString::new(icon).unwrap();
+ pub fn icon1(&mut self, icon: impl Into<String>) -> &mut Self {
+ let cstr = CString::new(icon.into()).unwrap();
unsafe {
ui_content_toggle_args_set_icon1(self.args, cstr.as_ptr());
}
}
}
+impl From<UiIconSet> for String {
+ fn from(icon: UiIconSet) -> Self {
+ icon.as_str().to_string()
+ }
+}
+
unsafe extern "C" {
fn ui_icon_name(id: i32) -> *const c_char ;
}
\ No newline at end of file
ui_menuitem_create(self.args);
}
}
- pub fn icon(&mut self, icon: &str) -> &mut Self {
+ pub fn icon(&mut self, icon: impl Into<String>) -> &mut Self {
unsafe {
- let cstr = CString::new(icon).unwrap();
+ let cstr = CString::new(icon.into()).unwrap();
ui_menuitem_args_set_icon(self.args, cstr.as_ptr());
}
self
(self.create)(self.args);
}
}
- pub fn icon(&mut self, icon: &str) -> &mut Self {
+ pub fn icon(&mut self, icon: impl Into<String>) -> &mut Self {
unsafe {
- let cstr = CString::new(icon).unwrap();
+ let cstr = CString::new(icon.into()).unwrap();
ui_menutoggleitem_args_set_icon(self.args, cstr.as_ptr());
}
self
self
}
- pub fn icon(&mut self, icon: &str) -> &mut Self {
+ pub fn icon(&mut self, icon: impl Into<String>) -> &mut Self {
unsafe {
- let cstr = CString::new(icon).unwrap();
+ let cstr = CString::new(icon.into()).unwrap();
ui_toolbar_item_args_set_icon(self.args, cstr.as_ptr());
}
self
self
}
- pub fn icon(&mut self, icon: &str) -> &mut Self {
+ pub fn icon(&mut self, icon: impl Into<String>) -> &mut Self {
unsafe {
- let cstr = CString::new(icon).unwrap();
+ let cstr = CString::new(icon.into()).unwrap();
ui_toolbar_toggleitem_args_set_icon(self.args, cstr.as_ptr());
}
self
self
}
- pub fn icon0(&mut self, icon: &str) -> &mut Self {
+ pub fn icon0(&mut self, icon: impl Into<String>) -> &mut Self {
unsafe {
- let cstr = CString::new(icon).unwrap();
+ let cstr = CString::new(icon.into()).unwrap();
ui_toolbar_content_toggleitem_args_set_icon0(self.args, cstr.as_ptr());
}
self
self
}
- pub fn icon1(&mut self, icon: &str) -> &mut Self {
+ pub fn icon1(&mut self, icon: impl Into<String>) -> &mut Self {
unsafe {
- let cstr = CString::new(icon).unwrap();
+ let cstr = CString::new(icon.into()).unwrap();
ui_toolbar_content_toggleitem_args_set_icon1(self.args, cstr.as_ptr());
}
self
self
}
- pub fn icon(&mut self, icon: &str) -> &mut Self {
+ pub fn icon(&mut self, icon: impl Into<String>) -> &mut Self {
unsafe {
- let cstr = CString::new(icon).unwrap();
+ let cstr = CString::new(icon.into()).unwrap();
ui_toolbar_menu_args_set_icon(self.args, cstr.as_ptr());
}
self