diff --git a/Charts/Core/Testing/Cxx/TestParallelCoordinatesSelection.cxx b/Charts/Core/Testing/Cxx/TestParallelCoordinatesSelection.cxx
index e7d80e88a37fdd8cda29fa004eba67cc920a417b..58c05366b668e417b047b1840214a21957aa1920 100644
--- a/Charts/Core/Testing/Cxx/TestParallelCoordinatesSelection.cxx
+++ b/Charts/Core/Testing/Cxx/TestParallelCoordinatesSelection.cxx
@@ -15,308 +15,293 @@
 #include <vtkRenderer.h>
 #include <vtkTable.h>
 
-static const int expectedValues[2] = { 62, 105 };
+static const int expectedValues[14] = { 39, 40, 41, 42, 43, 44, 45, 54, 55, 56, 57, 58, 59, 60 };
 
-static const char* eventLog = "# StreamVersion 1.1\n"
-                              "ExposeEvent 0 399 0 0 0 0\n"
-                              "RenderEvent 0 399 0 0 0 0\n"
-                              "TimerEvent 0 399 0 0 0 0\n"
-                              "RenderEvent 0 399 0 0 0 0\n"
-                              "EnterEvent 599 141 0 0 0 0\n"
-                              "MouseMoveEvent 599 141 0 0 0 0\n"
-                              "MouseMoveEvent 220 91 0 0 0 0\n"
-                              "KeyPressEvent 220 91 0 0 1 Control_L\n"
-                              "CharEvent 220 91 0 0 1 Control_L\n"
-                              "KeyPressEvent 220 91 2 0 1 Shift_L\n"
-                              "CharEvent 220 91 2 0 1 Shift_L\n"
-                              "LeftButtonPressEvent 220 91 3 0 0 Shift_L\n"
-                              "TimerEvent 220 91 3 0 0 Shift_L\n"
-                              "RenderEvent 220 91 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 220 96 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 115 3 0 0 Shift_L\n"
-                              "TimerEvent 219 115 3 0 0 Shift_L\n"
-                              "RenderEvent 219 115 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 118 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 127 3 0 0 Shift_L\n"
-                              "TimerEvent 219 127 3 0 0 Shift_L\n"
-                              "RenderEvent 219 127 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 128 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 130 3 0 0 Shift_L\n"
-                              "TimerEvent 219 130 3 0 0 Shift_L\n"
-                              "RenderEvent 219 130 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 130 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 131 3 0 0 Shift_L\n"
-                              "TimerEvent 219 131 3 0 0 Shift_L\n"
-                              "RenderEvent 219 131 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 132 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 139 3 0 0 Shift_L\n"
-                              "TimerEvent 219 139 3 0 0 Shift_L\n"
-                              "RenderEvent 219 139 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 140 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 143 3 0 0 Shift_L\n"
-                              "TimerEvent 219 143 3 0 0 Shift_L\n"
-                              "RenderEvent 219 143 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 144 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 147 3 0 0 Shift_L\n"
-                              "TimerEvent 219 147 3 0 0 Shift_L\n"
-                              "RenderEvent 219 147 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 149 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 152 3 0 0 Shift_L\n"
-                              "TimerEvent 219 152 3 0 0 Shift_L\n"
-                              "RenderEvent 219 152 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 153 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 155 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 219 160 3 0 0 Shift_L\n"
-                              "TimerEvent 219 160 3 0 0 Shift_L\n"
-                              "RenderEvent 219 160 3 0 0 Shift_L\n"
-                              "LeftButtonReleaseEvent 219 160 3 0 0 Shift_L\n"
-                              "TimerEvent 219 160 3 0 0 Shift_L\n"
-                              "RenderEvent 219 160 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 220 160 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 221 159 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 410 86 3 0 0 Shift_L\n"
-                              "KeyReleaseEvent 410 86 3 0 1 Control_L\n"
-                              "MouseMoveEvent 408 85 1 0 0 Control_L\n"
-                              "KeyReleaseEvent 408 85 1 0 1 Shift_L\n"
-                              "MouseMoveEvent 405 83 0 0 0 Shift_L\n"
-                              "MouseMoveEvent 403 83 0 0 0 Shift_L\n"
-                              "MouseMoveEvent 384 82 0 0 0 Shift_L\n"
-                              "KeyPressEvent 384 82 0 0 1 Control_L\n"
-                              "CharEvent 384 82 0 0 1 Control_L\n"
-                              "KeyPressEvent 384 82 2 0 1 Shift_L\n"
-                              "CharEvent 384 82 2 0 1 Shift_L\n"
-                              "MouseMoveEvent 383 82 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 80 3 0 0 Shift_L\n"
-                              "LeftButtonPressEvent 379 80 3 0 0 Shift_L\n"
-                              "TimerEvent 379 80 3 0 0 Shift_L\n"
-                              "RenderEvent 379 80 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 83 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 95 3 0 0 Shift_L\n"
-                              "TimerEvent 379 95 3 0 0 Shift_L\n"
-                              "RenderEvent 379 95 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 97 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 106 3 0 0 Shift_L\n"
-                              "TimerEvent 379 106 3 0 0 Shift_L\n"
-                              "RenderEvent 379 106 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 107 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 115 3 0 0 Shift_L\n"
-                              "TimerEvent 379 115 3 0 0 Shift_L\n"
-                              "RenderEvent 379 115 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 116 3 0 0 Shift_L\n"
-                              "TimerEvent 379 116 3 0 0 Shift_L\n"
-                              "RenderEvent 379 116 3 0 0 Shift_L\n"
-                              "LeftButtonReleaseEvent 379 116 3 0 0 Shift_L\n"
-                              "TimerEvent 379 116 3 0 0 Shift_L\n"
-                              "RenderEvent 379 116 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 380 122 3 0 0 Shift_L\n"
-                              "KeyReleaseEvent 380 122 3 0 1 Control_L\n"
-                              "MouseMoveEvent 382 129 1 0 0 Control_L\n"
-                              "MouseMoveEvent 388 143 1 0 0 Control_L\n"
-                              "KeyReleaseEvent 388 143 1 0 1 Shift_L\n"
-                              "MouseMoveEvent 390 156 0 0 0 Shift_L\n"
-                              "MouseMoveEvent 393 164 0 0 0 Shift_L\n"
-                              "MouseMoveEvent 381 317 0 0 0 Shift_L\n"
-                              "KeyPressEvent 381 317 0 0 1 Control_L\n"
-                              "CharEvent 381 317 0 0 1 Control_L\n"
-                              "MouseMoveEvent 380 317 2 0 0 Control_L\n"
-                              "MouseMoveEvent 379 317 2 0 0 Control_L\n"
-                              "KeyPressEvent 379 317 2 0 1 Shift_L\n"
-                              "CharEvent 379 317 2 0 1 Shift_L\n"
-                              "LeftButtonPressEvent 379 317 3 0 0 Shift_L\n"
-                              "TimerEvent 379 317 3 0 0 Shift_L\n"
-                              "RenderEvent 379 317 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 318 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 329 3 0 0 Shift_L\n"
-                              "TimerEvent 379 329 3 0 0 Shift_L\n"
-                              "RenderEvent 379 329 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 331 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 341 3 0 0 Shift_L\n"
-                              "TimerEvent 379 341 3 0 0 Shift_L\n"
-                              "RenderEvent 379 341 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 343 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 348 3 0 0 Shift_L\n"
-                              "TimerEvent 379 348 3 0 0 Shift_L\n"
-                              "RenderEvent 379 348 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 349 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 351 3 0 0 Shift_L\n"
-                              "TimerEvent 379 351 3 0 0 Shift_L\n"
-                              "RenderEvent 379 351 3 0 0 Shift_L\n"
-                              "LeftButtonReleaseEvent 379 351 3 0 0 Shift_L\n"
-                              "TimerEvent 379 351 3 0 0 Shift_L\n"
-                              "RenderEvent 379 351 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 351 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 379 350 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 378 207 3 0 0 Shift_L\n"
-                              "KeyReleaseEvent 378 207 3 0 1 Control_L\n"
-                              "MouseMoveEvent 376 206 1 0 0 Control_L\n"
-                              "MouseMoveEvent 373 202 1 0 0 Control_L\n"
-                              "MouseMoveEvent 371 200 1 0 0 Control_L\n"
-                              "KeyReleaseEvent 371 200 1 0 1 Shift_L\n"
-                              "MouseMoveEvent 366 196 0 0 0 Shift_L\n"
-                              "MouseMoveEvent 218 99 0 0 0 Shift_L\n"
-                              "KeyPressEvent 218 99 0 0 1 Shift_L\n"
-                              "CharEvent 218 99 0 0 1 Shift_L\n"
-                              "KeyPressEvent 218 99 1 0 1 Control_L\n"
-                              "CharEvent 218 99 1 0 1 Control_L\n"
-                              "MouseMoveEvent 218 101 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 130 3 0 0 Control_L\n"
-                              "LeftButtonPressEvent 220 130 3 0 0 Control_L\n"
-                              "TimerEvent 220 130 3 0 0 Control_L\n"
-                              "RenderEvent 220 130 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 129 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 126 3 0 0 Control_L\n"
-                              "TimerEvent 220 126 3 0 0 Control_L\n"
-                              "RenderEvent 220 126 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 124 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 122 3 0 0 Control_L\n"
-                              "TimerEvent 220 122 3 0 0 Control_L\n"
-                              "RenderEvent 220 122 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 121 3 0 0 Control_L\n"
-                              "TimerEvent 220 121 3 0 0 Control_L\n"
-                              "RenderEvent 220 121 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 121 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 120 3 0 0 Control_L\n"
-                              "TimerEvent 220 120 3 0 0 Control_L\n"
-                              "RenderEvent 220 120 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 119 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 117 3 0 0 Control_L\n"
-                              "TimerEvent 220 117 3 0 0 Control_L\n"
-                              "RenderEvent 220 117 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 116 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 111 3 0 0 Control_L\n"
-                              "TimerEvent 220 111 3 0 0 Control_L\n"
-                              "RenderEvent 220 111 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 109 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 105 3 0 0 Control_L\n"
-                              "TimerEvent 220 105 3 0 0 Control_L\n"
-                              "RenderEvent 220 105 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 104 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 103 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 102 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 101 3 0 0 Control_L\n"
-                              "TimerEvent 220 101 3 0 0 Control_L\n"
-                              "RenderEvent 220 101 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 100 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 99 3 0 0 Control_L\n"
-                              "MouseMoveEvent 220 98 3 0 0 Control_L\n"
-                              "TimerEvent 220 98 3 0 0 Control_L\n"
-                              "RenderEvent 220 98 3 0 0 Control_L\n"
-                              "LeftButtonReleaseEvent 220 98 3 0 0 Control_L\n"
-                              "TimerEvent 220 98 3 0 0 Control_L\n"
-                              "RenderEvent 220 98 3 0 0 Control_L\n"
-                              "MouseMoveEvent 222 100 3 0 0 Control_L\n"
-                              "MouseMoveEvent 225 102 3 0 0 Control_L\n"
-                              "MouseMoveEvent 226 103 3 0 0 Control_L\n"
-                              "MouseMoveEvent 229 103 3 0 0 Control_L\n"
-                              "MouseMoveEvent 231 104 3 0 0 Control_L\n"
-                              "MouseMoveEvent 232 105 3 0 0 Control_L\n"
-                              "KeyReleaseEvent 232 105 3 0 1 Control_L\n"
-                              "KeyReleaseEvent 232 105 1 0 1 Shift_L\n"
-                              "MouseMoveEvent 232 104 0 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 84 0 0 0 Shift_L\n"
-                              "KeyPressEvent 217 84 0 0 1 Control_L\n"
-                              "CharEvent 217 84 0 0 1 Control_L\n"
-                              "KeyPressEvent 217 84 2 0 1 Shift_L\n"
-                              "CharEvent 217 84 2 0 1 Shift_L\n"
-                              "LeftButtonPressEvent 217 84 3 0 0 Shift_L\n"
-                              "TimerEvent 217 84 3 0 0 Shift_L\n"
-                              "RenderEvent 217 84 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 85 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 86 3 0 0 Shift_L\n"
-                              "TimerEvent 217 86 3 0 0 Shift_L\n"
-                              "RenderEvent 217 86 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 87 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 89 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 90 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 91 3 0 0 Shift_L\n"
-                              "TimerEvent 217 91 3 0 0 Shift_L\n"
-                              "RenderEvent 217 91 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 91 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 92 3 0 0 Shift_L\n"
-                              "TimerEvent 217 92 3 0 0 Shift_L\n"
-                              "RenderEvent 217 92 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 93 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 94 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 95 3 0 0 Shift_L\n"
-                              "TimerEvent 217 95 3 0 0 Shift_L\n"
-                              "RenderEvent 217 95 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 96 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 97 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 98 3 0 0 Shift_L\n"
-                              "TimerEvent 217 98 3 0 0 Shift_L\n"
-                              "RenderEvent 217 98 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 98 3 0 0 Shift_L\n"
-                              "TimerEvent 217 98 3 0 0 Shift_L\n"
-                              "RenderEvent 217 98 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 98 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 99 3 0 0 Shift_L\n"
-                              "TimerEvent 217 99 3 0 0 Shift_L\n"
-                              "RenderEvent 217 99 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 100 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 217 100 3 0 0 Shift_L\n"
-                              "TimerEvent 217 100 3 0 0 Shift_L\n"
-                              "RenderEvent 217 100 3 0 0 Shift_L\n"
-                              "LeftButtonReleaseEvent 217 100 3 0 0 Shift_L\n"
-                              "TimerEvent 217 100 3 0 0 Shift_L\n"
-                              "RenderEvent 217 100 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 218 100 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 218 99 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 226 91 3 0 0 Shift_L\n"
-                              "MouseMoveEvent 226 90 3 0 0 Shift_L\n"
-                              "KeyReleaseEvent 226 90 3 0 1 Control_L\n"
-                              "KeyReleaseEvent 226 90 1 0 1 Shift_L\n"
-                              "MouseMoveEvent 225 91 0 0 0 Shift_L\n"
-                              "KeyPressEvent 225 91 0 0 1 Alt_L\n"
-                              "CharEvent 225 91 0 0 1 Alt_L\n"
-                              "KeyPressEvent 225 91 4 0 1 Control_L\n"
-                              "CharEvent 225 91 4 0 1 Control_L\n"
-                              "MouseMoveEvent 225 91 6 0 0 Control_L\n"
-                              "MouseMoveEvent 224 91 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 79 6 0 0 Control_L\n"
-                              "LeftButtonPressEvent 219 79 6 0 0 Control_L\n"
-                              "TimerEvent 219 79 6 0 0 Control_L\n"
-                              "RenderEvent 219 79 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 80 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 85 6 0 0 Control_L\n"
-                              "TimerEvent 219 85 6 0 0 Control_L\n"
-                              "RenderEvent 219 85 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 86 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 90 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 92 6 0 0 Control_L\n"
-                              "TimerEvent 219 92 6 0 0 Control_L\n"
-                              "RenderEvent 219 92 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 93 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 96 6 0 0 Control_L\n"
-                              "TimerEvent 219 96 6 0 0 Control_L\n"
-                              "RenderEvent 219 96 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 96 6 0 0 Control_L\n"
-                              "TimerEvent 219 96 6 0 0 Control_L\n"
-                              "RenderEvent 219 96 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 97 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 97 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 98 6 0 0 Control_L\n"
-                              "TimerEvent 219 98 6 0 0 Control_L\n"
-                              "RenderEvent 219 98 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 99 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 100 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 101 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 102 6 0 0 Control_L\n"
-                              "TimerEvent 219 102 6 0 0 Control_L\n"
-                              "RenderEvent 219 102 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 103 6 0 0 Control_L\n"
-                              "MouseMoveEvent 219 103 6 0 0 Control_L\n"
-                              "TimerEvent 219 103 6 0 0 Control_L\n"
-                              "RenderEvent 219 103 6 0 0 Control_L\n"
-                              "LeftButtonReleaseEvent 219 103 6 0 0 Control_L\n"
-                              "TimerEvent 219 103 6 0 0 Control_L\n"
-                              "RenderEvent 219 103 6 0 0 Control_L\n"
-                              "MouseMoveEvent 221 102 6 0 0 Control_L\n"
-                              "MouseMoveEvent 237 97 6 0 0 Control_L\n"
-                              "KeyReleaseEvent 237 97 6 0 1 Alt_L\n"
-                              "KeyReleaseEvent 237 97 2 0 1 Control_L\n"
-                              "MouseMoveEvent 242 103 0 0 0 Control_L\n"
-                              "MouseMoveEvent 571 305 0 0 0 Control_L\n"
-                              "LeaveEvent 602 305 0 0 0 Control_L\n";
+static const char* eventLog = "# StreamVersion 1.2\n"
+                              "ExposeEvent 0 399 0 0 0 0 0\n"
+                              "RenderEvent 0 399 0 0 0 0 0\n"
+                              "KeyReleaseEvent 3288 -268 0 0 1 Return 0\n"
+                              "TimerEvent 3288 -268 0 0 1 Return 0\n"
+                              "RenderEvent 3288 -268 0 0 1 Return 0\n"
+                              "EnterEvent 363 29 0 0 0 Return 0\n"
+                              "MouseMoveEvent 363 29 0 0 0 Return 0\n"
+                              "MouseMoveEvent 351 43 0 0 0 Return 0\n"
+                              "MouseMoveEvent 444 93 0 0 0 Return 0\n"
+                              "MouseMoveEvent 502 119 0 0 0 Return 0\n"
+                              "MouseMoveEvent 560 139 0 0 0 Return 0\n"
+                              "LeaveEvent 602 147 0 0 0 Return 0\n"
+                              "KeyPressEvent 1457 323 0 0 1 Shift_L 0\n"
+                              "CharEvent 1457 323 0 0 1 Shift_L 0\n"
+                              "KeyReleaseEvent -463 350 1 0 1 Shift_L 0\n"
+                              "EnterEvent 419 92 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 419 97 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 420 102 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 390 375 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 388 387 0 0 0 Shift_L 0\n"
+                              "LeaveEvent 382 401 0 0 0 Shift_L 0\n"
+                              "EnterEvent 336 384 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 336 384 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 320 369 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 61 161 0 0 0 Shift_L 0\n"
+                              "LeftButtonPressEvent 61 161 0 0 0 Shift_L 0\n"
+                              "TimerEvent 61 161 0 0 0 Shift_L 0\n"
+                              "RenderEvent 61 161 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 60 160 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 159 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 157 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 155 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 153 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 151 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 151 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 151 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 149 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 147 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 146 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 145 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 143 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 141 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 141 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 141 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 136 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 127 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 124 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 120 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 116 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 113 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 113 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 113 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 106 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 104 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 100 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 99 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 96 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 95 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 95 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 95 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 92 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 91 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 89 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 88 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 87 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 86 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 86 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 86 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 85 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 83 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 82 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 79 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 75 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 73 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 73 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 73 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 70 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 68 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 67 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 67 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 67 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 66 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 66 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 66 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 66 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 65 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 65 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 65 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 64 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 62 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 61 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 59 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 59 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 59 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 58 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 58 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 57 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 55 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 53 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 52 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 52 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 52 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 51 0 0 0 Shift_L 0\n"
+                              "TimerEvent 59 51 0 0 0 Shift_L 0\n"
+                              "RenderEvent 59 51 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 50 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 59 49 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 60 48 0 0 0 Shift_L 0\n"
+                              "TimerEvent 60 48 0 0 0 Shift_L 0\n"
+                              "RenderEvent 60 48 0 0 0 Shift_L 0\n"
+                              "LeftButtonReleaseEvent 60 48 0 0 0 Shift_L 0\n"
+                              "TimerEvent 60 48 0 0 0 Shift_L 0\n"
+                              "RenderEvent 60 48 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 61 49 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 61 50 0 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 223 224 0 0 0 Shift_L 0\n"
+                              "KeyPressEvent 223 224 0 0 1 Alt_L 0\n"
+                              "CharEvent 223 224 0 0 1 Alt_L 0\n"
+                              "MouseMoveEvent 223 224 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 223 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 223 4 0 0 Alt_L 0\n"
+                              "LeftButtonPressEvent 222 223 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 223 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 223 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 221 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 219 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 217 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 215 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 214 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 213 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 213 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 213 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 211 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 210 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 209 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 209 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 209 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 206 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 205 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 203 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 201 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 199 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 197 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 197 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 197 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 196 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 195 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 195 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 195 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 195 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 195 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 195 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 194 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 192 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 191 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 190 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 189 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 189 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 189 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 188 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 188 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 188 4 0 0 Alt_L 0\n"
+                              "LeftButtonReleaseEvent 222 188 4 0 0 Alt_L 0\n"
+                              "TimerEvent 222 188 4 0 0 Alt_L 0\n"
+                              "RenderEvent 222 188 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 187 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 222 186 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 145 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 146 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 146 4 0 0 Alt_L 0\n"
+                              "LeftButtonPressEvent 218 146 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 146 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 146 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 145 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 145 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 143 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 141 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 141 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 141 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 140 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 140 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 140 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 139 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 138 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 138 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 138 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 136 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 135 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 133 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 131 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 131 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 131 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 128 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 126 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 124 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 122 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 120 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 117 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 117 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 117 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 116 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 114 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 114 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 114 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 113 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 111 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 110 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 109 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 109 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 109 4 0 0 Alt_L 0\n"
+                              "LeftButtonReleaseEvent 218 109 4 0 0 Alt_L 0\n"
+                              "TimerEvent 218 109 4 0 0 Alt_L 0\n"
+                              "RenderEvent 218 109 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 110 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 112 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 218 113 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 216 235 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 216 236 4 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 216 237 4 0 0 Alt_L 0\n"
+                              "KeyPressEvent 216 237 4 0 1 Shift_L 0\n"
+                              "CharEvent 216 237 4 0 1 Shift_L 0\n"
+                              "LeftButtonPressEvent 216 237 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 216 236 5 0 0 Shift_L 0\n"
+                              "TimerEvent 216 236 5 0 0 Shift_L 0\n"
+                              "RenderEvent 216 236 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 216 236 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 216 235 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 217 233 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 217 231 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 217 227 5 0 0 Shift_L 0\n"
+                              "TimerEvent 217 227 5 0 0 Shift_L 0\n"
+                              "RenderEvent 217 227 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 217 225 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 218 222 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 218 221 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 218 219 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 218 216 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 214 5 0 0 Shift_L 0\n"
+                              "TimerEvent 219 214 5 0 0 Shift_L 0\n"
+                              "RenderEvent 219 214 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 211 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 210 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 209 5 0 0 Shift_L 0\n"
+                              "TimerEvent 219 209 5 0 0 Shift_L 0\n"
+                              "RenderEvent 219 209 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 208 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 207 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 204 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 202 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 201 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 196 5 0 0 Shift_L 0\n"
+                              "TimerEvent 219 196 5 0 0 Shift_L 0\n"
+                              "RenderEvent 219 196 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 195 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 194 5 0 0 Shift_L 0\n"
+                              "TimerEvent 219 194 5 0 0 Shift_L 0\n"
+                              "RenderEvent 219 194 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 192 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 219 192 5 0 0 Shift_L 0\n"
+                              "TimerEvent 219 192 5 0 0 Shift_L 0\n"
+                              "RenderEvent 219 192 5 0 0 Shift_L 0\n"
+                              "LeftButtonReleaseEvent 219 192 5 0 0 Shift_L 0\n"
+                              "TimerEvent 219 192 5 0 0 Shift_L 0\n"
+                              "RenderEvent 219 192 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 222 192 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 226 192 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 369 151 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 371 151 5 0 0 Shift_L 0\n"
+                              "MouseMoveEvent 372 151 5 0 0 Shift_L 0\n"
+                              "KeyReleaseEvent 372 151 5 0 1 Shift_L 0\n"
+                              "KeyReleaseEvent 372 151 4 0 1 Alt_L 0\n"
+                              "MouseMoveEvent 372 152 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 372 152 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 566 380 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 570 387 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 572 391 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 573 396 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 573 399 0 0 0 Alt_L 0\n"
+                              "LeaveEvent 574 403 0 0 0 Alt_L 0\n"
+                              "ExitEvent 574 403 0 0 0 Alt_L 0\n"
+                              "EnterEvent 588 399 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 588 399 0 0 0 Alt_L 0\n"
+                              "MouseMoveEvent 598 382 0 0 0 Alt_L 0\n"
+                              "LeaveEvent 606 359 0 0 0 Alt_L 0\n";
 
 namespace
 {
@@ -409,9 +394,9 @@ int TestParallelCoordinatesSelection(int vtkNotUsed(argc), char* vtkNotUsed(argv
     return EXIT_FAILURE;
   }
 
-  if (ids->GetSize() != 2)
+  if (ids->GetSize() != 14)
   {
-    std::cerr << "Wrong number of id selection. Expected to have 2 ids but got " << ids->GetSize()
+    std::cerr << "Wrong number of id selection. Expected to have 14 ids but got " << ids->GetSize()
               << std::endl;
     return EXIT_FAILURE;
   }
diff --git a/Charts/Core/vtkChartParallelCoordinates.cxx b/Charts/Core/vtkChartParallelCoordinates.cxx
index 88c21480e87d2ef29f9edd8c68cf984833c5769f..a1798b6f501a3214837c3df6b0a7a3a5210f7167 100644
--- a/Charts/Core/vtkChartParallelCoordinates.cxx
+++ b/Charts/Core/vtkChartParallelCoordinates.cxx
@@ -54,6 +54,40 @@ struct vtkChartParallelCoordinates::Private final
     }
   }
 
+  /**
+   * Remove all selections.
+   */
+  void ClearSelectedAxisSelection(int i) { this->AxesSelections[i].clear(); }
+
+  /**
+   * Remove all selection with a negative value.
+   *
+   * A valid selection range is normalizd between 0 and 1.
+   */
+  void ClearInvalidRangeSelection(int i)
+  {
+    this->AxesSelections[i].erase(
+      std::remove(this->AxesSelections[i].begin(), this->AxesSelections[i].end(), -1),
+      this->AxesSelections[i].end());
+  }
+
+  /**
+   * Append new range selection in the selected axis.
+   */
+  void AppendNewSelectionInAxis(int i, float min, float max)
+  {
+    this->AxesSelections[i].push_back(min);
+    this->AxesSelections[i].push_back(max);
+  }
+
+  /**
+   * Sort selected axis selections.
+   */
+  void SortAxisSelection(int i)
+  {
+    std::sort(this->AxesSelections[i].begin(), this->AxesSelections[i].end());
+  }
+
   vtkSmartPointer<vtkPlotParallelCoordinates> Plot;
   vtkNew<vtkTransform2D> Transform;
   std::vector<vtkAxis*> Axes;
@@ -67,6 +101,7 @@ struct vtkChartParallelCoordinates::Private final
 
   int CurrentAxis = -1;
   int AxisResize = -1;
+  bool ShouldClearCurrentAxeSelection = true;
 
   bool InteractiveSelection = false;
 };
@@ -641,6 +676,14 @@ bool vtkChartParallelCoordinates::MouseButtonPressEvent(const vtkContextMouseEve
           axis->GetPoint1()[0] + 10 > mouse.GetScenePos()[0])
         {
           this->Storage->CurrentAxis = static_cast<int>(i);
+
+          if (this->GetSelectionMode() == vtkContextScene::SELECTION_DEFAULT &&
+            this->Storage->ShouldClearCurrentAxeSelection)
+          {
+            this->ResetAxeSelection(this->Storage->CurrentAxis);
+            this->Storage->ShouldClearCurrentAxeSelection = false;
+          }
+
           // This is a manual interactive selection
           this->Storage->InteractiveSelection = true;
 
@@ -727,11 +770,16 @@ bool vtkChartParallelCoordinates::MouseButtonReleaseEvent(const vtkContextMouseE
 
       // Update all range stored based on the new selection
       UpdateCurrentAxisSelection(this->Storage->CurrentAxis);
+
+      // To support multiple selection, we need to recalculate all the selection
+      this->ResetSelection();
+
       this->Storage->CurrentSelection[0] = 0;
       this->Storage->CurrentSelection[1] = 0;
 
       // This is a manual interactive selection
       this->Storage->InteractiveSelection = true;
+      this->Storage->ShouldClearCurrentAxeSelection = true;
 
       if (this->AnnotationLink)
       {
@@ -838,6 +886,16 @@ void vtkChartParallelCoordinates::UpdateCurrentAxisSelection(int axisId)
   float minCurrentSelection = std::min(currentSelection[0], currentSelection[1]);
   float maxCurrentSelection = std::max(currentSelection[0], currentSelection[1]);
 
+  if (this->GetSelectionMode() == vtkContextScene::SELECTION_DEFAULT)
+  {
+    // in this context, only single selection should be done, clear the previous one.
+    this->Storage->ClearSelectedAxisSelection(axisId);
+
+    this->Storage->ClearInvalidRangeSelection(axisId);
+    this->Storage->AppendNewSelectionInAxis(axisId, minCurrentSelection, maxCurrentSelection);
+    return;
+  }
+
   bool isANewRange = true;
   bool startAMerge = false;
 
@@ -950,21 +1008,12 @@ void vtkChartParallelCoordinates::UpdateCurrentAxisSelection(int axisId)
   }
 
   // Remove invalidated ranges
-  this->Storage->AxesSelections[axisId].erase(
-    std::remove(this->Storage->AxesSelections[axisId].begin(),
-      this->Storage->AxesSelections[axisId].end(), -1),
-    this->Storage->AxesSelections[axisId].end());
-
+  this->Storage->ClearInvalidRangeSelection(axisId);
   if (isANewRange)
   {
-    this->Storage->AxesSelections[axisId].push_back(minCurrentSelection);
-    this->Storage->AxesSelections[axisId].push_back(maxCurrentSelection);
+    this->Storage->AppendNewSelectionInAxis(axisId, minCurrentSelection, maxCurrentSelection);
   }
 
-  std::sort(
-    this->Storage->AxesSelections[axisId].begin(), this->Storage->AxesSelections[axisId].end());
-
-  // To support multiple selection, we need to recalculate all the selection
-  this->ResetSelection();
+  this->Storage->SortAxisSelection(axisId);
 }
 VTK_ABI_NAMESPACE_END
diff --git a/Documentation/release/dev/changes-selection-behavior-in-parallel-coordinates.md b/Documentation/release/dev/changes-selection-behavior-in-parallel-coordinates.md
new file mode 100644
index 0000000000000000000000000000000000000000..41acaf7772e25daf81392fb03a1e5c3838d3997b
--- /dev/null
+++ b/Documentation/release/dev/changes-selection-behavior-in-parallel-coordinates.md
@@ -0,0 +1,6 @@
+# Changes selection behavior in the Parallel Coordinate Chart
+
+In VTK 9.2.0, the management of multiple selections has been added
+which has complicated even by default how to make a simple selection
+in this chart. To simplify this, the multiple selection  is not
+supported anymore in SELECTION_DEFAULT.