Beispiel #1
0
        void OnSysProxyChangeHandler(object sender, EventArgs args)
        {
            basicSettings = setting.GetBasicSetting();
            oldSetting    = VgcApis.Libs.Utils.SerializeObject(basicSettings);

            VgcApis.Libs.UI.RunInUiThread(
                chkBasicAutoUpdateSysProxy,
                () =>
            {
                InitControls();
            });
        }
Beispiel #2
0
        private static Model.Data.PacUrlParams GenReqParamFromUrl(
            string reqUrl,
            Model.Data.BasicSettings bs)
        {
            // e.g. http://localhost:3000/pac/?&port=5678&ip=1.2.3.4&proto=socks&type=whitelist&key=rnd
            var queryParams = Misc.Utils.GetQureryParamsFrom(reqUrl);
            var defValues   = new Model.Data.QueryParams(bs);

            queryParams.ReplaceNullValueWith(defValues);
            var pacParams = queryParams.ToPacUrlParams();

            return(pacParams);
        }
Beispiel #3
0
        /// <summary>
        /// on error return default setting
        /// </summary>
        /// <returns></returns>
        public Model.Data.BasicSettings GetBasicSetting()
        {
            var empty = new Model.Data.BasicSettings();

            try
            {
                var result = VgcApis.Libs.Utils
                             .DeserializeObject <Model.Data.BasicSettings>(
                    userSettings.tabBasicSetting);
                if (result != null)
                {
                    return(result);
                }
            }
            catch { }
            return(empty);
        }
Beispiel #4
0
        public TabBasicSetting(
            Services.PsSettings setting,
            Services.ServerTracker servTracker,

            ComboBox cboxBasicPacProtocol,
            ComboBox cboxBasicSysProxyMode,
            TextBox tboxBasicProxyPort,
            TextBox tboxBaiscPacPort,
            ComboBox cboxBasicPacMode,
            TextBox tboxBasicCustomPacPath,
            CheckBox chkBasicAutoUpdateSysProxy,
            CheckBox chkBasicPacAlwaysOn,
            CheckBox chkBasicUseCustomPac,
            Button btnBasicBrowseCustomPac,

            CheckBox chkBaiscUseHotkey,
            CheckBox chkBaiscUseAlt,
            CheckBox chkBaiscUseShift,
            TextBox tboxBasicHotkeyStr)
        {
            this.setting     = setting;
            this.servTracker = servTracker;

            basicSettings = setting.GetBasicSetting();
            oldSetting    = SerializeObject(basicSettings);

            this.cboxBasicPacProtocol       = cboxBasicPacProtocol;
            this.cboxBasicSysProxyMode      = cboxBasicSysProxyMode;
            this.tboxBasicProxyPort         = tboxBasicProxyPort;
            this.tboxBaiscPacPort           = tboxBaiscPacPort;
            this.cboxBasicPacMode           = cboxBasicPacMode;
            this.tboxBasicCustomPacPath     = tboxBasicCustomPacPath;
            this.chkBasicAutoUpdateSysProxy = chkBasicAutoUpdateSysProxy;
            this.chkBasicPacAlwaysOn        = chkBasicPacAlwaysOn;
            this.chkBasicUseCustomPac       = chkBasicUseCustomPac;
            this.chkBaiscUseHotkey          = chkBaiscUseHotkey;
            this.chkBaiscUseAlt             = chkBaiscUseAlt;
            this.chkBaiscUseShift           = chkBaiscUseShift;
            this.tboxBasicHotkeyStr         = tboxBasicHotkeyStr;

            InitControls();

            BindEvents(btnBasicBrowseCustomPac);

            servTracker.OnSysProxyChanged += OnSysProxyChangeHandler;
        }
Beispiel #5
0
        /// <summary>
        /// on error return default setting
        /// </summary>
        /// <returns></returns>
        public Model.Data.BasicSettings GetBasicSetting()
        {
            var empty = new Model.Data.BasicSettings();

            try
            {
                var result = VgcApis.Libs.Utils
                             .DeserializeObject <Model.Data.BasicSettings>(
                    userSettings.tabBasicSetting);
                if (result != null)
                {
#if DISABLE_PAC_AUTO_MODE
                    result.isAutoUpdateSysProxy = false;
#endif
                    return(result);
                }
            }
            catch { }
            return(empty);
        }
Beispiel #6
0
        public TabBasicSetting(
            VgcApis.Models.IUtils vgcUtils,
            Services.PsSettings setting,
            Services.ServerTracker servTracker,

            ComboBox cboxBasicPacProtocol,
            ComboBox cboxBasicSysProxyMode,
            TextBox tboxBasicProxyPort,
            TextBox tboxBaiscPacPort,
            ComboBox cboxBasicPacMode,
            TextBox tboxBasicCustomPacPath,
            CheckBox chkBasicAutoUpdateSysProxy,
            CheckBox chkBasicPacAlwaysOn,
            CheckBox chkBasicUseCustomPac,
            Button btnBasicBrowseCustomPac)
        {
            this.vgcUtils    = vgcUtils;
            this.setting     = setting;
            this.servTracker = servTracker;

            basicSettings = setting.GetBasicSetting();
            oldSetting    = vgcUtils.SerializeObject(basicSettings);

            BindControls(
                cboxBasicPacProtocol,
                cboxBasicSysProxyMode,
                tboxBasicProxyPort,
                tboxBaiscPacPort,
                cboxBasicPacMode,
                tboxBasicCustomPacPath,
                chkBasicAutoUpdateSysProxy,
                chkBasicPacAlwaysOn,
                chkBasicUseCustomPac);

            InitControls();

            BindEvents(btnBasicBrowseCustomPac);

            servTracker.OnSysProxyChanged += OnSysProxyChangeHandler;
        }
Beispiel #7
0
 public void SaveBasicSetting(Model.Data.BasicSettings basicSetting)
 {
     userSettings.tabBasicSetting = VgcApis.Libs.Utils.SerializeObject(basicSetting);
     SaveUserSettings();
 }