forked from KolibriOS/kolibrios
Apps: fixed 3 programs for using a long path in parameters
git-svn-id: svn://kolibrios.org@10017 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
6fbd7cd2f9
commit
9c44899099
@ -1,7 +1,9 @@
|
|||||||
use32
|
use32
|
||||||
org 0
|
org 0
|
||||||
db 'MENUET01'
|
db 'MENUET01'
|
||||||
dd 1, @ENTRY, @end, @memory, @stack, @params, 0
|
dd 1, @ENTRY, @end, @memory, @stack
|
||||||
|
M01header.params:
|
||||||
|
dd @params, 0
|
||||||
|
|
||||||
include "../../macros.inc"
|
include "../../macros.inc"
|
||||||
include "../../proc32.inc"
|
include "../../proc32.inc"
|
||||||
@ -11,9 +13,9 @@
|
|||||||
|
|
||||||
include "notify.inc"
|
include "notify.inc"
|
||||||
|
|
||||||
LINEH equ 12
|
LINEH equ 12
|
||||||
MARGIN equ 12
|
MARGIN equ 12
|
||||||
ICONS equ 11
|
ICONS equ 11
|
||||||
|
|
||||||
;-------------------------------------------------------------------------------
|
;-------------------------------------------------------------------------------
|
||||||
|
|
||||||
@ -31,8 +33,8 @@
|
|||||||
mcall 18, 25, 2, -1, 1
|
mcall 18, 25, 2, -1, 1
|
||||||
|
|
||||||
;; SET STD PARAMS, IF IT NEEDS
|
;; SET STD PARAMS, IF IT NEEDS
|
||||||
mov eax, @params
|
mov eax, [M01header.params]
|
||||||
cmpne byte [@params], 0, @f
|
cmpne byte [eax], 0, @f
|
||||||
mov eax, sz_std
|
mov eax, sz_std
|
||||||
@@:
|
@@:
|
||||||
mov [params.source], eax
|
mov [params.source], eax
|
||||||
@ -500,7 +502,7 @@
|
|||||||
shr edx, 1
|
shr edx, 1
|
||||||
sub edx, 12
|
sub edx, 12
|
||||||
|
|
||||||
stdcall dword [img.draw], dword [img_data.obj], 12, edx, 24, 24, 0, ebx
|
stdcall dword [img.draw], dword [img_data.obj], 12, edx, 24, 24, 0, ebx
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
ret
|
ret
|
||||||
@ -757,8 +759,8 @@
|
|||||||
@imports:
|
@imports:
|
||||||
library img, "libimg.obj"
|
library img, "libimg.obj"
|
||||||
import img, img.to_rgb, "img_to_rgb2", \
|
import img, img.to_rgb, "img_to_rgb2", \
|
||||||
img.decode, "img_decode", \
|
img.decode, "img_decode", \
|
||||||
img.draw, "img_draw"
|
img.draw, "img_draw"
|
||||||
|
|
||||||
;----------------------------
|
;----------------------------
|
||||||
|
|
||||||
@ -766,31 +768,31 @@
|
|||||||
sz_ifile db "/sys/notify3.png", 0
|
sz_ifile db "/sys/notify3.png", 0
|
||||||
sz_shname db "notify-mem-v01", 0
|
sz_shname db "notify-mem-v01", 0
|
||||||
sz_std db "'NOTIFY 3\n", \
|
sz_std db "'NOTIFY 3\n", \
|
||||||
"d - disable auto-closing\n", \
|
"d - disable auto-closing\n", \
|
||||||
"c - disable click-closing\n", \
|
"c - disable click-closing\n", \
|
||||||
"p - use progressbar\n", \
|
"p - use progressbar\n", \
|
||||||
"t - title\n", \
|
"t - title\n", \
|
||||||
" \n", \
|
" \n", \
|
||||||
"ICONS:\n", \
|
"ICONS:\n", \
|
||||||
"A - application\n", \
|
"A - application\n", \
|
||||||
"E - error\n", \
|
"E - error\n", \
|
||||||
"W - warning\n", \
|
"W - warning\n", \
|
||||||
"O - ok\n", \
|
"O - ok\n", \
|
||||||
"N - network\n", \
|
"N - network\n", \
|
||||||
"I - info\n", \
|
"I - info\n", \
|
||||||
"F - folder\n", \
|
"F - folder\n", \
|
||||||
"C - component\n", \
|
"C - component\n", \
|
||||||
"M - mail\n", \
|
"M - mail\n", \
|
||||||
"D - download\n", \
|
"D - download\n", \
|
||||||
"S - audio player", \
|
"S - audio player", \
|
||||||
"' -td", 0
|
"' -td", 0
|
||||||
|
|
||||||
fi:
|
fi:
|
||||||
dd 5
|
dd 5
|
||||||
dd 0, 0, 0
|
dd 0, 0, 0
|
||||||
dd buffer
|
dd buffer
|
||||||
db 0
|
db 0
|
||||||
dd sz_ifile
|
dd sz_ifile
|
||||||
|
|
||||||
;----------------------------
|
;----------------------------
|
||||||
|
|
||||||
@ -799,8 +801,8 @@
|
|||||||
;=====================================================================
|
;=====================================================================
|
||||||
|
|
||||||
window:
|
window:
|
||||||
.x rd 1
|
.x rd 1
|
||||||
.y rd 1
|
.y rd 1
|
||||||
.width rd 1
|
.width rd 1
|
||||||
.height rd 1
|
.height rd 1
|
||||||
|
|
||||||
@ -816,28 +818,28 @@
|
|||||||
|
|
||||||
params:
|
params:
|
||||||
.source rd 1
|
.source rd 1
|
||||||
.atcl rb 1
|
.atcl rb 1
|
||||||
.clcl rb 1
|
.clcl rb 1
|
||||||
.title rb 1
|
.title rb 1
|
||||||
.pbar rb 1
|
.pbar rb 1
|
||||||
.icon rb 1
|
.icon rb 1
|
||||||
.ctrl rb 1
|
.ctrl rb 1
|
||||||
|
|
||||||
img_data:
|
img_data:
|
||||||
.file rd 1
|
.file rd 1
|
||||||
.obj rd 1
|
.obj rd 1
|
||||||
|
|
||||||
timer:
|
timer:
|
||||||
.value rd 1
|
.value rd 1
|
||||||
.step rd 1
|
.step rd 1
|
||||||
|
|
||||||
shm:
|
shm:
|
||||||
.addr rd 1
|
.addr rd 1
|
||||||
.our rd 1
|
.our rd 1
|
||||||
|
|
||||||
ctrl:
|
ctrl:
|
||||||
.name rb 31
|
.name rb 31
|
||||||
.addr rd 1
|
.addr rd 1
|
||||||
|
|
||||||
pbar:
|
pbar:
|
||||||
.width rd 1
|
.width rd 1
|
||||||
@ -850,8 +852,8 @@
|
|||||||
prev_pid rd 1
|
prev_pid rd 1
|
||||||
|
|
||||||
;=====================================================================
|
;=====================================================================
|
||||||
rb 2048
|
rb 2048
|
||||||
@stack:
|
@stack:
|
||||||
@params rb 2048
|
@params rb 256
|
||||||
|
|
||||||
@memory:
|
@memory:
|
||||||
|
@ -9,8 +9,10 @@
|
|||||||
|
|
||||||
use32
|
use32
|
||||||
org 0
|
org 0
|
||||||
db 'MENUET01'
|
db 'MENUET01'
|
||||||
dd 1, main, dataend, memory, memory, params, 0
|
dd 1, main, dataend, memory, memory
|
||||||
|
M01header.params:
|
||||||
|
dd params, 0
|
||||||
|
|
||||||
include "../../proc32.inc"
|
include "../../proc32.inc"
|
||||||
include "../../macros.inc"
|
include "../../macros.inc"
|
||||||
@ -62,7 +64,7 @@ end if
|
|||||||
|
|
||||||
sb_apps scrollbar \
|
sb_apps scrollbar \
|
||||||
13, WIN_WIDTH - 25, LIST_HEIGHT, 10 + 12, \ ;; w, x, h, y
|
13, WIN_WIDTH - 25, LIST_HEIGHT, 10 + 12, \ ;; w, x, h, y
|
||||||
0, 0, LIST_SIZE / 2, 0, \ ;; b.h, max, area, pos
|
0, 0, LIST_SIZE / 2, 0, \ ;; b.h, max, area, pos
|
||||||
0, 0, 0, 2
|
0, 0, 0, 2
|
||||||
|
|
||||||
cb_always check_box2 \
|
cb_always check_box2 \
|
||||||
@ -91,16 +93,16 @@ end if
|
|||||||
.filter dd 0
|
.filter dd 0
|
||||||
|
|
||||||
ps_addres:
|
ps_addres:
|
||||||
dd 0 ;; type
|
dd 0 ;; type
|
||||||
dw 7 ;; y
|
dw 7 ;; y
|
||||||
dw 4 ;; x
|
dw 4 ;; x
|
||||||
dw 6 ;; font.w
|
dw 6 ;; font.w
|
||||||
dw LIST_WIDTH ;; w
|
dw LIST_WIDTH ;; w
|
||||||
dd 0 ;; mono
|
dd 0 ;; mono
|
||||||
dd 0 ;; without bg
|
dd 0 ;; without bg
|
||||||
.color dd 0 ;; text color
|
.color dd 0 ;; text color
|
||||||
dd 0 ;; bg color
|
dd 0 ;; bg color
|
||||||
.txt dd 0 ;; text
|
.txt dd 0 ;; text
|
||||||
dd buffer2
|
dd buffer2
|
||||||
dd 0
|
dd 0
|
||||||
|
|
||||||
@ -148,28 +150,28 @@ end if
|
|||||||
imports:
|
imports:
|
||||||
library libini, "libini.obj"
|
library libini, "libini.obj"
|
||||||
import libini, libini.get_str, "ini_get_str", \
|
import libini, libini.get_str, "ini_get_str", \
|
||||||
libini.set_str, "ini_set_str", \
|
libini.set_str, "ini_set_str", \
|
||||||
libini.get_num, "ini_get_int", \
|
libini.get_num, "ini_get_int", \
|
||||||
libini.for_each_section, "ini_enum_sections"
|
libini.for_each_section, "ini_enum_sections"
|
||||||
|
|
||||||
imports_add:
|
imports_add:
|
||||||
library libimg, "libimg.obj", \
|
library libimg, "libimg.obj", \
|
||||||
boxlib, "box_lib.obj", \
|
boxlib, "box_lib.obj", \
|
||||||
prclib, "proc_lib.obj"
|
prclib, "proc_lib.obj"
|
||||||
import libimg, libimg.init, "lib_init", \
|
import libimg, libimg.init, "lib_init", \
|
||||||
libimg.toRGB, "img_to_rgb2", \
|
libimg.toRGB, "img_to_rgb2", \
|
||||||
libimg.decode, "img_decode", \
|
libimg.decode, "img_decode", \
|
||||||
libimg.destroy, "img_destroy"
|
libimg.destroy, "img_destroy"
|
||||||
import boxlib, scrollbar.draw, "scrollbar_v_draw", \
|
import boxlib, scrollbar.draw, "scrollbar_v_draw", \
|
||||||
scrollbar.mouse, "scrollbar_v_mouse", \
|
scrollbar.mouse, "scrollbar_v_mouse", \
|
||||||
pathshow.init, "PathShow_prepare", \
|
pathshow.init, "PathShow_prepare", \
|
||||||
pathshow.draw, "PathShow_draw", \
|
pathshow.draw, "PathShow_draw", \
|
||||||
checkbox.init, "init_checkbox2", \
|
checkbox.init, "init_checkbox2", \
|
||||||
checkbox.draw, "check_box_draw2", \
|
checkbox.draw, "check_box_draw2", \
|
||||||
checkbox.mouse, "check_box_mouse2"
|
checkbox.mouse, "check_box_mouse2"
|
||||||
import prclib, opendialog.lib_init, "lib_init", \
|
import prclib, opendialog.lib_init, "lib_init", \
|
||||||
opendialog.init, "OpenDialog_init", \
|
opendialog.init, "OpenDialog_init", \
|
||||||
opendialog.start, "OpenDialog_start"
|
opendialog.start, "OpenDialog_start"
|
||||||
|
|
||||||
;===============================
|
;===============================
|
||||||
|
|
||||||
@ -178,18 +180,18 @@ end if
|
|||||||
stdcall dll.Load, imports
|
stdcall dll.Load, imports
|
||||||
|
|
||||||
if DEBUG eq 1
|
if DEBUG eq 1
|
||||||
stdcall string.copy, std_param, params
|
stdcall string.copy, std_param, [M01header.params]
|
||||||
end if
|
end if
|
||||||
|
|
||||||
;; trim params
|
;; trim params
|
||||||
stdcall string.copy, params, paramorig
|
stdcall string.copy, [M01header.params], paramorig
|
||||||
stdcall string.trim_last, paramorig
|
stdcall string.trim_last, paramorig
|
||||||
stdcall string.trim_first, paramorig
|
stdcall string.trim_first, paramorig
|
||||||
mov [param_s], eax
|
mov [param_s], eax
|
||||||
|
|
||||||
stdcall string.to_lower_case, params
|
stdcall string.to_lower_case, [M01header.params]
|
||||||
stdcall string.trim_last, params
|
stdcall string.trim_last, [M01header.params]
|
||||||
stdcall string.trim_first, params
|
stdcall string.trim_first, [M01header.params]
|
||||||
mov [param_lwr], eax
|
mov [param_lwr], eax
|
||||||
|
|
||||||
;; if empty - exit
|
;; if empty - exit
|
||||||
@ -267,7 +269,7 @@ end if
|
|||||||
;----------------------
|
;----------------------
|
||||||
|
|
||||||
start_dialog_pre:
|
start_dialog_pre:
|
||||||
or [cb_always.flags], ch_flag_en
|
or [cb_always.flags], ch_flag_en
|
||||||
|
|
||||||
start_dialog:
|
start_dialog:
|
||||||
stdcall dll.Load, imports_add
|
stdcall dll.Load, imports_add
|
||||||
@ -299,7 +301,7 @@ end if
|
|||||||
mov ebx, [skin.work_text]
|
mov ebx, [skin.work_text]
|
||||||
mov [ps_addres.txt], eax
|
mov [ps_addres.txt], eax
|
||||||
mov [ps_addres], ebx
|
mov [ps_addres], ebx
|
||||||
m2m [ps_addres.color], [skin.work_text]
|
m2m [ps_addres.color], [skin.work_text]
|
||||||
invoke pathshow.init, ps_addres
|
invoke pathshow.init, ps_addres
|
||||||
|
|
||||||
;; get checkbox
|
;; get checkbox
|
||||||
@ -584,7 +586,7 @@ end if
|
|||||||
@@:
|
@@:
|
||||||
|
|
||||||
stdcall string.length, buffer
|
stdcall string.length, buffer
|
||||||
mov edi, eax
|
mov edi, eax
|
||||||
|
|
||||||
invoke libini.set_str, assoc_ini, assoc_ini.sec, [param_e], buffer, edi
|
invoke libini.set_str, assoc_ini, assoc_ini.sec, [param_e], buffer, edi
|
||||||
jmp exit
|
jmp exit
|
||||||
@ -596,7 +598,7 @@ end if
|
|||||||
mov edi, [sb_apps.position]
|
mov edi, [sb_apps.position]
|
||||||
invoke scrollbar.mouse, sb_apps
|
invoke scrollbar.mouse, sb_apps
|
||||||
sub edi, [sb_apps.position]
|
sub edi, [sb_apps.position]
|
||||||
jz @f
|
jz @f
|
||||||
call draw_list
|
call draw_list
|
||||||
@@:
|
@@:
|
||||||
|
|
||||||
@ -676,7 +678,7 @@ end if
|
|||||||
mcall 12, 1
|
mcall 12, 1
|
||||||
|
|
||||||
mov edx, [skin.work]
|
mov edx, [skin.work]
|
||||||
or edx, 0x34 shl 24
|
or edx, 0x34 shl 24
|
||||||
mcall 0, <[win.x], WIN_WIDTH>, <[win.y], WIN_HEIGHT>, , , win.title
|
mcall 0, <[win.x], WIN_WIDTH>, <[win.y], WIN_HEIGHT>, , , win.title
|
||||||
stdcall draw_list
|
stdcall draw_list
|
||||||
invoke pathshow.draw, ps_addres
|
invoke pathshow.draw, ps_addres
|
||||||
@ -722,7 +724,7 @@ end if
|
|||||||
|
|
||||||
proc draw_list
|
proc draw_list
|
||||||
mcall 13, <3, LIST_WIDTH + 2 + 12>, <9 + 12, 1>, [skin.work_graph]
|
mcall 13, <3, LIST_WIDTH + 2 + 12>, <9 + 12, 1>, [skin.work_graph]
|
||||||
mcall , , <LIST_HEIGHT + 9 + 1 + 12, 1>
|
mcall , , <LIST_HEIGHT + 9 + 1 + 12, 1>
|
||||||
mcall , <3, 1>, <9 + 12, LIST_HEIGHT + 1>
|
mcall , <3, 1>, <9 + 12, LIST_HEIGHT + 1>
|
||||||
mcall , <3 + LIST_WIDTH + 12 + 1, 1>
|
mcall , <3 + LIST_WIDTH + 12 + 1, 1>
|
||||||
mcall , <4, LIST_WIDTH>, <10 + 12, LIST_HEIGHT>, 0xFFFfff
|
mcall , <4, LIST_WIDTH>, <10 + 12, LIST_HEIGHT>, 0xFFFfff
|
||||||
@ -979,7 +981,7 @@ end if
|
|||||||
|
|
||||||
.loop1:
|
.loop1:
|
||||||
mov edx, list.lowercased ;; j = 0
|
mov edx, list.lowercased ;; j = 0
|
||||||
mov esi, [list.size] ;; j < n - i - 1
|
mov esi, [list.size] ;; j < n - i - 1
|
||||||
sub esi, edi
|
sub esi, edi
|
||||||
dec esi
|
dec esi
|
||||||
imul esi, 32
|
imul esi, 32
|
||||||
@ -1056,9 +1058,9 @@ end if
|
|||||||
buffer4 rb 2048 ;OD
|
buffer4 rb 2048 ;OD
|
||||||
buffer5 rb 2048 ;OD
|
buffer5 rb 2048 ;OD
|
||||||
buffer6 rb 2048 ;check existance
|
buffer6 rb 2048 ;check existance
|
||||||
buffer7 rb 32 ;for sorting
|
buffer7 rb 32 ;for sorting
|
||||||
buffer8 rd 2048
|
buffer8 rd 2048
|
||||||
params rb 2048
|
|
||||||
paramorig rb 2048
|
paramorig rb 2048
|
||||||
_stack rb 2048
|
_stack rb 2048
|
||||||
|
params rb 256
|
||||||
memory:
|
memory:
|
||||||
|
@ -23,6 +23,7 @@
|
|||||||
dd IM_END ; file size
|
dd IM_END ; file size
|
||||||
dd I_END ; memory
|
dd I_END ; memory
|
||||||
dd stacktop ; stack pointer
|
dd stacktop ; stack pointer
|
||||||
|
M01header.params:
|
||||||
dd app_param ; parameters
|
dd app_param ; parameters
|
||||||
dd cur_dir_path ; path to file
|
dd cur_dir_path ; path to file
|
||||||
|
|
||||||
@ -115,8 +116,8 @@ load_libraries l_libs_start,end_l_libs
|
|||||||
stdcall string.copy, default_dtp, dtp_name
|
stdcall string.copy, default_dtp, dtp_name
|
||||||
;---------------------------------------------------------------------
|
;---------------------------------------------------------------------
|
||||||
; check app param
|
; check app param
|
||||||
stdcall string.length, app_param
|
stdcall string.length, [M01header.params]
|
||||||
add eax, app_param
|
add eax, [M01header.params]
|
||||||
mov ecx, [eax-4]
|
mov ecx, [eax-4]
|
||||||
or ecx, 0x20202000 ;letters to lowercase
|
or ecx, 0x20202000 ;letters to lowercase
|
||||||
cmp ecx, '.skn'
|
cmp ecx, '.skn'
|
||||||
@ -126,12 +127,12 @@ load_libraries l_libs_start,end_l_libs
|
|||||||
jmp no_param
|
jmp no_param
|
||||||
|
|
||||||
load_dtp_from_param:
|
load_dtp_from_param:
|
||||||
stdcall string.copy, app_param, dtp_name
|
stdcall string.copy, [M01header.params], dtp_name
|
||||||
call load_dtp_file.1
|
call load_dtp_file.1
|
||||||
jmp skin_path_ready
|
jmp skin_path_ready
|
||||||
|
|
||||||
load_skin_from_param:
|
load_skin_from_param:
|
||||||
stdcall string.copy, app_param, skin_info
|
stdcall string.copy, [M01header.params], skin_info
|
||||||
call load_skin_file.2
|
call load_skin_file.2
|
||||||
jmp skin_path_ready
|
jmp skin_path_ready
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user