====== ImGui 控件(widgit) ====== ----- \\ 按钮类控件会在被**按下时返回真** 输入框需要**指定字符缓冲区的大小** ===== 普通控件 ===== ^方法 ^描述 ^ |void text(string str) |文本控件 | |void text_colored([vec4] color, string str) |带颜色的文本控件 | |void text_disabled(string str) |禁用的文本控件 | |void text_wrappered(string str) |自动折行文本控件 | |void label_text(string label, string str) |标签文本控件 | |void bullet_text(string str) |圆圈文本控件 | |**boolean** button(string str) |按钮 | |**boolean** small_button(string str) |小按钮 | |**boolean** arrow_button(string str, [dir] dir) |箭头按钮 | |void image([image] img, [vec2] size) |图片 | |**boolean** image_button([image] img, [vec2] size) |图片按钮 | |void check_box(string str, boolean val) |多选框 | |void radio_button(string str, number v, number v_button) |单选框 | |void plot_lines(string label, string text, array data) |折线图 | |void plot_histogram(string label, string text, array data) |直方图 | |void progress_bar(number fraction, string overlay) |进度条,进度的范围是0~1 | |void bullet() |圆圈提示控件,会自动插入 same_line() | |void combo_box(string str, number current, array items) |下拉框 | |void drag_float(const string label, number n) |拖动条 | |void slider_float(string str, number n, number min, number max) |滑动块 | |void input_text(string str, string text, number buff_size) |输入框 | |void input_text_s(string str, string text, number buff_size, array flags) |输入框,可提供参数 | |void input_text_hint(string str, string hint, string text, number buff_size) |带有提示的输入框 | |void input_text_hint_s(string str, string hint, string text, number buff_size, array flags) |带有提示的输入框,可提供参数 | |void input_text_multiline(string str, string text, number buff_size) |多行输入框 | |void input_text_multiline_s(string str, string text, number buff_size, array flags) |多行输入框,可提供参数 | |void color_edit3(string str, [vec4] color) |三色色彩编辑器 | |void color_edit4(string str, [vec4] color) |四色色彩编辑器 | |void selectable(string str, boolean selected) |可选控件 | |void list_box(string str, number current, array items) |列表控件 | ----- \\ ===== 提示信息类控件 ===== |void set_tooltip(string str) |设置提示信息框(跟随鼠标的信息) | |void begin_tooltip() |开始提示信息布局 | |void end_tooltip() |结束提示信息布局 | ----- \\ ===== 菜单类控件 ===== ^方法 ^描述 ^ |**boolean** begin_main_menu_bar() |开始主菜单布局 | |void end_main_menu_bar() |结束主菜单布局 | |**boolean** begin_menu_bar() |开始窗口菜单布局 | |void end_menu_bar() |结束窗口菜单布局 | |**boolean** begin_menu(string str, boolean enabled) |开始菜单项 | |void end_menu() |结束菜单项 | |**boolean** menu_item(string str, string shortcut, boolean enabled) |菜单项目 | |void open_popup(string id) |显示弹出 | |**boolean** begin_popup(string id) |开始弹出菜单布局 | |**boolean** begin_popup_item(string id) |开始控件弹出菜单布局 | |**boolean** begin_popup_window() |开始窗口弹出菜单布局 | |**boolean** begin_popup_background() |开始背景弹出菜单布局 | |**boolean** begin_popup_modal(string title, boolean is_open, array flags_arr) |开始弹出窗口布局 | |void end_popup() |结束弹出布局 | |void close_current_popup() |关闭当前弹出 | ----- \\ ===== 标签类控件 ===== ^方法 ^描述 ^ |**boolean** begin_tab_bar(string id) |开始标签栏布局 | |void end_tab_bar() |结束标签栏布局 | |**boolean** begin_tab_item(string id, boolean is_open, array flags) |开始标签页布局 | |void end_tab_item() |结束标签页布局 | |void set_tab_item_closed(string id) |关闭特定标签页 |
注意:只有标签栏或标签页成功打开才需要调用结束函数
----- \\ ===== 表格类控件 ===== ^方法 ^描述 ^ |void columns(number count, string id, boolean border) |插入表格 | |void next_column() |进入下一个表格区域 | |**number** get_column_index() |获取当前列索引 | |**number** get_column_width(number index) |获取指定列索引处的宽度 | |void set_column_width(number index, number width) |设置指定列索引处的宽度 | |**number** get_column_offset(number index) |获取指定列索引处的 x 偏移量 | |void set_column_offset(number index, number offset) |设置指定列索引处的 x 偏移量 | |**number** get_cloumns_count() |获取列数量 | ----- \\ ===== 位图(Bmp Image) ===== ^方法 ^描述 ^ |**number** get_width([image] image) |获取图片宽度 | |**number** get_height([image] image) |获取图片高度 | ----- \\ ===== 事件和方法 ===== ^方法 ^描述 ^ |**boolean** is_item_hovered() |判断控件是否被鼠标悬停 | |**boolean** is_item_active() |判断控件是否激活 | |**boolean** is_item_focused() |判断控件是否在焦点 | |**boolean** is_item_clicked(number button) |判断控件是否被点击(0=左键,1=右键,2=中键) | |**boolean** is_item_visible() |判断控件是否可见 | |**boolean** is_any_item_hovered() |判断是否有任何控件被鼠标悬停 | |**boolean** is_any_item_active() |判断是否有任何控件激活 | |**boolean** is_any_item_focused() |判断是否有任何控件在焦点 | |**string** get_clipboard_text() |获取剪贴板文字 | |void set_clipboard_text(string str) |设置剪贴板文字 | ----- \\