Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 8779 → Rev 8780

/programs/cmm/lib/obj/libimg.h
100,6 → 100,7
void load();
void convert_into();
void replace_color();
void replace_2colors();
void set_vars();
void draw();
};
136,9 → 137,24
:void libimg_image::replace_color(dword old_color, new_color)
{
EDX = w * h * 4 + imgsrc;
for (ESI = imgsrc; ESI < EDX; ESI += 4) if (DSDWORD[ESI]==old_color) DSDWORD[ESI] = new_color;
ESI = old_color;
ECX = new_color;
FOR (EDI = imgsrc; EDI < EDX; EDI += 4) IF (DSDWORD[EDI]==ESI) DSDWORD[EDI] = ECX;
}
 
:void libimg_image::replace_2colors(dword old_color1, new_color1, old_color2, new_color2)
{
EDX = w * h * 4 + imgsrc;
ESI = old_color1;
ECX = new_color1;
EBX = old_color2;
EAX = new_color2;
FOR (EDI = imgsrc; EDI < EDX; EDI += 4) {
IF (DSDWORD[EDI]==ESI) DSDWORD[EDI] = ECX;
ELSE IF (DSDWORD[EDI]==EBX) DSDWORD[EDI] = EAX;
}
}
 
:void libimg_image::draw(dword _x, _y, _w, _h, _xoff, _yoff)
{
if (image) img_draw stdcall(image, _x, _y, _w, _h, _xoff, _yoff);