ITracker ReadonlyTracker(ITracker tracker) { if (tracker == null) return null; if (m_Tracker != null && m_Tracker.EditMode) return m_Tracker;//dont overwrite an existing edit-mode tracker if (m_Tracker != null)//cancel any exising readonly-tracker ClearTracker(); Status = "Inspecting " + tracker.GetType().Name; m_Tracker = tracker;//post the new tracker m_Tracker.Track(this); return m_Tracker;//return it }
ITracker EditTracker(ITracker tracker) { if (tracker == null) return null; if (m_Tracker != null && m_Tracker.EditMode) ClearTracker(); Status = "Editing " + tracker.GetType().Name; m_Tracker = tracker;//post the new tracker m_Tracker.Track(this); okButton.Click += m_Tracker.OnBuild; //cancelButton.Click += m_Tracker.OnCancel; previewButton.Click += m_Tracker.OnPreview; return m_Tracker;//return it }