69,7 → 69,7 |
.lp0: test al,0x80 |
jnz still.skip_write |
;-------------------------------------- |
; it is CAPS LOCK correct processing for chars |
; CAPS LOCK correct processing for chars |
test [shi], 0x00000040 ; CAPS LOCK is on? |
jz .no_caps_lock |
cmp ecx,1 |
81,13 → 81,11 |
jnz .no_caps_lock |
dec ecx |
.no_caps_lock: |
;-------------------------------------- |
; alt gr pressed? |
test [shi], 0x00000020 |
jz .no_alt_gr |
mov ecx, 3 |
.no_alt_gr: |
;-------------------------------------- |
push eax |
mcall 26,2,,key1 |
pop eax |
164,9 → 162,9 |
mov eax,1 |
jmp key.tab.direct |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_a ;///// SELECT ALL DOCUMENT /////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_a ;///// SELECT ALL DOCUMENT ///////////////////// |
;--------------------------------------------------------------- |
xor eax,eax |
mov [cur_editor.SelStart.X],eax |
mov [cur_editor.SelStart.Y],eax |
180,9 → 178,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_o ;///// ENTER OPEN FILENAME /////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_o ;///// ENTER OPEN FILENAME ///////////////////// |
;--------------------------------------------------------------- |
mov [bot_mode2],0 |
|
.direct: |
207,9 → 205,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_s ;///// ENTER SAVE FILENAME /////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_s ;///// ENTER SAVE FILENAME ///////////////////// |
;--------------------------------------------------------------- |
cmp [cur_editor.FilePath], 0 |
je key.shift_ctrl_s |
cmp [cur_editor.Modified],0 |
224,16 → 222,16 |
jmp key.ctrl_o.direct |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_n ;///// CREATE NEW FILE (TAB) ///////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_n ;///// CREATE NEW FILE (TAB) /////////////////// |
;--------------------------------------------------------------- |
call create_tab |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_f ;///// ENTER KEYWORD TO FIND ///////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_f ;///// ENTER KEYWORD TO FIND /////////////////// |
;--------------------------------------------------------------- |
mov [bot_mode2],0 |
mov [bot_dlg_height],16*2+4*2-1 |
|
260,42 → 258,39 |
ret |
endp |
|
;--------------------------------------------------------------- |
proc key.ctrl_h |
;--------------------------------------------------------------- |
mov [bot_mode2],1 |
mov [bot_dlg_height],16*3+4*2+1 |
|
mov [s_status],s_enter_text_to_replace |
|
jmp key.ctrl_f.direct |
endp |
|
;--------------------------------------------------------------- |
proc key.ctrl_g |
;--------------------------------------------------------------- |
ret |
@^ |
mov [bot_mode2],0 |
mov [bot_dlg_height],16*2+4*2-1 |
|
mov [bot_mode],1 |
mov [bot_dlg_handler],gotodlg_handler |
mov [focused_tb],tb_gotorow |
|
mov al,[tb_gotorow.length] |
mov [tb_gotorow.pos.x],al |
mov [tb_gotorow.sel.x],0 |
mov [tb_casesen],0 |
call drawwindow |
ret |
^@ |
; mov [bot_mode2],0 |
; mov [bot_dlg_height],16*2+4*2-1 |
; mov [bot_mode],1 |
; mov [bot_dlg_handler],gotodlg_handler |
; mov [focused_tb],tb_gotorow |
; mov al,[tb_gotorow.length] |
; mov [tb_gotorow.pos.x],al |
; mov [tb_gotorow.sel.x],0 |
; mov [tb_casesen],0 |
; call drawwindow |
; ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_left ;///// GO TO PREVIOUS WORD //////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_left ;///// GO TO PREVIOUS WORD ////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_ctrl_left: ;///// GO TO PREVIOUS WORD, WITH SELECTION ///////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_ctrl_left: ; GO TO PREVIOUS WORD, WITH SELECTION |
;--------------------------------------------------------------- |
mov ebx,[cur_editor.Caret.Y] |
mov edx,[cur_editor.Caret.X] |
cld |
381,14 → 376,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_right ;///// GO TO NEXT WORD /////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_right ;///// GO TO NEXT WORD ///////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_ctrl_right: ;///// GO TO NEXT WORD, WITH SELECTION //////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_ctrl_right: ;/ GO TO NEXT WORD, WITH SELECTION // |
;--------------------------------------------------------------- |
mov ebx,[cur_editor.Caret.Y] |
mov edx,[cur_editor.Caret.X] |
cld |
470,8 → 464,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_x |
;--------------------------------------------------------------- |
proc key.ctrl_x ;///// CUT ///////////////////////////////////// |
;--------------------------------------------------------------- |
cmp [sel.selected],0 |
je @f |
call key.ctrl_c |
480,8 → 475,9 |
@@: ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_c |
;--------------------------------------------------------------- |
proc key.ctrl_c ;///// COPY //////////////////////////////////// |
;--------------------------------------------------------------- |
mov [copy_size],0 |
cmp [sel.selected],0 |
je .exit |
582,8 → 578,9 |
jmp @b |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_v |
;--------------------------------------------------------------- |
proc key.ctrl_v ;///// PASTE /////////////////////////////////// |
;--------------------------------------------------------------- |
cmp [replace_mode],0 |
jne @f |
call get_from_clipboard |
690,9 → 687,9 |
pop eax |
ret |
endp |
;----------------------------------------------------------------------------- |
proc key.ctrl_d ;///// INSERT SEPARATOR ////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_d ;///// INSERT SEPARATOR //////////////////////// |
;--------------------------------------------------------------- |
mov eax,90+sizeof.EDITOR_LINE_DATA |
call editor_realloc_lines |
|
729,9 → 726,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_y ;///// DELETE CURRENT LINE /////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_y ;///// DELETE CURRENT LINE ///////////////////// |
;--------------------------------------------------------------- |
mov eax,[cur_editor.Caret.Y] |
inc eax |
cmp eax,[cur_editor.Lines.Count] |
766,14 → 763,15 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.up ;///// GO TO PREVIOUS LINE /////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.up ;///// GO TO PREVIOUS LINE ///////////////////////// |
;--------------------------------------------------------------- |
call key.shift_up |
jmp clear_selection |
;----------------------------------------------------------------------------- |
key.shift_up: ;///// GO TO PREVIOUS LINE, WITH SELECTION //////////////// |
;----------------------------------------------------------------------------- |
|
;--------------------------------------------------------------- |
key.shift_up: ;/// GO TO PREVIOUS LINE, WITH SELECTION //// |
;--------------------------------------------------------------- |
mov ecx,[cur_editor.Caret.Y] |
dec ecx |
js .exit |
787,14 → 785,15 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.down ;///// GO TO NEXT LINE ///////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.down ;///// GO TO NEXT LINE /////////////////////////// |
;--------------------------------------------------------------- |
call key.shift_down |
jmp clear_selection |
;----------------------------------------------------------------------------- |
key.shift_down: ;///// GO TO NEXT LINE, WITH SELECTION ////////////////// |
;----------------------------------------------------------------------------- |
|
;--------------------------------------------------------------- |
key.shift_down: ;//// GO TO NEXT LINE, WITH SELECTION ///// |
;--------------------------------------------------------------- |
mov ecx,[cur_editor.Caret.Y] |
inc ecx |
cmp [cur_editor.Lines.Count],ecx |
809,14 → 808,15 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.left ;///// GO TO PREVIOUS CHAR ///////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.left ;///// GO TO PREVIOUS CHAR /////////////////////// |
;--------------------------------------------------------------- |
call key.shift_left |
jmp clear_selection |
;----------------------------------------------------------------------------- |
key.shift_left: ;///// GO TO PREVIOUS CHAR, WITH SELECTION ////////////// |
;----------------------------------------------------------------------------- |
|
;--------------------------------------------------------------- |
key.shift_left: ;// GO TO PREVIOUS CHAR, WITH SELECTION /// |
;--------------------------------------------------------------- |
mov eax,[cur_editor.Caret.X] |
dec eax |
jns @f |
832,14 → 832,15 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.right ;///// GO TO NEXT CHAR //////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.right ;///// GO TO NEXT CHAR ////////////////////////// |
;--------------------------------------------------------------- |
call key.shift_right |
jmp clear_selection |
;----------------------------------------------------------------------------- |
key.shift_right: ;///// GO TO NEXT CHAR, WITH SELECTION ///////////////// |
;----------------------------------------------------------------------------- |
|
;--------------------------------------------------------------- |
key.shift_right: ;//// GO TO NEXT CHAR, WITH SELECTION //// |
;--------------------------------------------------------------- |
mov ecx,[cur_editor.Caret.Y] |
call get_line_offset |
mov eax,[cur_editor.Caret.X] |
857,14 → 858,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.pgup ;///// GO TO PREVIOUS PAGE ///////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.pgup ;///// GO TO PREVIOUS PAGE /////////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_pgup: ;///// GO TO PREVIOUS PAGE, WITH SELECTION ////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_pgup: ;// GO TO PREVIOUS PAGE, WITH SELECTION /// |
;--------------------------------------------------------------- |
mov edx,[lines.scr] |
dec edx |
mov eax,[cur_editor.Caret.Y] |
885,14 → 885,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.pgdn ;///// GO TO NEXT PAGE ///////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.pgdn ;///// GO TO NEXT PAGE /////////////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_pgdn: ;///// GO TO NEXT PAGE, WITH SELECTION ////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_pgdn: ;//// GO TO NEXT PAGE, WITH SELECTION ///// |
;--------------------------------------------------------------- |
mov edx,[lines.scr] |
dec edx |
mov eax,[cur_editor.Caret.Y] |
913,14 → 912,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.home ;///// GO TO LINE START //////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.home ;///// GO TO LINE START ////////////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_home: ;///// GO TO LINE START, WITH SELECTION ///////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_home: ;//// GO TO LINE START, WITH SELECTION //// |
;--------------------------------------------------------------- |
mov [cur_editor.Caret.X],0 |
test [chr],KM_SHIFT |
jnz @f |
931,14 → 929,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.end ;///// GO TO LINE END /////////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.end ;///// GO TO LINE END ///////////////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_end: ;///// GO TO LINE END, WITH SELECTION //////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_end: ;///// GO TO LINE END, WITH SELECTION ////// |
;--------------------------------------------------------------- |
mov ecx,[cur_editor.Caret.Y] |
call get_line_offset |
call get_real_length |
952,14 → 949,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_home ;///// GO TO PAGE START /////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_home ;///// GO TO PAGE START ///////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_ctrl_home: ;///// GO TO PAGE START, WITH SELECTION //////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_ctrl_home: ;/ GO TO PAGE START, WITH SELECTION // |
;--------------------------------------------------------------- |
mov eax,[cur_editor.TopLeft.Y] |
mov ecx,eax |
test [chr],KM_SHIFT |
972,14 → 968,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_end ;///// GO TO PAGE END ////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_end ;///// GO TO PAGE END //////////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_ctrl_end: ;///// GO TO PAGE END, WITH SELECTION /////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_ctrl_end: ;/// GO TO PAGE END, WITH SELECTION /// |
;--------------------------------------------------------------- |
mov ecx,[cur_editor.TopLeft.Y] |
mov eax,[lines.scr] |
cmp eax,[cur_editor.Lines.Count] |
997,14 → 992,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_pgup ;///// GO TO DOCUMENT START /////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_pgup ;///// GO TO DOCUMENT START ///////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_ctrl_pgup: ;///// GO TO DOCUMENT START, WITH SELECTION //////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_ctrl_pgup: ; GO TO DOCUMENT START, WITH SELECTION |
;--------------------------------------------------------------- |
xor eax,eax |
mov [cur_editor.TopLeft.Y],eax |
mov [cur_editor.Caret.Y],eax |
1017,14 → 1011,13 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_pgdn ;///// GO TO DOCUMENT END ///////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_pgdn ;///// GO TO DOCUMENT END /////////////////// |
;--------------------------------------------------------------- |
call clear_selection |
|
;----------------------------------------------------------------------------- |
key.shift_ctrl_pgdn: ;///// GO TO DOCUMENT END, WITH SELECTION ////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
key.shift_ctrl_pgdn: ; GO TO DOCUMENT END, WITH SELECTION / |
;--------------------------------------------------------------- |
mov eax,[cur_editor.Lines.Count] |
mov [cur_editor.Caret.Y],eax |
sub eax,[lines.scr] |
1041,9 → 1034,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.del ;///// DELETE NEXT CHAR OR SELECTION //////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.del ;///// DELETE NEXT CHAR OR SELECTION ////////////// |
;--------------------------------------------------------------- |
call delete_selection |
jnc .exit |
|
1182,9 → 1175,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ins ;///// TOGGLE INSERT/OVERWRITE MODE ///////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ins ;///// TOGGLE INSERT/OVERWRITE MODE /////////////// |
;--------------------------------------------------------------- |
xor [ins_mode],1 |
mov eax,[cur_editor.Caret.Y] |
mov ebx,eax |
1193,9 → 1186,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.bkspace ;///// DELETE PREVIOUS CHAR OR SELECTION //////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.bkspace ;///// DELETE PREVIOUS CHAR OR SELECTION ////// |
;--------------------------------------------------------------- |
call delete_selection |
jnc key.del.exit |
|
1256,9 → 1249,9 |
jmp key.del.line_up |
endp |
|
;----------------------------------------------------------------------------- |
proc key.tab ;///// TABULATE ///////////////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.tab ;///// TABULATE /////////////////////////////////// |
;--------------------------------------------------------------- |
call delete_selection |
mov eax,[cur_editor.Caret.X] |
|
1341,9 → 1334,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.return ;///// CARRIAGE RETURN /////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.return ;///// CARRIAGE RETURN ///////////////////////// |
;--------------------------------------------------------------- |
call delete_selection |
; unknown how many times the user wants to press "Enter", |
; so you should do a little more value |
1478,9 → 1471,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_tab ;///// SWITCH TO NEXT TAB ////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_tab ;///// SWITCH TO NEXT TAB //////////////////// |
;--------------------------------------------------------------- |
cmp [tab_bar.Items.Count],1 |
je .exit |
xor eax,eax |
1505,9 → 1498,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.shift_ctrl_tab ;///// SWITCH TO PREVIOUS TAB //////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.shift_ctrl_tab ;///// SWITCH TO PREVIOUS TAB ////////// |
;--------------------------------------------------------------- |
cmp [tab_bar.Items.Count],1 |
je .exit |
xor eax,eax |
1533,9 → 1526,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_f4 ;///// CLOSE CURRENT TAB //////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_f4 ;///// CLOSE CURRENT TAB ////////////////////// |
;--------------------------------------------------------------- |
cmp [cur_editor.Modified],0 |
je .close |
mov [bot_mode2],2 |
1557,9 → 1550,9 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.shift_f9 ;///// SET DEFAULT TAB ///////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.shift_f9 ;///// SET DEFAULT TAB /////////////////////// |
;--------------------------------------------------------------- |
mov eax,[tab_bar.Current.Ptr] |
cmp eax,[tab_bar.Default.Ptr] |
jne @f |
1575,36 → 1568,36 |
ret |
endp |
|
;----------------------------------------------------------------------------- |
proc key.f3 ;///// FIND NEXT MATCH /////////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.f3 ;///// FIND NEXT MATCH ///////////////////////////// |
;--------------------------------------------------------------- |
jmp search |
endp |
|
;----------------------------------------------------------------------------- |
proc key.ctrl_f9 ;///// COMPILE ////////////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_f9 ;///// COMPILE //////////////////////////////// |
;--------------------------------------------------------------- |
mov bl,0 |
jmp start_fasm |
endp |
|
;----------------------------------------------------------------------------- |
proc key.f9 ;///// COMPILE AND RUN /////////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.f9 ;///// COMPILE AND RUN ///////////////////////////// |
;--------------------------------------------------------------- |
mov bl,1 |
jmp start_fasm |
endp |
|
;----------------------------------------------------------------------------- |
proc key.f10 ;///// COMPILE AND RUN UNDER DEBUG ////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.f10 ;///// COMPILE AND RUN UNDER DEBUG //////////////// |
;--------------------------------------------------------------- |
mov bl,2 |
jmp start_fasm |
endp |
|
;----------------------------------------------------------------------------- |
proc key.alt_x ;///// EXIT PROGRAM /////////////////////////////////////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.alt_x ;///// EXIT PROGRAM ///////////////////////////// |
;--------------------------------------------------------------- |
mov [main_closing],1 |
mov eax,[tab_bar.Items] |
mov [exit_tab_item],eax |
1624,9 → 1617,33 |
mcall -1 |
endp |
|
;----------------------------------------------------------------------------- |
proc try_to_close_tabs ;///// FIND TABS TO BE SAVED BEFORE CLOSE ///////////// |
;----------------------------------------------------------------------------- |
;--------------------------------------------------------------- |
proc key.ctrl_plus ;///// ZOOM IN ////////////////////////////// |
;--------------------------------------------------------------- |
cmp [scale],7 |
jz @f |
inc [scale] |
add [lineHeight],LINEH |
add [charWidth],6 |
jmp draw_editor |
endp |
|
;--------------------------------------------------------------- |
proc key.ctrl_minus ;///// ZOOM OUT //////////////////////////// |
;--------------------------------------------------------------- |
cmp [scale],0 |
jz @f |
dec [scale] |
sub [lineHeight],LINEH |
sub [charWidth],6 |
jmp draw_editor |
@@: |
ret |
endp |
|
;--------------------------------------------------------------- |
proc try_to_close_tabs ;// FIND TABS TO BE SAVED BEFORE CLOSE // |
;--------------------------------------------------------------- |
push ecx ebp |
call flush_cur_tab |
mov ebp,[exit_tab_item] ; [tab_bar.Items] |