ui fixes
This commit is contained in:
@@ -66,6 +66,16 @@ function ui_files_release_keys() {
|
||||
let _ui_files_file_browser_handle: ui_handle_t;
|
||||
let _ui_files_file_browser_f: string;
|
||||
|
||||
type draw_cloud_icon_data_t = {
|
||||
f: string;
|
||||
image: image_t;
|
||||
};
|
||||
|
||||
function make_draw_cloud_icon_data(f: string, image: image_t): draw_cloud_icon_data_t {
|
||||
let data: draw_cloud_icon_data_t = { f: f, image: image };
|
||||
return data;
|
||||
}
|
||||
|
||||
function ui_files_file_browser(ui: ui_t, handle: ui_handle_t, folders_only: bool = false, drag_files: bool = false, search: string = "", refresh: bool = false, context_menu: (s: string)=>void = null): string {
|
||||
|
||||
let icons: image_t = resource_get("icons.k");
|
||||
@@ -187,18 +197,19 @@ function ui_files_file_browser(ui: ui_t, handle: ui_handle_t, folders_only: bool
|
||||
map_set(ui_files_icon_map, handle.text + path_sep + f, empty);
|
||||
|
||||
_ui_files_file_browser_handle = handle;
|
||||
_ui_files_file_browser_f = f;
|
||||
_ui_files_file_browser_f = f; ////
|
||||
|
||||
file_cache_cloud(handle.text + path_sep + icon_file, function (abs: string) {
|
||||
if (abs != null) {
|
||||
let image: image_t = data_get_image(abs);
|
||||
let data: draw_cloud_icon_data_t = make_draw_cloud_icon_data(_ui_files_file_browser_f, image);
|
||||
|
||||
app_notify_on_init(function (image: image_t) {
|
||||
app_notify_on_init(function (data: draw_cloud_icon_data_t) {
|
||||
if (base_pipe_copy_rgb == null) {
|
||||
base_make_pipe_copy_rgb();
|
||||
}
|
||||
let icon: image_t = image_create_render_target(image.width, image.height);
|
||||
if (ends_with(_ui_files_file_browser_f, ".arm")) { // Used for material sphere alpha cutout
|
||||
let icon: image_t = image_create_render_target(data.image.width, data.image.height);
|
||||
if (ends_with(data.f, ".arm")) { // Used for material sphere alpha cutout
|
||||
g2_begin(icon);
|
||||
|
||||
///if (is_paint || is_sculpt)
|
||||
@@ -210,12 +221,13 @@ function ui_files_file_browser(ui: ui_t, handle: ui_handle_t, folders_only: bool
|
||||
g2_clear(0xffffffff);
|
||||
}
|
||||
g2_set_pipeline(base_pipe_copy_rgb);
|
||||
g2_draw_image(image, 0, 0);
|
||||
g2_draw_image(data.image, 0, 0);
|
||||
g2_set_pipeline(null);
|
||||
g2_end();
|
||||
map_set(ui_files_icon_map, _ui_files_file_browser_handle.text + path_sep + _ui_files_file_browser_f, icon);
|
||||
|
||||
map_set(ui_files_icon_map, _ui_files_file_browser_handle.text + path_sep + data.f, icon);
|
||||
ui_base_hwnds[tab_area_t.STATUS].redraws = 3;
|
||||
}, image);
|
||||
}, data);
|
||||
}
|
||||
else {
|
||||
ui_files_offline = true;
|
||||
|
||||
@@ -273,7 +273,11 @@ function ui_viewnodes_on_socket_released(socket_id: i32) {
|
||||
let _ui_nodes_on_canvas_released_selected: ui_node_t;
|
||||
|
||||
function ui_viewnodes_on_canvas_released() {
|
||||
if (ui_nodes_ui.input_released_r && math_abs(ui_nodes_ui.input_x - ui_nodes_ui.input_started_x) < 2 && math_abs(ui_nodes_ui.input_y - ui_nodes_ui.input_started_y) < 2) {
|
||||
if (ui_nodes_ui.input_released_r &&
|
||||
context_in_nodes() &&
|
||||
math_abs(ui_nodes_ui.input_x - ui_nodes_ui.input_started_x) < 2 &&
|
||||
math_abs(ui_nodes_ui.input_y - ui_nodes_ui.input_started_y) < 2) {
|
||||
|
||||
// Node selection
|
||||
let nodes: ui_nodes_t = ui_nodes_get_nodes();
|
||||
let canvas: ui_node_canvas_t = ui_nodes_get_canvas(true);
|
||||
|
||||
Reference in New Issue
Block a user