Ticket #1412: mc-4.7.0-pre1.edit_column.2.patch

File mc-4.7.0-pre1.edit_column.2.patch, 4.1 KB (added by dborca, 15 years ago)
  • mc-4.7.0-pre1

    diff -Naur mc-4.7.0-pre1~/edit/edit.c mc-4.7.0-pre1/edit/edit.c
    old new  
    15411541 
    15421542void edit_update_curs_col (WEdit * edit) 
    15431543{ 
    1544     edit->curs_col = edit_move_forward3(edit, edit_bol(edit, edit->curs1), 0, edit->curs1) + option_line_state_width; 
     1544    edit->curs_col = edit_move_forward3(edit, edit_bol(edit, edit->curs1), 0, edit->curs1); 
    15451545} 
    15461546 
    15471547int 
  • edit/editcmd_dialogs.c

    diff -Naur mc-4.7.0-pre1~/edit/editcmd_dialogs.c mc-4.7.0-pre1/edit/editcmd_dialogs.c
    old new  
    267267    /* calculate the dialog metrics */ 
    268268    compl_dlg_h = num_compl + 2; 
    269269    compl_dlg_w = max_len + 4; 
    270     start_x = edit->curs_col + edit->start_col - (compl_dlg_w / 2); 
     270    start_x = edit->curs_col + edit->start_col - (compl_dlg_w / 2) + EDIT_TEXT_HORIZONTAL_OFFSET + option_line_state_width; 
    271271    start_y = edit->curs_row + EDIT_TEXT_VERTICAL_OFFSET + 1; 
    272272 
    273273    if (start_x < 0) 
     
    335335    /* calculate the dialog metrics */ 
    336336    def_dlg_h = num_lines + 2; 
    337337    def_dlg_w = max_len + 4; 
    338     start_x = edit->curs_col + edit->start_col - (def_dlg_w / 2); 
     338    start_x = edit->curs_col + edit->start_col - (def_dlg_w / 2) + EDIT_TEXT_HORIZONTAL_OFFSET + option_line_state_width; 
    339339    start_y = edit->curs_row + EDIT_TEXT_VERTICAL_OFFSET + 1; 
    340340 
    341341    if (start_x < 0) 
  • edit/editdraw.c

    diff -Naur mc-4.7.0-pre1~/edit/editdraw.c mc-4.7.0-pre1/edit/editdraw.c
    old new  
    214214    if (edit->num_widget_lines <= 0 || edit->num_widget_columns <= 0) 
    215215        return; 
    216216 
     217    edit->num_widget_columns -= EDIT_TEXT_HORIZONTAL_OFFSET + option_line_state_width; 
     218    edit->num_widget_lines -= EDIT_TEXT_VERTICAL_OFFSET - 1; 
     219 
    217220    r_extreme = EDIT_RIGHT_EXTREME; 
    218221    l_extreme = EDIT_LEFT_EXTREME; 
    219222    b_extreme = EDIT_BOTTOM_EXTREME; 
     
    250253    if (outby > 0) 
    251254        edit_scroll_upward (edit, outby); 
    252255    edit_update_curs_row (edit); 
     256 
     257    edit->num_widget_lines += EDIT_TEXT_VERTICAL_OFFSET - 1; 
     258    edit->num_widget_columns += EDIT_TEXT_HORIZONTAL_OFFSET + option_line_state_width; 
    253259} 
    254260 
    255261#define set_color(font)    attrset (font) 
     
    274280{ 
    275281    struct line_s *p; 
    276282 
    277     int x = start_col_real + EDIT_TEXT_HORIZONTAL_OFFSET; 
     283    int x = start_col_real; 
    278284    int x1 = start_col + EDIT_TEXT_HORIZONTAL_OFFSET + option_line_state_width; 
    279285    int y = row + EDIT_TEXT_VERTICAL_OFFSET; 
    280286    int cols_to_skip = abs (x); 
    281287    unsigned char str[6 + 1]; 
    282288    set_color (EDITOR_NORMAL_COLOR); 
    283289    edit_move (x1, y); 
    284     hline (' ', end_col + 1 - EDIT_TEXT_HORIZONTAL_OFFSET - x1); 
     290    hline (' ', end_col + 1 - start_col); 
    285291 
    286292    if (option_line_state) { 
    287293        int i; 
     
    376382    unsigned int cur_line = 0; 
    377383    char line_stat[LINE_STATE_WIDTH + 1]; 
    378384 
     385    if (row > edit->num_widget_lines - EDIT_TEXT_VERTICAL_OFFSET) { 
     386        return; 
     387    } 
     388 
     389    end_col -= EDIT_TEXT_HORIZONTAL_OFFSET + option_line_state_width; 
    379390    edit_get_syntax_color (edit, b - 1, &color); 
    380391    q = edit_move_forward3 (edit, b, start_col - edit->start_col, 0); 
    381392    start_col_real = (col = 
  • edit/editwidget.c

    diff -Naur mc-4.7.0-pre1~/edit/editwidget.c mc-4.7.0-pre1/edit/editwidget.c
    old new  
    9090    if (event->type & (GPM_DOWN | GPM_UP)) 
    9191        edit_push_key_press (edit); 
    9292 
    93     edit->prev_col = event->x - edit->start_col - 1 - option_line_state_width; 
     93    edit->prev_col = event->x - edit->start_col - 1; 
    9494 
    9595    if (--event->y > (edit->curs_row + 1)) 
    9696        edit_move_down (edit, event->y - (edit->curs_row + 1), 0); 
     
    357357 
    358358    case WIDGET_CURSOR: 
    359359        widget_move (&e->widget, e->curs_row + EDIT_TEXT_VERTICAL_OFFSET, 
    360                      e->curs_col + e->start_col); 
     360                     e->curs_col + e->start_col + EDIT_TEXT_HORIZONTAL_OFFSET + option_line_state_width); 
    361361        return MSG_HANDLED; 
    362362 
    363363    case WIDGET_DESTROY: