]> git.lyx.org Git - lyx.git/blobdiff - src/lyxdraw.C
added a regex to be used when the system is missing one, use noinst instead of pkglib...
[lyx.git] / src / lyxdraw.C
index 1d7c97dad509090befaffbc694d3664607b304bc..ae05fe64475e4bfd0d4cd64b664cc8176e549807 100644 (file)
@@ -1,7 +1,7 @@
 #include <config.h>
 
 #include "lyxdraw.h"
-#include "error.h"
+#include "debug.h"
 
 extern int reverse_video;
 extern int mono_video;
@@ -14,7 +14,7 @@ extern char new_line_color[];
 extern char fill_color[];
 extern int fast_selection;
 extern char on_off_line_color[];
-extern LString background_color;
+extern string background_color;
 extern char lighted_color[];
 extern char selection_color[];
 extern char note_color[];
@@ -24,32 +24,32 @@ Colormap color_map = 0;
 long int background_pixels;
 
 // X11 color names
-char const * const X11Color[11] =
+char const * const X11Color[11] = 
 { "black", "black", "white", "red", "green", "blue", "cyan", "magenta", 
   "yellow", "black", "black" };
  
 // Different graphic contexts
-static GC clear_gc = NULL;
-static GC latex_gc = NULL;
-static GC foot_gc = NULL;
-static GC new_line_gc = NULL;
-static GC math_gc = NULL;
-static GC math_frame_gc = NULL;
-static GC fill_gc = NULL;
-static GC note_gc = NULL;
-static GC note_frame_gc = NULL;
-static GC copy_gc = NULL;
-static GC select_gc = NULL;
-static GC on_off_line_gc = NULL;
-static GC thin_on_off_line_gc = NULL;
-static GC thick_line_gc = NULL;
-static GC lighted_gc = NULL;
-static GC selection_gc = NULL;
-static GC accent_gc[10] = { NULL, NULL, NULL, NULL, NULL,
-                           NULL, NULL, NULL, NULL, NULL };
-static GC color_gc[11] = { NULL, NULL, NULL, NULL, NULL, NULL,
-                          NULL, NULL, NULL, NULL, NULL };
-static GC minipage_gc = NULL;
+static GC clear_gc = 0;
+static GC latex_gc = 0;
+static GC foot_gc = 0;
+static GC new_line_gc = 0;
+static GC math_gc = 0;
+static GC math_frame_gc = 0;
+static GC fill_gc = 0;
+static GC note_gc = 0;
+static GC note_frame_gc = 0;
+static GC copy_gc = 0;
+static GC select_gc = 0;
+static GC on_off_line_gc = 0;
+static GC thin_on_off_line_gc = 0;
+static GC thick_line_gc = 0;
+static GC lighted_gc = 0;
+static GC selection_gc = 0;
+static GC accent_gc[10] = { 0, 0, 0, 0, 0,
+                           0, 0, 0, 0, 0 };
+static GC color_gc[11] = { 0, 0, 0, 0, 0, 0,
+                          0, 0, 0, 0, 0 };
+static GC minipage_gc = 0;
 
 
 // Allocates color and sets it as foreground
@@ -63,12 +63,13 @@ bool setForegroundColor(char const * const color, XGCValues & val)
        if (!mono_video) {
                if (XParseColor(fl_display, color_map, color, &xcol)
                    && XAllocColor(fl_display, color_map, &xcol))
-               {
-                       val.foreground = xcol.pixel;
-               } else {
-                       lyxerr.print(LString("LyX: Couldn't get color ") + color);
-                       return false;
-               }
+                       {
+                               val.foreground = xcol.pixel;
+                       } else {
+                               lyxerr << "LyX: Couldn't get color "
+                                      << color << endl;
+                               return false;
+                       }
        }
        return true;
 }
@@ -78,15 +79,15 @@ static
 void do_reverse_video(XGCValues &val)
 {
        if (reverse_video) {
-               val.foreground=WhitePixel(fl_display,
-                                         DefaultScreen(fl_display));
-               val.background=BlackPixel(fl_display,
-                                         DefaultScreen(fl_display));
+               val.foreground= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.background= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
        } else {
-               val.foreground=BlackPixel(fl_display,
-                                         DefaultScreen(fl_display));
-               val.background=WhitePixel(fl_display,
-                                         DefaultScreen(fl_display));
+               val.foreground= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.background= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
        }
 }
 
@@ -145,17 +146,22 @@ GC GetLatexGC()
 
        XGCValues val;
        if (reverse_video ^ mono_video) {
-               val.foreground=WhitePixel(fl_display, DefaultScreen(fl_display));
-               val.background=BlackPixel(fl_display, DefaultScreen(fl_display));
+               val.foreground= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.background= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
        } else {
-               val.foreground=BlackPixel(fl_display, DefaultScreen(fl_display));
-               val.background=WhitePixel(fl_display, DefaultScreen(fl_display));
+               val.foreground= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.background= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
        }
-       val.function=GXcopy;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        setForegroundColor(latex_color, val);
        latex_gc = XCreateGC(fl_display, fl_root, GCBackground 
-                            | GCForeground | GCFunction | GCGraphicsExposures, 
+                            | GCForeground | GCFunction
+                            | GCGraphicsExposures, 
                             &val);
        XFlush(fl_display);
        
@@ -215,17 +221,17 @@ GC GetClearGC()
        XGCValues val;
 
        if (reverse_video) {
-               val.foreground=BlackPixel(fl_display,
-                                         DefaultScreen(fl_display));
-               val.background=WhitePixel(fl_display,
-                                         DefaultScreen(fl_display));
+               val.foreground= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.background= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
        } else {
-               val.background=BlackPixel(fl_display,
-                                         DefaultScreen(fl_display));
-               val.foreground=WhitePixel(fl_display,
-                                         DefaultScreen(fl_display));
+               val.background= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.foreground= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
        }
-       val.function=GXcopy;
+       val.function = GXcopy;
        val.graphics_exposures = false;
        if (!fast_selection && background_color != "white") {
                setForegroundColor(background_color.c_str(), val);
@@ -233,7 +239,8 @@ GC GetClearGC()
        background_pixels = val.foreground;
        
        clear_gc = XCreateGC(fl_display, fl_root, GCBackground 
-                            | GCForeground | GCFunction | GCGraphicsExposures, 
+                            | GCForeground | GCFunction
+                            | GCGraphicsExposures, 
                             &val);
        XFlush(fl_display);
        
@@ -249,7 +256,7 @@ GC GetOnOffLineGC()
        XGCValues val;
        do_reverse_video(val);
 
-       val.function=GXcopy;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        setForegroundColor(on_off_line_color, val);
        val.line_width = 0;
@@ -271,12 +278,13 @@ GC GetThickLineGC()
        XGCValues val;
        do_reverse_video(val);
 
-       val.function=GXcopy;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        val.line_width = 2;
        val.line_style = LineSolid;
        thick_line_gc = XCreateGC(fl_display, fl_root, GCBackground 
-                                 | GCForeground | GCFunction | GCGraphicsExposures
+                                 | GCForeground | GCFunction
+                                 | GCGraphicsExposures
                                  | GCLineWidth | GCLineStyle , &val);
        XFlush(fl_display);
        
@@ -291,11 +299,11 @@ GC GetThinOnOffLineGC()
        XGCValues val;
        do_reverse_video(val);
 
-       val.function=GXcopy;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        val.line_style = LineOnOffDash;
        val.line_width = 0;
-       thin_on_off_line_gc =
+       thin_on_off_line_gc = 
                XCreateGC(fl_display, fl_root, GCBackground
                          | GCForeground | GCFunction | GCGraphicsExposures
                          | GCLineWidth | GCLineStyle , &val);
@@ -312,7 +320,7 @@ GC GetCopyGC()
        XGCValues val;
        do_reverse_video(val);
 
-       val.function=GXcopy;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        val.line_style = LineSolid;
        val.line_width = 0;
@@ -336,10 +344,10 @@ GC GetSelectGC()
        val.line_style = LineSolid;
        val.line_width = 2;
        val.graphics_exposures = false;
-       val.function=GXinvert;
+       val.function= GXinvert;
        select_gc = XCreateGC(fl_display, fl_root,
                              GCFunction | GCGraphicsExposures | GCPlaneMask
-                                     | GCLineWidth | GCLineStyle , &val);
+                             | GCLineWidth | GCLineStyle , &val);
        XFlush(fl_display);
 
        return select_gc; 
@@ -354,24 +362,25 @@ GC GetSelectionGC()
        XGCValues val;
 
        if (!reverse_video) {
-               val.foreground=BlackPixel(fl_display,
-                                         DefaultScreen(fl_display));
-               val.background=WhitePixel(fl_display,
-                                         DefaultScreen(fl_display));
+               val.foreground= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.background= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
        } else {
-               val.background=BlackPixel(fl_display,
-                                         DefaultScreen(fl_display));
-               val.foreground=WhitePixel(fl_display,
-                                         DefaultScreen(fl_display));
+               val.background= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
+               val.foreground= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
        }
        
-       val.function=GXcopy;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        if (!fast_selection && selection_color[0] != 0) {
                if (!setForegroundColor(selection_color, val)) {
                        fast_selection = True;
                        if (clear_gc) clear_gc = 0;
-                       lyxerr.print("     Will use FastSelection-method.\n");
+                       lyxerr << "     Will use FastSelection-method."
+                              << endl;
                }
        }
        selection_gc = XCreateGC(fl_display, fl_root,
@@ -388,18 +397,21 @@ GC GetLightedGC()
        if (lighted_gc) return lighted_gc;
        XGCValues val;
        if (reverse_video) {
-               val.background=BlackPixel(fl_display, DefaultScreen(fl_display));
+               val.background= BlackPixel(fl_display,
+                                          DefaultScreen(fl_display));
        } else {
-               val.background=WhitePixel(fl_display, DefaultScreen(fl_display));
+               val.background= WhitePixel(fl_display,
+                                          DefaultScreen(fl_display));
        }
-       val.foreground=val.background;
-       val.function=GXcopy;
+       val.foreground= val.background;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        val.line_style = LineSolid;
        val.line_width = 0;
        setForegroundColor(lighted_color, val);
        lighted_gc = XCreateGC(fl_display, fl_root, GCBackground
-                              | GCForeground | GCFunction | GCGraphicsExposures
+                              | GCForeground | GCFunction
+                              | GCGraphicsExposures
                               | GCLineWidth | GCLineStyle , &val);
        XFlush(fl_display);
 
@@ -414,7 +426,7 @@ GC GetColorGC(LyXFont::FONT_COLOR color)
        XGCValues val;
        do_reverse_video(val);
 
-       val.function=GXcopy;
+       val.function= GXcopy;
        val.graphics_exposures = false;
        setForegroundColor(X11Color[color], val);
        val.line_width = 0;
@@ -431,7 +443,7 @@ GC GetColorGC(LyXFont::FONT_COLOR color)
 
 GC GetAccentGC(LyXFont const &f, int line_width)
 {
-       if (line_width>=10) line_width = 9;
+       if (line_width >= 10) line_width = 9;
        
        if (accent_gc[line_width]) return accent_gc[line_width];
        
@@ -465,7 +477,7 @@ GC GetMinipageGC()
         XGCValues val;
        do_reverse_video(val);
 
-        val.function=GXcopy;
+        val.function= GXcopy;
         val.graphics_exposures = false;
         val.line_style = LineOnOffDash;
         val.line_width = 0;
@@ -482,7 +494,7 @@ GC GetMinipageGC()
 
 GC getGC(gc_type typ)
 {
-       GC gc = NULL;
+       GC gc = 0;
        switch(typ) {
        case gc_clear:
                gc = GetClearGC();