Subversion Repositories Kolibri OS

Rev

Rev 7572 | Rev 7575 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7572 Rev 7573
Line 7... Line 7...
7
 
7
 
8
MAX_COLOR_WORD_LEN equ 40
8
MAX_COLOR_WORD_LEN equ 40
9
maxChars equ 100002 ;(ª®««¨ç¥á⢮ ᨬ¢®«®¢ ¢ ­®¢®¬ ¤®ªã¬¥­â¥ + 2)
9
maxChars equ 100002 ;(ª®««¨ç¥á⢮ ᨬ¢®«®¢ ¢ ­®¢®¬ ¤®ªã¬¥­â¥ + 2)
10
BUF_SIZE equ 4096 ;buffer for copy|paste
10
BUF_SIZE equ 4096 ;buffer for copy|paste
11
maxSyntaxFileSize equ 410000
11
maxSyntaxFileSize equ 410000
Line 12... Line 12...
12
TOOLBAR_ICONS_SIZE equ 1200*20
12
TOOLBAR_ICONS_SIZE equ 1200*21
13
 
13
 
14
include '../../proc32.inc'
14
include '../../proc32.inc'
15
include '../../macros.inc'
15
include '../../macros.inc'
Line 19... Line 19...
19
include '../../system/skincfg/trunk/kglobals.inc'
19
include '../../system/skincfg/trunk/kglobals.inc'
20
include '../../system/skincfg/trunk/unpacker.inc'
20
include '../../system/skincfg/trunk/unpacker.inc'
21
include 'lang.inc'
21
include 'lang.inc'
Line 22... Line 22...
22
 
22
 
-
 
23
include 't_data.inc'
23
include 't_data.inc'
24
include 't_button.inc'
24
include 't_menu.inc'
25
include 't_menu.inc'
25
include 'strlen.inc'
26
include 'strlen.inc'
26
include 't_draw.inc' ;draw main window functions
-
 
27
include 't_button.inc' ;text work functions
27
include 't_draw.inc' ;draw main window functions
Line 28... Line 28...
28
include 'wnd_k_words.inc'
28
include 'wnd_k_words.inc'
Line 29... Line 29...
29
 
29
 
Line 70... Line 70...
70
 
70
 
71
; OpenDialog initialisation
71
; OpenDialog initialisation
Line 72... Line 72...
72
	stdcall [OpenDialog_Init],OpenDialog_data
72
	stdcall [OpenDialog_Init],OpenDialog_data
73
 
-
 
74
; kmenu initialisation	
-
 
75
	stdcall [kmenu_init], sc
-
 
76
	
-
 
77
	stdcall [ksubmenu_new]
-
 
78
	mov [main_menu], eax
-
 
79
	
-
 
80
	stdcall [ksubmenu_new]
-
 
81
	mov [main_menu_file], eax
-
 
82
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_File_New, 3
-
 
83
	stdcall [ksubmenu_add], [main_menu_file], eax
-
 
84
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_File_Open, 4
-
 
85
	stdcall [ksubmenu_add], [main_menu_file], eax
-
 
86
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_File_Save, 5
-
 
87
	stdcall [ksubmenu_add], [main_menu_file], eax
-
 
88
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_File_Save_As, 6
-
 
89
	stdcall [ksubmenu_add], [main_menu_file], eax
-
 
90
	stdcall [kmenuitem_new], KMENUITEM_SEPARATOR, 0, 0
-
 
91
	stdcall [ksubmenu_add], [main_menu_file], eax
-
 
92
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_File_Exit, 199
-
 
93
	stdcall [ksubmenu_add], [main_menu_file], eax	
-
 
94
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_File, [main_menu_file]
-
 
95
	stdcall [ksubmenu_add], [main_menu], eax
-
 
96
 
-
 
97
	stdcall [ksubmenu_new]
-
 
98
	mov [main_menu_changes], eax
-
 
99
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Changes_Undo, 16
-
 
100
	stdcall [ksubmenu_add], [main_menu_changes], eax
-
 
101
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Changes_Redo, 17
-
 
102
	stdcall [ksubmenu_add], [main_menu_changes], eax
-
 
103
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_Changes, [main_menu_changes]
-
 
104
	stdcall [ksubmenu_add], [main_menu], eax
-
 
105
	
-
 
106
	stdcall [ksubmenu_new]
-
 
107
	mov [main_menu_buf], eax
-
 
108
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Buf_Cut, 7
-
 
109
	stdcall [ksubmenu_add], [main_menu_buf], eax
-
 
110
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Buf_Copy, 8
-
 
111
	stdcall [ksubmenu_add], [main_menu_buf], eax
-
 
112
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Buf_Paste, 9
-
 
113
	stdcall [ksubmenu_add], [main_menu_buf], eax	
-
 
114
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_Buf, [main_menu_buf]
-
 
115
	stdcall [ksubmenu_add], [main_menu], eax
-
 
116
 
-
 
117
	stdcall [ksubmenu_new]
-
 
118
	mov [main_menu_search], eax
-
 
119
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Search_Text, 10
-
 
120
	stdcall [ksubmenu_add], [main_menu_search], eax
-
 
121
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Search_Keywords, 12
-
 
122
	stdcall [ksubmenu_add], [main_menu_search], eax
-
 
123
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_Search, [main_menu_search]
-
 
124
	stdcall [ksubmenu_add], [main_menu], eax
-
 
125
 
-
 
126
	stdcall [ksubmenu_new]
-
 
127
	mov [main_menu_view], eax
-
 
128
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_UseSyntax, 19
-
 
129
	stdcall [ksubmenu_add], [main_menu_view], eax
-
 
130
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_ChooseSyntax, 20
-
 
131
	stdcall [ksubmenu_add], [main_menu_view], eax
-
 
132
	stdcall [kmenuitem_new], KMENUITEM_SEPARATOR, 0, 0
-
 
133
	stdcall [ksubmenu_add], [main_menu_view], eax
-
 
134
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Veiw_LineBreak, 18
-
 
135
	stdcall [ksubmenu_add], [main_menu_view], eax	
-
 
136
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_View, [main_menu_view]
-
 
137
	stdcall [ksubmenu_add], [main_menu], eax
73
 
138
 
-
 
139
	stdcall [ksubmenu_new]
-
 
140
	mov [main_menu_encoding], eax
-
 
141
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Encoding_1251to866, 21
-
 
142
	stdcall [ksubmenu_add], [main_menu_encoding], eax
-
 
143
	stdcall [kmenuitem_new], KMENUITEM_NORMAL, sz_main_menu_Encoding_866to1251, 22
-
 
144
	stdcall [ksubmenu_add], [main_menu_encoding], eax	
-
 
Line 145... Line 74...
145
	stdcall [kmenuitem_new], KMENUITEM_SUBMENU, sz_main_menu_Encoding, [main_menu_encoding]
74
; kmenu initialisation
146
	stdcall [ksubmenu_add], [main_menu], eax
75
	call tedit_menu_init
147
	
76
 
148
; init toolbar file
77
; init toolbar file
Line 153... Line 82...
153
;---------------------------------------------------------------------
82
;---------------------------------------------------------------------
154
; ¢­¥¤à塞 ä ©« á ªãàá®à ¬¨ ¨ «¨­¨ï¬¨
83
; ¢­¥¤à塞 ä ©« á ªãàá®à ¬¨ ¨ «¨­¨ï¬¨
155
	include_image_file '..\..\media\log_el\trunk\tl_sys_16.png', icon_tl_sys
84
	include_image_file '..\..\media\log_el\trunk\tl_sys_16.png', icon_tl_sys
156
	mov eax,dword[icon_tl_sys]
85
	mov eax,dword[icon_tl_sys]
157
	mov dword[tree1.data_img_sys],eax
86
	mov dword[tree1.data_img_sys],eax
158
;---------------------------------------------------------------------
-
 
159
; ¢­¥¤à塞 ä ©« á ¨ª®­ª ¬¨ 㧫®¢
87
; ¢­¥¤à塞 ä ©« á ¨ª®­ª ¬¨ 㧫®¢
160
	include_image_file 'tl_nod_16.png', icon_tl_sys
88
	include_image_file 'tl_nod_16.png', icon_tl_sys
161
	mov eax,dword[icon_tl_sys]
89
	mov eax,dword[icon_tl_sys]
162
	mov dword[tree1.data_img],eax
90
	mov dword[tree1.data_img],eax
163
;------------------------------------------------------------------------------
91
;------------------------------------------------------------------------------
Line 209... Line 137...
209
	;font size
137
	;font size
210
	stdcall [ini_get_int],file_name,ini_sec_window,key_font_s,ini_def_font_s
138
	stdcall [ini_get_int],file_name,ini_sec_window,key_font_s,ini_def_font_s
211
	shl eax,24
139
	shl eax,24
212
	mov dword[tedit0.font_size],eax
140
	mov dword[tedit0.font_size],eax
213
	;ª­®¯ª¨ ­  ¯ ­¥«¨
141
	;ª­®¯ª¨ ­  ¯ ­¥«¨
214
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_new,1
-
 
215
	mov byte[panel_but],al
-
 
216
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_open,1
-
 
217
	mov byte[panel_but+1],al
142
	ini_panel key_but_new,    ID_BUT_NEW
218
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_save,1
-
 
219
	mov byte[panel_but+2],al
143
	ini_panel key_but_open,   ID_BUT_OPEN
220
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_save_as,1
-
 
221
	mov byte[panel_but+3],al
144
	ini_panel key_but_save,   ID_BUT_SAVE
222
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_select,1
145
	ini_panel key_but_save_as,ID_BUT_SAVE_AS
223
	mov byte[panel_but+4],al
-
 
224
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_cut,1
146
	ini_panel key_but_select, ID_BUT_SELECT
225
	mov byte[panel_but+5],al
147
	ini_panel key_but_cut,    ID_BUT_CUT
226
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_copy,1
-
 
227
	mov byte[panel_but+6],al
148
	ini_panel key_but_copy,   ID_BUT_COPY
228
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_paste,1
-
 
229
	mov byte[panel_but+7],al
149
	ini_panel key_but_paste,  ID_BUT_PASTE
230
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_find,1
150
	ini_panel key_but_find,   ID_BUT_FIND
231
	mov byte[panel_but+8],al
151
	ini_panel key_but_replace,ID_BUT_REPLACE
232
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_replace,1
152
	ini_panel key_but_key_words,ID_BUT_KEY_WORDS
233
	mov byte[panel_but+9],al
153
	ini_panel key_but_upper,  ID_BUT_UPPER
234
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_key_words,1
-
 
235
	mov byte[panel_but+10],al
154
	ini_panel key_but_lower,  ID_BUT_LOWER
236
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_upper,1
155
	ini_panel key_but_reverse,ID_BUT_REVERSE
237
	mov byte[panel_but+11],al
156
	ini_panel key_but_undo,   ID_BUT_UNDO
238
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_lower,1
-
 
239
	mov byte[panel_but+12],al
157
	ini_panel key_but_redo,   ID_BUT_REDO
240
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_reverse,1
158
	ini_panel key_but_invisible,ID_BUT_INVISIBLE
241
	mov byte[panel_but+13],al
-
 
242
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_undo,1
159
	ini_panel key_but_syntax_list,ID_BUT_SYNTAX_LIST
243
	mov byte[panel_but+14],al
-
 
244
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_redo,1
160
	ini_panel key_but_syntax_mode,ID_BUT_SYNTAX_MODE
245
	mov byte[panel_but+15],al
-
 
246
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_invisible,1
-
 
247
	mov byte[panel_but+16],al
-
 
248
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_syntax_list,1
-
 
249
	mov byte[panel_but+17],al
-
 
250
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_syntax_mode,1
-
 
251
	mov byte[panel_but+18],al
-
 
252
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_convert_1251_866,1
161
	ini_panel key_but_convert_1251_866,ID_BUT_CONVERT_1251_866
253
	mov byte[panel_but+19],al
-
 
254
	stdcall [ini_get_int],file_name,ini_sec_window,key_but_convert_866_1251,1
162
	ini_panel key_but_convert_866_1251,ID_BUT_CONVERT_866_1251
255
	mov byte[panel_but+20],al
-
 
256
	;ä ©«®¢ë¥ à áè¨à¥­¨ï
163
	;ä ©«®¢ë¥ à áè¨à¥­¨ï
257
	xor edx,edx
164
	xor edx,edx
258
	mov ebx,synt_auto_open
165
	mov ebx,synt_auto_open
259
	@@:
166
	@@:
260
		;¡¥à¥¬ ¨¬ï ä ©« 
167
		;¡¥à¥¬ ¨¬ï ä ©« 
Line 306... Line 213...
306
		jmp mouse
213
		jmp mouse
307
	@@:
214
	@@:
308
	jmp still
215
	jmp still
Line 309... Line 216...
309
 
216
 
310
align 16
-
 
311
draw_window:
-
 
312
	mcall SF_REDRAW,SSF_BEGIN_DRAW
-
 
313
 
-
 
314
	mov edx,[sc.work]
-
 
315
	or  edx,0x73000000
-
 
316
	mcall SF_CREATE_WINDOW,dword[wnd_s_pos],dword[wnd_s_pos+4],,,hed
-
 
317
 
-
 
318
	mcall SF_THREAD_INFO,procinfo,-1
-
 
319
	mov edi,tedit0 ;§­ ç¥­¨¥ edi ­ã¦­® ¤«ï EvSize ¨ ted_wnd_t
-
 
320
	call EvSize
-
 
321
 
-
 
322
	movzx ebx,word[procinfo.client_box.width]
-
 
323
	inc bx
-
 
324
	mcall SF_DRAW_RECT,,ted_wnd_t ;¢¥àå­¨© ¯àאַ㣮«ì­¨ª, ¤«ï ®ç¨á⪨ ¢¥àå­¥© ¯ ­¥«¨
-
 
325
	call draw_but_toolbar
-
 
326
	stdcall [kmainmenu_draw], [main_menu]
-
 
327
	stdcall [ted_draw], tedit0
-
 
328
 
-
 
329
	mcall SF_REDRAW,SSF_END_DRAW
-
 
330
	ret
-
 
331
 
-
 
332
align 16
217
align 16
333
mouse:
218
mouse:
Line 334... Line 219...
334
	stdcall [kmainmenu_dispatch_cursorevent], [main_menu]
219
	stdcall [kmainmenu_dispatch_cursorevent], [main_menu]
335
 
220
 
Line 420... Line 305...
420
	@@:
305
	@@:
Line 421... Line 306...
421
 
306
 
422
	stdcall [ted_key], tedit0, conv_tabl,esi
307
	stdcall [ted_key], tedit0, conv_tabl,esi
Line 423... Line 308...
423
	jmp still
308
	jmp still
424
 
-
 
425
align 16
-
 
426
button:
-
 
427
	mcall SF_GET_BUTTON
-
 
428
	cmp ah,3
-
 
429
	jne @f
-
 
430
		call ted_but_new_file
-
 
431
		jmp still
-
 
432
	@@:
-
 
433
	cmp ah,4
-
 
434
	jne @f
-
 
435
		call ted_but_open_file
-
 
436
		jmp still
-
 
437
	@@:
-
 
438
	cmp ah,5
-
 
439
	jne @f
-
 
440
		xor eax,eax
-
 
441
		call ted_but_save_file ;á®åà ­¥­¨¥ ¡¥§ ¤¨ «®£ 
-
 
442
		jmp still
-
 
443
	@@:
-
 
444
	cmp ah,6
-
 
445
	jne @f
-
 
446
		xor eax,eax
-
 
447
		inc eax
-
 
448
		call ted_but_save_file ;á®åà ­¥­¨¥ á ¤¨ «®£®¬
-
 
449
		jmp still
-
 
450
	@@:
-
 
451
	cmp ah,7
-
 
452
	jne @f
-
 
453
		stdcall [ted_but_select_word], tedit0
-
 
454
		jmp still
-
 
455
	@@:
-
 
456
	cmp ah,8
-
 
457
	jne @f
-
 
458
		stdcall [ted_but_cut], tedit0
-
 
459
		jmp still
-
 
460
	@@:
-
 
461
	cmp ah,9
-
 
462
	jne @f
-
 
463
		stdcall [ted_but_copy], tedit0
-
 
464
		jmp still
-
 
465
	@@:
-
 
466
	cmp ah,10
-
 
467
	jne @f
-
 
468
		stdcall [ted_but_paste], tedit0
-
 
469
		jmp still
-
 
470
	@@:
-
 
471
	cmp ah,11
-
 
472
	jne @f
-
 
473
		call ted_but_find
-
 
474
		jmp still
-
 
475
	@@:
-
 
476
	cmp ah,12
-
 
477
	jne @f
-
 
478
		call but_replace
-
 
479
		jmp still
-
 
480
	@@:
-
 
481
	cmp ah,13
-
 
482
	jne @f
-
 
483
		call but_find_key_w
-
 
484
		jmp still
-
 
485
	@@:
-
 
486
	cmp ah,14
-
 
487
	jne @f
-
 
488
		stdcall [ted_but_sumb_upper], tedit0
-
 
489
		jmp still
-
 
490
	@@:
-
 
491
	cmp ah,15
-
 
492
	jne @f
-
 
493
		stdcall [ted_but_sumb_lover], tedit0
-
 
494
		jmp still
-
 
495
	@@:
-
 
496
	cmp ah,16
-
 
497
	jne @f
-
 
498
		stdcall [ted_but_reverse], tedit0
-
 
499
		jmp still
-
 
500
	@@:
-
 
501
	cmp ah,17
-
 
502
	jne @f
-
 
503
		stdcall [ted_but_undo], tedit0
-
 
504
		jmp still
-
 
505
	@@:
-
 
506
	cmp ah,18
-
 
507
	jne @f
-
 
508
		stdcall [ted_but_redo], tedit0
-
 
509
		jmp still
-
 
510
	@@:
-
 
511
	cmp ah,19
-
 
512
	jne @f
-
 
513
		stdcall but_sumb_invis, tedit0
-
 
514
		jmp still
-
 
515
	@@:
-
 
516
	cmp ah,20
-
 
517
	jne @f
-
 
518
		stdcall but_k_words_show, tedit0
-
 
519
		jmp still
-
 
520
	@@:
-
 
521
	cmp ah,21
-
 
522
	jne @f
-
 
523
		stdcall but_synt_show, tedit0
-
 
524
		jmp still
-
 
525
	@@:
-
 
526
	cmp ah,22
-
 
527
	jne @f
-
 
528
		stdcall [ted_but_convert_by_table],tedit0,tbl_1251_866
-
 
529
		jmp still
-
 
530
	@@:
-
 
531
	cmp ah,23
-
 
532
	jne @f
-
 
533
		stdcall [ted_but_convert_by_table],tedit0,tbl_866_1251
-
 
534
		jmp still
-
 
535
	@@:
-
 
536
 
-
 
537
	cmp ah,200
-
 
538
	jne @f
-
 
539
		stdcall ted_but_open_syntax, tedit0
-
 
540
		jmp still
-
 
541
	@@:
-
 
542
	cmp ah,201
-
 
543
	jne @f
-
 
544
		stdcall [ted_but_find_next], tedit0
-
 
545
		jmp still
-
 
546
	@@:
-
 
547
 
-
 
548
	cmp ah,1
-
 
549
	je .exit
-
 
550
 
-
 
551
	cmp ah,199
-
 
552
	je .exit
-
 
553
  
-
 
554
	jmp still
-
 
555
.exit:
-
 
556
	cmp dword[wnd_k_words_run],0
-
 
557
	je @f
-
 
558
		push ebx ecx
-
 
559
		mcall SF_SYSTEM, SSF_TERMINATE_THREAD_ID,[wnd_k_words_run]
-
 
560
		pop ecx ebx
-
 
561
		test eax,eax
-
 
562
		jnz still
-
 
563
	@@:
-
 
564
	cmp dword[exit_code],1
-
 
565
	je @f
-
 
566
	stdcall [ted_can_save], tedit0
-
 
567
	cmp al,1
-
 
568
	jne @f
-
 
569
		stdcall [mb_create],msgbox_2,thread ;message: save buf in file?
-
 
570
		stdcall [mb_setfunctions],msgbox_2E_funct
-
 
571
		jmp still
-
 
572
	@@:
-
 
573
	stdcall mem.Free,[bmp_icon]
-
 
574
	cmp dword[unpac_mem],0
-
 
575
	je @f
-
 
576
		stdcall mem.Free,[unpac_mem]
-
 
577
	@@:
-
 
578
 
-
 
579
	stdcall [ted_delete], tedit0
-
 
580
	stdcall [tl_data_clear], tree1
-
 
581
	mcall SF_TERMINATE_PROCESS ;¢ë室 ¨§ ¯à®£à ¬¬ë
309
 
Line 582... Line 310...
582
 
310
align 4
Line 583... Line 311...
583
edit2 edit_box TED_PANEL_WIDTH-1, 0, 20, 0xffffff, 0xff80, 0xff0000, 0xff, 0x4080, 300, buf_find, mouse_dd, 0
311
edit2 edit_box TED_PANEL_WIDTH-1, 0, 20, 0xffffff, 0xff80, 0xff0000, 0xff, 0x4080, 300, buf_find, mouse_dd, 0