emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/w32console.c


From: Juanma Barranquero
Subject: [Emacs-diffs] Changes to emacs/src/w32console.c
Date: Tue, 04 Feb 2003 09:03:49 -0500

Index: emacs/src/w32console.c
diff -c emacs/src/w32console.c:1.32 emacs/src/w32console.c:1.33
*** emacs/src/w32console.c:1.32 Mon Nov 12 18:51:11 2001
--- emacs/src/w32console.c      Tue Feb  4 09:03:13 2003
***************
*** 108,114 ****
  {
    cursor_coords.X = col;
    cursor_coords.Y = row;
!   
    if (updating_frame == (struct frame *) NULL)
      {
        SetConsoleCursorPosition (cur_screen, cursor_coords);
--- 108,114 ----
  {
    cursor_coords.X = col;
    cursor_coords.Y = row;
! 
    if (updating_frame == (struct frame *) NULL)
      {
        SetConsoleCursorPosition (cur_screen, cursor_coords);
***************
*** 120,126 ****
  clear_to_end (void)
  {
    struct frame * f = PICK_FRAME ();
!   
    clear_end_of_line (FRAME_WIDTH (f) - 1);
    ins_del_lines (cursor_coords.Y, FRAME_HEIGHT (f) - cursor_coords.Y - 1);
  }
--- 120,126 ----
  clear_to_end (void)
  {
    struct frame * f = PICK_FRAME ();
! 
    clear_end_of_line (FRAME_WIDTH (f) - 1);
    ins_del_lines (cursor_coords.Y, FRAME_HEIGHT (f) - cursor_coords.Y - 1);
  }
***************
*** 191,202 ****
      }
    scroll.Left = 0;
    scroll.Right = FRAME_WIDTH (f);
!   
    dest.X = 0;
!   
    fill.Char.AsciiChar = 0x20;
    fill.Attributes = char_attr_normal;
!   
    ScrollConsoleScreenBuffer (cur_screen, &scroll, NULL, dest, &fill);
  
    /* Here we have to deal with a w32 console flake: If the scroll
--- 191,202 ----
      }
    scroll.Left = 0;
    scroll.Right = FRAME_WIDTH (f);
! 
    dest.X = 0;
! 
    fill.Char.AsciiChar = 0x20;
    fill.Attributes = char_attr_normal;
! 
    ScrollConsoleScreenBuffer (cur_screen, &scroll, NULL, dest, &fill);
  
    /* Here we have to deal with a w32 console flake: If the scroll
***************
*** 222,228 ****
        nb = dest.Y + (scroll.Bottom - scroll.Top) + 1;
  
        if (nb < scroll.Top)
!         { 
          for (i = nb; i < scroll.Top; i++)
              {
              move_cursor (i, 0);
--- 222,228 ----
        nb = dest.Y + (scroll.Bottom - scroll.Top) + 1;
  
        if (nb < scroll.Top)
!         {
          for (i = nb; i < scroll.Top; i++)
              {
              move_cursor (i, 0);
***************
*** 230,236 ****
              }
          }
      }
!   
    cursor_coords.X = 0;
    cursor_coords.Y = vpos;
  }
--- 230,236 ----
              }
          }
      }
! 
    cursor_coords.X = 0;
    cursor_coords.Y = vpos;
  }
***************
*** 249,258 ****
    COORD            dest;
    CHAR_INFO  fill;
    struct frame *  f = PICK_FRAME ();
!   
    scroll.Top = cursor_coords.Y;
    scroll.Bottom = cursor_coords.Y;
!   
    if (direction == LEFT)
      {
        scroll.Left = cursor_coords.X + dist;
--- 249,258 ----
    COORD            dest;
    CHAR_INFO  fill;
    struct frame *  f = PICK_FRAME ();
! 
    scroll.Top = cursor_coords.Y;
    scroll.Bottom = cursor_coords.Y;
! 
    if (direction == LEFT)
      {
        scroll.Left = cursor_coords.X + dist;
***************
*** 263,272 ****
        scroll.Left = cursor_coords.X;
        scroll.Right = FRAME_WIDTH (f) - dist - 1;
      }
!   
    dest.X = cursor_coords.X;
    dest.Y = cursor_coords.Y;
!   
    fill.Char.AsciiChar = 0x20;
    fill.Attributes = char_attr_normal;
  
--- 263,272 ----
        scroll.Left = cursor_coords.X;
        scroll.Right = FRAME_WIDTH (f) - dist - 1;
      }
! 
    dest.X = cursor_coords.X;
    dest.Y = cursor_coords.Y;
! 
    fill.Char.AsciiChar = 0x20;
    fill.Attributes = char_attr_normal;
  
***************
*** 285,291 ****
      {
        /* Print the first len characters of start, cursor_coords.X adjusted
         by write_glyphs.  */
!       
        write_glyphs (start, len);
      }
    else
--- 285,291 ----
      {
        /* Print the first len characters of start, cursor_coords.X adjusted
         by write_glyphs.  */
! 
        write_glyphs (start, len);
      }
    else
***************
*** 316,322 ****
        /* Identify a run of glyphs with the same face.  */
        int face_id = string->face_id;
        int n;
!       
        for (n = 1; n < len; ++n)
        if (string[n].face_id != face_id)
          break;
--- 316,322 ----
        /* Identify a run of glyphs with the same face.  */
        int face_id = string->face_id;
        int n;
! 
        for (n = 1; n < len; ++n)
        if (string[n].face_id != face_id)
          break;
***************
*** 336,342 ****
            {
                /* Set the attribute for these characters.  */
                if (!FillConsoleOutputAttribute (cur_screen, char_attr,
!                                                produced, cursor_coords, &r)) 
                  {
                    printf ("Failed writing console attributes: %d\n",
                            GetLastError ());
--- 336,342 ----
            {
                /* Set the attribute for these characters.  */
                if (!FillConsoleOutputAttribute (cur_screen, char_attr,
!                                                produced, cursor_coords, &r))
                  {
                    printf ("Failed writing console attributes: %d\n",
                            GetLastError ());
***************
*** 354,360 ****
  
                cursor_coords.X += produced;
                move_cursor (cursor_coords.Y, cursor_coords.X);
!             }    
            len -= consumed;
            n -= consumed;
            string += consumed;
--- 354,360 ----
  
                cursor_coords.X += produced;
                move_cursor (cursor_coords.Y, cursor_coords.X);
!             }
            len -= consumed;
            n -= consumed;
            string += consumed;
***************
*** 371,377 ****
          {
            if (!FillConsoleOutputAttribute (cur_screen, char_attr_normal,
                                             terminal_coding.produced,
!                                            cursor_coords, &r)) 
              {
                printf ("Failed writing console attributes: %d\n",
                        GetLastError ());
--- 371,377 ----
          {
            if (!FillConsoleOutputAttribute (cur_screen, char_attr_normal,
                                             terminal_coding.produced,
!                                            cursor_coords, &r))
              {
                printf ("Failed writing console attributes: %d\n",
                        GetLastError ());
***************
*** 394,401 ****
  void
  delete_glyphs (int n)
  {
!   /* delete chars means scroll chars from cursor_coords.X + n to 
!      cursor_coords.X, anything beyond the edge of the screen should 
       come out empty...  */
  
    scroll_line (n, LEFT);
--- 394,401 ----
  void
  delete_glyphs (int n)
  {
!   /* delete chars means scroll chars from cursor_coords.X + n to
!      cursor_coords.X, anything beyond the edge of the screen should
       come out empty...  */
  
    scroll_line (n, LEFT);
***************
*** 407,413 ****
  void
  w32_sys_ring_bell (void)
  {
!   if (sound_type == 0xFFFFFFFF) 
      {
        Beep (666, 100);
      }
--- 407,413 ----
  void
  w32_sys_ring_bell (void)
  {
!   if (sound_type == 0xFFFFFFFF)
      {
        Beep (666, 100);
      }
***************
*** 430,446 ****
  {
    CHECK_SYMBOL (sound);
  
!   if (NILP (sound)) 
        sound_type = 0xFFFFFFFF;
    else if (EQ (sound, intern ("asterisk")))
        sound_type = MB_ICONASTERISK;
!   else if (EQ (sound, intern ("exclamation"))) 
        sound_type = MB_ICONEXCLAMATION;
!   else if (EQ (sound, intern ("hand"))) 
        sound_type = MB_ICONHAND;
!   else if (EQ (sound, intern ("question"))) 
        sound_type = MB_ICONQUESTION;
!   else if (EQ (sound, intern ("ok"))) 
        sound_type = MB_OK;
    else if (EQ (sound, intern ("silent")))
        sound_type = MB_EMACS_SILENT;
--- 430,446 ----
  {
    CHECK_SYMBOL (sound);
  
!   if (NILP (sound))
        sound_type = 0xFFFFFFFF;
    else if (EQ (sound, intern ("asterisk")))
        sound_type = MB_ICONASTERISK;
!   else if (EQ (sound, intern ("exclamation")))
        sound_type = MB_ICONEXCLAMATION;
!   else if (EQ (sound, intern ("hand")))
        sound_type = MB_ICONHAND;
!   else if (EQ (sound, intern ("question")))
        sound_type = MB_ICONQUESTION;
!   else if (EQ (sound, intern ("ok")))
        sound_type = MB_OK;
    else if (EQ (sound, intern ("silent")))
        sound_type = MB_EMACS_SILENT;
***************
*** 449,455 ****
  
    return sound;
  }
!    
  void
  reset_terminal_modes (void)
  {
--- 449,455 ----
  
    return sound;
  }
! 
  void
  reset_terminal_modes (void)
  {
***************
*** 482,488 ****
  
  /* hmmm... perhaps these let us bracket screen changes so that we can flush
     clumps rather than one-character-at-a-time...
!    
     we'll start with not moving the cursor while an update is in progress.  */
  void
  update_begin (struct frame * f)
--- 482,488 ----
  
  /* hmmm... perhaps these let us bracket screen changes so that we can flush
     clumps rather than one-character-at-a-time...
! 
     we'll start with not moving the cursor while an update is in progress.  */
  void
  update_begin (struct frame * f)
***************
*** 525,531 ****
  
    if (face->background != FACE_TTY_DEFAULT_BG_COLOR
        && face->background != FACE_TTY_DEFAULT_COLOR)
!     char_attr = (char_attr & 0xff0f) + ((face->background % 16) << 4); 
  
  
    /* NTEMACS_TODO: Faces defined during startup get both foreground
--- 525,531 ----
  
    if (face->background != FACE_TTY_DEFAULT_BG_COLOR
        && face->background != FACE_TTY_DEFAULT_COLOR)
!     char_attr = (char_attr & 0xff0f) + ((face->background % 16) << 4);
  
  
    /* NTEMACS_TODO: Faces defined during startup get both foreground
***************
*** 573,579 ****
  initialize_w32_display (void)
  {
    CONSOLE_SCREEN_BUFFER_INFO  info;
!   
    cursor_to_hook              = move_cursor;
    raw_cursor_to_hook          = move_cursor;
    clear_to_end_hook           = clear_to_end;
--- 573,579 ----
  initialize_w32_display (void)
  {
    CONSOLE_SCREEN_BUFFER_INFO  info;
! 
    cursor_to_hook              = move_cursor;
    raw_cursor_to_hook          = move_cursor;
    clear_to_end_hook           = clear_to_end;
***************
*** 589,595 ****
    set_terminal_window_hook    = set_terminal_window;
    update_begin_hook           = update_begin;
    update_end_hook             = update_end;
!   
    read_socket_hook = w32_console_read_socket;
    mouse_position_hook = w32_console_mouse_position;
    estimate_mode_line_height_hook = 0;
--- 589,595 ----
    set_terminal_window_hook    = set_terminal_window;
    update_begin_hook           = update_begin;
    update_end_hook             = update_end;
! 
    read_socket_hook = w32_console_read_socket;
    mouse_position_hook = w32_console_mouse_position;
    estimate_mode_line_height_hook = 0;
***************
*** 602,608 ****
    GetConsoleMode (keyboard_handle, &prev_console_mode);
  
    prev_screen = GetStdHandle (STD_OUTPUT_HANDLE);
!   
  #ifdef USE_SEPARATE_SCREEN
    cur_screen = CreateConsoleScreenBuffer (GENERIC_READ | GENERIC_WRITE,
                                          0, NULL,
--- 602,608 ----
    GetConsoleMode (keyboard_handle, &prev_console_mode);
  
    prev_screen = GetStdHandle (STD_OUTPUT_HANDLE);
! 
  #ifdef USE_SEPARATE_SCREEN
    cur_screen = CreateConsoleScreenBuffer (GENERIC_READ | GENERIC_WRITE,
                                          0, NULL,
***************
*** 656,662 ****
    }
  
    GetConsoleScreenBufferInfo (cur_screen, &info);
!   
    meta_key = 1;
    char_attr_normal = info.wAttributes;
  
--- 656,662 ----
    }
  
    GetConsoleScreenBufferInfo (cur_screen, &info);
! 
    meta_key = 1;
    char_attr_normal = info.wAttributes;
  
***************
*** 668,677 ****
    else
      {
        /* Lines per page.  Use buffer coords instead of buffer size.  */
!       FRAME_HEIGHT (SELECTED_FRAME ()) = 1 + info.srWindow.Bottom - 
!       info.srWindow.Top; 
        /* Characters per line.  Use buffer coords instead of buffer size.  */
!       SET_FRAME_WIDTH (SELECTED_FRAME (), 1 + info.srWindow.Right - 
                       info.srWindow.Left);
      }
  
--- 668,677 ----
    else
      {
        /* Lines per page.  Use buffer coords instead of buffer size.  */
!       FRAME_HEIGHT (SELECTED_FRAME ()) = 1 + info.srWindow.Bottom -
!       info.srWindow.Top;
        /* Characters per line.  Use buffer coords instead of buffer size.  */
!       SET_FRAME_WIDTH (SELECTED_FRAME (), 1 + info.srWindow.Right -
                       info.srWindow.Left);
      }
  
***************
*** 702,708 ****
    cci.dwSize = XFASTINT (size);
    cci.bVisible = TRUE;
    (void) SetConsoleCursorInfo (cur_screen, &cci);
!   
    return Qt;
  }
  
--- 702,708 ----
    cci.dwSize = XFASTINT (size);
    cci.bVisible = TRUE;
    (void) SetConsoleCursorInfo (cur_screen, &cci);
! 
    return Qt;
  }
  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]