]> git.lyx.org Git - lyx.git/blobdiff - src/Changes.cpp
Fix bug #12772
[lyx.git] / src / Changes.cpp
index dfe04cd306b7d949cc0d7c98e43f99907825687f..16bbb2fdd64452f0bbe789cda3097fff50a86bb0 100644 (file)
@@ -17,6 +17,7 @@
 #include "Author.h"
 #include "Buffer.h"
 #include "BufferParams.h"
+#include "Color.h"
 #include "Encoding.h"
 #include "LyXRC.h"
 #include "MetricsInfo.h"
@@ -70,26 +71,29 @@ bool Change::isSimilarTo(Change const & change) const
 Color Change::color() const
 {
        Color color = Color_none;
-       switch (author % 5) {
-               case 0:
-                       color = Color_addedtextauthor1;
-                       break;
-               case 1:
-                       color = Color_addedtextauthor2;
-                       break;
-               case 2:
-                       color = Color_addedtextauthor3;
-                       break;
-               case 3:
-                       color = Color_addedtextauthor4;
-                       break;
-               case 4:
-                       color = Color_addedtextauthor5;
-                       break;
+       if (author == 0)
+               color = Color_changedtext_workarea_author1;
+       else if (author == 1)
+               color = Color_changedtext_workarea_comparison;
+       else {
+               switch ((author - 2) % 4) {
+                       case 0:
+                               color = Color_changedtext_workarea_author2;
+                               break;
+                       case 1:
+                               color = Color_changedtext_workarea_author3;
+                               break;
+                       case 2:
+                               color = Color_changedtext_workarea_author4;
+                               break;
+                       case 3:
+                               color = Color_changedtext_workarea_author5;
+                               break;
+               }
        }
 
        if (deleted())
-               color.mergeColor = Color_deletedtextmodifier;
+               color.mergeColor = Color_deletedtext_workarea_modifier;
 
        return color;
 }
@@ -429,7 +433,7 @@ int Changes::latexMarkChange(otexstream & os, BufferParams const & bparams,
        int column = 0;
 
        if (oldChange.type != Change::UNCHANGED) {
-               if (oldChange.type != Change::DELETED || runparams.ctObject != OutputParams::CT_OMITOBJECT) {
+               if (oldChange.type != Change::DELETED || runparams.ctObject != CtObject::OmitObject) {
                        // close \lyxadded or \lyxdeleted
                        os << '}';
                        column++;
@@ -446,13 +450,13 @@ int Changes::latexMarkChange(otexstream & os, BufferParams const & bparams,
 
        docstring macro_beg;
        if (change.type == Change::DELETED) {
-               if (runparams.ctObject == OutputParams::CT_OMITOBJECT)
+               if (runparams.ctObject == CtObject::OmitObject)
                        return 0;
-               else if (runparams.ctObject == OutputParams::CT_OBJECT)
+               else if (runparams.ctObject == CtObject::Object)
                        macro_beg = from_ascii("\\lyxobjdeleted");
-               else if (runparams.ctObject == OutputParams::CT_DISPLAYOBJECT)
+               else if (runparams.ctObject == CtObject::DisplayObject)
                        macro_beg = from_ascii("\\lyxdisplayobjdeleted");
-               else if (runparams.ctObject == OutputParams::CT_UDISPLAYOBJECT)
+               else if (runparams.ctObject == CtObject::UDisplayObject)
                        macro_beg = from_ascii("\\lyxudisplayobjdeleted");
                else {
                        macro_beg = from_ascii("\\lyxdeleted");