summaryrefslogtreecommitdiffstats
path: root/tksao/frame/contour.C
diff options
context:
space:
mode:
Diffstat (limited to 'tksao/frame/contour.C')
-rw-r--r--tksao/frame/contour.C28
1 files changed, 25 insertions, 3 deletions
diff --git a/tksao/frame/contour.C b/tksao/frame/contour.C
index 0c76d4a..1233b91 100644
--- a/tksao/frame/contour.C
+++ b/tksao/frame/contour.C
@@ -7,14 +7,15 @@
#include "context.h"
// ContourLevel
-ContourLevel::ContourLevel(Base* pp, double lev, const char* cc, int ww,
- int dd, int* dl)
+ContourLevel::ContourLevel(Base* pp, double lev,
+ const char* cn,
+ int ww, int dd, int* dl)
{
parent_ = pp;
gc_ = parent_->contourGC_;
level_ = lev;
- colorName_ = dupstr(cc);
+ colorName_ = dupstr(cn);
color_ = parent_->getColor(colorName_);
lineWidth_ = ww;
dash_ = dd;
@@ -25,6 +26,27 @@ ContourLevel::ContourLevel(Base* pp, double lev, const char* cc, int ww,
next_ = NULL;
}
+// used in threads, so need to resolve color/colorName before
+ContourLevel::ContourLevel(Base* pp, double lev,
+ const char* cn, unsigned long cc,
+ int ww, int dd, int* dl)
+{
+ parent_ = pp;
+ gc_ = parent_->contourGC_;
+
+ level_ = lev;
+ colorName_ = dupstr(cn);
+ // color_ = parent_->getColor(colorName_);
+ color_ = cc;
+ lineWidth_ = ww;
+ dash_ = dd;
+ dlist_[0] = dl[0];
+ dlist_[1] = dl[1];
+
+ previous_ = NULL;
+ next_ = NULL;
+}
+
ContourLevel::~ContourLevel()
{
if (colorName_)