Пример #1
0
 internal LayerState(StateModeEnum mode, LayersImpl layers, LayerStates baseStates)
 {
     this.mode               = mode;
     this.layers             = layers;
     this.layers.parentState = this;
     Attach(baseStates);
 }
Пример #2
0
 public LayerState(StateModeEnum mode, params Layer[] layers)
     : this(mode, new LayersImpl(), null)
 {
     foreach (var layer in layers)
     {
         this.layers.Add(layer);
     }
 }
Пример #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="_form"></param>
        /// <param name="_options"></param>
        /// <param name="fromForm">Call from event, change of form check box may result recourcing</param>
        public AuthState(ProviderState providerState, IntentoMTFormOptions _options, bool fromForm = false) : base(providerState, _options)
        {
            this.providerState = providerState;
            formMT             = providerState.form.formMT;
            options            = _options;

            // set mode of checkBoxUseOwnCred
            if (!providerState.billable || !providerState.stock_model)  // Auth Required
            {
                formMT.groupBoxBillingAccount.Enabled = true;
                //if (!fromForm)
                //{
                //    Internal_Change_checkBoxUseOwnCred_Checked(formMT, true);
                //    formMT.checkBoxUseOwnCred.Enabled = false;
                //}
                mode = StateModeEnum.required;
            }
            else if (!providerState.own_auth) // Auth Prohibited
            {
                formMT.groupBoxBillingAccount.Enabled = false;
                //if (!fromForm)
                //    Internal_Change_checkBoxUseOwnCred_Checked(formMT, false);
                mode = StateModeEnum.prohibited;
            }
            else
            {   // Auth optional
                formMT.groupBoxBillingAccount.Enabled = true;
                //if (!fromForm)
                //    Internal_Change_checkBoxUseOwnCred_Checked(formMT, options.UseCustomAuth);
                mode = StateModeEnum.optional;
            }

            if (!providerState.IsOK)
            {
                // smart routing
                return;
            }

            // Get credentials from Options
            providerDataAuthDict = new Dictionary <string, string>();
            Dictionary <string, string> auth = options.authDict();

            if (providerState.providerAuthList != null)
            {
                foreach (string key in providerState.providerAuthList)
                {
                    if (auth != null && auth.ContainsKey(key))
                    {
                        providerDataAuthDict[key] = auth[key];
                    }
                    else
                    {
                        providerDataAuthDict[key] = "";
                    }
                }
            }
        }
Пример #4
0
        private void FillGlossaryControls()
        {
            if (!authState.IsOK)
            {
                return;
            }


            if (!providerState.custom_glossary)
            {   // glossaries are not supported by provider
                mode = StateModeEnum.prohibited;
                formMT.groupBoxGlossary.Enabled = false;
                Clear();
                return;
            }

            mode = StateModeEnum.optional;
            formMT.groupBoxGlossary.Enabled = true;

            ReadGlossaries();

            if (isList)
            {
                Clear();
                // Fill Glossary and choose SelectedIndex
                formMT.comboBoxGlossaries.Items.Insert(0, "");
                foreach (string x in glossaries.Select(x => (string)x.Key).OrderBy(x => x))
                {
                    int n = formMT.comboBoxGlossaries.Items.Add(x);
                    if ((string)glossaries[x].id == options.Glossary)
                    {
                        formMT.comboBoxGlossaries.SelectedIndex = n;
                    }
                }
                formMT.comboBoxGlossaries.Visible = true;
            }
            else
            {
                Clear(clearTextBox: false);
                formMT.textBoxGlossary.Text    = options.Glossary;
                formMT.textBoxGlossary.Visible = true;
            }
        }
Пример #5
0
 public LayerState(
     StateModeEnum mode
     ) : this(mode, new LayersImpl(), null)
 {
 }
Пример #6
0
        private void FillModelControls()
        {
            // Fill combo or text box depending on provider features
            if (!authState.IsOK)
            {
                return;
            }

            if (authState.providerState.smartRoutingState.SmartRouting)
            {
                modelMode = StateModeEnum.prohibited;
            }
            else if (!authState.providerState.stock_model && authState.providerState.custom_model)
            {
                modelMode = StateModeEnum.required;
            }
            else if (!authState.providerState.custom_model)
            {
                modelMode = StateModeEnum.prohibited;
            }
            else
            {
                modelMode = StateModeEnum.optional;
            }

            if (modelMode == StateModeEnum.prohibited)
            {
                Model_Group_Enabled(formMT, false);
                Clear();
                return;
            }

            ReadModels();

            Model_Group_Enabled(formMT, true);

            formMT.checkBoxUseCustomModel.Enabled = true;

            if (isList)
            {
                Clear();
                if (modelMode == StateModeEnum.required)
                {
                    Internal_Change_checkBoxUseCustomModel_Checked(formMT, true);
                    formMT.checkBoxUseCustomModel.Enabled = false;
                }
                else
                {
                    Internal_Change_checkBoxUseCustomModel_Checked(formMT, options.UseCustomModel);
                }
                formMT.comboBoxModels.Visible = UseModel;
                formMT.textBoxModel.Visible   = false;

                if (models.Count > 1 || modelMode == StateModeEnum.optional)
                {
                    formMT.comboBoxModels.Items.Add("");
                }

                // Fill comboBoxModels and choose SelectedIndex
                foreach (string x in models.Select(x => (string)x.Key).OrderBy(x => x))
                {
                    int n = formMT.comboBoxModels.Items.Add(x);
                    if (models[x].id == options.CustomModel)
                    {
                        formMT.comboBoxModels.SelectedIndex = n;
                    }
                }

                if (formMT.comboBoxModels.Items.Count == 1)
                {
                    formMT.comboBoxModels.SelectedIndex = 0;
                }
            }
            else
            {   // Text box to enter model
                formMT.textBoxModel.Visible   = UseModel;
                formMT.comboBoxModels.Visible = false;

                if (modelMode == StateModeEnum.optional)
                {
                    formMT.checkBoxUseCustomModel.Enabled = true;
                    Internal_Change_checkBoxUseCustomModel_Checked(formMT, options.UseCustomModel);
                }
                else
                {
                    formMT.checkBoxUseCustomModel.Enabled = false;
                    Internal_Change_checkBoxUseCustomModel_Checked(formMT, true);
                }
                if (options.UseCustomModel)
                {
                    formMT.textBoxModel.Text = options.CustomModel;
                }
                else
                {
                    Clear(clearTextBox: false);
                }
            }
        }