Esempio n. 1
0
        /// <summary>
        /// See base docs.
        /// </summary>
        protected override void CreateBindings()
        {
            base.CreateBindings();

            AddControlBinder(new MasterListToListBinder <Configuration, MergedFeed>(SettingsView.Configuration, listMergedFeeds, r => r.MergedFeeds)
            {
                FetchColumns = (mergedFeed, e) => {
                    e.Checked = mergedFeed.Enabled;
                    e.ColumnTexts.Add(mergedFeed.Name);
                    e.ColumnTexts.Add(mergedFeed.ReceiverIds.Count.ToString());
                    e.ColumnTexts.Add((((double)mergedFeed.IcaoTimeout) / 1000.0).ToString("N2"));
                    e.ColumnTexts.Add(mergedFeed.IgnoreAircraftWithNoPosition ? Strings.Yes : Strings.No);
                },
                GetSortValue = (mergedFeed, header, defaultValue) => {
                    IComparable result = defaultValue;
                    if (header == columnHeaderReceivers)
                    {
                        result = mergedFeed.ReceiverIds.Count;
                    }
                    else if (header == columnHeaderIcaoTimeout)
                    {
                        result = mergedFeed.IcaoTimeout;
                    }

                    return(result);
                },
                AddHandler            = () => SettingsView.CreateMergedFeed(),
                DeleteHandler         = (r) => SettingsView.RemoveMergedFeeds(r),
                EditHandler           = (mergedFeed) => SettingsView.DisplayPageForPageObject(mergedFeed),
                CheckedChangedHandler = (mergedFeed, isChecked) => mergedFeed.Enabled = isChecked,
            });
        }
Esempio n. 2
0
        /// <summary>
        /// See base docs.
        /// </summary>
        protected override void CreateBindings()
        {
            base.CreateBindings();

            var rebroadcastFormatManager = Factory.ResolveSingleton<IRebroadcastFormatManager>();

            AddControlBinder(new MasterListToListBinder<Configuration, RebroadcastSettings>(SettingsView.Configuration, listRebroadcastServers, r => r.RebroadcastSettings) {
                FetchColumns = (rebroadcastServer, e) => {
                    var receiver = SettingsView.CombinedFeed.FirstOrDefault(r => r.UniqueId == rebroadcastServer.ReceiverId);
                    var portDescription = !rebroadcastServer.IsTransmitter ? String.Format("::{0}", rebroadcastServer.Port) : String.Format("{0}:{1}", rebroadcastServer.TransmitAddress, rebroadcastServer.Port);

                    e.Checked = rebroadcastServer.Enabled;
                    e.ColumnTexts.Add(rebroadcastServer.Name);
                    e.ColumnTexts.Add(receiver == null ? "" : receiver.Name ?? "");
                    e.ColumnTexts.Add(rebroadcastFormatManager.ShortName(rebroadcastServer.Format));
                    e.ColumnTexts.Add(portDescription);
                    e.ColumnTexts.Add(Describe.DefaultAccess(rebroadcastServer.Access.DefaultAccess));
                },
                GetSortValue = (rebroadcastServer, header, defaultValue) => {
                    IComparable result = defaultValue;
                    if(header == columnHeaderUNC) {
                        if(!rebroadcastServer.IsTransmitter) result = String.Format("_{0:00000}", rebroadcastServer.Port);
                        else                                 result = String.Format("{0}:{1:00000}", rebroadcastServer.TransmitAddress, rebroadcastServer.Port);
                    }

                    return result;
                },
                AddHandler = () => SettingsView.CreateRebroadcastServer(),
                AutoDeleteEnabled = true,
                EditHandler = (rebroadcastServer) => SettingsView.DisplayPageForPageObject(rebroadcastServer),
                CheckedChangedHandler = (rebroadcastServer, isChecked) => rebroadcastServer.Enabled = isChecked,
            });
        }
        /// <summary>
        /// See base docs.
        /// </summary>
        protected override void CreateBindings()
        {
            base.CreateBindings();

            AddControlBinder(new MasterListToListBinder <Configuration, ReceiverLocation>(SettingsView.Configuration, listReceiverLocations, r => r.ReceiverLocations)
            {
                FetchColumns = (receiverLocation, e) => {
                    e.ColumnTexts.Add(receiverLocation.Name);
                    e.ColumnTexts.Add(receiverLocation.Latitude.ToString("N6"));
                    e.ColumnTexts.Add(receiverLocation.Longitude.ToString("N6"));
                },
                GetSortValue = (receiverLocation, header, defaultValue) => {
                    IComparable result = defaultValue;
                    if (header == columnHeaderLatitude)
                    {
                        result = receiverLocation.Latitude;
                    }
                    else if (header == columnHeaderLongitude)
                    {
                        result = receiverLocation.Longitude;
                    }

                    return(result);
                },
                AddHandler        = () => SettingsView.CreateReceiverLocation(),
                AutoDeleteEnabled = true,
                EditHandler       = (receiverLocation) => SettingsView.DisplayPageForPageObject(receiverLocation),
            });
        }
Esempio n. 4
0
        /// <summary>
        /// See base docs.
        /// </summary>
        protected override void CreateBindings()
        {
            base.CreateBindings();

            AddControlBinder(new LabelStringBinder <SettingsView>(SettingsView, labelUserManager, r => r.UserManager, (r, v) => r.UserManager = v));
            AddControlBinder(new MasterListToListBinder <SettingsView, IUser>(SettingsView, listUsers, r => r.Users)
            {
                FetchColumns = (user, e) => {
                    e.Checked = user.Enabled;
                    e.ColumnTexts.Add(user.LoginName ?? "");
                    e.ColumnTexts.Add(user.Name ?? "");
                },
                AddHandler            = () => SettingsView.CreateUser(),
                DeleteHandler         = (r) => SettingsView.RemoveUsers(r),
                EditHandler           = (user) => SettingsView.DisplayPageForPageObject(user),
                CheckedChangedHandler = (user, isChecked) => user.Enabled = isChecked,
            });
        }
Esempio n. 5
0
        /// <summary>
        /// See base docs.
        /// </summary>
        protected override void CreateBindings()
        {
            base.CreateBindings();

            var combinedFeeds         = SettingsView.CombinedFeed;
            var receiverFormatManager = Factory.Singleton.Resolve <IReceiverFormatManager>().Singleton;
            var settings = SettingsView.Configuration.GoogleMapSettings;

            AddControlBinder(new ComboBoxBinder <GoogleMapSettings, CombinedFeed, int>(settings, comboBoxWebSiteReceiverId, combinedFeeds, r => r.WebSiteReceiverId, (r, v) => r.WebSiteReceiverId = v)
            {
                GetListItemDescription = r => r.Name, GetListItemValue = r => r.UniqueId, SortList = true,
            });
            AddControlBinder(new ComboBoxBinder <GoogleMapSettings, CombinedFeed, int>(settings, comboBoxClosestAircraftReceiverId, combinedFeeds, r => r.ClosestAircraftReceiverId, (r, v) => r.ClosestAircraftReceiverId = v)
            {
                GetListItemDescription = r => r.Name, GetListItemValue = r => r.UniqueId, SortList = true,
            });
            AddControlBinder(new ComboBoxBinder <GoogleMapSettings, CombinedFeed, int>(settings, comboBoxFsxReceiverId, combinedFeeds, r => r.FlightSimulatorXReceiverId, (r, v) => r.FlightSimulatorXReceiverId = v)
            {
                GetListItemDescription = r => r.Name, GetListItemValue = r => r.UniqueId, SortList = true,
            });

            AddControlBinder(new MasterListToListBinder <Configuration, Receiver>(SettingsView.Configuration, listReceivers, r => r.Receivers)
            {
                FetchColumns = (receiver, e) => {
                    var location = SettingsView == null ? null : SettingsView.Configuration.ReceiverLocations.FirstOrDefault(r => r.UniqueId == receiver.ReceiverLocationId);

                    e.Checked = receiver.Enabled;
                    e.ColumnTexts.Add(receiver.Name);
                    e.ColumnTexts.Add(receiverFormatManager.ShortName(receiver.DataSource));
                    e.ColumnTexts.Add(Describe.ReceiverUsage(receiver.ReceiverUsage));
                    e.ColumnTexts.Add(location == null ? "" : location.Name);
                    e.ColumnTexts.Add(Describe.ConnectionType(receiver.ConnectionType));
                    e.ColumnTexts.Add(DescribeConnectionParameters(receiver));
                },
                AddHandler            = () => SettingsView.CreateReceiver(),
                DeleteHandler         = (r) => SettingsView.RemoveReceivers(r),
                EditHandler           = (receiver) => SettingsView.DisplayPageForPageObject(receiver),
                CheckedChangedHandler = (receiver, isChecked) => receiver.Enabled = isChecked,
            });
        }