Subversion Repositories Kolibri OS

Rev

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

Rev 1449 Rev 1456
Line 31... Line 31...
31
include 't_draw.inc' ;draw main window functions
31
include 't_draw.inc' ;draw main window functions
32
include 't_button.inc'
32
include 't_button.inc'
Line 33... Line 33...
33
 
33
 
Line -... Line 34...
-
 
34
@use_library
34
@use_library
35
 
35
 
-
 
36
start:
-
 
37
  mov eax,48
-
 
38
  mov ebx,3
36
align 4
39
  mov ecx,sc
-
 
Line 40... Line 37...
40
  mov edx,sizeof.system_colors
37
start:
41
  mcall
38
  mcall 48,3,sc,sizeof.system_colors
42
 
39
 
Line 53... Line 50...
53
  or eax,eax
50
  or eax,eax
54
  jz button.exit
51
  jz button.exit
Line 55... Line 52...
55
 
52
 
56
  mcall 66,1,1 ;scan code
53
  mcall 66,1,1 ;scan code
-
 
54
  ;mcall 26,2,1,conv_tabl
Line 57... Line 55...
57
  ;mcall 26,2,1,conv_tabl
55
  mcall 40,0x27
58
 
56
 
59
  mov ecx,sizeof.symbol*maxChars
57
  mov esi,file_name
60
  call mem_Alloc
-
 
61
  mov [tex],eax
-
 
62
  mov [tex_1],eax
58
  call strlen
63
  add [tex_1],sizeof.symbol
59
  mov ecx,eax
Line 64... Line 60...
64
  mov [tex_end],eax
60
  mov edi,buf_cmd_lin
Line -... Line 61...
-
 
61
  rep movsb ;ª®¯¨à㥬 ¨¬ï ä ©«  ¢ ¡ãä¥à edit1
65
  add [tex_end],sizeof.symbol*maxChars
62
 
-
 
63
load_libraries l_libs_start,load_lib_end
-
 
64
 
-
 
65
;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨« áì ­ è  «¨¡ 
-
 
66
	mov	ebp,lib0
-
 
67
	cmp	dword [ebp+ll_struc_size-4],0
-
 
68
	jz	@f
-
 
69
	mcall -1 ;exit not correct
-
 
70
@@:
-
 
71
	mov	ebp,lib1 ;
Line 66... Line 72...
66
 
72
	cmp	dword [ebp+ll_struc_size-4],0
67
  mcall 40,0x27
-
 
68
 
-
 
69
  call Clear
73
	jz	@f
70
 
-
 
71
;-------------------------------------------------
74
	mcall -1 ;exit not correct
72
  mov ecx,maxColWords*sizeof.TexColViv+40
75
@@:
73
  ;add ecx,40
-
 
Line 74... Line -...
74
  call mem_Alloc
-
 
75
  mov [options_file],eax
76
 
76
  mov [options_file_end],eax
77
;---------------------------------------------------------------------
77
  add [options_file_end],maxColWords*sizeof.TexColViv
78
  stdcall ted_init, tedit0
78
  add [options_file_end],40
79
  stdcall dword[tl_data_init], tree1
Line 79... Line -...
79
 
-
 
80
;-------------------------------------------------
-
 
81
; init bmp file
-
 
82
  mov ecx,1200*18
-
 
83
  call mem_Alloc
-
 
84
  mov [bmp_icon],eax
-
 
85
 
80
;---------------------------------------------------------------------
Line 86... Line 81...
86
  mov esi,file_name
81
 
87
  call strlen
82
; init bmp file
88
  mov ecx,eax
83
  mov ecx,1200*18
Line 106... Line 101...
106
  mov [err_ini0],1
101
  mov [err_ini0],1
107
  je @f ;if open file
102
  je @f ;if open file
108
    mov [err_ini0],0
103
    mov [err_ini0],0
109
  @@:
104
  @@:
Line 110... Line -...
110
 
-
 
111
load_libraries l_libs_start,load_lib_end
-
 
112
 
-
 
113
;¯à®¢¥àª  ­  ᪮«ìª® 㤠筮 § £ã§¨« áì ­ è  «¨¡ 
-
 
114
	mov	ebp,lib0
-
 
115
	cmp	dword [ebp+ll_struc_size-4],0
-
 
116
	jz	@f
-
 
117
	mcall	-1	;exit not correct
-
 
118
@@:
-
 
119
	mov	ebp,lib1 ;
-
 
120
	cmp	dword [ebp+ll_struc_size-4],0
-
 
121
	jz	@f
-
 
122
	mcall	-1	;exit not correct
-
 
123
@@:
-
 
124
 
-
 
125
 
-
 
126
;---------------------------------------------------------------------
-
 
127
  push dword tree1
-
 
128
  call dword[tl_data_init]
105
 
129
;---------------------------------------------------------------------
106
;---------------------------------------------------------------------
130
; ç¨â ¥¬ bmp ä ©« á ªãàá®à ¬¨ ¨ «¨­¨ï¬¨
107
; ç¨â ¥¬ bmp ä ©« á ªãàá®à ¬¨ ¨ «¨­¨ï¬¨
Line 131... Line 108...
131
  copy_path fn_icon_tl_sys,sys_path,file_name,0x0
108
  copy_path fn_icon_tl_sys,sys_path,file_name,0x0
Line 185... Line 162...
185
  add eax,32+4+1+3+4*6+8
162
  add eax,32+4+1+3+4*6+8
186
mov ecx,ebx
163
mov ecx,ebx
187
@@:
164
@@:
188
  cmp byte[eax],'.' ;䨫ìâà㥬 ä ©«ë á ¨¬¥­ ¬¨ '.' ¨ '..'
165
  cmp byte[eax],'.' ;䨫ìâà㥬 ä ©«ë á ¨¬¥­ ¬¨ '.' ¨ '..'
189
  je .filter
166
  je .filter
190
    push dword tree1
-
 
191
    push dword 0x10000 ;1*2^16 - £¤¥ 1 ­®¬¥à ¨ª®­ª¨ á ª­¨£®©
167
    ;0x10000 ;1*2^16 - £¤¥ 1 ­®¬¥à ¨ª®­ª¨ á ª­¨£®©
192
    push dword eax
-
 
193
    call dword[tl_node_add]
168
    stdcall dword[tl_node_add], eax,0x10000, tree1
Line 194... Line -...
194
 
-
 
195
    push dword tree1
169
 
196
    call dword[tl_cur_next]
170
    stdcall dword[tl_cur_next], tree1
197
  .filter:
171
  .filter:
198
  add eax,304
172
  add eax,304
199
  loop @b
173
  loop @b
Line 200... Line -...
200
.end_dir_init:
-
 
201
 
-
 
202
;  push dword tree1
-
 
203
;  push dword 0
-
 
204
;  push dword file_name
-
 
205
;  call dword[tl_node_add]
-
 
206
 
174
.end_dir_init:
207
 
175
 
Line 208... Line 176...
208
;--- load color option file ---
176
;--- load color option file ---
209
  call InitColText
177
  stdcall InitColText, tedit0
210
 
178
 
211
;--- get cmd line ---
179
;--- get cmd line ---
212
  cmp byte[buf_cmd_lin+3],0 ;buf_cmd_lin
180
  cmp byte[buf_cmd_lin+3],0 ;buf_cmd_lin
213
  je @f ;if file names exist
181
  je @f ;if file names exist
214
    mov esi,buf_cmd_lin
182
    mov esi,buf_cmd_lin
215
    call strlen ;eax=strlen
183
    call strlen ;eax=strlen
Line 216... Line 184...
216
    mov [edit1.size],eax
184
    mov [edit1.size],eax
217
    call but_OpenFile
185
    call but_no_msg_OpenFile
218
  @@:
186
  @@:
Line 219... Line 187...
219
 
187
 
220
 
188
align 4
Line 269... Line 237...
269
    stdcall draw_main_win, tedit0
237
    stdcall draw_main_win, tedit0
270
  @@:
238
  @@:
Line 271... Line 239...
271
 
239
 
Line -... Line 240...
-
 
240
  mcall 12,2
272
  mcall 12,2
241
 
273
 
242
align 4
274
still:
243
still:
Line 275... Line 244...
275
  mov eax,10
244
  mov eax,10
Line 285... Line 254...
285
  jz mouse
254
  jz mouse
Line 286... Line 255...
286
 
255
 
Line 287... Line 256...
287
  jmp still
256
  jmp still
288
 
257
 
289
 
258
 
Line 290... Line 259...
290
 
259
align 4
291
mouse:
260
mouse:
Line 334... Line 303...
334
  cmp [hScr.delta2],0
303
  cmp [hScr.delta2],0
335
  jne still
304
  jne still
Line 336... Line 305...
336
 
305
 
Line 337... Line 306...
337
  stdcall mouse_wnd_main, tedit0
306
  stdcall mouse_wnd_main, tedit0
338
 
307
 
339
  cmp byte[panel_id],TE_PANEL_FIND ;if not panel
-
 
340
  jne @f
308
  cmp byte[tedit0.panel_id],TE_PANEL_FIND ;if not panel
341
    push dword edit2
309
  jne @f
342
    call [edit_box_mouse]
310
    stdcall [edit_box_mouse], dword edit2
343
  @@:
311
  @@:
344
  cmp byte[panel_id],TE_PANEL_SYNTAX ;if not panel
-
 
345
  jne .menu_bar_1 ;@f
312
  cmp byte[tedit0.panel_id],TE_PANEL_SYNTAX ;if not panel
346
  push dword tree1
313
  jne .menu_bar_1 ;@f
347
  call [tl_mouse]
314
  stdcall [tl_mouse], tree1
348
;-----------------------------------------------
315
;-----------------------------------------------
349
.menu_bar_1:
316
.menu_bar_1:
350
  mov [menu_data_1.get_mouse_flag],1
317
  mov [menu_data_1.get_mouse_flag],1
Line 355... Line 322...
355
  jne	.mnu_1
322
  jne	.mnu_1
356
  cmp [menu_data_1.cursor_out],dword 4
323
  cmp [menu_data_1.cursor_out],dword 4
357
  je	button.exit	
324
  je	button.exit	
358
  cmp [menu_data_1.cursor_out],dword 3
325
  cmp [menu_data_1.cursor_out],dword 3
359
  jne	@f
326
  jne	@f
360
    call but_SaveFile
327
    stdcall but_SaveFile, tedit0
361
  @@:
328
  @@:
362
  cmp [menu_data_1.cursor_out],dword 2
329
  cmp [menu_data_1.cursor_out],dword 2
363
  jne	@f
330
  jne	@f
364
    call but_OpenFile
331
    call but_OpenFile
365
  @@:
332
  @@:
Line 371... Line 338...
371
  ;jne @f
338
  ;jne @f
372
.mnu_1:
339
.mnu_1:
373
  jmp still
340
  jmp still
374
;---------------------------------------------------------------------
341
;---------------------------------------------------------------------
Line -... Line 342...
-
 
342
 
-
 
343
;output:
-
 
344
; ah = symbol
375
 
345
align 4
-
 
346
proc KeyConvertToASCII, table:dword
376
KeyConvertToASCII:
347
  push ebx
377
  mov ebx,conv_tabl ;convert scan to ascii
348
  mov ebx,dword[table] ;convert scan to ascii
378
  ror ax,8
349
  ror ax,8
379
  xor ah,ah
350
  xor ah,ah
380
  add bx,ax
351
  add bx,ax
-
 
352
  mov ah,byte[ebx]
381
  mov ah,byte[ebx]
353
  pop ebx
-
 
354
  ret
Line -... Line 355...
-
 
355
endp
382
  ret
356
 
383
 
-
 
384
key:
357
align 4
385
  mov ecx,1
358
key:
-
 
359
  mcall 66,3 ;66.3 ¯®«ãç¨âì á®áâ®ï­¨¥ ã¯à ¢«ïîé¨å ª« ¢¨è
386
  mcall 66,3
360
  xor ebx,ebx
387
  xor ebx,ebx
361
  mov ecx,1
388
  test al,0x03 ;[Shift]
362
  test al,0x03 ;[Shift]
389
  jz @f
363
  jz @f
390
    inc cl
364
    mov cl,2
391
    or ebx,KM_SHIFT
365
    or ebx,KM_SHIFT
392
  @@:
366
  @@:
393
  test al,0x0c ;[Ctrl]
367
  test al,0x0c ;[Ctrl]
394
  jz @f
368
  jz @f
395
    or ebx,KM_CTRL
369
    or ebx,KM_CTRL
396
  @@:
370
  @@:
-
 
371
  test al,0x30 ;[Alt]
397
  test al,0x30 ;[Alt]
372
  jz @f
398
  jz @f
373
    mov cl,3
399
    or ebx,KM_ALT
374
    or ebx,KM_ALT
400
  @@:
375
  @@:
401
  test al,0x80 ;[NumLock]
376
  test al,0x80 ;[NumLock]
402
  jz @f
377
  jz @f
403
    or ebx,KM_NUMLOCK
-
 
404
  @@:
-
 
405
 
378
    or ebx,KM_NUMLOCK
406
  mov [keyUpr],ebx
-
 
407
  mcall 26,2,,conv_tabl
-
 
408
  mcall 2
379
  @@:
409
 
380
  mcall 26,2,,conv_tabl ;26.2 ¯®«ãç¨âì à áª« ¤ªã ª« ¢¨ âãàë
Line 410... Line 381...
410
;  push dword tree1 ;???
381
  mcall 2 ;¯®«ãç ¥¬ ª®¤ ­ ¦ â®© ª« ¢¨è¨
411
;  call [tl_key]    ;???
382
  ;stdcall [tl_key], tree1 ;???
412
 
383
 
413
  test word [edit1.flags],10b;ed_focus ; ¥á«¨ ­¥ ¢ 䮪ãá¥, ¢ë室¨¬
384
  test word [edit1.flags],10b;ed_focus ; ¥á«¨ ­¥ ¢ 䮪ãá¥, ¢ë室¨¬
Line 422... Line 393...
422
    je still
393
    je still
423
    cmp ah,29 ;[Ctrl]
394
    cmp ah,29 ;[Ctrl]
424
    je still
395
    je still
425
    cmp ah,69 ;[Pause Break]
396
    cmp ah,69 ;[Pause Break]
426
    je still
397
    je still
427
;    cmp [keyUpr],0
-
 
428
;    jne still
-
 
Line 429... Line 398...
429
 
398
 
430
    call KeyConvertToASCII
-
 
431
 
-
 
432
    push dword edit1
399
    stdcall KeyConvertToASCII, dword conv_tabl
433
    call [edit_box_key]
400
    stdcall [edit_box_key], dword edit1
434
    jmp still
401
    jmp still
Line 435... Line 402...
435
  @@:
402
  @@:
436
 
403
 
Line 446... Line 413...
446
    je still
413
    je still
447
    cmp ah,29 ;[Ctrl]
414
    cmp ah,29 ;[Ctrl]
448
    je still
415
    je still
449
    cmp ah,69 ;[Pause Break]
416
    cmp ah,69 ;[Pause Break]
450
    je still
417
    je still
451
;    cmp [keyUpr],0
-
 
452
;    jne still
-
 
Line 453... Line 418...
453
 
418
 
454
    call KeyConvertToASCII
419
    stdcall KeyConvertToASCII, dword conv_tabl
455
    stdcall [edit_box_key], dword edit2
420
    stdcall [edit_box_key], dword edit2
456
    jmp still
421
    jmp still
Line 457... Line -...
457
  @@:
-
 
458
 
-
 
459
  cmp ah,KEY_F1 ;[F1]
-
 
460
  jne @f
-
 
461
    call ShowHelpF1
-
 
462
    jmp still
-
 
463
  @@:
-
 
464
  cmp ah,KEY_F3 ;[F3]
-
 
465
  jne @f
-
 
466
    call but_FindText
-
 
467
    jmp still
-
 
468
  @@:
-
 
469
 
-
 
470
  test [keyUpr],KM_CTRL ;Ctrl+...
-
 
471
  jz .key_Ctrl
-
 
472
 
-
 
473
    cmp ah,24 ;Ctrl+O
-
 
474
    jne @f
-
 
475
      call but_OpenFile
-
 
476
    @@:
-
 
477
    cmp ah,33 ;Ctrl+F
-
 
478
    jne @f
-
 
479
    cmp byte[panel_id],TE_PANEL_FIND
422
  @@:
480
    je @f
-
 
481
      stdcall but_find, tedit0
-
 
482
    @@:
-
 
483
    cmp ah,44 ;Ctrl+Z
-
 
484
    je but_undo
-
 
485
    cmp ah,46 ;Ctrl+C
-
 
486
    jne @f
-
 
487
      call but_Copy
-
 
488
    @@:
-
 
489
    cmp ah,47 ;Ctrl+V
-
 
490
    je but_paste
-
 
491
    cmp ah,49 ;Ctrl+N
-
 
492
    jne @f
-
 
493
      call but_NewFile
-
 
494
    @@:
-
 
495
    cmp ah,199 ;Ctrl+Home
-
 
496
    jne @f
-
 
497
      call but_CtrlHome
-
 
498
    @@:
-
 
499
    ;jmp still
-
 
500
  .key_Ctrl:
-
 
501
 
-
 
502
  test [keyUpr],KM_SHIFT ;Shift+...
-
 
503
  jz .key_Shift
-
 
504
    cmp ah,72 ;Shift+Up
-
 
505
    jne @f
-
 
506
      call sel_KeyUp
-
 
507
    @@:
-
 
508
    cmp ah,75 ;Shift+Left
-
 
509
    jne @f
-
 
510
      call sel_KeyLeft
-
 
511
    @@:
-
 
512
    cmp ah,77 ;Shift+Right
-
 
513
    jne @f
-
 
514
      call sel_KeyRight
-
 
515
    @@:
-
 
516
    cmp ah,80 ;Shift+Down
-
 
517
    jne @f
-
 
518
      call sel_KeyDown
-
 
519
    @@:
-
 
520
    ;mov [dragk],1 ;­ ç¨­ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
521
    jmp .key_MoveCur
-
 
522
  .key_Shift:
-
 
523
;-------------------------------------------------
-
 
524
  cmp ah,72 ;178 ;Up
-
 
525
  jne @f
-
 
526
    push dx
-
 
527
    stdcall draw_cursor_sumb, tedit0
-
 
528
    call CurMoveUp
-
 
529
    cmp dl,8
-
 
530
    jne .no_red_0
-
 
531
      call OnInitialUpdate
-
 
532
      stdcall draw_main_win, tedit0
-
 
533
      pop dx
-
 
534
      jmp @f
-
 
535
    .no_red_0:
-
 
536
    stdcall draw_main_cursor, tedit0
-
 
537
    pop dx
-
 
538
    mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
539
  @@:
-
 
540
  cmp ah,80 ;177 ;Down
-
 
541
  jne @f
-
 
542
    push dx
-
 
543
    stdcall draw_cursor_sumb, tedit0
-
 
544
    call CurMoveDown
-
 
545
    cmp dl,8
-
 
546
    jne .no_red_1
-
 
547
      call OnInitialUpdate
-
 
548
      stdcall draw_main_win, tedit0
-
 
549
      pop dx
-
 
550
      jmp @f
-
 
551
    .no_red_1:
-
 
552
    stdcall draw_main_cursor, tedit0
-
 
553
    pop dx
-
 
554
    mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
555
  @@:
-
 
556
  cmp ah,75 ;176 ;Left
-
 
557
  jne @f
-
 
558
    push dx
-
 
559
    stdcall draw_cursor_sumb, tedit0
-
 
560
    call CurMoveLeft
-
 
561
    cmp dl,8
-
 
562
    jne .no_red_2
-
 
563
      call OnInitialUpdate
-
 
564
      stdcall draw_main_win, tedit0
-
 
565
      pop dx
-
 
566
      jmp @f
-
 
567
    .no_red_2:
-
 
568
    stdcall draw_main_cursor, tedit0
-
 
569
    pop dx
-
 
570
    mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
571
  @@:
-
 
572
  cmp ah,77 ;179 ;Right
-
 
573
  jne @f
-
 
574
    push dx
-
 
575
    stdcall draw_cursor_sumb, tedit0
-
 
576
    call CurMoveRight
-
 
577
    cmp dl,8
-
 
578
    jne .no_red_3
-
 
579
      call OnInitialUpdate
-
 
580
      stdcall draw_main_win, tedit0
-
 
581
      pop dx
-
 
582
      jmp @f
-
 
583
    .no_red_3:
-
 
584
    stdcall draw_main_cursor, tedit0
-
 
585
    pop dx
-
 
586
    mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
587
  @@:
-
 
588
  cmp ah,71 ;180 ;Home
-
 
589
  jne @f
-
 
590
    push dx
-
 
591
    stdcall draw_cursor_sumb, tedit0
-
 
592
    call CurMoveX_FirstChar
-
 
593
    cmp dl,8
-
 
594
    jne .no_red_4
-
 
595
      call OnInitialUpdate
-
 
596
      stdcall draw_main_win, tedit0
-
 
597
      pop dx
-
 
598
      jmp @f
-
 
599
    .no_red_4:
-
 
600
    stdcall draw_main_cursor, tedit0
-
 
601
    pop dx
-
 
602
    mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
603
  @@:
-
 
604
  cmp ah,79 ;181 ;End
-
 
605
  jne @f
-
 
606
    push dx
-
 
607
    stdcall draw_cursor_sumb, tedit0
-
 
608
    call CurMoveX_LastChar
-
 
609
    cmp dl,8
-
 
610
    jne .no_red_5
-
 
611
      call OnInitialUpdate
-
 
612
      stdcall draw_main_win, tedit0
-
 
613
      pop dx
-
 
614
      jmp @f
-
 
615
    .no_red_5:
-
 
616
    stdcall draw_main_cursor, tedit0
-
 
617
    pop dx
-
 
618
    mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
619
  @@:
-
 
620
  cmp ah,73 ;184 ;PageUp
-
 
621
  jne @f
-
 
622
    push dx
-
 
623
    call CurMovePageUp
-
 
624
    cmp dl,0
-
 
625
    pop dx
-
 
626
    je @f
-
 
627
    call OnInitialUpdate
-
 
628
    stdcall draw_main_win, tedit0
-
 
629
  @@:
-
 
630
  cmp ah,81 ;183 ;PageDown
-
 
631
  jne @f
-
 
632
    push dx
-
 
633
    call CurMovePageDown
-
 
634
    cmp dl,0
-
 
635
    pop dx
-
 
636
    je @f
-
 
637
    call OnInitialUpdate
-
 
638
    stdcall draw_main_win, tedit0
-
 
639
    mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
640
  @@:
-
 
641
;-------------------------------------------------
-
 
642
    cmp [keyUpr],0
-
 
643
    jne still
-
 
644
  .key_MoveCur:
-
 
645
 
-
 
646
  cmp ah,69 ;[Pause Break]
-
 
647
  je still
-
 
648
  cmp ah,120 ;[Fn]
-
 
649
  je still
-
 
650
  cmp ah,0x80 ;if key up
-
 
651
  ja still
-
 
652
  call KeyConvertToASCII
-
 
653
 
-
 
654
  ;mov [dragk],0 ;§ ª ­ç¨¢ ¥¬ ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
-
 
655
 
-
 
656
  push ebx
-
 
657
  xor ebx,ebx
-
 
658
  mov bl,ah
-
 
659
  add ebx,EvChar ;add char to text
-
 
660
  cmp byte [ebx],1
-
 
661
  jne @f
-
 
662
    push esi edi
-
 
663
    call SetUndo
-
 
664
    mov bx,0x0101
-
 
665
    call SelTextDel
-
 
666
    mov esi,1
-
 
667
    mov byte [key_new],ah
-
 
668
    mov edi,dword key_new
-
 
669
    cmp [curMod],1
-
 
670
    je .no_ins_mod
-
 
671
      call TextDel
-
 
672
      xor bl,1
-
 
673
    .no_ins_mod:
-
 
674
    call TextAdd
-
 
675
    call draw_but_toolbar
-
 
676
    cmp byte [key_new],13
-
 
677
    jne .dr_m_win
-
 
678
      stdcall draw_main_win, tedit0
-
 
679
      jmp .dr_cur_l
-
 
680
    .dr_m_win:
-
 
681
      stdcall draw_cur_line, tedit0
-
 
682
    .dr_cur_l:
-
 
683
    pop edi esi
-
 
684
  @@:
-
 
685
  pop ebx
-
 
686
 
-
 
687
  cmp ah,8 ;[<-]
-
 
688
  jne @f
-
 
689
    push ax bx
-
 
690
    call SetUndo
-
 
691
 
-
 
692
    mov bx,0x0001
-
 
693
    call SelTextDel
-
 
694
    cmp al,1
-
 
695
    je .del_one_b
-
 
696
      call TextDel
-
 
697
    .del_one_b:
-
 
698
    call draw_but_toolbar
-
 
699
    stdcall draw_main_win, tedit0
-
 
700
    pop bx ax
-
 
701
  @@:
-
 
702
 
-
 
703
  cmp ah,182 ;Delete
-
 
704
  jne @f
-
 
705
    push ax bx
-
 
706
    call SetUndo
-
 
707
 
-
 
708
    mov bx,0x0101
-
 
709
    call SelTextDel
-
 
710
    cmp al,1
-
 
711
    je .del_one_d
-
 
712
      call TextDel
-
 
713
    .del_one_d:
-
 
714
    call draw_but_toolbar
-
 
715
    stdcall draw_main_win, tedit0
-
 
716
    pop bx ax
-
 
717
  @@:
-
 
718
 
-
 
719
  cmp ah,185 ;Ins
-
 
720
  jne @f
-
 
721
    stdcall draw_cursor_sumb, tedit0
-
 
722
    xor [curMod],1
-
 
723
    stdcall draw_main_cursor, tedit0
-
 
724
  @@:
423
 
Line 725... Line 424...
725
 
424
  stdcall ted_key, tedit0, conv_tabl
726
  jmp still
425
  jmp still
727
 
426
 
Line 741... Line 440...
741
  jne @f
440
  jne @f
742
    call but_OpenFile
441
    call but_OpenFile
743
  @@:
442
  @@:
744
  cmp ah,5
443
  cmp ah,5
745
  jne @f
444
  jne @f
746
    call but_SaveFile
445
    stdcall but_SaveFile, tedit0
747
  @@:
446
  @@:
748
  cmp ah,6
447
  cmp ah,6
-
 
448
  jne @f
749
  jz  but_select_word
449
    stdcall ted_but_select_word, tedit0
-
 
450
  @@:
750
  cmp ah,7
451
  cmp ah,7
751
  jz  but_cut
452
  jne @f
-
 
453
    stdcall ted_but_cut, tedit0
-
 
454
  @@:
752
  cmp ah,8
455
  cmp ah,8
753
  jne @f
456
  jne @f
754
    call but_Copy
457
    stdcall ted_but_copy, tedit0
755
  @@:
458
  @@:
756
  cmp ah,9
459
  cmp ah,9
-
 
460
  jne @f
757
  jz  but_paste
461
    stdcall ted_but_paste, tedit0
-
 
462
  @@:
758
  cmp ah,10
463
  cmp ah,10
759
  jne @f
464
  jne @f
760
    stdcall but_find, tedit0
465
    stdcall but_find, tedit0
761
  @@:
466
  @@:
762
  cmp ah,11
467
  cmp ah,11
-
 
468
  jne @f
763
  jz  but_replace
469
    call but_replace
-
 
470
  @@:
764
  cmp ah,12
471
  cmp ah,12
-
 
472
  jne @f
765
  jz  but_find_key_w
473
    call but_find_key_w
-
 
474
  @@:
766
  cmp ah,13
475
  cmp ah,13
-
 
476
  jne @f
767
  jz  but_sumb_upper
477
    stdcall but_sumb_upper, tedit0
-
 
478
  @@:
768
  cmp ah,14
479
  cmp ah,14
-
 
480
  jne @f
769
  jz  but_sumb_lover
481
    stdcall but_sumb_lover, tedit0
-
 
482
  @@:
770
  cmp ah,15
483
  cmp ah,15
-
 
484
  jne @f
771
  jz  but_reverse
485
    stdcall but_reverse, tedit0
-
 
486
  @@:
772
  cmp ah,16
487
  cmp ah,16
773
  jz  but_undo
488
  jne @f
-
 
489
    stdcall ted_but_undo, tedit0
-
 
490
  @@:
774
  cmp ah,17
491
  cmp ah,17
775
  jz  but_redo
492
  jne @f
-
 
493
    stdcall ted_but_redo, tedit0
-
 
494
  @@:
776
  cmp ah,18
495
  cmp ah,18
-
 
496
  jne @f
777
  jz  but_sumb_invis
497
    stdcall but_sumb_invis, tedit0
-
 
498
  @@:
778
  cmp ah,19
499
  cmp ah,19
-
 
500
  jne @f
779
  jz  but_k_words_show
501
    stdcall but_k_words_show, tedit0
-
 
502
  @@:
780
  cmp ah,20
503
  cmp ah,20
781
  jne @f
504
  jne @f
782
    stdcall but_synt_show, tedit0
505
    stdcall but_synt_show, tedit0
783
  @@:
506
  @@:
Line 784... Line 507...
784
 
507
 
785
  cmp ah,200
508
  cmp ah,200
786
  jne @f
509
  jne @f
787
    call but_OpenSyntax
510
    stdcall ted_but_open_syntax, tedit0
788
  @@:
511
  @@:
789
  cmp ah,201
512
  cmp ah,201
790
  jne @f
513
  jne @f
791
    call but_FindText
514
    stdcall but_FindText, tedit0
Line 792... Line 515...
792
  @@:
515
  @@:
793
 
516
 
794
  cmp ah,1
517
  cmp ah,1
795
  jne still
-
 
796
.exit:
518
  jne still
797
  ;push eax
519
.exit:
798
  call CanSave
520
  stdcall ted_can_save, tedit0
799
  cmp al,1
-
 
800
  jne @f
-
 
801
    push thread
521
  cmp al,1
802
    push msgbox_8
522
  jne @f
803
    call [mb_create] ;message: save changes in file?
523
    stdcall [mb_create],msgbox_8,thread ;message: save changes in file?
804
    jmp still
-
 
805
  @@:
-
 
806
  mov ecx,[tex]
524
    jmp still
807
  call mem_Free
525
  @@:
808
  mov ecx,[bmp_icon]
-
 
-
 
526
  mov ecx,[bmp_icon]
809
  call mem_Free
527
  call mem_Free
810
  mov ecx,[options_file]
-
 
811
  call mem_Free
528
 
812
  push dword tree1
529
  stdcall ted_delete, tedit0
Line 813... Line 530...
813
  call dword[tl_data_clear]
530
  stdcall dword[tl_data_clear], tree1