comparison src/msdos.c @ 97771:f8bd5f0db6f3

(Fmsdos_remember_default_colors): Don't reverse frame colors under -rv. (IT_set_frame_parameters): Don't swap foreground and background colors if `(reverse . t)' is present in the frame properties.
author Eli Zaretskii <eliz@gnu.org>
date Wed, 27 Aug 2008 19:07:07 +0000
parents 926ec8434a52
children bc27b61d82f8
comparison
equal deleted inserted replaced
97770:673a18ae9bfa 97771:f8bd5f0db6f3
2186 Lisp_Object frame; 2186 Lisp_Object frame;
2187 { 2187 {
2188 struct frame *f; 2188 struct frame *f;
2189 2189
2190 CHECK_FRAME (frame); 2190 CHECK_FRAME (frame);
2191 f= XFRAME (frame); 2191 f = XFRAME (frame);
2192 2192
2193 /* This function is called after applying default-frame-alist to the 2193 /* This function is called after applying default-frame-alist to the
2194 initial frame. At that time, if reverse-colors option was 2194 initial frame. At that time, if reverse-colors option was
2195 specified in default-frame-alist, it was already applied, and 2195 specified in default-frame-alist, it was already applied, and
2196 frame colors are reversed. We need to account for that. */ 2196 frame colors are reversed. */
2197 if (EQ (Fcdr (Fassq (Qreverse, f->param_alist)), Qt)) 2197 initial_screen_colors[0] = FRAME_FOREGROUND_PIXEL (f);
2198 { 2198 initial_screen_colors[1] = FRAME_BACKGROUND_PIXEL (f);
2199 initial_screen_colors[0] = FRAME_BACKGROUND_PIXEL (f);
2200 initial_screen_colors[1] = FRAME_FOREGROUND_PIXEL (f);
2201 }
2202 else
2203 {
2204 initial_screen_colors[0] = FRAME_FOREGROUND_PIXEL (f);
2205 initial_screen_colors[1] = FRAME_BACKGROUND_PIXEL (f);
2206 }
2207 } 2199 }
2208 2200
2209 void 2201 void
2210 IT_set_frame_parameters (f, alist) 2202 IT_set_frame_parameters (f, alist)
2211 struct frame *f; 2203 struct frame *f;
2231 if (EQ (alist, Vdefault_frame_alist) 2223 if (EQ (alist, Vdefault_frame_alist)
2232 && initial_screen_colors[0] != -1 && initial_screen_colors[1] != -1) 2224 && initial_screen_colors[0] != -1 && initial_screen_colors[1] != -1)
2233 { 2225 {
2234 FRAME_FOREGROUND_PIXEL (f) = initial_screen_colors[0]; 2226 FRAME_FOREGROUND_PIXEL (f) = initial_screen_colors[0];
2235 FRAME_BACKGROUND_PIXEL (f) = initial_screen_colors[1]; 2227 FRAME_BACKGROUND_PIXEL (f) = initial_screen_colors[1];
2228 init_frame_faces (f);
2236 } 2229 }
2237 orig_fg = FRAME_FOREGROUND_PIXEL (f); 2230 orig_fg = FRAME_FOREGROUND_PIXEL (f);
2238 orig_bg = FRAME_BACKGROUND_PIXEL (f); 2231 orig_bg = FRAME_BACKGROUND_PIXEL (f);
2239 frame_fg = Fcdr (Fassq (Qforeground_color, f->param_alist)); 2232 frame_fg = Fcdr (Fassq (Qforeground_color, f->param_alist));
2240 frame_bg = Fcdr (Fassq (Qbackground_color, f->param_alist)); 2233 frame_bg = Fcdr (Fassq (Qbackground_color, f->param_alist));
2295 { 2288 {
2296 FRAME_FOREGROUND_PIXEL (f) = new_color; 2289 FRAME_FOREGROUND_PIXEL (f) = new_color;
2297 /* Make sure the foreground of the default face for this 2290 /* Make sure the foreground of the default face for this
2298 frame is changed as well. */ 2291 frame is changed as well. */
2299 XSETFRAME (frame, f); 2292 XSETFRAME (frame, f);
2300 if (need_to_reverse) 2293 Finternal_set_lisp_face_attribute (Qdefault, QCforeground,
2301 { 2294 val, frame);
2302 Finternal_set_lisp_face_attribute (Qdefault, QCbackground, 2295 fg_set = 1;
2303 val, frame);
2304 prop = Qbackground_color;
2305 bg_set = 1;
2306 }
2307 else
2308 {
2309 Finternal_set_lisp_face_attribute (Qdefault, QCforeground,
2310 val, frame);
2311 fg_set = 1;
2312 }
2313 redraw = 1; 2296 redraw = 1;
2314 if (tty->termscript) 2297 if (tty->termscript)
2315 fprintf (tty->termscript, "<FGCOLOR %lu>\n", new_color); 2298 fprintf (tty->termscript, "<FGCOLOR %lu>\n", new_color);
2316 } 2299 }
2317 } 2300 }
2326 { 2309 {
2327 FRAME_BACKGROUND_PIXEL (f) = new_color; 2310 FRAME_BACKGROUND_PIXEL (f) = new_color;
2328 /* Make sure the background of the default face for this 2311 /* Make sure the background of the default face for this
2329 frame is changed as well. */ 2312 frame is changed as well. */
2330 XSETFRAME (frame, f); 2313 XSETFRAME (frame, f);
2331 if (need_to_reverse) 2314 Finternal_set_lisp_face_attribute (Qdefault, QCbackground,
2332 { 2315 val, frame);
2333 Finternal_set_lisp_face_attribute (Qdefault, QCforeground, 2316 bg_set = 1;
2334 val, frame);
2335 prop = Qforeground_color;
2336 fg_set = 1;
2337 }
2338 else
2339 {
2340 Finternal_set_lisp_face_attribute (Qdefault, QCbackground,
2341 val, frame);
2342 bg_set = 1;
2343 }
2344 redraw = 1; 2317 redraw = 1;
2345 if (tty->termscript) 2318 if (tty->termscript)
2346 fprintf (tty->termscript, "<BGCOLOR %lu>\n", new_color); 2319 fprintf (tty->termscript, "<BGCOLOR %lu>\n", new_color);
2347 } 2320 }
2348 } 2321 }
2437 sf->output_method = output_termcap; 2410 sf->output_method = output_termcap;
2438 return; 2411 return;
2439 } 2412 }
2440 2413
2441 tty = FRAME_TTY (sf); 2414 tty = FRAME_TTY (sf);
2415 current_kboard->Vwindow_system = Qpc;
2416 sf->output_method = output_msdos_raw;
2442 if (init_needed) 2417 if (init_needed)
2443 { 2418 {
2444 if (!tty->termscript && getenv ("EMACSTEST")) 2419 if (!tty->termscript && getenv ("EMACSTEST"))
2445 tty->termscript = fopen (getenv ("EMACSTEST"), "wt"); 2420 tty->termscript = fopen (getenv ("EMACSTEST"), "wt");
2446 if (tty->termscript) 2421 if (tty->termscript)
2509 2484
2510 if (tty->termscript && screen_size) 2485 if (tty->termscript && screen_size)
2511 fprintf (tty->termscript, "<SCREEN SAVED (dimensions=%dx%d)>\n", 2486 fprintf (tty->termscript, "<SCREEN SAVED (dimensions=%dx%d)>\n",
2512 screen_size_X, screen_size_Y); 2487 screen_size_X, screen_size_Y);
2513 2488
2489 init_frame_faces (sf);
2514 init_needed = 0; 2490 init_needed = 0;
2515 } 2491 }
2516 current_kboard->Vwindow_system = Qpc;
2517 sf->output_method = output_msdos_raw;
2518 init_frame_faces (sf);
2519 #endif 2492 #endif
2520 } 2493 }
2521 2494
2522 void 2495 void
2523 initialize_msdos_display (struct terminal *term) 2496 initialize_msdos_display (struct terminal *term)