/// <summary> /// Set all fields to default values. /// </summary> public void SetDefaults() { nameTb_.Text = null; activeCb_.Checked = true; updateRateCtrl_.Value = 1000; keepAliveRateCtrl_.Value = 0; keepAliveSpecifiedCb_.Checked = false; deadbandCtrl_.Value = 0; deadbandSpecifiedCb_.Checked = false; localeCtrl_.Locale = ""; localeSpecifiedCb_.Checked = false; if (mServer_ != null) { localeCtrl_.Locale = mServer_.Locale; localeSpecifiedCb_.Checked = mServer_.Locale != null; localeCtrl_.SetSupportedLocales(mServer_.SupportedLocales); } }
/// <summary> /// Prompts user to edit request option parameters in a modal dialog. /// </summary> private void ShowDialog(TsCDaServer server, TsCDaSubscription subscription) { if (server == null) { throw new ArgumentNullException("server"); } // get supported locales. localeCtrl_.SetSupportedLocales(server.SupportedLocales); // set locale. string locale = (subscription == null)?server.Locale:subscription.Locale; localeCtrl_.Locale = locale; localeSpecifiedCb_.Checked = locale != null; // get filters. int filters = (subscription == null)?server.Filters:subscription.Filters; itemNameCb_.Checked = ((filters & (int)TsCDaResultFilter.ItemName) != 0); itemPathCb_.Checked = ((filters & (int)TsCDaResultFilter.ItemPath) != 0); clientHandleCb_.Checked = ((filters & (int)TsCDaResultFilter.ClientHandle) != 0); itemTimeCb_.Checked = ((filters & (int)TsCDaResultFilter.ItemTime) != 0); errorTextCb_.Checked = ((filters & (int)TsCDaResultFilter.ErrorText) != 0); diagnosticInfoCb_.Checked = ((filters & (int)TsCDaResultFilter.DiagnosticInfo) != 0); // show dialog. while (ShowDialog() == DialogResult.OK) { // update locale. try { locale = null; if (localeSpecifiedCb_.Checked) { locale = localeCtrl_.Locale; } if (subscription == null) { server.SetLocale(locale); } else { TsCDaSubscriptionState state = new TsCDaSubscriptionState(); state.Locale = locale; subscription.ModifyState((int)TsCDaStateMask.Locale, state); } } catch (Exception e) { MessageBox.Show(e.Message); continue; } // update filters. filters = 0; filters |= (itemNameCb_.Checked)?(int)TsCDaResultFilter.ItemName:0; filters |= (itemPathCb_.Checked)?(int)TsCDaResultFilter.ItemPath:0; filters |= (clientHandleCb_.Checked)?(int)TsCDaResultFilter.ClientHandle:0; filters |= (itemTimeCb_.Checked)?(int)TsCDaResultFilter.ItemTime:0; filters |= (errorTextCb_.Checked)?(int)TsCDaResultFilter.ErrorText:0; filters |= (diagnosticInfoCb_.Checked)?(int)TsCDaResultFilter.DiagnosticInfo:0; try { if (subscription == null) { server.SetResultFilters(filters); } else { subscription.SetResultFilters(filters); } } catch (Exception e) { MessageBox.Show(e.Message); continue; } // break out of loop if no error. break; } }