Subversion Repositories Kolibri OS

Rev

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

Rev 4490 Rev 4566
Line 608... Line 608...
608
	mov	ecx,[cur_editor.Caret.X]
608
	mov	ecx,[cur_editor.Caret.X]
609
	call	line_add_spaces
609
	call	line_add_spaces
610
	add	[esp],eax
610
	add	[esp],eax
611
	add	esi,eax
611
	add	esi,eax
612
	mov	ecx,[copy_size]
612
	mov	ecx,[copy_size]
-
 
613
	mov	edi,[copy_count]
-
 
614
	test	edi,edi
-
 
615
	dec	edi
-
 
616
	jnz	@f
613
	sub	ecx,sizeof.EDITOR_LINE_DATA
617
	sub	ecx,sizeof.EDITOR_LINE_DATA
-
 
618
@@:
614
	mov	edi,[cur_editor.Lines]
619
	mov	edi,[cur_editor.Lines]
615
	add	edi,[cur_editor.Lines.Size] ;*** add edi,[edi-4]
620
	add	edi,[cur_editor.Lines.Size] ;*** add edi,[edi-4]
616
	dec	edi
621
	dec	edi
617
	mov	eax,esi
622
	mov	eax,esi
618
	mov	esi,edi
623
	mov	esi,edi
619
	sub	esi,ecx
624
	sub	esi,ecx
620
	lea	ecx,[eax+sizeof.EDITOR_LINE_DATA]
625
	lea	ecx,[eax+sizeof.EDITOR_LINE_DATA]
621
	add	ecx,[cur_editor.Caret.X]
626
	add	ecx,[cur_editor.Caret.X]
622
	neg	ecx
627
	neg	ecx
623
	lea	ecx,[esi+ecx+1]
628
	lea	ecx,[esi+ecx+1]
-
 
629
	mov	[size_of_moving_area],ecx
624
	std
630
	std
625
	rep	movsb
631
	rep	movsb
Line 626... Line 632...
626
 
632
 
627
	mov	ecx,[copy_count]
633
	mov	ecx,[copy_count]
Line 653... Line 659...
653
	pop	ecx
659
	pop	ecx
654
	loop	@b
660
	loop	@b
Line 655... Line 661...
655
 
661
 
656
	pop	ecx
662
	pop	ecx
-
 
663
	sub	ecx,ebx
-
 
664
	ja	@f
-
 
665
 
-
 
666
	pusha
-
 
667
	mov	esi,edi
-
 
668
	sub	edi,sizeof.EDITOR_LINE_DATA
-
 
669
	mov	ecx,[size_of_moving_area]
-
 
670
	cld
-
 
671
	rep	movsb
-
 
672
	popa
-
 
673
	jmp	.save_cur_editor_values
657
	sub	ecx,ebx
674
@@:
658
	add	[edi-sizeof.EDITOR_LINE_DATA+EDITOR_LINE_DATA.Size],ecx
675
	add	[edi-sizeof.EDITOR_LINE_DATA+EDITOR_LINE_DATA.Size],ecx
659
	call	.check_columns
676
	call	.check_columns
660
	mov	ecx,eax
677
	mov	ecx,eax
661
	rep	movsb
-
 
-
 
678
	rep	movsb
662
 
679
.save_cur_editor_values:
663
	mov	[cur_editor.Caret.X],eax
680
	mov	[cur_editor.Caret.X],eax
664
	mov	[cur_editor.SelStart.X],eax
681
	mov	[cur_editor.SelStart.X],eax
665
	mov	eax,[copy_count]
682
	mov	eax,[copy_count]
666
	dec	eax
683
	dec	eax
Line 714... Line 731...
714
	jbe	@f
731
	jbe	@f
715
	mov	[cur_editor.Columns.Count],eax
732
	mov	[cur_editor.Columns.Count],eax
716
    @@: pop	eax
733
    @@: pop	eax
717
	ret
734
	ret
718
endp
735
endp
719
 
-
 
720
;-----------------------------------------------------------------------------
736
;-----------------------------------------------------------------------------
721
proc key.ctrl_d ;///// INSERT SEPARATOR //////////////////////////////////////
737
proc key.ctrl_d ;///// INSERT SEPARATOR //////////////////////////////////////
722
;-----------------------------------------------------------------------------
738
;-----------------------------------------------------------------------------
723
	mov	eax,90+sizeof.EDITOR_LINE_DATA
739
	mov	eax,90+sizeof.EDITOR_LINE_DATA
724
	call	editor_realloc_lines
740
	call	editor_realloc_lines