Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 2032 → Rev 2033

/programs/develop/heed/trunk/heed.asm
1,7 → 1,16
;************************************************************************
; v.016 30.07.2011
; Start with open file path
; Show working file path
; Some optimization
;
; Marat Zakiyanov aka Mario79, aka Mario
;************************************************************************
; v.015 08.03.2010
; Support for OpenDialog - Open and Save
; Some optimization
;
; Marat Zakiyanov aka Mario79, aka Mario
;************************************************************************
; v.014 05.02.2010
;
45,10 → 54,10
dd I_END ;program image size
dd (D_END+0x600) and not 3 ;required amount of memory
dd (D_END+0x600) and not 3 ;stack
dd 0x0 ;buf_cmd_lin
dd fname_buf
dd cur_dir_path
 
_title equ 'HeEd 0.15', 0
_title equ 'HeEd 0.16', 0
 
include 'lang.inc'
include '../../../config.inc' ;for nightbuild
95,13 → 104,33
mcall 68,11
 
load_libraries l_libs_start,end_l_libs
 
;--------------------------------------------------------------------
;OpenDialog initialisation
push dword OpenDialog_data
call [OpenDialog_Init]
;--------------------------------------------------------------------
mov esi,fname_buf
cmp [esi],byte 0
je .start_temp_file_name
 
cld
@@:
lodsb
test al,al
jne @b
std
@@:
lodsb
cmp al,'/'
jne @b
add esi,2
jmp .selected_start_file_name
;--------------------------------------------------------------------
.start_temp_file_name:
mov esi,start_temp_file_name
.selected_start_file_name:
mov edi,filename_area
mov esi,start_temp_file_name
xor eax,eax
cld
@@:
115,16 → 144,9
mcall 68,12,32*1024 ;áâà ­¨ç­ë© ¡ãä¥à
mov [screen_table],eax
mcall 68,12,4*1024
; mov [blocks_table],eax
 
mov [file_buffer],eax
; mov esi,eax
; mcall 68,12,4*1024
; mov [esi],eax
; mov [blocks_counter],1
 
; mcall 68,12,1024 ;Procinfo area for function 9 in MenuBar
; mov [menu_data_1.procinfo],eax
; mov [menu_data_2.procinfo],eax
mcall 68,12,1024
mov [copy_buf],eax
 
153,7 → 175,11
mov ecx,[ebx+30] ; PID
mcall 18,21
mov [active_process],eax ; WINDOW SLOT
 
;--------------------------------------------------------------------
; open the file if program has a file path, when it was launched
cmp [fname_buf],byte 0
jne open_dialog.start
;--------------------------------------------------------------------
redraw_all:
call control_minimal_window_size
call draw_window_1
1310,12 → 1336,31
mov ecx,8
call hex_output
ret
 
 
;---------------------------------------------------------------------
align 4
create_title:
mov edi,title_buf
mov esi,title
cld
@@:
lodsb
stosb
test al,al
jne @b
mov [edi-1],byte ' '
mov esi,fname_buf
@@:
lodsb
stosb
test al,al
jne @b
ret
;---------------------------------------------------------------------
align 4
draw_window:
call create_title
xor esi,esi
mcall 0,100*65536+653,100*65536+360,((0x73 shl 24) + frgrd_color),,title
mcall 0,100*65536+653,100*65536+360,((0x73 shl 24) + frgrd_color),,title_buf ;title
mcall 9,threath_buf,-1
cmp byte [threath_buf+70],3 ;®ª­® á¢ñà­ãâ® ¢ § £®«®¢®ª?
jnae @f
2816,6 → 2861,7
; je .sysxtree ; some kind of alternative, instead OpenDialog
cmp [OpenDialog_data.status],1
jne still
.start:
mov esi,fname_buf
.load:
mov edi,file_name
3410,6 → 3456,9
 
func_70 f70
;---------------------------------------------------------------------
title_buf:
rb 4096
;---------------------------------------------------------------------
fname_buf:
rb 4096
;---------------------------------------------------------------------