Added functions in lib for radios

This commit is contained in:
Nick Palmer 2017-08-31 23:05:04 +01:00
parent 8621bbf116
commit 5dd0079880
No known key found for this signature in database
GPG Key ID: E4E523DDAAA2B0D4
2 changed files with 25 additions and 0 deletions

View File

@ -42,6 +42,7 @@ struct State {
selected_fish: Option<usize>,
auto_resize_state: AutoResizeState,
file_menu: FileMenuState,
radio_button: i32,
}
impl Default for State {
@ -85,6 +86,7 @@ impl Default for State {
selected_fish: None,
auto_resize_state: Default::default(),
file_menu: Default::default(),
radio_button: 0,
}
}
}
@ -320,6 +322,12 @@ fn show_test_window<'a>(ui: &Ui<'a>, state: &mut State, opened: &mut bool) {
.build();
});
ui.radio_button(im_str!("radio a"), &mut state.radio_button, 0);
ui.same_line(0.0);
ui.radio_button(im_str!("radio b"), &mut state.radio_button, 1);
ui.same_line(0.0);
ui.radio_button(im_str!("radio c"), &mut state.radio_button, 2);
ui.separator();
ui.label_text(im_str!("label"), im_str!("Value"));
ui.combo(im_str!("combo"),

View File

@ -714,6 +714,23 @@ impl<'ui> Ui<'ui> {
}
}
// Widgets: Radio
impl<'ui> Ui<'ui> {
pub fn radio_button<'p>(&self,
label: &'p ImStr,
value: &'p mut i32,
wanted: i32) {
unsafe {
imgui_sys::igRadioButton(label.as_ptr(), value, wanted);
}
}
pub fn radio_button_bool<'p>(&self, label: &'p ImStr, value: bool) {
unsafe {
imgui_sys::igRadioButtonBool(label.as_ptr(), value);
}
}
}
impl<'ui> Ui<'ui> {
pub fn plot_lines<'p>(&self, label: &'p ImStr, values: &'p [f32]) -> PlotLines<'ui, 'p> {
PlotLines::new(self, label, values)