Exemple #1
0
        public static XDocument GenerateStateXml(ICompleteState state)
        {
            var xmlDocument = new XDocument();
            var completeStateElement = new XElement("CompleteState");

            var soundStatesElement = new XElement("SoundStates");
            foreach(var soundState in state.SoundStates)
            { soundStatesElement.Add(soundState.GenerateXml()); }
            completeStateElement.Add(soundStatesElement);

            var quickSoundStatesElement = new XElement("QuickSoundStates");
            foreach (var quickSoundState in state.QuickSoundStates)
            { quickSoundStatesElement.Add(quickSoundState.GenerateXml()); }
            completeStateElement.Add(quickSoundStatesElement);

            xmlDocument.Add(completeStateElement);
            return xmlDocument;
        }
Exemple #2
0
        public void PopulateFromState(ICompleteState completeState)
        {
            if (tablePanel.Controls.Count > 0)
            { ClearUIControls(); }

            foreach(ISoundState state in completeState.SoundStates)
            {
                var control = PlayerControlFactory.GetSoundControl(state);
                tablePanel.Controls.Add(control as Control, control.ColumnPosition, control.RowPosition);
            }

            for(int column = 0; column < MaxPlayerColumns; column++)
            {
                for (int row = 0; row < MaxPlayerRows; row++)
                {
                    if(tablePanel.GetControlFromPosition(column, row) == null)
                    {
                        var placeholder = new PlaceholderControl();
                        placeholder.ContextMenuStrip = playerContextMenuStrip;
                        tablePanel.Controls.Add(placeholder, column, row);
                    }
                }
            }
        }