mirror of
https://github.com/Ttanasart-pt/Pixel-Composer.git
synced 2024-12-24 14:06:23 +01:00
- [Graph Panel] Dropping .hex, .gpl, .pal files will now create palette node.
This commit is contained in:
parent
e1a5d54b8a
commit
017aa7ac2b
4 changed files with 43 additions and 74 deletions
|
@ -34,6 +34,7 @@
|
||||||
COLOR_KEYS = [];
|
COLOR_KEYS = [];
|
||||||
|
|
||||||
globalvar VERSION, SAVE_VERSION, VERSION_STRING, BUILD_NUMBER, LATEST_VERSION;
|
globalvar VERSION, SAVE_VERSION, VERSION_STRING, BUILD_NUMBER, LATEST_VERSION;
|
||||||
|
globalvar HOTKEYS, HOTKEY_CONTEXT;
|
||||||
|
|
||||||
LATEST_VERSION = 11700;
|
LATEST_VERSION = 11700;
|
||||||
VERSION = 11780;
|
VERSION = 11780;
|
||||||
|
@ -41,7 +42,6 @@
|
||||||
VERSION_STRING = "1.17.9.004";
|
VERSION_STRING = "1.17.9.004";
|
||||||
BUILD_NUMBER = 11780;
|
BUILD_NUMBER = 11780;
|
||||||
|
|
||||||
globalvar HOTKEYS, HOTKEY_CONTEXT;
|
|
||||||
HOTKEYS = ds_map_create();
|
HOTKEYS = ds_map_create();
|
||||||
HOTKEY_CONTEXT = ds_list_create();
|
HOTKEY_CONTEXT = ds_list_create();
|
||||||
HOTKEY_CONTEXT[| 0] = "";
|
HOTKEY_CONTEXT[| 0] = "";
|
||||||
|
|
|
@ -15,7 +15,7 @@ function Node_Palette(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c
|
||||||
["Trim", true], 1
|
["Trim", true], 1
|
||||||
];
|
];
|
||||||
|
|
||||||
static processData = function(_outSurf, _data, _output_index, _array_index) { #region
|
static processData = function(_outSurf, _data, _output_index, _array_index) {
|
||||||
var pal = _data[0];
|
var pal = _data[0];
|
||||||
var ran = _data[1];
|
var ran = _data[1];
|
||||||
|
|
||||||
|
@ -27,9 +27,9 @@ function Node_Palette(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c
|
||||||
ar[i - st] = array_safe_get_fast(pal, i);
|
ar[i - st] = array_safe_get_fast(pal, i);
|
||||||
|
|
||||||
return ar;
|
return ar;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) { #region
|
static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) {
|
||||||
var bbox = drawGetBbox(xx, yy, _s);
|
var bbox = drawGetBbox(xx, yy, _s);
|
||||||
if(bbox.h < 1) return;
|
if(bbox.h < 1) return;
|
||||||
|
|
||||||
|
@ -48,5 +48,5 @@ function Node_Palette(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c
|
||||||
|
|
||||||
if(_h != min_h) will_setHeight = true;
|
if(_h != min_h) will_setHeight = true;
|
||||||
min_h = _h;
|
min_h = _h;
|
||||||
} #endregion
|
}
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
function isPaletteFile(path) { #region
|
function isPaletteFile(path) {
|
||||||
var ext = string_lower(filename_ext(path));
|
var ext = string_lower(filename_ext(path));
|
||||||
switch(ext) {
|
switch(ext) {
|
||||||
case ".hex" :
|
case ".hex" :
|
||||||
|
@ -9,9 +9,9 @@ function isPaletteFile(path) { #region
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
function loadPalette(path) { #region
|
function loadPalette(path) {
|
||||||
if(!file_exists_empty(path)) return [];
|
if(!file_exists_empty(path)) return [];
|
||||||
if(!isPaletteFile(path)) return [];
|
if(!isPaletteFile(path)) return [];
|
||||||
|
|
||||||
|
@ -77,7 +77,7 @@ function loadPalette(path) { #region
|
||||||
file_text_close(_t);
|
file_text_close(_t);
|
||||||
|
|
||||||
return pal;
|
return pal;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
globalvar PALETTES, PALETTE_LOSPEC;
|
globalvar PALETTES, PALETTE_LOSPEC;
|
||||||
|
|
||||||
|
@ -103,15 +103,13 @@ function __initPalette() {
|
||||||
file_find_close();
|
file_find_close();
|
||||||
}
|
}
|
||||||
|
|
||||||
#region palette generate
|
function palette_string_hex(palette, alpha = true) { //palette generate
|
||||||
function palette_string_hex(palette, alpha = true) {
|
var _str = "";
|
||||||
var _str = "";
|
|
||||||
|
for (var i = 0, n = array_length(palette); i < n; i++) {
|
||||||
for (var i = 0, n = array_length(palette); i < n; i++) {
|
var _c = palette[i];
|
||||||
var _c = palette[i];
|
_str += $"{color_get_hex(_c, alpha)}\n";
|
||||||
_str += $"{color_get_hex(_c, alpha)}\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
return _str;
|
|
||||||
}
|
}
|
||||||
#endregion
|
|
||||||
|
return _str;
|
||||||
|
}
|
|
@ -2290,10 +2290,8 @@ function Panel_Graph(project = PROJECT) : PanelContent() constructor {
|
||||||
var _gx = _mx / graph_s - graph_x;
|
var _gx = _mx / graph_s - graph_x;
|
||||||
var _gy = _my / graph_s - graph_y;
|
var _gy = _my / graph_s - graph_y;
|
||||||
|
|
||||||
if(FILE_IS_DROPPING) {
|
if(FILE_IS_DROPPING)
|
||||||
// draw_sprite_stretched_ext(THEME.node_bg, 1, _mx, _my, 128 * graph_s, 128 * graph_s, COLORS._main_value_positive, 1);
|
|
||||||
draw_sprite_stretched_ext(THEME.ui_panel_selection, 0, 8, 8, w - 16, h - 16, COLORS._main_value_positive, 1);
|
draw_sprite_stretched_ext(THEME.ui_panel_selection, 0, 8, 8, w - 16, h - 16, COLORS._main_value_positive, 1);
|
||||||
}
|
|
||||||
|
|
||||||
if(FILE_DROPPED && !array_empty(FILE_DROPPING)) {
|
if(FILE_DROPPED && !array_empty(FILE_DROPPING)) {
|
||||||
_gx = mx / graph_s - graph_x;
|
_gx = mx / graph_s - graph_x;
|
||||||
|
@ -2964,7 +2962,7 @@ function Panel_Graph(project = PROJECT) : PanelContent() constructor {
|
||||||
} #endregion
|
} #endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
//// ========== Graph Drop ==========
|
//// ========== File Drop ==========
|
||||||
|
|
||||||
function load_file_path(path, _x = undefined, _y = undefined) {
|
function load_file_path(path, _x = undefined, _y = undefined) {
|
||||||
if(!is_array(path)) path = [ path ];
|
if(!is_array(path)) path = [ path ];
|
||||||
|
@ -3005,59 +3003,32 @@ function load_file_path(path, _x = undefined, _y = undefined) {
|
||||||
var ext = filename_ext_raw(p);
|
var ext = filename_ext_raw(p);
|
||||||
|
|
||||||
switch(ext) {
|
switch(ext) {
|
||||||
case "txt" :
|
case "txt" : node = Node_create_Text_File_Read_path(_x, _y, p); break;
|
||||||
node = Node_create_Text_File_Read_path(_x, _y, p);
|
case "csv" : node = Node_create_CSV_File_Read_path(_x, _y, p); break;
|
||||||
break;
|
case "json" : node = Node_create_Json_File_Read_path(_x, _y, p); break;
|
||||||
|
|
||||||
case "csv" :
|
case "ase" :
|
||||||
node = Node_create_CSV_File_Read_path(_x, _y, p);
|
case "aseprite" : node = Node_create_ASE_File_Read_path(_x, _y, p); break;
|
||||||
break;
|
|
||||||
|
|
||||||
case "json" :
|
case "png" :
|
||||||
node = Node_create_Json_File_Read_path(_x, _y, p);
|
case "jpg" :
|
||||||
break;
|
case "jpeg" : node = Node_create_Image_path(_x, _y, p); break;
|
||||||
|
|
||||||
case "ase" :
|
case "gif" : node = Node_create_Image_gif_path(_x, _y, p); break;
|
||||||
case "aseprite" :
|
case "obj" : node = Node_create_3D_Obj_path(_x, _y, p); break;
|
||||||
node = Node_create_ASE_File_Read_path(_x, _y, p);
|
case "wav" : node = Node_create_WAV_File_Read_path(_x, _y, p); break;
|
||||||
break;
|
case "xml" : node = Node_create_XML_File_Read_path(_x, _y, p); break;
|
||||||
|
case "svg" : node = Node_create_SVG_path(_x, _y, p); break;
|
||||||
case "png" :
|
|
||||||
case "jpg" :
|
case "pxc" :
|
||||||
case "jpeg" :
|
case "cpxc" : LOAD_PATH(p); break;
|
||||||
if(key_mod_press(SHIFT))
|
case "pxcc" : APPEND(p); break;
|
||||||
node = Node_create_Image_path(_x, _y, p);
|
|
||||||
else
|
case "hex" :
|
||||||
node = Node_create_Image_path(_x, _y, p);
|
case "gpl" :
|
||||||
break;
|
case "pal" :
|
||||||
|
node = new Node_Palette(_x, _y, PANEL_GRAPH.getCurrentContext());
|
||||||
case "gif" :
|
node.inputs[| 0].setValue(loadPalette(p));
|
||||||
node = Node_create_Image_gif_path(_x, _y, p);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "obj" :
|
|
||||||
node = Node_create_3D_Obj_path(_x, _y, p);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "wav" :
|
|
||||||
node = Node_create_WAV_File_Read_path(_x, _y, p);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "xml" :
|
|
||||||
node = Node_create_XML_File_Read_path(_x, _y, p);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "svg" :
|
|
||||||
node = Node_create_SVG_path(_x, _y, p);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "pxc" :
|
|
||||||
case "cpxc" :
|
|
||||||
LOAD_PATH(p);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case "pxcc" :
|
|
||||||
APPEND(p);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue