diff --git a/VERSION b/VERSION
index 9754915269eca9a8e68210cbe363f9fa9be817e1..ddc17b20b78d2bacaba1fee53301ffb2a7955fec 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-259
\ No newline at end of file
+260
\ No newline at end of file
diff --git a/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombination.m b/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombination.m
index 7ece7da73ece5557dfbf254a3f42d95a877d9841..af87383aab7deee77b2a689767d611d0658119ff 100644
--- a/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombination.m
+++ b/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombination.m
@@ -5,6 +5,9 @@ function [] = addSoundsourceCombination(~, ~)
 
 global artoaWorkspace;
 
+%% Disable updating of track parameter
+artoaWorkspace.trajectoryOutput.updateTrackParameterWindow = false;
+
 %% Insert default content
 artoaWorkspace.trackParameter.soundsourceCombinations(end + 1, :) = artoa.controller.track.parameter.getDefaultCombinationCell();
 try
@@ -14,6 +17,7 @@ end
 
 %% Update gui
 artoa.controller.track.parameter.updateGui();
+artoa.controller.track.trajectoryOutput.updateGui();
 
 end
 
diff --git a/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombinationAbove.m b/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombinationAbove.m
index 9da8ceccd17e15bec9868215511c51ed1f5fdd91..f2b2cd1dd24fac6efa8d5b1ca81fcc0125ec4c97 100644
--- a/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombinationAbove.m
+++ b/lib/+artoa/+controller/+track/+parameter/addSoundsourceCombinationAbove.m
@@ -5,6 +5,9 @@ function [] = addSoundsourceCombinationAbove(~, ~)
 
 global artoaWorkspace;
 
+%% Disable updating of track parameter
+artoaWorkspace.trajectoryOutput.updateTrackParameterWindow = false;
+
 %% Get selection
 selectedRow = artoaWorkspace.trackParameter.selectedSoundsourceCombinationRow;
 %% Get current data
@@ -33,6 +36,7 @@ artoaWorkspace.trackParameter.soundsourceCombinations = combinations;
 
 %% Update gui
 artoa.controller.track.parameter.updateGui();
+artoa.controller.track.trajectoryOutput.updateGui();
 
 
 end
diff --git a/lib/+artoa/+controller/+track/+parameter/adjustTableColorsToTrajectory.m b/lib/+artoa/+controller/+track/+parameter/adjustTableColorsToTrajectory.m
new file mode 100644
index 0000000000000000000000000000000000000000..fcaf3f58f2dcc97763383e7a12d681259ab39a36
--- /dev/null
+++ b/lib/+artoa/+controller/+track/+parameter/adjustTableColorsToTrajectory.m
@@ -0,0 +1,25 @@
+function [] = adjustTableColorsToTrajectory(pTrajectory)
+%ADJUSTTABLECOLORSTOTRAJECTORY Summary of this function goes here
+%   Detailed explanation goes here
+
+global artoaGui artoaWorkspace;
+
+if nargin == 0 | ~artoaWorkspace.trajectoryOutput.updateTrackParameterWindow
+    artoaGui.trackParameter.tableSoundSourceCombinations.BackgroundColor = [1 1 1];
+    return;
+end
+
+
+%% Get required variables
+segmentCount = length(pTrajectory.segmentSize);
+
+%% Get colors
+trajectoryColors = fliplr(jet(round(length(pTrajectory.segmentSize) * 1.5)));
+
+colorArray = trajectoryColors(1:segmentCount, :);
+
+%% Update table
+artoaGui.trackParameter.tableSoundSourceCombinations.BackgroundColor = colorArray;
+
+end
+
diff --git a/lib/+artoa/+controller/+track/+parameter/duplicateSoundsourceCombination.m b/lib/+artoa/+controller/+track/+parameter/duplicateSoundsourceCombination.m
index 93b895925a832cf54f316d622cff6bf3c77b071d..1267e6ad7d109b29fa6adf886bcbd3d3c0fa387a 100644
--- a/lib/+artoa/+controller/+track/+parameter/duplicateSoundsourceCombination.m
+++ b/lib/+artoa/+controller/+track/+parameter/duplicateSoundsourceCombination.m
@@ -5,6 +5,9 @@ function [] = duplicateSoundsourceCombination(~, ~)
 
 global artoaWorkspace artoaGui;
 
+%% Disable updating of track parameter
+artoaWorkspace.trajectoryOutput.updateTrackParameterWindow = false;
+
 %% Get column count
 columnCount = size(artoaWorkspace.trackParameter.soundsourceCombinations, 2);
 %% Get selection
@@ -22,6 +25,7 @@ artoaWorkspace.trackParameter.soundsourceCombinations = combinationTable;
 
 %% Update gui
 artoa.controller.track.parameter.updateGui();
+artoa.controller.track.trajectoryOutput.updateGui();
 
 
 end
diff --git a/lib/+artoa/+controller/+track/+parameter/removeSoundsourceCombination.m b/lib/+artoa/+controller/+track/+parameter/removeSoundsourceCombination.m
index 3bb108d6f001b21a1786965f967017e2c282d2dc..b6370d6b4ffc1b24909544f59b29cf89db8a3a27 100644
--- a/lib/+artoa/+controller/+track/+parameter/removeSoundsourceCombination.m
+++ b/lib/+artoa/+controller/+track/+parameter/removeSoundsourceCombination.m
@@ -5,6 +5,9 @@ function [] = removeSoundsourceCombination(~, ~)
 
 global artoaWorkspace;
 
+%% Disable updating of track parameter
+artoaWorkspace.trajectoryOutput.updateTrackParameterWindow = false;
+
 if ~artoa.data.hasMember(artoaWorkspace, 'trackParameter', 'selectedSoundsourceCombinationRow')
     return;
 end
@@ -17,6 +20,7 @@ artoaWorkspace.trackParameter.soundsourceCombinations(selectedRow, :) = [];
 
 %% Update gui
 artoa.controller.track.parameter.updateGui();
+artoa.controller.track.trajectoryOutput.updateGui();
 
 
 end
diff --git a/lib/+artoa/+controller/+track/+parameter/resetSoundsourceCombinations.m b/lib/+artoa/+controller/+track/+parameter/resetSoundsourceCombinations.m
index caba4218c7f00ab0c414841cbf3e6d5d84bbb508..8a6b0248f6469c63c02930d36c7c2e56dcdc7bbf 100644
--- a/lib/+artoa/+controller/+track/+parameter/resetSoundsourceCombinations.m
+++ b/lib/+artoa/+controller/+track/+parameter/resetSoundsourceCombinations.m
@@ -8,6 +8,9 @@ if strcmp(questdlg('Reset all combinations?', 'Confirmation', 'Yes', 'Cancel', '
     return;
 end
 
+%% Disable updating of track parameter
+artoaWorkspace.trajectoryOutput.updateTrackParameterWindow = false;
+
 %% Delete from workspace
 artoaWorkspace.trackParameter.soundsourceCombinations = ...
     artoa.controller.track.parameter.createCombinationsTable( ...
@@ -16,6 +19,7 @@ artoaWorkspace.trackParameter.soundsourceCombinations = ...
 
 %% Update gui
 artoa.controller.track.parameter.updateGui();
+artoa.controller.track.trajectoryOutput.updateGui();
 
 end
 
diff --git a/lib/+artoa/+controller/+track/+parameter/updateGui.m b/lib/+artoa/+controller/+track/+parameter/updateGui.m
index 71737b2f7f578b7945c35c960b9e8685bd1523cb..8efb53a4715201bb6513ad5cbcd9c6382996f649 100644
--- a/lib/+artoa/+controller/+track/+parameter/updateGui.m
+++ b/lib/+artoa/+controller/+track/+parameter/updateGui.m
@@ -35,5 +35,13 @@ for i = 1:length(fieldNames)
     end
 end
 
+if ~isnan(artoa.data.getMember(artoaWorkspace, {'trajectoryOutput', 'tableGeneratedTracksSelectedRow'}, NaN))
+    artoa.controller.track.parameter.adjustTableColorsToTrajectory( ...
+        artoaWorkspace.trajectoryOutput.trajectories{artoaWorkspace.trajectoryOutput.tableGeneratedTracksSelectedRow} ...
+        );
+else 
+    artoa.controller.track.parameter.adjustTableColorsToTrajectory();
+end
+
 end
 
diff --git a/lib/+artoa/+controller/+track/+trajectoryOutput/open.m b/lib/+artoa/+controller/+track/+trajectoryOutput/open.m
index 965e3c0866921b77150686c32dfbf9c6f1b9c768..633a7e2f2e72957c2427c700bcda9d7beaf2b132 100644
--- a/lib/+artoa/+controller/+track/+trajectoryOutput/open.m
+++ b/lib/+artoa/+controller/+track/+trajectoryOutput/open.m
@@ -65,58 +65,8 @@ artoaGui.trajectoryOutput.syncZoomToaWindow.xlistener = addlistener( ...
     @artoa.controller.track.trajectoryOutput.syncZoomToaWindow ...
 );
 
-%% Update table of generated tracks
-artoa.controller.track.trajectoryOutput.updateTableGeneratedTracks();
-
 %% Update gui
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'updateTrackParameterWindow'})
-    artoaGui.trajectoryOutput.checkboxUpdateTrackParameterWindow.Value = ...
-        artoaWorkspace.trajectoryOutput.updateTrackParameterWindow;
-else
-    artoaGui.trajectoryOutput.checkboxUpdateTrackParameterWindow.Value = false;
-end
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'showPositionDates'})
-    artoaGui.trajectoryOutput.checkboxShowPositionDates.Value = ...
-        artoaWorkspace.trajectoryOutput.showPositionDates;
-else
-    artoaGui.trajectoryOutput.checkboxShowPositionDates.Value = true;
-end
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'enableMercatorProjection'})
-    artoaGui.trajectoryOutput.checkboxMercator.Value = ...
-        artoaWorkspace.trajectoryOutput.enableMercatorProjection;
-else
-    artoaGui.trajectoryOutput.checkboxMercator.Value = false;
-end
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'enableTrueDistance'})
-    artoaGui.trajectoryOutput.checkboxTrueDistance.Value = ...
-        artoaWorkspace.trajectoryOutput.enableTrueDistance;
-else
-    artoaGui.trajectoryOutput.checkboxTrueDistance.Value = false;
-end
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'syncZoomToaWindow'})
-    artoaGui.trajectoryOutput.checkboxSynchronizeZoomToaWindow.Value = ...
-        artoaWorkspace.trajectoryOutput.syncZoomToaWindow;
-else
-    artoaGui.trajectoryOutput.checkboxSynchronizeZoomToaWindow.Value = false;
-end
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'showTopographicalLines'})
-    artoaGui.trajectoryOutput.checkboxShowTopographicalLines.Value = ...
-        artoaWorkspace.trajectoryOutput.showTopographicalLines;
-else
-    artoaGui.trajectoryOutput.checkboxShowTopographicalLines.Value = false;
-end
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'topographicalLines'})
-    artoaGui.trajectoryOutput.tableTopographicalLines.Data = ...
-        artoaWorkspace.trajectoryOutput.topographicalLines;
-else
-    artoaGui.trajectoryOutput.checkboxShowTopographicalLines.Value = false;
-end
-if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'showErrorEllipses'})
-    artoaGui.trajectoryOutput.checkboxShowErrorEllipses.Value = ...
-        artoaWorkspace.trajectoryOutput.showErrorEllipses;
-else
-    artoaGui.trajectoryOutput.checkboxShowErrorEllipses.Value = false;
-end
+artoa.controller.track.trajectoryOutput.updateGui();
 
 %% Plot everything available
 artoa.controller.track.trajectoryOutput.plot(artoaWorkspace.trajectoryOutput.enableMercatorProjection);
diff --git a/lib/+artoa/+controller/+track/+trajectoryOutput/updateGui.m b/lib/+artoa/+controller/+track/+trajectoryOutput/updateGui.m
new file mode 100644
index 0000000000000000000000000000000000000000..402917c5332b28fb4f4e30bbb07a58dad6a6950a
--- /dev/null
+++ b/lib/+artoa/+controller/+track/+trajectoryOutput/updateGui.m
@@ -0,0 +1,60 @@
+function [] = updateGui()
+%UPDATEGUI Summary of this function goes here
+%   Detailed explanation goes here
+
+global artoaWorkspace artoaGui;
+
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'updateTrackParameterWindow'})
+    artoaGui.trajectoryOutput.checkboxUpdateTrackParameterWindow.Value = ...
+        artoaWorkspace.trajectoryOutput.updateTrackParameterWindow;
+else
+    artoaGui.trajectoryOutput.checkboxUpdateTrackParameterWindow.Value = false;
+end
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'showPositionDates'})
+    artoaGui.trajectoryOutput.checkboxShowPositionDates.Value = ...
+        artoaWorkspace.trajectoryOutput.showPositionDates;
+else
+    artoaGui.trajectoryOutput.checkboxShowPositionDates.Value = true;
+end
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'enableMercatorProjection'})
+    artoaGui.trajectoryOutput.checkboxMercator.Value = ...
+        artoaWorkspace.trajectoryOutput.enableMercatorProjection;
+else
+    artoaGui.trajectoryOutput.checkboxMercator.Value = false;
+end
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'enableTrueDistance'})
+    artoaGui.trajectoryOutput.checkboxTrueDistance.Value = ...
+        artoaWorkspace.trajectoryOutput.enableTrueDistance;
+else
+    artoaGui.trajectoryOutput.checkboxTrueDistance.Value = false;
+end
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'syncZoomToaWindow'})
+    artoaGui.trajectoryOutput.checkboxSynchronizeZoomToaWindow.Value = ...
+        artoaWorkspace.trajectoryOutput.syncZoomToaWindow;
+else
+    artoaGui.trajectoryOutput.checkboxSynchronizeZoomToaWindow.Value = false;
+end
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'showTopographicalLines'})
+    artoaGui.trajectoryOutput.checkboxShowTopographicalLines.Value = ...
+        artoaWorkspace.trajectoryOutput.showTopographicalLines;
+else
+    artoaGui.trajectoryOutput.checkboxShowTopographicalLines.Value = false;
+end
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'topographicalLines'})
+    artoaGui.trajectoryOutput.tableTopographicalLines.Data = ...
+        artoaWorkspace.trajectoryOutput.topographicalLines;
+else
+    artoaGui.trajectoryOutput.checkboxShowTopographicalLines.Value = false;
+end
+if artoa.data.hasMember(artoaWorkspace, {'trajectoryOutput', 'showErrorEllipses'})
+    artoaGui.trajectoryOutput.checkboxShowErrorEllipses.Value = ...
+        artoaWorkspace.trajectoryOutput.showErrorEllipses;
+else
+    artoaGui.trajectoryOutput.checkboxShowErrorEllipses.Value = false;
+end
+
+%% Update table of generated tracks
+artoa.controller.track.trajectoryOutput.updateTableGeneratedTracks();
+
+end
+