/programs/cmm/eolite/include/settings.h |
---|
207,19 → 207,19 |
void LoadIcons() |
{ |
//ICONS16.PNG |
Libimg_LoadImage(#icons16_default, "/sys/icons16.png"); |
Libimg_LoadImage(#icons16_selected, "/sys/icons16.png"); |
Libimg_ReplaceColor(icons16_selected.image, icons16_selected.w, icons16_selected.h, 0xffFFFfff, col.selec); |
Libimg_ReplaceColor(icons16_selected.image, icons16_selected.w, icons16_selected.h, 0xffCACBD6, MixColors(col.selec, 0, 200)); |
icons16_default.load("/sys/icons16.png"); |
icons16_selected.load("/sys/icons16.png"); |
icons16_selected.replace_color(0xffFFFfff, col.selec); |
icons16_selected.replace_color(0xffCACBD6, MixColors(col.selec, 0, 200)); |
if (col.list_bg!=0xFFFfff) { |
Libimg_ReplaceColor(icons16_default.image, icons16_selected.w, icons16_selected.h, 0xffFFFfff, col.list_bg); |
Libimg_ReplaceColor(icons16_default.image, icons16_selected.w, icons16_selected.h, 0xffCACBD6, MixColors(col.list_bg, 0, 200)); |
icons16_default.replace_color(0xffFFFfff, col.list_bg); |
icons16_default.replace_color(0xffCACBD6, MixColors(col.list_bg, 0, 200)); |
} |
//ICONS32.PNG |
Libimg_LoadImage(#icons32_default, "/sys/icons32.png"); |
Libimg_LoadImage(#icons32_selected, "/sys/icons32.png"); |
Libimg_ReplaceColor(icons32_default.image, icons32_selected.w, icons32_selected.h, 0x00000000, col.list_bg); |
Libimg_ReplaceColor(icons32_selected.image, icons32_selected.w, icons32_selected.h, 0x00000000, col.selec); |
icons32_default.load("/sys/icons32.png"); |
icons32_selected.load("/sys/icons32.png"); |
icons32_default.replace_color(0x00000000, col.list_bg); |
icons32_selected.replace_color(0x00000000, col.selec); |
} |
void SetAppColors() |
/programs/cmm/iconedit/colors_mas.h |
---|
165,7 → 165,7 |
void _image::set_image(dword _inbuf) |
{ |
dword i; |
for (i = 0; i < columns*rows; i++;) |
for (i = 0; i < columns*rows-1; i++;) |
{ |
// mas[i] = ESDWORD[i*4+_inbuf] & 0x00FFFFFF; //for x32 bit color |
mas[i] = ESDWORD[i*3+_inbuf] & 0xFFFFFF; |
/programs/cmm/iconedit/compile_en.bat |
---|
9,7 → 9,7 |
@del lang.h-- |
if exist iconedit ( |
"C:\Program Files (x86)\WinImage\winimage.exe" "C:\Users\Leency\Desktop\kolibri.img" /H /Q /I iconedit |
"C:\Program Files (x86)\WinImage\winimage.exe" "D:\Kolibri\Desktop\kolibri.img" /H /Q /I iconedit |
d: |
cd "D:\Kolibri\Infrastructure\QEMU" |
call "z_kos.bat" |
/programs/cmm/iconedit/compile_ru.bat |
---|
9,7 → 9,7 |
@del lang.h-- |
if exist iconedit ( |
"C:\Program Files (x86)\WinImage\winimage.exe" "C:\Users\Leency\Desktop\kolibri.img" /H /Q /I iconedit |
"C:\Program Files (x86)\WinImage\winimage.exe" "D:\Kolibri\Desktop\kolibri.img" /H /Q /I iconedit |
d: |
cd "D:\Kolibri\Infrastructure\QEMU" |
call "z_kos.bat" |
/programs/cmm/iconedit/iconedit.c |
---|
32,12 → 32,16 |
//===================================================// |
#ifdef LANG_RUS |
char edit_menu_items[] = |
"ë१ âì|Ctrl+X |
®¯¨à®¢ âì|Ctrl+C |
áâ ¢¨âì|Ctrl+V"; |
char image_menu_items[] = |
"®«¨ç¥á⢮ ¨á¯®«ì§®¢ ëå 梥⮢ |
¬¥¨âì ¢á¥ æ¢¥â 1 2"; |
?define T_MENU_IMAGE "ª®ª " |
?define T_TEST_ICON "஢¥à¨âì ¨ª®ªã" |
?define T_TITLE "¥¤ ªâ®à ¨ª®®ª 0.60 Alpha" |
?define T_TITLE "¥¤ ªâ®à ¨ª®®ª 0.70 Beta" |
?define T_UNIC_COLORS_COUNT "'¨ª «ìëå 梥⮢: %i.' -I" |
?define T_TOO_BIG_IMAGE_FOR_PREVIEW "'IconEdit |
§®¡à ¦¥¨¥ ᫨誮¬ ¡®«ì讥 ¤«ï ¯à¥¤¯à®á¬®âà !' -tE" |
45,12 → 49,16 |
?define T_ERROR_IMA_ICONEDIT "'â® ¯à®á⮠। ªâ®à ¨ª®®ª, ¢ë¡à ®¥ |
¨§®¡à ¦¥¨¥ ᫨誮¬ ¢¥«¨ª® ¤«ï ¥£®!' -E" |
#else |
char edit_menu_items[] = |
"Cut|Ctrl+X |
Copy|Ctrl+C |
Paste|Ctrl+V"; |
char image_menu_items[] = |
"Count colors used |
Replace all colors equal to 1 by 2"; |
?define T_MENU_IMAGE "Icon" |
?define T_TEST_ICON "Test Icon" |
?define T_TITLE "Icon Editor 0.60 Alpha" |
?define T_TITLE "Icon Editor 0.70 Beta" |
?define T_UNIC_COLORS_COUNT "'Image has %i unique colors.' -I" |
?define T_TOO_BIG_IMAGE_FOR_PREVIEW "'IconEdit |
Image is too big for preview!' -tE" |
160,28 → 168,26 |
{ |
word btn; |
libimg_image open_image; |
dword bg_col; |
load_dll(libio, #libio_init, 1); |
load_dll(libimg, #libimg_init, 1); |
load_dll(boxlib, #box_lib_init,0); |
Libimg_LoadImage(#top_icons, "/sys/icons16.png"); |
Libimg_LoadImage(#left_icons, "/sys/icons16.png"); |
top_icons.load("/sys/icons16.png"); |
left_icons.load("/sys/icons16.png"); |
sc.get(); |
bg_col = sc.work; |
bg_dark = skin_is_dark(); |
semi_white = MixColors(sc.work, 0xFFFfff, bg_dark*90 + 96); |
Libimg_ReplaceColor(top_icons.image, top_icons.w, top_icons.h, 0xffFFFfff, semi_white); |
Libimg_ReplaceColor(top_icons.image, top_icons.w, top_icons.h, 0xffCACBD6, MixColors(semi_white, 0, 220)); |
top_icons.replace_color(0xffFFFfff, semi_white); |
top_icons.replace_color(0xffCACBD6, MixColors(semi_white, 0, 220)); |
Libimg_ReplaceColor(left_icons.image, left_icons.w, left_icons.h, 0xffFFFfff, sc.work); |
Libimg_ReplaceColor(left_icons.image, left_icons.w, left_icons.h, 0xffCACBD6, MixColors(sc.work, 0, 200)); |
left_icons.replace_color(0xffFFFfff, sc.work); |
left_icons.replace_color(0xffCACBD6, MixColors(sc.work, 0, 200)); |
//fix line and rectandle color for dark skins |
if (bg_dark) Libimg_ReplaceColor(left_icons.image, left_icons.w, left_icons.h, 0xff545454, 0xffD3D3D4); |
if (bg_dark) left_icons.replace_color(0xff545454, 0xffD3D3D4); |
EventSetActiveColor(1, color1); |
190,7 → 196,7 |
} |
else |
{ |
Libimg_LoadImage(#open_image, #param); |
open_image.load_as24b(#param); |
if (open_image.w*open_image.h>MAX_CELL_SIZE*MAX_CELL_SIZE) { |
notify(T_ERROR_IMA_ICONEDIT); |
369,8 → 375,7 |
DrawBar(0, 0, Form.cwidth, TOPBAR_H-1, sc.work); |
DrawBar(0, TOPBAR_H-1, Form.cwidth, 1, sc.work_graph); |
tx.n = 5-GAPH; |
DrawTopPanelButton(#EventCreateNewIcon, ECTRL + SCAN_CODE_KEY_N, tx.inc(GAPH), 2); |
DrawTopPanelButton(#EventCreateNewIcon, ECTRL + SCAN_CODE_KEY_N, tx.set(5), 2); |
DrawTopPanelButton(#EventOpenIcon, ECTRL + SCAN_CODE_KEY_O, tx.inc(GAPH), 0); |
DrawTopPanelButton(#EventSaveIconToFile, ECTRL + SCAN_CODE_KEY_S, tx.inc(GAPH), 5); |
DrawTopPanelButton(#EventMoveLeft, ECTRL + SCAN_CODE_LEFT, tx.inc(GAPH+BLOCK_SPACE), 30); |
384,7 → 389,7 |
DrawTopPanelButton(#EventTestIcon, ECTRL + SCAN_CODE_KEY_T, tx.inc(GAPH+BLOCK_SPACE), 12); |
DrawTopPanelButton(#EventCrop, 0, tx.inc(GAPH+BLOCK_SPACE), 46); |
image_menu_btn.x = tx.n; |
image_menu_btn.x = tx.inc(GAPH+BLOCK_SPACE); |
image_menu_btn.w = DrawFlatPanelButton(button.add(#EventShowImageMenu), image_menu_btn.x, image_menu_btn.y, T_MENU_IMAGE); |
//tx.inc(image_menu_btn.w + BLOCK_SPACE); |
742,6 → 747,12 |
image_menu_btn.y + image_menu_btn.h, MENU_ALIGN_TOP_LEFT, NULL, #image_menu_items); |
} |
void EventShowEditMenu() |
{ |
open_lmenu(Form.left+5 + image_menu_btn.x, Form.top+skin_height + |
image_menu_btn.y + image_menu_btn.h, MENU_ALIGN_TOP_LEFT, NULL, #edit_menu_items); |
} |
void EventCheckMenuItemSelected() |
{ |
switch(get_menu_click()) { |
794,14 → 805,14 |
void EventRotateLeft() { EventMove(ROTATE_LEFT); } |
void EventRotateRight() { EventMove(ROTATE_RIGHT); } |
void EventSelectToolPencil() { setCurrentTool(TOOL_PENCIL); DrawLeftPanelSelection(); } |
void EventSelectToolPick() { setCurrentTool(TOOL_PIPETTE); DrawLeftPanelSelection(); } |
void EventSelectToolFill() { setCurrentTool(TOOL_FILL); DrawLeftPanelSelection(); } |
void EventSelectToolLine() { setCurrentTool(TOOL_LINE); DrawLeftPanelSelection(); } |
void EventSelectToolRect() { setCurrentTool(TOOL_RECT); DrawLeftPanelSelection(); } |
void EventSelectToolBar() { setCurrentTool(TOOL_BAR); DrawLeftPanelSelection(); } |
void EventSelectToolSelect() { setCurrentTool(TOOL_SELECT); DrawLeftPanelSelection(); } |
void EventSelectToolScrCopy() { setCurrentTool(TOOL_SCREEN_COPY); DrawLeftPanelSelection(); } |
void EventSelectToolPencil() { setCurrentTool(TOOL_PENCIL); } |
void EventSelectToolPick() { setCurrentTool(TOOL_PIPETTE); } |
void EventSelectToolFill() { setCurrentTool(TOOL_FILL); } |
void EventSelectToolLine() { setCurrentTool(TOOL_LINE); } |
void EventSelectToolRect() { setCurrentTool(TOOL_RECT); } |
void EventSelectToolBar() { setCurrentTool(TOOL_BAR); } |
void EventSelectToolSelect() { setCurrentTool(TOOL_SELECT); } |
void EventSelectToolScrCopy() { setCurrentTool(TOOL_SCREEN_COPY); } |
char test_icon_stak22[4096]; |
/programs/cmm/iconedit/tools.h |
---|
2,7 → 2,7 |
#define TOCANVAS 2 |
struct Tool { |
struct TOOL { |
int id; |
dword cursor; |
void (*activate)(); |
10,11 → 10,10 |
void (*onMouseEvent)(int x, int y, int lkm, int pkm); |
void (*onKeyEvent)(dword keycode); |
void (*onCanvasDraw)(); |
}; |
} tools[8]; |
int previousTool = -1; |
int currentTool = -1; |
Tool tools[8]; |
enum { |
TOOL_NONE = -1, |
108,6 → 107,7 |
Cursor.Restore(); |
if (wrapper.hovered()) SetCursor(); |
DrawCanvas(); |
DrawLeftPanelSelection(); |
} |
void SetCursor() |
/programs/cmm/lib/obj/libimg.h |
---|
30,6 → 30,7 |
dword img_draw = #aimg_draw; |
dword img_create = #aimg_create; |
dword img_encode = #aimg_encode; |
dword img_convert = #aimg_convert; |
//dword img_flip = #aimg_flip; |
//dword img_rotate = #aimg_rotate; |
44,9 → 45,12 |
char aimg_draw[] = "img_draw"; |
char aimg_create[] = "img_create"; |
char aimg_encode[] = "img_encode"; |
char aimg_convert[] = "img_convert"; |
//char aimg_flip[] = "img_flip"; |
//char aimg_rotate[] = "img_rotate "; |
//invoke img.scale, ebx, 0, 0, [ebx + Image.Width], [ebx + Image.Height], 0, LIBIMG_SCALE_TYPE_STRETCH, LIBIMG_SCALE_ALG_BILINEAR, edx, ecx |
#define LIBIMG_FORMAT_BMP 1 |
#define LIBIMG_FORMAT_ICO 2 |
#define LIBIMG_FORMAT_CUR 3 |
236,6 → 240,13 |
} |
} |
:dword convert_image(dword _image_pointer, _w, _h, _path) |
{ |
img_convert stdcall(_image_pointer, 0, Image_bpp32, 0, 0); |
if (EAX!=0) |
mov [image_converted], eax |
} |
#ifndef INCLUDE_LIBIMG_LOAD_SKIN_H |
#include "../lib/patterns/libimg_load_skin.h" |
#endif |
/programs/cmm/lib/patterns/libimg_load_skin.h |
---|
7,38 → 7,60 |
:struct libimg_image { |
dword image, w, h, imgsrc; |
void load_as24b(); |
void load(); |
void replace_color(); |
void fill_transparent(); |
} skin; |
:void Libimg_LoadImage(dword struct_pointer, file_path) |
:void libimg_image::load_as24b(dword file_path) |
{ |
dword image_pointer; |
image_pointer = load_image(file_path); |
dword image_pointer = load_image(file_path); |
if (!image_pointer) notify("'Error: Image not loaded' -E"); |
ESDWORD[struct_pointer] = image_pointer; |
ESDWORD[struct_pointer+4] = DSWORD[image_pointer+4]; |
ESDWORD[struct_pointer+8] = DSWORD[image_pointer+8]; |
ESDWORD[struct_pointer+12] = ESDWORD[image_pointer+24]; |
img_convert stdcall(image_pointer, 0, Image_bpp24, 0, 0); |
if (!EAX) { |
notify("'Error: Image can not be converted to 24b' -E"); |
} else { |
image = image_pointer = EAX; |
w = DSWORD[image_pointer+4]; |
h = DSWORD[image_pointer+8]; |
imgsrc = ESDWORD[image_pointer+24]; |
} |
} |
:void Libimg_ReplaceColor(dword struct_pointer, w, h, old_color, new_color) |
:void libimg_image::load(dword file_path) |
{ |
dword i, max_i, image_data; |
image_data = ESDWORD[struct_pointer + 24]; |
max_i = w * h * 4 + image_data; |
for (i = image_data; i < max_i; i += 4) if (DSDWORD[i]==old_color) DSDWORD[i] = new_color; |
dword image_pointer = load_image(file_path); |
if (!EAX) { |
notify("'Error: Image not loaded' -E"); |
} else { |
image = image_pointer = EAX; |
w = DSWORD[image_pointer+4]; |
h = DSWORD[image_pointer+8]; |
imgsrc = ESDWORD[image_pointer+24]; |
} |
:void Libimg_FillTransparent(dword struct_pointer, w, h, new_color) |
} |
:void libimg_image::replace_color(dword old_color, new_color) |
{ |
if (new_color!=0) Libimg_ReplaceColor(struct_pointer, w, h, 0, new_color); |
dword i, max_i; |
max_i = w * h * 4 + imgsrc; |
for (i = imgsrc; i < max_i; i += 4) if (DSDWORD[i]==old_color) DSDWORD[i] = new_color; |
} |
:void libimg_image::fill_transparent(new_color) |
{ |
if (new_color) replace_color(0, new_color); |
} |
:libimg_image icons32draw; |
:void DrawIcon32(dword x,y, bg, icon_n) { |
//load_dll(libimg, #libimg_init,1); |
if (!icons32draw.image) { |
Libimg_LoadImage(#icons32draw, "/sys/icons32.png"); |
Libimg_FillTransparent(icons32draw.image, icons32draw.w, icons32draw.h, bg); |
icons32draw.load("/sys/icons32.png"); |
icons32draw.fill_transparent(bg); |
} |
if (icon_n>=0) img_draw stdcall(icons32draw.image, x, y, 32, 32, 0, icon_n*32); |
} |
47,9 → 69,9 |
:void DrawIcon16(dword x,y, bg, icon_n) { |
//load_dll(libimg, #libimg_init,1); |
if (!icons16draw.image) { |
Libimg_LoadImage(#icons16draw, "/sys/icons16.png"); |
Libimg_ReplaceColor(icons16draw.image, icons16draw.w, icons16draw.h, 0xffFFFfff, bg); |
Libimg_ReplaceColor(icons16draw.image, icons16draw.w, icons16draw.h, 0xffCACBD6, MixColors(bg, 0, 220)); |
icons16draw.load("/sys/icons16.png"); |
icons16draw.replace_color(0xffFFFfff, bg); |
icons16draw.replace_color(0xffCACBD6, MixColors(bg, 0, 220)); |
} |
if (icon_n>=0) img_draw stdcall(icons16draw.image, x, y, 16, 16, 0, icon_n*16); |
} |
/programs/cmm/lib/patterns/toolbar_button.h |
---|
6,14 → 6,14 |
static dword semi_white=0, bg_col_light, bg_col_dark; |
int i; |
if (!semi_white) { |
Libimg_LoadImage(#top_icons, "/sys/icons16.png"); |
top_icons.load("/sys/icons16.png"); |
semi_white = MixColors(sc.work, 0xFFFfff, skin_is_dark()*90 + 96); |
bg_col_dark = MixColors(sc.work, sc.work_graph, 90); |
bg_col_light = MixColors(semi_white, 0xFFFfff, skin_is_dark()*90 + 10); |
Libimg_ReplaceColor(top_icons.image, top_icons.w, top_icons.h, 0xffFFFfff, semi_white); |
Libimg_ReplaceColor(top_icons.image, top_icons.w, top_icons.h, 0xffCACBD6, MixColors(semi_white, 0, 220)); |
top_icons.replace_color(0xffFFFfff, semi_white); |
top_icons.replace_color(0xffCACBD6, MixColors(semi_white, 0, 220)); |
} |
DrawWideRectangle(_x+1, _y+1, TSZE, TSZE, 5, semi_white); |
/programs/cmm/misc/mblocks.c |
---|
44,8 → 44,8 |
load_dll(libio, #libio_init,1); |
load_dll(libimg, #libimg_init,1); |
Libimg_LoadImage(#skin, "/sys/icons32.png"); |
Libimg_FillTransparent(skin.image, skin.w, skin.h, COLOR_CELL_BG); |
skin.load("/sys/icons32.png"); |
skin.fill_transparent(COLOR_CELL_BG); |
NewGame(); |
/programs/cmm/misc/software_widget.c |
---|
151,8 → 151,8 |
void LoadImages() |
{ |
Libimg_LoadImage(#skin, "/sys/icons32.png"); |
Libimg_FillTransparent(skin.image, skin.w, skin.h, swc.list_bg); |
skin.load("/sys/icons32.png"); |
skin.fill_transparent(swc.list_bg); |
} |
/programs/cmm/pixie2/settings.h |
---|
27,7 → 27,7 |
win_y_small = ini.GetInt("win_y_small", -1); |
ini.GetString("last_folder", #work_folder, sizeof(work_folder), NULL); |
Libimg_LoadImage(#skin, abspath("pixieskn.png")); |
skin.load(abspath("pixieskn.png")); |
skin.w = 322; |
theme.color_top_panel_bg = 0x242424; |
theme.color_top_panel_folder_name = 0xEEEeee; |
/programs/cmm/taskbar2/taskbar2.c |
---|
64,8 → 64,8 |
load_dll(libimg, #libimg_init,1); |
load_dll(libini, #lib_init,1); |
Libimg_LoadImage(#skin, "/sys/icons32.png"); |
Libimg_FillTransparent(skin.image, skin.w, skin.h, COLOR_BG); |
skin.load("/sys/icons32.png"); |
skin.fill_transparent(COLOR_BG); |
ini_get_int stdcall ("/sys/appicons.ini", "taskbar", "attachement", ATTACHEMENT_BOTTOM); |
attachement = EAX; |
/programs/cmm/the_bus/the_bus.c |
---|
126,9 → 126,9 |
load_dll(libio, #libio_init,1); |
load_dll(libimg, #libimg_init,1); |
Libimg_LoadImage(#menu, abspath("menu.png")); |
Libimg_LoadImage(#road, abspath("road.png")); |
Libimg_LoadImage(#objects, abspath("objects.png")); |
menu.load(abspath("menu.png")); |
road.load(abspath("road.png")); |
objects.load(abspath("objects.png")); |
loop() |
{ |