private List <SC_MeasureDisplayPanel> mMeasures = null; //!< The @link DocSC_MDP measures@endlink in the container. /*************************************************************************//** * @} * @defgroup SC_NDCUnity Unity Functions * @ingroup DocSC_NDC * Functions called automatically by Unity. * @{ *****************************************************************************/ /** * @brief Initializes the SC_NoteDisplayContainer. */ private void Awake() { // Set up the list of measures. mMeasures = new List <SC_MeasureDisplayPanel>(); // Create the first measure. GameObject firstMeasureObj = Instantiate(Resources.Load <GameObject>(MEASURE_PANEL_PREFAB_PATH)); SC_MeasureDisplayPanel firstMeasure = firstMeasureObj.AddComponent <SC_MeasureDisplayPanel>(); mMeasures.Add(firstMeasure); mMeasures[mCurrentMeasure].transform.GetChild(0).GetChild(1).GetComponent <Text>().text = "Measure " + (mCurrentMeasure + 1).ToString(); mMeasures[mCurrentMeasure].transform.SetParent(transform); mMeasures[mCurrentMeasure].SetParentContainer(this); mMeasures[mCurrentMeasure].SetToggle(true); }
/** * @brief Handles when a @link DocSC_MDP measure@endlink is @link SC_MeasureDisplayPanel::OnShowToggle toggled@endlink. * @param[in] aMeasure The @link DocSC_MDP measure@endlink that was toggled. * This function sets only the toggled @link DocSC_MDP measure@endlink to be shown. */ public void HandleMeasureToggled(SC_MeasureDisplayPanel aMeasure) { // Set that only the toggled measure should be shown. foreach (SC_MeasureDisplayPanel measure in mMeasures) { if (aMeasure != measure) { measure.SetToggle(false); } else { measure.SetToggle(true); } } }
/** * @brief Clears all of the notes. */ public void ClearNotes() { while (mCurrentMeasure >= 0) { mMeasures[mCurrentMeasure].ClearMeasure(); mMeasures.RemoveAt(mCurrentMeasure); mCurrentMeasure--; } mCurrentMeasure = 0; mNumNotes = 0; GameObject firstMeasureObj = Instantiate(Resources.Load <GameObject>(MEASURE_PANEL_PREFAB_PATH)); SC_MeasureDisplayPanel firstMeasure = firstMeasureObj.AddComponent <SC_MeasureDisplayPanel>(); mMeasures.Add(firstMeasure); mMeasures[mCurrentMeasure].transform.GetChild(0).GetChild(1).GetComponent <Text>().text = "Measure " + (mCurrentMeasure + 1).ToString(); mMeasures[mCurrentMeasure].transform.SetParent(transform); mMeasures[mCurrentMeasure].SetParentContainer(this); mMeasures[mCurrentMeasure].SetToggle(true); }