예제 #1
0
        internal CastSizeRowValues GetCastSizeRowValues(CastSizeOption row)
        {
            //if (Project.CalculatedCastSizeRowValues == null)
            //	Project.CalculateCastSizeRowValues();

            switch (row)
            {
            case CastSizeOption.Small:
            case CastSizeOption.Recommended:
            case CastSizeOption.Large:
                var baseRowValues = m_baseRowValues[row];
                return(new CastSizeRowValues(Math.Max(MaleNarrators + 1, baseRowValues.Male + Math.Min(MaleNarrators, 1)), baseRowValues.Female + FemaleNarrators, baseRowValues.Child));

            case CastSizeOption.MatchVoiceActorList:
                if (m_actualActorCounts == null)
                {
                    m_actualActorCounts = new CastSizeRowValues(Project.VoiceActorList);
                }

                return(m_actualActorCounts);

            case CastSizeOption.Custom:
                return(m_updatedCustomActorCounts);
            }

            throw new InvalidEnumArgumentException(@"row", (int)row, typeof(CastSizeOption));
        }
        public void SetRowValues(CastSizeOption row, CastSizeRowValues values)
        {
            if (row == CastSizeOption.NotSet)
            {
                return;
            }

            var rowIndex = (int)row;

            SetControlValue(m_tableLayout.GetControlFromPosition(2, rowIndex), values.Male);
            SetControlValue(m_tableLayout.GetControlFromPosition(3, rowIndex), values.Female);
            SetControlValue(m_tableLayout.GetControlFromPosition(4, rowIndex), values.Child);
            SetControlValue(m_tableLayout.GetControlFromPosition(5, rowIndex), values.Total);
        }
        public void SetCastSizeOptionValues(CastSizePlanningViewModel model)
        {
            SetRowValues(CastSizeOption.Small, model.GetCastSizeRowValues(CastSizeOption.Small));
            SetRowValues(CastSizeOption.Recommended, model.GetCastSizeRowValues(CastSizeOption.Recommended));
            SetRowValues(CastSizeOption.Large, model.GetCastSizeRowValues(CastSizeOption.Large));
            SetRowValues(CastSizeOption.Custom, model.GetCastSizeRowValues(CastSizeOption.Custom));
            SetRowValues(CastSizeOption.MatchVoiceActorList, model.GetCastSizeRowValues(CastSizeOption.MatchVoiceActorList));

            // disable 'Match Voice Actor List' if there are no voice actors
            m_rbMatchVoiceActorList.Enabled = model.HasVoiceActors;
            if (m_rbMatchVoiceActorList.Checked && !m_rbMatchVoiceActorList.Enabled)
            {
                SelectedCastSizeRow = CastSizeOption.Recommended;
            }
        }
예제 #4
0
 public CastSizeOptionChangedEventArgs(CastSizeOption row)
 {
     Row = row;
 }
예제 #5
0
 public CastSizeValueChangedEventArgs(CastSizeOption row, CastSizeRowValues values, bool keepSelection)
 {
     Row           = row;
     RowValues     = new CastSizeRowValues(values);
     KeepSelection = keepSelection;
 }