@Override
		public void run(TaskMonitor monitor) {

			long start = System.nanoTime();

			int limit = columnDataSource.getCount();

			monitor.initialize(limit);
			monitor.setIndeterminate(false);
			monitor.setMessage("Loading column data...");

			for (int i = 0; i < limit; i++) {
				if (monitor.isCancelled()) {
					return;
				}

				T val = columnDataSource.getColumnValue(i);
				handleColumnDataValue(val);

				long elapsed = System.nanoTime() - start;

				monitor.setMessage(
					"Loading column data... (" + getElapsedTimeString(elapsed) + ")");
				monitor.incrementProgress(1);

			}
// 		Keep until 2019
//			Msg.info(this, "Load of " + limit + " rows from '" + columnDataSource.getColumnName() +
//				"' took " + getElapsedTimeString(System.nanoTime() - start));

		}
Indicates the constraint has changed, and the user interface needs to be updated to reflect
the new state.
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/constrainteditor/DataLoadingConstraintEditor.java