public StructuredText Serialize(object obj) {
            PipeTerminalParameter tp = obj as PipeTerminalParameter;
            Debug.Assert(tp != null);

            StructuredText node = new StructuredText(ConcreteType.FullName);

            if (tp.ExeFilePath != null)
                node.Set("exeFilePath", tp.ExeFilePath);

            if (!String.IsNullOrEmpty(tp.CommandLineOptions))
                node.Set("commandLineOptions", tp.CommandLineOptions);

            if (tp.EnvironmentVariables != null && tp.EnvironmentVariables.Length > 0) {
                foreach (PipeTerminalParameter.EnvironmentVariable e in tp.EnvironmentVariables) {
                    StructuredText envNode = new StructuredText("environmentVariable");
                    envNode.Set("name", e.Name);
                    envNode.Set("value", e.Value);
                    node.AddChild(envNode);
                }
            }

            if (tp.InputPipePath != null)
                node.Set("inputPipePath", tp.InputPipePath);

            if (tp.OutputPipePath != null)
                node.Set("outputPipePath", tp.OutputPipePath);

            if (tp.TerminalType != null)
                node.Set("terminal-type", tp.TerminalType);

            if (tp.AutoExecMacroPath != null)
                node.Set("autoexec-macro", tp.AutoExecMacroPath);

            return node;
        }
 public void Serialize(LocalShellParameter tp, StructuredText node)
 {
     base.Serialize(tp, node);
     if (CygwinUtil.DefaultHome != tp.Home)
         node.Set("home", tp.Home);
     if (CygwinUtil.DefaultShell != tp.ShellName)
         node.Set("shellName", tp.ShellName);
     if (CygwinUtil.DefaultCygwinDir != tp.CygwinDir)
         node.Set("cygwin-directory", tp.CygwinDir);
 }
        public StructuredText Serialize(object obj) {
            StructuredText storage = new StructuredText(this.ConcreteType.FullName);
            TerminalSettings ts = (TerminalSettings)obj;

            storage.Set("encoding", ts.Encoding.ToString());
            if (ts.TerminalType != TerminalType.XTerm)
                storage.Set("terminal-type", ts.TerminalType.ToString());
            if (ts.LocalEcho)
                storage.Set("localecho", "true");
            if (ts.LineFeedRule != LineFeedRule.Normal)
                storage.Set("linefeedrule", ts.LineFeedRule.ToString());
            if (ts.TransmitNL != NewLine.CR)
                storage.Set("transmit-nl", ts.TransmitNL.ToString());
            if (ts.EnabledCharTriggerIntelliSense)
                storage.Set("char-trigger-intellisense", "true");
            if (!ts.ShellScheme.IsGeneric)
                storage.Set("shellscheme", ts.ShellScheme.Name);
            storage.Set("caption", ts.Caption);
#if !UNITTEST
            //現在テストではRenderProfileは対象外
            if (!ts.UsingDefaultRenderProfile)
                storage.AddChild(_serializeService.Serialize(ts.RenderProfile));
#endif
            //アイコンはシリアライズしない
            return storage;
        }
 public StructuredText Serialize(object obj)
 {
     StructuredText storage = new StructuredText(typeof(RenderProfile).FullName);
     RenderProfile prof = (RenderProfile)obj;
     storage.Set("font-name", prof.FontName);
     storage.Set("cjk-font-name", prof.CJKFontName);
     storage.Set("font-size", prof.FontSize.ToString());
     storage.Set("line-spacing", prof.LineSpacing.ToString());
     if (prof.UseClearType)
         storage.Set("clear-type", "true");
     if (!prof.EnableBoldStyle)
         storage.Set("enable-bold-style", "false");
     if (prof.ForceBoldStyle)
         storage.Set("force-bold-style", "true");
     storage.Set("text-color", prof.ForeColor.Name);
     storage.Set("back-color", prof.BackColor.Name);
     if (prof.BackgroundImageFileName.Length > 0) {
         storage.Set("back-image", prof.BackgroundImageFileName);
         storage.Set("back-style", prof.ImageStyle.ToString());
     }
     if (!prof.ESColorSet.IsDefault)
         storage.Set("escape-sequence-color", prof.ESColorSet.Format());
     storage.Set("darken-escolor-for-background", prof.DarkenEsColorForBackground.ToString());
     return storage;
 }
Example #5
0
        public void SaveToXML(string filename) {
            ISerializeService ss = TerminalSessionsPlugin.Instance.SerializeService;
            StructuredText settings_text = ss.Serialize(_settings);
            StructuredText parameter_text = ss.Serialize(_param);
            //新形式で
            StructuredText root = new StructuredText("poderosa-shortcut");
            root.Set("version", "4.0");
            root.AddChild(settings_text);
            root.AddChild(parameter_text);

            XmlWriter wr = CreateDefaultWriter(filename);
            new XmlStructuredTextWriter(wr).Write(root);
            wr.WriteEndDocument();
            wr.Close();

        }
Example #6
0
        public StructuredText Serialize(object obj) {
            SerialTerminalSettings ts = obj as SerialTerminalSettings;
            Debug.Assert(ts != null);

            StructuredText node = new StructuredText(this.ConcreteType.FullName);
            node.AddChild(SerialPortPlugin.Instance.SerializeService.Serialize(typeof(TerminalSettings), ts));

            node.Set("baud-rate", ts.BaudRate.ToString());
            if (ts.ByteSize != 8)
                node.Set("byte-size", ts.ByteSize.ToString());
            if (ts.Parity != Parity.NOPARITY)
                node.Set("parity", ts.Parity.ToString());
            if (ts.StopBits != StopBits.ONESTOPBIT)
                node.Set("stop-bits", ts.StopBits.ToString());
            if (ts.FlowControl != FlowControl.None)
                node.Set("flow-control", ts.FlowControl.ToString());
            if (ts.TransmitDelayPerChar != 0)
                node.Set("delay-per-char", ts.TransmitDelayPerChar.ToString());
            if (ts.TransmitDelayPerLine != 0)
                node.Set("delay-per-line", ts.TransmitDelayPerLine.ToString());

            return node;
        }
Example #7
0
        public StructuredText Serialize(object obj) {
            SerialTerminalParam tp = obj as SerialTerminalParam;
            Debug.Assert(tp != null);

            StructuredText node = new StructuredText(this.ConcreteType.FullName);
            node.Set("PortName", tp.PortName);
            if (tp.TerminalType != "vt100")
                node.Set("TerminalType", tp.TerminalType);
            if (tp.AutoExecMacroPath != null)
                node.Set("autoexec-macro", tp.AutoExecMacroPath);
            return node;
        }
 public void Serialize(TerminalParameter tp, StructuredText node)
 {
     if (tp.TerminalType != TerminalParameter.DEFAULT_TERMINAL_TYPE)
         node.Set("terminal-type", tp.TerminalType);
     if (tp.AutoExecMacroPath != null)
         node.Set("autoexec-macro", tp.AutoExecMacroPath);
 }
 public override StructuredText Serialize(object obj)
 {
     StructuredText node = new StructuredText(this.ConcreteType.FullName);
     base.Serialize((TCPParameter)obj, node);
     node.Set("telnetNewLine", ((TelnetParameter)obj).TelnetNewLine.ToString());
     return node;
 }
 public void Serialize(TCPParameter tp, StructuredText node)
 {
     base.Serialize(tp, node);
     node.Set("destination", tp.Destination);
     if (tp.Port != _defaultPort)
         node.Set("port", tp.Port.ToString());
 }
        public void Serialize(SSHLoginParameter tp, StructuredText node)
        {
            base.Serialize(tp, node);
            if (tp.Method != SSHProtocol.SSH2)
                node.Set("method", tp.Method.ToString());
            if (tp.AuthenticationType != AuthenticationType.Password)
                node.Set("authentication", tp.AuthenticationType.ToString());
            node.Set("account", tp.Account);
            if (tp.IdentityFileName.Length > 0)
                node.Set("identityFileName", tp.IdentityFileName);
            if (tp.PasswordOrPassphrase != null) {
                if (ProtocolsPlugin.Instance.ProtocolOptions.SavePlainTextPassword) {
                    node.Set("passphrase", tp.PasswordOrPassphrase);
                }
                else if (ProtocolsPlugin.Instance.ProtocolOptions.SavePassword) {
                    string pw = new SimpleStringEncrypt().EncryptString(tp.PasswordOrPassphrase);
                    if (pw != null) {
                        node.Set("password", pw);
                    }
                }
            }

            node.Set("enableAgentForwarding", tp.EnableAgentForwarding.ToString());

            node.Set("enableX11Forwarding", tp.EnableX11Forwarding.ToString());

            if (tp.X11Forwarding != null) {
                StructuredText x11Node = node.AddChild("x11Forwarding");
                x11Node.Set("display", tp.X11Forwarding.Display.ToString(NumberFormatInfo.InvariantInfo));
                x11Node.Set("screen", tp.X11Forwarding.Screen.ToString(NumberFormatInfo.InvariantInfo));
                x11Node.Set("needAuth", tp.X11Forwarding.NeedAuth.ToString());
                if (tp.X11Forwarding.XauthorityFile != null) {
                    x11Node.Set("xauthorityFile", tp.X11Forwarding.XauthorityFile);
                }
                x11Node.Set("useCygwinUnixDomainSocket", tp.X11Forwarding.UseCygwinUnixDomainSocket.ToString());
                if (tp.X11Forwarding.X11UnixFolder != null) {
                    x11Node.Set("x11UnixFolder", tp.X11Forwarding.X11UnixFolder);
                }
            }
        }
 public void Serialize(SSHSubsystemParameter tp, StructuredText node)
 {
     base.Serialize(tp, node);
     node.Set("subsystemName", tp.SubsystemName);
 }
 public void Serialize(SSHLoginParameter tp, StructuredText node)
 {
     base.Serialize(tp, node);
     if (tp.Method != SSHProtocol.SSH2)
         node.Set("method", tp.Method.ToString());
     if (tp.AuthenticationType != AuthenticationType.Password)
         node.Set("authentication", tp.AuthenticationType.ToString());
     node.Set("account", tp.Account);
     if (tp.IdentityFileName.Length > 0)
         node.Set("identityFileName", tp.IdentityFileName);
     if (tp.PasswordOrPassphrase != null) {
         if (ProtocolsPlugin.Instance.ProtocolOptions.SavePlainTextPassword) {
             node.Set("passphrase", tp.PasswordOrPassphrase);
         }
         else if (ProtocolsPlugin.Instance.ProtocolOptions.SavePassword) {
             string pw = new SimpleStringEncrypt().EncryptString(tp.PasswordOrPassphrase);
             if (pw != null) {
                 node.Set("password", pw);
             }
         }
     }
 }
Example #14
0
 public void Serialize(SSHSubsystemParameter tp, StructuredText node)
 {
     base.Serialize(tp, node);
     node.Set("subsystemName", tp.SubsystemName);
 }
Example #15
0
        public StructuredText Serialize(object obj)
        {
            StructuredText storage = new StructuredText(typeof(RenderProfile).FullName);
            RenderProfile  prof    = (RenderProfile)obj;

            storage.Set("font-name", prof.FontName);
            storage.Set("cjk-font-name", prof.CJKFontName);
            storage.Set("font-size", prof.FontSize.ToString());
            storage.Set("line-spacing", prof.LineSpacing.ToString());
            if (prof.UseClearType)
            {
                storage.Set("clear-type", "true");
            }
            if (!prof.EnableBoldStyle)
            {
                storage.Set("enable-bold-style", "false");
            }
            if (prof.ForceBoldStyle)
            {
                storage.Set("force-bold-style", "true");
            }
            storage.Set("text-color", prof.ForeColor.Name);
            storage.Set("back-color", prof.BackColor.Name);
            if (prof.BackgroundImageFileName.Length > 0)
            {
                storage.Set("back-image", prof.BackgroundImageFileName);
                storage.Set("back-style", prof.ImageStyle.ToString());
            }
            if (!prof.ESColorSet.IsDefault)
            {
                storage.Set("escape-sequence-color", prof.ESColorSet.Format());
            }
            return(storage);
        }
Example #16
0
 public void SaveTo(StructuredText node) {
     node.Clear();
     foreach (Tag tag in _data) {
         if (tag.Key != tag.Command.DefaultShortcutKey)
             node.Set(tag.Command.CommandID, WinFormsUtil.FormatShortcut(tag.Key, '+'));
     }
 }