From 0f46d473c937f11a6cdc08ae9de206021cf1afba Mon Sep 17 00:00:00 2001
From: Ludovic Apvrille <ludovic.apvrille@telecom-paristech.fr>
Date: Mon, 20 Jun 2011 10:19:08 +0000
Subject: [PATCH] TTool: no-color option

---
 executablecode/Makefile.src          |  2 +-
 executablecode/src/mytimelib.c       |  1 +
 executablecode/src/request.c         |  2 +
 executablecode/src/request_manager.c |  4 +-
 src/Main.java                        |  4 ++
 src/ui/ColorManager.java             | 55 ++++++++++++++++------------
 6 files changed, 43 insertions(+), 25 deletions(-)

diff --git a/executablecode/Makefile.src b/executablecode/Makefile.src
index c3bde51c3e..6fd0a8b4dc 100755
--- a/executablecode/Makefile.src
+++ b/executablecode/Makefile.src
@@ -1 +1 @@
-SRCS = generated_src/main.c generated_src/Block0.c 
\ No newline at end of file
+SRCS = generated_src/main.c generated_src/PageLoader.c generated_src/UserModel.c generated_src/DisplayDriver.c generated_src/EReaderController.c 
\ No newline at end of file
diff --git a/executablecode/src/mytimelib.c b/executablecode/src/mytimelib.c
index 32ead69562..2282f5ac0b 100644
--- a/executablecode/src/mytimelib.c
+++ b/executablecode/src/mytimelib.c
@@ -100,5 +100,6 @@ void waitFor(long minDelay, long maxDelay) {
 
   debugLong("............. waiting For", delay);
   nanosleep(&tssrc, &tsret);
+  debugLong("............. waiting Done for: ", delay);
 }
 
diff --git a/executablecode/src/request.c b/executablecode/src/request.c
index 63d7f7eb8f..af1231c61b 100644
--- a/executablecode/src/request.c
+++ b/executablecode/src/request.c
@@ -110,6 +110,8 @@ request * addToRequestQueue(request *list, request *requestToAdd) {
   
   list->next = requestToAdd;
 
+  requestToAdd->next = NULL;
+
   return origin;
 }
 
diff --git a/executablecode/src/request_manager.c b/executablecode/src/request_manager.c
index 3976fb17a1..e1c39ba777 100644
--- a/executablecode/src/request_manager.c
+++ b/executablecode/src/request_manager.c
@@ -118,6 +118,7 @@ void executeSendAsyncTransaction(request *req) {
     pthread_cond_signal(selectedReq->listOfRequests->wakeupCondition);
     selectedReq = selectedReq->next;
   }
+  debugMsg("Signaling done");
 
   traceAsynchronousSendRequest(req);
 }
@@ -128,7 +129,6 @@ void executeReceiveAsyncTransaction(request *req) {
 
   req->msg = getAndRemoveOldestMessageFromAsyncChannel(req->asyncChannel);
     
-  debugMsg("Signaling async read to all requests waiting ");
   selectedReq = req->asyncChannel->outWaitQueue;
 
   // Must recopy parameters
@@ -141,10 +141,12 @@ void executeReceiveAsyncTransaction(request *req) {
   // unallocate message
   destroyMessageWithParams(req->msg);
 
+  debugMsg("Signaling async read to all requests waiting ");
   while (selectedReq != NULL) {
     pthread_cond_signal(selectedReq->listOfRequests->wakeupCondition);
     selectedReq = selectedReq->next;
   }
+  debugMsg("Signaling done");
 }
 
 
diff --git a/src/Main.java b/src/Main.java
index c0a0dc05b9..8e1586596a 100755
--- a/src/Main.java
+++ b/src/Main.java
@@ -238,6 +238,10 @@ public class Main implements ActionListener {
                 TraceManager.devPolicy = TraceManager.TO_CONSOLE;
             }
 			
+			if (args[i].compareTo("-nocolor") == 0) {
+                ColorManager.noColor();
+            }
+			
         }
         
         // Icons
diff --git a/src/ui/ColorManager.java b/src/ui/ColorManager.java
index 9fdfc3f228..a1c79ed31e 100755
--- a/src/ui/ColorManager.java
+++ b/src/ui/ColorManager.java
@@ -78,7 +78,7 @@ public class ColorManager {
     public static final Color POINTED_0 = new Color(139, 79, 11);
 	
 	//public static final Color UML_NOTE_BG = new Color(189, 91, 13, 200);
-	public static final Color UML_NOTE_BG = new Color(173, 190, 234);
+	public static  Color UML_NOTE_BG = new Color(173, 190, 234);
 	
     public static final Color COMPOSITION_OPERATOR = Color.yellow;
     public static final Color ATTRIBUTE_BOX = new Color(199, 243, 105);
@@ -136,37 +136,37 @@ public class ColorManager {
 	//public static final Color AVATAR_BLOCK = new Color(128, 180, 205);
 	//public static final Color AVATAR_BLOCK = new Color(158, 218, 227);
 	//public static final Color AVATAR_BLOCK = new Color(149, 193, 210);
-	public static final Color AVATAR_BLOCK = new Color(193, 218, 241);
+	public static  Color AVATAR_BLOCK = new Color(193, 218, 241);
 	//public static final Color AVATAR_DATATYPE = new Color(109, 193, 210);
-	public static final Color AVATAR_DATATYPE = new Color(156, 220, 162);
-	public static final Color AVATAR_SEND_SIGNAL = new Color(128, 180, 205);
-	public static final Color AVATAR_RECEIVE_SIGNAL = new Color(128, 180, 205);
+	public static  Color AVATAR_DATATYPE = new Color(156, 220, 162);
+	public static  Color AVATAR_SEND_SIGNAL = new Color(128, 180, 205);
+	public static  Color AVATAR_RECEIVE_SIGNAL = new Color(128, 180, 205);
 	//public static final Color AVATAR_GUARD = new Color(128, 180, 205);
-	public static final Color AVATAR_GUARD = new Color(0, 89, 26);
+	public static  Color AVATAR_GUARD = new Color(0, 89, 26);
 	//public static final Color AVATAR_TIME = new Color(108, 92, 67);
-	public static final Color AVATAR_TIME = new Color(105, 75, 11);	
+	public static  Color AVATAR_TIME = new Color(105, 75, 11);	
 	//public static final Color AVATAR_ACTION = new Color(128, 92, 168);
-	public static final Color AVATAR_ACTION = new Color(119, 16, 243);
+	public static  Color AVATAR_ACTION = new Color(119, 16, 243);
 	//public static final Color AVATAR_STATE = new Color(149, 193, 210);
-	public static final Color AVATAR_STATE = new Color(193, 218, 241);
+	public static  Color AVATAR_STATE = new Color(193, 218, 241);
 	
-	public static final Color AVATAR_SET_TIMER = new Color(255, 180, 105);
-	public static final Color AVATAR_RESET_TIMER = new Color(255, 180, 105);
-	public static final Color AVATAR_EXPIRE_TIMER = new Color(255, 180, 105);
+	public static  Color AVATAR_SET_TIMER = new Color(255, 180, 105);
+	public static  Color AVATAR_RESET_TIMER = new Color(255, 180, 105);
+	public static  Color AVATAR_EXPIRE_TIMER = new Color(255, 180, 105);
 	
 	
-	public static final Color AVATAR_REQUIREMENT_TOP = new Color(228, 241, 242);
-	public static final Color AVATAR_REQUIREMENT_ATTRIBUTES = new Color(205, 196, 109);
+	public static  Color AVATAR_REQUIREMENT_TOP = new Color(228, 241, 242);
+	public static  Color AVATAR_REQUIREMENT_ATTRIBUTES = new Color(205, 196, 109);
 	
-	public static final Color AVATARPD_ATTRIBUTE = new Color(143, 182, 110);
-	public static final Color AVATARPD_SIGNAL = new Color(205, 196, 109);
-	public static final Color AVATARPD_PROPERTY = new Color(228, 241, 242);
-	public static final Color AVATARPD_PROPERTY_RELATION = AVATARPD_PROPERTY;
-	public static final Color AVATARPD_LOGICAL_CONSTRAINT = AVATARPD_SIGNAL;
-	public static final Color AVATARPD_TEMPORAL_CONSTRAINT = AVATARPD_SIGNAL;
-	public static final Color AVATARPD_ALIAS = AVATARPD_SIGNAL;
-	public static final Color AVATARPD_ATTRIBUTE_SETTING = AVATARPD_ATTRIBUTE;
-	public static final Color AVATARPD_BOOLEQ = AVATARPD_ATTRIBUTE;
+	public static  Color AVATARPD_ATTRIBUTE = new Color(143, 182, 110);
+	public static  Color AVATARPD_SIGNAL = new Color(205, 196, 109);
+	public static  Color AVATARPD_PROPERTY = new Color(228, 241, 242);
+	public static  Color AVATARPD_PROPERTY_RELATION = AVATARPD_PROPERTY;
+	public static  Color AVATARPD_LOGICAL_CONSTRAINT = AVATARPD_SIGNAL;
+	public static  Color AVATARPD_TEMPORAL_CONSTRAINT = AVATARPD_SIGNAL;
+	public static  Color AVATARPD_ALIAS = AVATARPD_SIGNAL;
+	public static  Color AVATARPD_ATTRIBUTE_SETTING = AVATARPD_ATTRIBUTE;
+	public static  Color AVATARPD_BOOLEQ = AVATARPD_ATTRIBUTE;
 	
 	
     public static final Color DIAGRAM_BACKGROUND = Color.white;
@@ -219,6 +219,15 @@ public class ColorManager {
             }
         }
     }
+	
+	public static void noColor() {
+		UML_NOTE_BG = Color.white;
+		AVATAR_BLOCK = Color.white;
+		AVATAR_DATATYPE = Color.white;
+		AVATAR_STATE = Color.white;
+		AVATAR_REQUIREMENT_TOP = Color.white;
+		AVATAR_REQUIREMENT_ATTRIBUTES = Color.white;
+	}
     
 } // Class Color
 
-- 
GitLab