3
* GNOME Do is the legal property of its developers. Please refer to the
4
* COPYRIGHT file distributed with this
7
* This program is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (at your option) any later version.
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
17
* You should have received a copy of the GNU General Public License
18
* along with this program. If not, see <http://www.gnu.org/licenses/>.
23
using System.Diagnostics;
27
namespace GnomeDoSSH {
28
public class SSHAction : AbstractAction {
30
public override string Name {
32
return "Connect with SSH";
36
public override string Description {
38
return "Connect with SSH";
42
public override string Icon {
44
return "network-server";
48
public override Type[] SupportedItemTypes {
57
public override bool SupportsItem (IItem item) {
61
public override IItem[] Perform (IItem[] items, IItem[] modItems) {
62
GConf.Client client = new GConf.Client ();
66
exec = client.Get ("/desktop/gnome/applications/terminal/exec") as string;
69
exec = "gnome-terminal";
74
if (items [0] is ITextItem) {
75
ITextItem textitem = items [0] as ITextItem;
76
hostname = textitem.Text;
79
HostItem hostitem = items [0] as HostItem;
80
hostname = hostitem.Text;
83
Process term = new Process ();
84
term.StartInfo.FileName = exec;
85
term.StartInfo.Arguments = "-e 'ssh " + hostname + "'";