Subversion Repositories Kolibri OS

Compare Revisions

No changes between revisions

Regard whitespace Rev 7433 → Rev 7434

/programs/cmm/mousecfg/mouse_image.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/programs/cmm/mousecfg/mouse_image.raw
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/programs/cmm/mousecfg/mousecfg.c
1,10 → 1,11
// Mouse Configuration Utility ver 1.51
// Mouse Configuration Utility ver 1.6
 
#ifndef AUTOBUILD
#include "lang.h--"
#endif
 
#define MEMSIZE 0x23E80
#define MEMSIZE 4096*11
 
#include "..\lib\strings.h"
#include "..\lib\mem.h"
#include "..\lib\fs.h"
34,25 → 35,18
?define MOUSE_EMULATION "Enable mouse emulation using keyboard NumPad"
?define MADMOUSE "Through screen sides for pointer"
#endif
proc_info Form;
 
block mouse_frame = { 18, 18, NULL, 130 };
more_less_box pointer_speed = { NULL, 0, 64, POINTER_SPEED };
more_less_box acceleration = { NULL, 0, 64, ACCELERATION_TEXT };
more_less_box double_click_delay = { NULL, 0, 999, DOUBLE_CLICK_TEXT, 8 };
checkbox emulation = { MOUSE_EMULATION, NULL };
checkbox madmouse = { MADMOUSE, NULL };
:block mouse_frame = { 18, 18, NULL, 130 };
:more_less_box pointer_speed = { NULL, 0, 64, POINTER_SPEED };
:more_less_box acceleration = { NULL, 0, 64, ACCELERATION_TEXT };
:more_less_box double_click_delay = { NULL, 0, 999, DOUBLE_CLICK_TEXT, 8 };
:checkbox emulation = { MOUSE_EMULATION, NULL };
:checkbox madmouse = { MADMOUSE, NULL };
 
unsigned char panels_img_data[] = FROM "mouse_image.raw";
raw_image panels_img = { 59, 101, #panels_img_data };
 
_ini ini = { "/sys/settings/system.ini", "mouse" };
 
dword click_status;
 
 
 
void main() {
proc_info Form;
int id;
load_dll(libini, #lib_init,1);
66,32 → 60,24
{
case evMouse:
mouse.get();
if (mouse.down) && (click_status==0) && (mouse_frame.hovered()) {
if (mouse.key&MOUSE_LEFT) click_status = 1;
if (mouse.key&MOUSE_RIGHT) click_status = 2;
if (mouse.key&MOUSE_CENTER) click_status = 3;
DrawMouseImage();
}
if (mouse.up) {
click_status=0;
DrawMouseImage();
}
IF (mouse_frame.hovered()) DrawMouseImage(mouse.lkm,mouse.pkm,mouse.mkm, mouse.vert);
IF (mouse.up) DrawMouseImage(0,0,0,0);
break;
 
case evButton:
CASE evButton:
id = GetButtonID();
if (1 == id) ExitApp();
else if (pointer_speed.click(id)) ApplyCfg();
else if (acceleration.click(id)) ApplyCfg();
else if (double_click_delay.click(id)) ApplyCfg();
else if (emulation.click(id)) {
if (emulation.checked == true) RunProgram("/sys/mousemul", 0);
else KillProcessByName("/sys/mousemul", SINGLE);
IF (1 == id) ExitApp();
else IF (pointer_speed.click(id)) ApplyCfg();
else IF (acceleration.click(id)) ApplyCfg();
else IF (double_click_delay.click(id)) ApplyCfg();
ELSE IF (emulation.click(id)) {
IF (emulation.checked == true) RunProgram("/sys/mousemul", 0);
ELSE KillProcessByName("/sys/mousemul", SINGLE);
break;
}
else if (madmouse.click(id)) {
if (madmouse.checked == true) RunProgram("/sys/madmouse", 0);
else KillProcessByName("/sys/madmouse", SINGLE);
ELSE IF (madmouse.click(id)) {
IF (madmouse.checked == true) RunProgram("/sys/madmouse", 0);
ELSE KillProcessByName("/sys/madmouse", SINGLE);
break;
}
break;
98,12 → 84,12
 
case evKey:
GetKeys();
if (key_scancode == SCAN_CODE_ESC) ExitApp();
IF (key_scancode == SCAN_CODE_ESC) ExitApp();
break;
case evReDraw:
system.color.get();
DefineAndDrawWindow(430, 150, 424, 310+skin_height,0x34,system.color.work,WINDOW_TITLE,0);
DefineAndDrawWindow(430, 150, 424, 313+skin_height,0x34,system.color.work,WINDOW_TITLE,0);
GetProcessInfo(#Form, SelfInfo);
if (Form.status_window>2) break;
mouse_frame.w = - mouse_frame.x * 2 + Form.cwidth;
111,16 → 97,38
mouse_frame.h, 99+BT_NOFRAME, 0xF0F2F3); //needed to handle mouse_up and refresh mouse image
WriteText(mouse_frame.x + 110, mouse_frame.y + 25, 0x90, 0x2C343C, CHECK_MOUSE_1);
WriteText(mouse_frame.x + 110, mouse_frame.y + 45, 0x90, 0x2C343C, CHECK_MOUSE_2);
DrawMouseImage();
DrawMouseImage(0,0,0,0);
DrawControls();
}
}
 
:byte panels_img_data[] = FROM "mouse_image.raw";
 
void DrawMouseImage() {
_PutImage(mouse_frame.x+30, mouse_frame.y + 15, panels_img.w, panels_img.h,
click_status * panels_img.w * panels_img.h * 3 + panels_img.data);
#define red 0xff0000
#define yellow 0xfff600
#define white 0xffffff
#define dgrey 0x2d353d
 
:struct IMG_PAL{ dword back, shad1, mbody, left, right, middle, white; }
pal = { 0xF0F2F3,0xABB0B2, dgrey, white, white, dgrey, white };
 
void DrawMouseImage(dword l,r,m,v) {
#define IMG_W 59
#define IMG_H 101
 
IF (l) pal.left = red;
IF (m) pal.middle = red;
IF (r) pal.right = red;
IF (v) pal.middle = yellow;
 
PutPaletteImage(#panels_img_data,IMG_W,IMG_H,18+30,18+15,8,#pal);
pal.left = pal.right = white;
pal.middle = dgrey;
if (v) {
pause(10);
DrawMouseImage(0,0,0,0);
}
}
 
void DrawControls() {
incn y;
/programs/cmm/notes/checkbox.raw
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Deleted: svn:mime-type
-application/octet-stream
\ No newline at end of property
/programs/cmm/notes/edge.raw
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Deleted: svn:mime-type
-application/octet-stream
\ No newline at end of property
/programs/cmm/notes/checkbox.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Deleted: svn:mime-type
-application/octet-stream
\ No newline at end of property
/programs/cmm/notes/edge.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Deleted: svn:mime-type
-application/octet-stream
\ No newline at end of property
/programs/cmm/notes/engine.h
2,7 → 2,7
 
#define CHBOX 12
#define CHECKBOX_ID 50
unsigned char checkbox[sizeof(file "checkbox.raw")]= FROM "checkbox.raw";
unsigned char checkbox[sizeof(file "img/checkbox.raw")]= FROM "img/checkbox.raw";
 
#define COL_BG_ACTIVE 0xFFF0A9
#define COL_BG_INACTIVE 0xFFFFFF
36,6 → 36,7
struct NOTES : llist {
char txt_path[4096];
char txt_data[MAX_LINE_CHARS*LINES_COUNT];
bool txt_file_exists;
 
NOTE_LINE lines[LINES_COUNT];
 
42,7 → 43,6
char edit_active;
int OpenTxt();
int SaveTxt();
void DeleteNode();
void DrawList();
dword DrawLine(int line_n, draw_h);
} notes;
57,11 → 57,13
ReadFile(0, 4096, #txt_data, #txt_path);
if (!txt_data) || (strncmp(#txt_data, "notes", 5)!=0)
{
txt_file_exists = false;
notify("'Notes\nData file does not exists or is not valid' -tE");
return 0;
}
else
{
txt_file_exists = true;
i+=5; //skip "notes" indefinier
while (txt_data[i])
{
98,6 → 100,7
tm = #lines[i].data;
strcat(#txt_data, #lines[i].data);
}
if (!txt_file_exists) CreateFile(0, 0, #txt_path);
WriteFile(0, strlen(#txt_data), #txt_data, #txt_path);
}
 
/programs/cmm/notes/img/checkbox.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/programs/cmm/notes/img/checkbox.raw
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/programs/cmm/notes/img/edge.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/programs/cmm/notes/img/edge.raw
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/programs/cmm/notes/notes
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/programs/cmm/notes/notes.c
1,4 → 1,4
// Notes v0.8 ALPHA
// Notes v0.9 Beta
 
#define MEMSIZE 0xDAE80
#include "..\lib\kolibri.h"
32,7 → 32,7
 
#define RED_LINE_X 22
#define COL_RED_LINE 0xF3C9C9
unsigned char edge[sizeof(file "edge.raw")]= FROM "edge.raw"; //292x6
unsigned char edge[sizeof(file "img/edge.raw")]= FROM "img/edge.raw"; //292x6
#define EDGE_H 6
#define TITLE_H 24
#define HEADER_HEIGHT TITLE_H+EDGE_H
47,7 → 47,7
#include "engine.h"
 
dword ed_mouse;
edit_box notebox = {0,999,0,COL_BG_ACTIVE,0x94AECE,COL_BG_ACTIVE,0xffffff,0,
edit_box notebox = {NULL,NULL,NULL,COL_BG_ACTIVE,0x94AECE,COL_BG_ACTIVE,0xffffff,0,
MAX_LINE_CHARS-1,NULL,#ed_mouse,ed_always_focus+ed_focus};
dword lists[] = { 0xEAEAEA, 0xCDCDCD, 0xF0F0F0, 0xD8D8D8, 0 };
 
63,13 → 63,14
void main()
{
int btn;
bool first_redraw=true;
dword cur_line_offset;
load_dll(boxlib, #box_lib_init,0);
if (param) notes.OpenTxt(#param); else notes.OpenTxt(abspath("notes.txt"));
notes.cur_y = -1;
//notes.cur_y = 0;
 
SetEventMask(0x27);
SetEventMask(EVM_REDRAW + EVM_KEY + EVM_BUTTON + EVM_MOUSE + EVM_MOUSE_FILTER);
 
loop() switch(WaitEvent())
{
90,6 → 91,7
 
if (mouse.key&MOUSE_LEFT)&&(mouse.up)
&& (notes.ProcessMouse(mouse.x, mouse.y)) {
notebox.pos = mouse.x - notebox.left / 6;
EventListRedraw();
EventActivateLine(notes.cur_y);
}
107,8 → 109,7
EventDeleteCurrentNode();
break;
default:
notes.lines[btn-CHECKBOX_ID].state ^= 1;
EventListRedraw();
EventCheckBoxClick(btn-CHECKBOX_ID);
break;
}
break;
115,6 → 116,14
case evKey:
GetKeys();
if (key_modifier&KEY_LCTRL) || (key_modifier&KEY_RCTRL)
{
if (key_scancode == SCAN_CODE_SPACE)
{
EventCheckBoxClick(notes.cur_y);
}
break;
}
switch(key_scancode)
{
case SCAN_CODE_ESC:
137,8 → 146,12
case evReDraw:
draw_window();
if (first_redraw) {
first_redraw = false;
EventActivateLine(0);
}
}
}
 
void DrawCloseButton(dword x,y,w,h)
{
172,9 → 185,10
{
notebox.width = notes.w-notes.x-8;
notebox.left = notes.x+5;
notebox.pos = notebox.offset = notebox.shift = notebox.shift_old = 0;
notebox.offset = notebox.shift = notebox.shift_old = 0;
notebox.cl_curs_x = notebox.cl_curs_y = 0;
notebox.size = strlen(notebox.text);
if (notebox.pos > notebox.size) notebox.pos = notebox.size;
notebox.top = notes.cur_y*notes.item_h+4+notes.y;
edit_box_draw stdcall(#notebox);
}
212,7 → 226,8
 
void EventDeleteCurrentNode()
{
notes.lines[notes.cur_y].Delete();
int t = notes.cur_y;
notes.lines[t].Delete();
EventListRedraw();
}
 
223,4 → 238,10
notes.DrawList();
}
 
void EventCheckBoxClick(int id)
{
notes.lines[id].state ^= 1;
EventListRedraw();
}
 
stop:
/programs/cmm/template/template.c
2,15 → 2,36
* Template C-- program.
*/
 
#define MEMSIZE 4096*5
#define MEMSIZE 4096*10
 
#include "../lib/kolibri.h"
#include "../lib/fs.h"
#include "../lib/io.h"
#include "../lib/gui.h"
 
proc_info Form;
 
void main()
{
RunProgram("/sys/syspanel", "/sys/settings/games.ini");
word btn;
loop() switch(WaitEvent())
{
case evButton:
btn = GetButtonID();
if (btn == 1) ExitProcess();
break;
case evKey:
GetKeys();
if (key_scancode == SCAN_CODE_ESC) ExitProcess();
break;
case evReDraw:
draw_window();
break;
}
}
 
void draw_window()
{
DefineAndDrawWindow(215, 100, 350, 300, 0x34, 0xEEEeee, "Window title",0);
GetProcessInfo(#Form, SelfInfo);
}
/programs/other/rtfread/trunk/bgifont.inc
154,20 → 154,20
mov dword[.font],edx ; filename
mov esi,edi ; esi->FontName
mov [.dest],edi ; ptr to load font
mov eax, 70
mov ebx, .fontattr
mcall
test eax, eax
;jnz .fail
dps2 '1'
mov eax, [.fileattr+32]
mov [.fsize], litt_end-litt_file
mov ebx,.fontinfo
mov eax,70
mcall ; ebx - file size
;mov ebx, litt_end-litt_file
;mov edi, litt_file
;mov [.dest],litt_file ; ptr to load font
; mov eax, 70
; mov ebx, .fontattr
; mcall
; test eax, eax
; ;jnz .fail
; dps2 '1'
; mov eax, [.fileattr+32]
;mov [.fsize], litt_end-litt_file
;mov ebx,.fontinfo
;mov eax,70
;mcall ; ebx - file size
mov ebx, litt_end-litt_file
mov edi, litt_file
mov [.dest],litt_file ; ptr to load font
 
cmp dword[edi],0x08084b50 ; 'PK',8,8
jne .fail
/programs/other/rtfread/trunk/rtfread.asm
163,8 → 163,8
mov dh,ah
jmp key
 
.next: ;]Leency
cmp ah,104 ; HELP
.next:
cmp ah,'h' ; H - help
jne .nohelp
.help:
mov [is_scroll_bar_needed], 0
192,15 → 192,15
; je still
; jmp prep_load
.nohelp2:
cmp ah,114 ; R - redraw
cmp ah,'r' ; R - redraw
je red
cmp ah,99 ; C - color
cmp ah,'c' ; C - color
jne .nocolor
.color:
xor [mode],RTF_COLORLESS
jmp red
.nocolor:
cmp ah,97 ; A - alignment
cmp ah,'a' ; A - alignment
jne .noalign
.alignment:
xor [mode],RTF_ALIGNLESS
212,12 → 212,30
dec [pitch]
jmp red
.nopd:
cmp ah,46 ; < - pitch inc
cmp ah,46 ; > - pitch inc
jne .nopi
.incp:
inc [pitch]
jmp red
.nopi:
cmp ah,43 ;zoom+
je .zplus
cmp ah,61 ;zoom=
jne .noplus
.zplus:
fld [FreeFontscale]
fmul [Zoomscale]
.zoom:
fstp [FreeFontscale]
jmp red
.noplus:
cmp ah,45 ;zoom-
jne .home
.zminus:
fld [FreeFontscale]
fdiv [Zoomscale]
jmp .zoom
.home:
cmp ah,180 ; Home
je top_red
307,21 → 325,7
; je still
jmp red
.noarup:
cmp ah,56 ;zoom+
jne .noplus
.zplus:
fld [FreeFontscale]
fmul [Zoomscale]
.zoom:
fstp [FreeFontscale]
jmp red
.noplus:
cmp ah,54 ;zoom-
jne .nominus
.zminus:
fld [FreeFontscale]
fdiv [Zoomscale]
jmp .zoom
 
.nominus:
cmp ah,0xB5 ; end
jne .pre_file_open
336,7 → 340,7
call Set_position
jmp red
.pre_file_open:
cmp ah,108 ; L - load
cmp ah,'l' ; L - load
jne still
.file_open:
;---------------------------------------------------------------------
351,16 → 355,6
cmp [OpenDialog_data.status],1
je prep_load
jmp still
;---------------------------------------------------------------------
;.sysxtree:
; or [mode],RTF_OPENING
; opendialog draw_window, prep_load, st_1, fname_buf
; st_1:
; and [mode],not RTF_OPENING
; jmp still;red
; stilld:
; jmp still
;---------------------------------------------------------------------
 
button:
mcall 17 ; 17 - ¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª­®¯ª¨
744,7 → 738,7
; ¨­â¥àä¥©á ¯à®£à ¬¬ë ¬­®£®ï§ëç­ë©
; ‚ë ¬®¦¥â¥ § ¤ âì ï§ëª ¢ MACROS.INC (lang fix ï§ëª)
 
window_title: db 'RtfRead v1.4',0
window_title: db 'RtfRead v1.5',0
is_scroll_bar_needed dd 0x0
window_width dd 0x0
window_height dd 0x0