diff options
author | Tedd Hansen | 2007-09-12 13:03:21 +0000 |
---|---|---|
committer | Tedd Hansen | 2007-09-12 13:03:21 +0000 |
commit | dcaab9103ce1b7475872ee3224ccf58c1266f95e (patch) | |
tree | 729cc307787d2ab58d40f95998bb7a2ccc66ed2c /OpenSim/Tools/OpenSim.GUI | |
parent | I think 1.0f makes a better offset than 1.2f for basic physics (less floating, (diff) | |
download | opensim-SC-dcaab9103ce1b7475872ee3224ccf58c1266f95e.zip opensim-SC-dcaab9103ce1b7475872ee3224ccf58c1266f95e.tar.gz opensim-SC-dcaab9103ce1b7475872ee3224ccf58c1266f95e.tar.bz2 opensim-SC-dcaab9103ce1b7475872ee3224ccf58c1266f95e.tar.xz |
Early alpha version of a GUI tool to configure and start OpenSim. Currently can start an already configured Grid server.
Diffstat (limited to 'OpenSim/Tools/OpenSim.GUI')
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/InputTextBoxControl.cs | 88 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Main.Designer.cs | 348 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Main.cs | 187 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Main.resx | 120 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/OpenSim.GUI.csproj | 84 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/ProcessManager.cs | 71 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Program.cs | 20 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Properties/AssemblyInfo.cs | 33 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Properties/Resources.Designer.cs | 71 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Properties/Resources.resx | 117 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Properties/Settings.Designer.cs | 30 | ||||
-rw-r--r-- | OpenSim/Tools/OpenSim.GUI/Properties/Settings.settings | 7 |
12 files changed, 1176 insertions, 0 deletions
diff --git a/OpenSim/Tools/OpenSim.GUI/InputTextBoxControl.cs b/OpenSim/Tools/OpenSim.GUI/InputTextBoxControl.cs new file mode 100644 index 0000000..91b3f60 --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/InputTextBoxControl.cs | |||
@@ -0,0 +1,88 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using System.Windows.Forms; | ||
5 | |||
6 | namespace OpenSim.GUI | ||
7 | { | ||
8 | class InputTextBoxControl:System.Windows.Forms.TextBox | ||
9 | { | ||
10 | public InputTextBoxControl() | ||
11 | { | ||
12 | this.KeyDown += new System.Windows.Forms.KeyEventHandler(TextInputControl_KeyDown); | ||
13 | } | ||
14 | |||
15 | |||
16 | private List<string> CommandHistory = new List<string>(); | ||
17 | private bool InHistory = false; | ||
18 | private int HistoryPosition = -1; | ||
19 | |||
20 | void TextInputControl_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) | ||
21 | { | ||
22 | |||
23 | |||
24 | if (e.KeyCode == Keys.Enter && InHistory == false) | ||
25 | { | ||
26 | CommandHistory.Add(this.Text); | ||
27 | } | ||
28 | |||
29 | |||
30 | if (e.KeyCode == Keys.Up || e.KeyCode == Keys.Down) | ||
31 | { | ||
32 | // if not inside buffer, enter | ||
33 | // InBuffer = true | ||
34 | //Console.WriteLine("History: Check"); | ||
35 | if (InHistory == false) | ||
36 | { | ||
37 | if (this.Text != "") | ||
38 | { | ||
39 | //Console.WriteLine("History: Add"); | ||
40 | CommandHistory.Add(this.Text); | ||
41 | HistoryPosition = CommandHistory.Count; | ||
42 | } | ||
43 | else | ||
44 | { | ||
45 | //HistoryPosition = CommandHistory.Count + 1; | ||
46 | } | ||
47 | //Console.WriteLine("History: InHistory"); | ||
48 | InHistory = true; | ||
49 | } | ||
50 | |||
51 | if (e.KeyCode == Keys.Up) | ||
52 | HistoryPosition -= 1; | ||
53 | if (e.KeyCode == Keys.Down) | ||
54 | HistoryPosition += 1; | ||
55 | |||
56 | if (HistoryPosition > CommandHistory.Count - 1) | ||
57 | HistoryPosition = -1; | ||
58 | if (HistoryPosition < -1) | ||
59 | HistoryPosition = CommandHistory.Count - 1; | ||
60 | |||
61 | //Console.WriteLine("History: Pos: " + HistoryPosition); | ||
62 | //Console.WriteLine("History: HaveInHistCount: " + CommandHistory.Count); | ||
63 | if (CommandHistory.Count != 0) | ||
64 | { | ||
65 | if (HistoryPosition != -1) | ||
66 | { | ||
67 | //Console.WriteLine("History: Getting"); | ||
68 | //this.Text = CommandHistory.Item(HistoryPosition); | ||
69 | this.Text = CommandHistory[HistoryPosition]; | ||
70 | this.SelectionStart = this.Text.Length; | ||
71 | this.SelectionLength = 0; | ||
72 | } | ||
73 | else | ||
74 | { | ||
75 | //Console.WriteLine("History: Nothing"); | ||
76 | this.Text = ""; | ||
77 | } | ||
78 | } | ||
79 | e.Handled = true; | ||
80 | } else { | ||
81 | InHistory = false; | ||
82 | HistoryPosition = -1; | ||
83 | } | ||
84 | } | ||
85 | |||
86 | |||
87 | } | ||
88 | } | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Main.Designer.cs b/OpenSim/Tools/OpenSim.GUI/Main.Designer.cs new file mode 100644 index 0000000..b1ed5a4 --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Main.Designer.cs | |||
@@ -0,0 +1,348 @@ | |||
1 | namespace OpenSim.GUI | ||
2 | { | ||
3 | partial class Main | ||
4 | { | ||
5 | /// <summary> | ||
6 | /// Required designer variable. | ||
7 | /// </summary> | ||
8 | private System.ComponentModel.IContainer components = null; | ||
9 | |||
10 | /// <summary> | ||
11 | /// Clean up any resources being used. | ||
12 | /// </summary> | ||
13 | /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> | ||
14 | protected override void Dispose(bool disposing) | ||
15 | { | ||
16 | if (disposing && (components != null)) | ||
17 | { | ||
18 | components.Dispose(); | ||
19 | } | ||
20 | base.Dispose(disposing); | ||
21 | } | ||
22 | |||
23 | #region Windows Form Designer generated code | ||
24 | |||
25 | /// <summary> | ||
26 | /// Required method for Designer support - do not modify | ||
27 | /// the contents of this method with the code editor. | ||
28 | /// </summary> | ||
29 | private void InitializeComponent() | ||
30 | { | ||
31 | this.tabLogs = new System.Windows.Forms.TabControl(); | ||
32 | this.tabMainLog = new System.Windows.Forms.TabPage(); | ||
33 | this.txtMainLog = new System.Windows.Forms.TextBox(); | ||
34 | this.tabRegionServer = new System.Windows.Forms.TabPage(); | ||
35 | this.label1 = new System.Windows.Forms.Label(); | ||
36 | this.txtInputRegionServer = new OpenSim.GUI.InputTextBoxControl(); | ||
37 | this.txtOpenSim = new System.Windows.Forms.TextBox(); | ||
38 | this.tabUserServer = new System.Windows.Forms.TabPage(); | ||
39 | this.label2 = new System.Windows.Forms.Label(); | ||
40 | this.txtInputUserServer = new OpenSim.GUI.InputTextBoxControl(); | ||
41 | this.txtUserServer = new System.Windows.Forms.TextBox(); | ||
42 | this.tabAssetServer = new System.Windows.Forms.TabPage(); | ||
43 | this.label3 = new System.Windows.Forms.Label(); | ||
44 | this.txtInputAssetServer = new OpenSim.GUI.InputTextBoxControl(); | ||
45 | this.txtAssetServer = new System.Windows.Forms.TextBox(); | ||
46 | this.tabGridServer = new System.Windows.Forms.TabPage(); | ||
47 | this.label4 = new System.Windows.Forms.Label(); | ||
48 | this.txtInputGridServer = new OpenSim.GUI.InputTextBoxControl(); | ||
49 | this.txtGridServer = new System.Windows.Forms.TextBox(); | ||
50 | this.gbLog = new System.Windows.Forms.GroupBox(); | ||
51 | this.btnStart = new System.Windows.Forms.Button(); | ||
52 | this.btnStop = new System.Windows.Forms.Button(); | ||
53 | this.tabLogs.SuspendLayout(); | ||
54 | this.tabMainLog.SuspendLayout(); | ||
55 | this.tabRegionServer.SuspendLayout(); | ||
56 | this.tabUserServer.SuspendLayout(); | ||
57 | this.tabAssetServer.SuspendLayout(); | ||
58 | this.tabGridServer.SuspendLayout(); | ||
59 | this.gbLog.SuspendLayout(); | ||
60 | this.SuspendLayout(); | ||
61 | // | ||
62 | // tabLogs | ||
63 | // | ||
64 | this.tabLogs.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | ||
65 | | System.Windows.Forms.AnchorStyles.Left) | ||
66 | | System.Windows.Forms.AnchorStyles.Right))); | ||
67 | this.tabLogs.Controls.Add(this.tabMainLog); | ||
68 | this.tabLogs.Controls.Add(this.tabRegionServer); | ||
69 | this.tabLogs.Controls.Add(this.tabUserServer); | ||
70 | this.tabLogs.Controls.Add(this.tabAssetServer); | ||
71 | this.tabLogs.Controls.Add(this.tabGridServer); | ||
72 | this.tabLogs.Location = new System.Drawing.Point(6, 19); | ||
73 | this.tabLogs.Name = "tabLogs"; | ||
74 | this.tabLogs.SelectedIndex = 0; | ||
75 | this.tabLogs.Size = new System.Drawing.Size(562, 230); | ||
76 | this.tabLogs.TabIndex = 0; | ||
77 | // | ||
78 | // tabMainLog | ||
79 | // | ||
80 | this.tabMainLog.Controls.Add(this.txtMainLog); | ||
81 | this.tabMainLog.Location = new System.Drawing.Point(4, 22); | ||
82 | this.tabMainLog.Name = "tabMainLog"; | ||
83 | this.tabMainLog.Size = new System.Drawing.Size(554, 204); | ||
84 | this.tabMainLog.TabIndex = 4; | ||
85 | this.tabMainLog.Text = "Main log"; | ||
86 | this.tabMainLog.UseVisualStyleBackColor = true; | ||
87 | // | ||
88 | // txtMainLog | ||
89 | // | ||
90 | this.txtMainLog.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | ||
91 | | System.Windows.Forms.AnchorStyles.Left) | ||
92 | | System.Windows.Forms.AnchorStyles.Right))); | ||
93 | this.txtMainLog.Location = new System.Drawing.Point(6, 5); | ||
94 | this.txtMainLog.Multiline = true; | ||
95 | this.txtMainLog.Name = "txtMainLog"; | ||
96 | this.txtMainLog.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; | ||
97 | this.txtMainLog.Size = new System.Drawing.Size(542, 195); | ||
98 | this.txtMainLog.TabIndex = 1; | ||
99 | // | ||
100 | // tabRegionServer | ||
101 | // | ||
102 | this.tabRegionServer.Controls.Add(this.label1); | ||
103 | this.tabRegionServer.Controls.Add(this.txtInputRegionServer); | ||
104 | this.tabRegionServer.Controls.Add(this.txtOpenSim); | ||
105 | this.tabRegionServer.Location = new System.Drawing.Point(4, 22); | ||
106 | this.tabRegionServer.Name = "tabRegionServer"; | ||
107 | this.tabRegionServer.Padding = new System.Windows.Forms.Padding(3); | ||
108 | this.tabRegionServer.Size = new System.Drawing.Size(554, 204); | ||
109 | this.tabRegionServer.TabIndex = 0; | ||
110 | this.tabRegionServer.Text = "Region server"; | ||
111 | this.tabRegionServer.UseVisualStyleBackColor = true; | ||
112 | // | ||
113 | // label1 | ||
114 | // | ||
115 | this.label1.AutoSize = true; | ||
116 | this.label1.Location = new System.Drawing.Point(6, 183); | ||
117 | this.label1.Name = "label1"; | ||
118 | this.label1.Size = new System.Drawing.Size(57, 13); | ||
119 | this.label1.TabIndex = 4; | ||
120 | this.label1.Text = "Command:"; | ||
121 | // | ||
122 | // txtInputRegionServer | ||
123 | // | ||
124 | this.txtInputRegionServer.Location = new System.Drawing.Point(69, 180); | ||
125 | this.txtInputRegionServer.Name = "txtInputRegionServer"; | ||
126 | this.txtInputRegionServer.Size = new System.Drawing.Size(479, 20); | ||
127 | this.txtInputRegionServer.TabIndex = 0; | ||
128 | // | ||
129 | // txtOpenSim | ||
130 | // | ||
131 | this.txtOpenSim.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | ||
132 | | System.Windows.Forms.AnchorStyles.Left) | ||
133 | | System.Windows.Forms.AnchorStyles.Right))); | ||
134 | this.txtOpenSim.Location = new System.Drawing.Point(6, 6); | ||
135 | this.txtOpenSim.Multiline = true; | ||
136 | this.txtOpenSim.Name = "txtOpenSim"; | ||
137 | this.txtOpenSim.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; | ||
138 | this.txtOpenSim.Size = new System.Drawing.Size(542, 168); | ||
139 | this.txtOpenSim.TabIndex = 0; | ||
140 | // | ||
141 | // tabUserServer | ||
142 | // | ||
143 | this.tabUserServer.Controls.Add(this.label2); | ||
144 | this.tabUserServer.Controls.Add(this.txtInputUserServer); | ||
145 | this.tabUserServer.Controls.Add(this.txtUserServer); | ||
146 | this.tabUserServer.Location = new System.Drawing.Point(4, 22); | ||
147 | this.tabUserServer.Name = "tabUserServer"; | ||
148 | this.tabUserServer.Padding = new System.Windows.Forms.Padding(3); | ||
149 | this.tabUserServer.Size = new System.Drawing.Size(554, 204); | ||
150 | this.tabUserServer.TabIndex = 1; | ||
151 | this.tabUserServer.Text = "User server"; | ||
152 | this.tabUserServer.UseVisualStyleBackColor = true; | ||
153 | // | ||
154 | // label2 | ||
155 | // | ||
156 | this.label2.AutoSize = true; | ||
157 | this.label2.Location = new System.Drawing.Point(6, 181); | ||
158 | this.label2.Name = "label2"; | ||
159 | this.label2.Size = new System.Drawing.Size(57, 13); | ||
160 | this.label2.TabIndex = 6; | ||
161 | this.label2.Text = "Command:"; | ||
162 | // | ||
163 | // txtInputUserServer | ||
164 | // | ||
165 | this.txtInputUserServer.Location = new System.Drawing.Point(69, 178); | ||
166 | this.txtInputUserServer.Name = "txtInputUserServer"; | ||
167 | this.txtInputUserServer.Size = new System.Drawing.Size(479, 20); | ||
168 | this.txtInputUserServer.TabIndex = 5; | ||
169 | // | ||
170 | // txtUserServer | ||
171 | // | ||
172 | this.txtUserServer.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | ||
173 | | System.Windows.Forms.AnchorStyles.Left) | ||
174 | | System.Windows.Forms.AnchorStyles.Right))); | ||
175 | this.txtUserServer.Location = new System.Drawing.Point(6, 5); | ||
176 | this.txtUserServer.Multiline = true; | ||
177 | this.txtUserServer.Name = "txtUserServer"; | ||
178 | this.txtUserServer.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; | ||
179 | this.txtUserServer.Size = new System.Drawing.Size(542, 168); | ||
180 | this.txtUserServer.TabIndex = 1; | ||
181 | // | ||
182 | // tabAssetServer | ||
183 | // | ||
184 | this.tabAssetServer.Controls.Add(this.label3); | ||
185 | this.tabAssetServer.Controls.Add(this.txtInputAssetServer); | ||
186 | this.tabAssetServer.Controls.Add(this.txtAssetServer); | ||
187 | this.tabAssetServer.Location = new System.Drawing.Point(4, 22); | ||
188 | this.tabAssetServer.Name = "tabAssetServer"; | ||
189 | this.tabAssetServer.Size = new System.Drawing.Size(554, 204); | ||
190 | this.tabAssetServer.TabIndex = 2; | ||
191 | this.tabAssetServer.Text = "Asset server"; | ||
192 | this.tabAssetServer.UseVisualStyleBackColor = true; | ||
193 | // | ||
194 | // label3 | ||
195 | // | ||
196 | this.label3.AutoSize = true; | ||
197 | this.label3.Location = new System.Drawing.Point(6, 182); | ||
198 | this.label3.Name = "label3"; | ||
199 | this.label3.Size = new System.Drawing.Size(57, 13); | ||
200 | this.label3.TabIndex = 6; | ||
201 | this.label3.Text = "Command:"; | ||
202 | // | ||
203 | // txtInputAssetServer | ||
204 | // | ||
205 | this.txtInputAssetServer.Location = new System.Drawing.Point(69, 179); | ||
206 | this.txtInputAssetServer.Name = "txtInputAssetServer"; | ||
207 | this.txtInputAssetServer.Size = new System.Drawing.Size(479, 20); | ||
208 | this.txtInputAssetServer.TabIndex = 5; | ||
209 | // | ||
210 | // txtAssetServer | ||
211 | // | ||
212 | this.txtAssetServer.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | ||
213 | | System.Windows.Forms.AnchorStyles.Left) | ||
214 | | System.Windows.Forms.AnchorStyles.Right))); | ||
215 | this.txtAssetServer.Location = new System.Drawing.Point(6, 5); | ||
216 | this.txtAssetServer.Multiline = true; | ||
217 | this.txtAssetServer.Name = "txtAssetServer"; | ||
218 | this.txtAssetServer.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; | ||
219 | this.txtAssetServer.Size = new System.Drawing.Size(542, 168); | ||
220 | this.txtAssetServer.TabIndex = 1; | ||
221 | // | ||
222 | // tabGridServer | ||
223 | // | ||
224 | this.tabGridServer.Controls.Add(this.label4); | ||
225 | this.tabGridServer.Controls.Add(this.txtInputGridServer); | ||
226 | this.tabGridServer.Controls.Add(this.txtGridServer); | ||
227 | this.tabGridServer.Location = new System.Drawing.Point(4, 22); | ||
228 | this.tabGridServer.Name = "tabGridServer"; | ||
229 | this.tabGridServer.Size = new System.Drawing.Size(554, 204); | ||
230 | this.tabGridServer.TabIndex = 3; | ||
231 | this.tabGridServer.Text = "Grid server"; | ||
232 | this.tabGridServer.UseVisualStyleBackColor = true; | ||
233 | // | ||
234 | // label4 | ||
235 | // | ||
236 | this.label4.AutoSize = true; | ||
237 | this.label4.Location = new System.Drawing.Point(6, 182); | ||
238 | this.label4.Name = "label4"; | ||
239 | this.label4.Size = new System.Drawing.Size(57, 13); | ||
240 | this.label4.TabIndex = 6; | ||
241 | this.label4.Text = "Command:"; | ||
242 | // | ||
243 | // txtInputGridServer | ||
244 | // | ||
245 | this.txtInputGridServer.Location = new System.Drawing.Point(69, 179); | ||
246 | this.txtInputGridServer.Name = "txtInputGridServer"; | ||
247 | this.txtInputGridServer.Size = new System.Drawing.Size(479, 20); | ||
248 | this.txtInputGridServer.TabIndex = 5; | ||
249 | // | ||
250 | // txtGridServer | ||
251 | // | ||
252 | this.txtGridServer.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | ||
253 | | System.Windows.Forms.AnchorStyles.Left) | ||
254 | | System.Windows.Forms.AnchorStyles.Right))); | ||
255 | this.txtGridServer.Location = new System.Drawing.Point(6, 5); | ||
256 | this.txtGridServer.Multiline = true; | ||
257 | this.txtGridServer.Name = "txtGridServer"; | ||
258 | this.txtGridServer.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; | ||
259 | this.txtGridServer.Size = new System.Drawing.Size(542, 168); | ||
260 | this.txtGridServer.TabIndex = 1; | ||
261 | // | ||
262 | // gbLog | ||
263 | // | ||
264 | this.gbLog.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | ||
265 | | System.Windows.Forms.AnchorStyles.Left) | ||
266 | | System.Windows.Forms.AnchorStyles.Right))); | ||
267 | this.gbLog.Controls.Add(this.tabLogs); | ||
268 | this.gbLog.Location = new System.Drawing.Point(2, 41); | ||
269 | this.gbLog.Name = "gbLog"; | ||
270 | this.gbLog.Size = new System.Drawing.Size(574, 255); | ||
271 | this.gbLog.TabIndex = 1; | ||
272 | this.gbLog.TabStop = false; | ||
273 | this.gbLog.Text = "Logs"; | ||
274 | // | ||
275 | // btnStart | ||
276 | // | ||
277 | this.btnStart.Location = new System.Drawing.Point(8, 12); | ||
278 | this.btnStart.Name = "btnStart"; | ||
279 | this.btnStart.Size = new System.Drawing.Size(75, 23); | ||
280 | this.btnStart.TabIndex = 2; | ||
281 | this.btnStart.Text = "Start"; | ||
282 | this.btnStart.UseVisualStyleBackColor = true; | ||
283 | this.btnStart.Click += new System.EventHandler(this.btnStart_Click); | ||
284 | // | ||
285 | // btnStop | ||
286 | // | ||
287 | this.btnStop.Location = new System.Drawing.Point(89, 12); | ||
288 | this.btnStop.Name = "btnStop"; | ||
289 | this.btnStop.Size = new System.Drawing.Size(75, 23); | ||
290 | this.btnStop.TabIndex = 3; | ||
291 | this.btnStop.Text = "Stop"; | ||
292 | this.btnStop.UseVisualStyleBackColor = true; | ||
293 | this.btnStop.Click += new System.EventHandler(this.btnStop_Click); | ||
294 | // | ||
295 | // Main | ||
296 | // | ||
297 | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); | ||
298 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | ||
299 | this.ClientSize = new System.Drawing.Size(583, 299); | ||
300 | this.Controls.Add(this.btnStop); | ||
301 | this.Controls.Add(this.btnStart); | ||
302 | this.Controls.Add(this.gbLog); | ||
303 | this.Name = "Main"; | ||
304 | this.Text = "OpenSim"; | ||
305 | this.Load += new System.EventHandler(this.Main_Load); | ||
306 | this.tabLogs.ResumeLayout(false); | ||
307 | this.tabMainLog.ResumeLayout(false); | ||
308 | this.tabMainLog.PerformLayout(); | ||
309 | this.tabRegionServer.ResumeLayout(false); | ||
310 | this.tabRegionServer.PerformLayout(); | ||
311 | this.tabUserServer.ResumeLayout(false); | ||
312 | this.tabUserServer.PerformLayout(); | ||
313 | this.tabAssetServer.ResumeLayout(false); | ||
314 | this.tabAssetServer.PerformLayout(); | ||
315 | this.tabGridServer.ResumeLayout(false); | ||
316 | this.tabGridServer.PerformLayout(); | ||
317 | this.gbLog.ResumeLayout(false); | ||
318 | this.ResumeLayout(false); | ||
319 | |||
320 | } | ||
321 | |||
322 | #endregion | ||
323 | |||
324 | private System.Windows.Forms.TabControl tabLogs; | ||
325 | private System.Windows.Forms.TabPage tabRegionServer; | ||
326 | private System.Windows.Forms.TabPage tabUserServer; | ||
327 | private System.Windows.Forms.GroupBox gbLog; | ||
328 | private System.Windows.Forms.TextBox txtOpenSim; | ||
329 | private System.Windows.Forms.TextBox txtUserServer; | ||
330 | private System.Windows.Forms.TabPage tabAssetServer; | ||
331 | private System.Windows.Forms.TextBox txtAssetServer; | ||
332 | private System.Windows.Forms.TabPage tabGridServer; | ||
333 | private System.Windows.Forms.TextBox txtGridServer; | ||
334 | private System.Windows.Forms.TabPage tabMainLog; | ||
335 | private System.Windows.Forms.Button btnStart; | ||
336 | private System.Windows.Forms.Button btnStop; | ||
337 | private System.Windows.Forms.TextBox txtMainLog; | ||
338 | private System.Windows.Forms.Label label1; | ||
339 | private System.Windows.Forms.Label label2; | ||
340 | private System.Windows.Forms.Label label3; | ||
341 | private System.Windows.Forms.Label label4; | ||
342 | private InputTextBoxControl txtInputRegionServer; | ||
343 | private InputTextBoxControl txtInputUserServer; | ||
344 | private InputTextBoxControl txtInputAssetServer; | ||
345 | private InputTextBoxControl txtInputGridServer; | ||
346 | } | ||
347 | } | ||
348 | |||
diff --git a/OpenSim/Tools/OpenSim.GUI/Main.cs b/OpenSim/Tools/OpenSim.GUI/Main.cs new file mode 100644 index 0000000..b9ea209 --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Main.cs | |||
@@ -0,0 +1,187 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.ComponentModel; | ||
4 | using System.Data; | ||
5 | using System.Drawing; | ||
6 | using System.Text; | ||
7 | using System.Windows.Forms; | ||
8 | |||
9 | namespace OpenSim.GUI | ||
10 | { | ||
11 | public partial class Main : Form | ||
12 | { | ||
13 | |||
14 | public ProcessManager proc_OpenSim; | ||
15 | public ProcessManager proc_UserServer; | ||
16 | public ProcessManager proc_GridServer; | ||
17 | public ProcessManager proc_AssetServer; | ||
18 | |||
19 | public Main() | ||
20 | { | ||
21 | InitializeComponent(); | ||
22 | } | ||
23 | |||
24 | private void Main_Load(object sender, EventArgs e) | ||
25 | { | ||
26 | txtInputUserServer.KeyPress += new KeyPressEventHandler(txtInputUserServer_KeyPress); | ||
27 | txtInputGridServer.KeyPress += new KeyPressEventHandler(txtInputGridServer_KeyPress); | ||
28 | txtInputAssetServer.KeyPress += new KeyPressEventHandler(txtInputAssetServer_KeyPress); | ||
29 | txtInputRegionServer.KeyPress += new KeyPressEventHandler(txtInputRegionServer_KeyPress); | ||
30 | |||
31 | tabLogs.Selected += new TabControlEventHandler(tabLogs_Selected); | ||
32 | } | ||
33 | |||
34 | void tabLogs_Selected(object sender, TabControlEventArgs e) | ||
35 | { | ||
36 | if (e.TabPage == tabUserServer) | ||
37 | txtInputUserServer.Focus(); | ||
38 | if (e.TabPage == tabGridServer) | ||
39 | txtInputGridServer.Focus(); | ||
40 | if (e.TabPage == tabAssetServer) | ||
41 | txtInputAssetServer.Focus(); | ||
42 | if (e.TabPage == tabRegionServer) | ||
43 | txtInputRegionServer.Focus(); | ||
44 | } | ||
45 | |||
46 | void txtInputUserServer_KeyPress(object sender, KeyPressEventArgs e) | ||
47 | { | ||
48 | |||
49 | if (e.KeyChar == 13) | ||
50 | { | ||
51 | // We got a command | ||
52 | e.Handled = true; | ||
53 | proc_UserServer.StandardInput.WriteLine(txtInputUserServer.Text + "\r\n"); | ||
54 | txtInputUserServer.Text = ""; | ||
55 | } | ||
56 | } | ||
57 | |||
58 | void txtInputGridServer_KeyPress(object sender, KeyPressEventArgs e) | ||
59 | { | ||
60 | if (e.KeyChar == 13) | ||
61 | { | ||
62 | // We got a command | ||
63 | e.Handled = true; | ||
64 | proc_GridServer.StandardInput.WriteLine(txtInputGridServer.Text + "\r\n"); | ||
65 | txtInputGridServer.Text = ""; | ||
66 | } | ||
67 | } | ||
68 | |||
69 | void txtInputAssetServer_KeyPress(object sender, KeyPressEventArgs e) | ||
70 | { | ||
71 | if (e.KeyChar == 13) | ||
72 | { | ||
73 | // We got a command | ||
74 | e.Handled = true; | ||
75 | proc_AssetServer.StandardInput.WriteLine(txtInputAssetServer.Text + "\r\n"); | ||
76 | txtInputAssetServer.Text = ""; | ||
77 | } | ||
78 | } | ||
79 | |||
80 | void txtInputRegionServer_KeyPress(object sender, KeyPressEventArgs e) | ||
81 | { | ||
82 | if (e.KeyChar == 13) | ||
83 | { | ||
84 | // We got a command | ||
85 | e.Handled = true; | ||
86 | proc_OpenSim.StandardInput.WriteLine(txtInputRegionServer.Text + "\r\n"); | ||
87 | txtInputRegionServer.Text = ""; | ||
88 | } | ||
89 | } | ||
90 | |||
91 | private void btnStart_Click(object sender, EventArgs e) | ||
92 | { | ||
93 | btnStart.Enabled = false; | ||
94 | btnStop.Enabled = false; | ||
95 | |||
96 | // Start UserServer | ||
97 | proc_UserServer = new ProcessManager("OpenSim.Grid.UserServer.exe", ""); | ||
98 | txtMainLog.AppendText("Starting: UserServer"); | ||
99 | proc_UserServer.OutputDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_UserServer_DataReceived); | ||
100 | proc_UserServer.ErrorDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_UserServer_DataReceived); | ||
101 | proc_UserServer.StartProcess(); | ||
102 | System.Threading.Thread.Sleep(2000); | ||
103 | |||
104 | // Start GridServer | ||
105 | proc_GridServer = new ProcessManager("OpenSim.Grid.GridServer.exe", ""); | ||
106 | txtMainLog.AppendText("Starting: GridServer"); | ||
107 | proc_GridServer.OutputDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_GridServer_DataReceived); | ||
108 | proc_GridServer.ErrorDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_GridServer_DataReceived); | ||
109 | proc_GridServer.StartProcess(); | ||
110 | System.Threading.Thread.Sleep(2000); | ||
111 | |||
112 | // Start AssetServer | ||
113 | proc_AssetServer = new ProcessManager("OpenSim.Grid.AssetServer.exe", ""); | ||
114 | txtMainLog.AppendText("Starting: AssetServer"); | ||
115 | proc_AssetServer.OutputDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_AssetServer_DataReceived); | ||
116 | proc_AssetServer.ErrorDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_AssetServer_DataReceived); | ||
117 | proc_AssetServer.StartProcess(); | ||
118 | System.Threading.Thread.Sleep(2000); | ||
119 | |||
120 | // Start OpenSim | ||
121 | proc_OpenSim = new ProcessManager("OpenSim.EXE", "-gridmode=true"); | ||
122 | txtMainLog.AppendText("Starting: OpenSim"); | ||
123 | proc_OpenSim.OutputDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_OpenSim_DataReceived); | ||
124 | proc_OpenSim.ErrorDataReceived += new System.Diagnostics.DataReceivedEventHandler(proc_OpenSim_DataReceived); | ||
125 | proc_OpenSim.StartProcess(); | ||
126 | |||
127 | btnStart.Enabled = false; | ||
128 | btnStop.Enabled = true; | ||
129 | |||
130 | } | ||
131 | public delegate void AppendText(string Text); | ||
132 | void proc_UserServer_DataReceived(object sender, System.Diagnostics.DataReceivedEventArgs e) | ||
133 | { | ||
134 | this.Invoke(new AppendText(txtUserServer.AppendText), new object[] { e.Data + "\r\n" }); | ||
135 | this.Invoke(new AppendText(txtMainLog.AppendText), new object[] { "UserServer: " + e.Data + "\r\n" }); | ||
136 | } | ||
137 | void proc_GridServer_DataReceived(object sender, System.Diagnostics.DataReceivedEventArgs e) | ||
138 | { | ||
139 | this.Invoke(new AppendText(txtGridServer.AppendText), new object[] { e.Data + "\r\n" }); | ||
140 | this.Invoke(new AppendText(txtMainLog.AppendText), new object[] { "GridServer: " + e.Data + "\r\n" }); | ||
141 | } | ||
142 | void proc_AssetServer_DataReceived(object sender, System.Diagnostics.DataReceivedEventArgs e) | ||
143 | { | ||
144 | this.Invoke(new AppendText(txtAssetServer.AppendText), new object[] { e.Data + "\r\n" }); | ||
145 | this.Invoke(new AppendText(txtMainLog.AppendText), new object[] { "AssetServer: " + e.Data + "\r\n" }); | ||
146 | } | ||
147 | void proc_OpenSim_DataReceived(object sender, System.Diagnostics.DataReceivedEventArgs e) | ||
148 | { | ||
149 | this.Invoke(new AppendText(txtOpenSim.AppendText), new object[] { e.Data + "\r\n" }); | ||
150 | this.Invoke(new AppendText(txtMainLog.AppendText), new object[] { "OpenSim: " + e.Data + "\r\n" }); | ||
151 | } | ||
152 | |||
153 | private void btnStop_Click(object sender, EventArgs e) | ||
154 | { | ||
155 | btnStart.Enabled = false; | ||
156 | btnStop.Enabled = false; | ||
157 | |||
158 | if (proc_UserServer != null) | ||
159 | { | ||
160 | txtMainLog.AppendText("Shutting down UserServer. CPU time used: " + proc_UserServer.TotalProcessorTime); | ||
161 | proc_UserServer.StopProcess(); | ||
162 | } | ||
163 | if (proc_GridServer != null) | ||
164 | { | ||
165 | txtMainLog.AppendText("Shutting down GridServer. CPU time used: " + proc_GridServer.TotalProcessorTime); | ||
166 | proc_GridServer.StopProcess(); | ||
167 | } | ||
168 | if (proc_AssetServer != null) | ||
169 | { | ||
170 | txtMainLog.AppendText("Shutting down AssetServer. CPU time used: " + proc_AssetServer.TotalProcessorTime); | ||
171 | proc_AssetServer.StopProcess(); | ||
172 | } | ||
173 | if (proc_OpenSim != null) | ||
174 | { | ||
175 | txtMainLog.AppendText("Shutting down OpenSim. CPU time used: " + proc_OpenSim.TotalProcessorTime); | ||
176 | proc_OpenSim.StopProcess(); | ||
177 | } | ||
178 | |||
179 | btnStart.Enabled = true; | ||
180 | btnStop.Enabled = false; | ||
181 | |||
182 | |||
183 | } | ||
184 | |||
185 | |||
186 | } | ||
187 | } \ No newline at end of file | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Main.resx b/OpenSim/Tools/OpenSim.GUI/Main.resx new file mode 100644 index 0000000..ff31a6d --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Main.resx | |||
@@ -0,0 +1,120 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <root> | ||
3 | <!-- | ||
4 | Microsoft ResX Schema | ||
5 | |||
6 | Version 2.0 | ||
7 | |||
8 | The primary goals of this format is to allow a simple XML format | ||
9 | that is mostly human readable. The generation and parsing of the | ||
10 | various data types are done through the TypeConverter classes | ||
11 | associated with the data types. | ||
12 | |||
13 | Example: | ||
14 | |||
15 | ... ado.net/XML headers & schema ... | ||
16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
17 | <resheader name="version">2.0</resheader> | ||
18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
24 | </data> | ||
25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
27 | <comment>This is a comment</comment> | ||
28 | </data> | ||
29 | |||
30 | There are any number of "resheader" rows that contain simple | ||
31 | name/value pairs. | ||
32 | |||
33 | Each data row contains a name, and value. The row also contains a | ||
34 | type or mimetype. Type corresponds to a .NET class that support | ||
35 | text/value conversion through the TypeConverter architecture. | ||
36 | Classes that don't support this are serialized and stored with the | ||
37 | mimetype set. | ||
38 | |||
39 | The mimetype is used for serialized objects, and tells the | ||
40 | ResXResourceReader how to depersist the object. This is currently not | ||
41 | extensible. For a given mimetype the value must be set accordingly: | ||
42 | |||
43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
44 | that the ResXResourceWriter will generate, however the reader can | ||
45 | read any of the formats listed below. | ||
46 | |||
47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
48 | value : The object must be serialized with | ||
49 | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||
50 | : and then encoded with base64 encoding. | ||
51 | |||
52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
53 | value : The object must be serialized with | ||
54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
55 | : and then encoded with base64 encoding. | ||
56 | |||
57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
58 | value : The object must be serialized into a byte array | ||
59 | : using a System.ComponentModel.TypeConverter | ||
60 | : and then encoded with base64 encoding. | ||
61 | --> | ||
62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
63 | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||
64 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
65 | <xsd:complexType> | ||
66 | <xsd:choice maxOccurs="unbounded"> | ||
67 | <xsd:element name="metadata"> | ||
68 | <xsd:complexType> | ||
69 | <xsd:sequence> | ||
70 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
71 | </xsd:sequence> | ||
72 | <xsd:attribute name="name" use="required" type="xsd:string" /> | ||
73 | <xsd:attribute name="type" type="xsd:string" /> | ||
74 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
75 | <xsd:attribute ref="xml:space" /> | ||
76 | </xsd:complexType> | ||
77 | </xsd:element> | ||
78 | <xsd:element name="assembly"> | ||
79 | <xsd:complexType> | ||
80 | <xsd:attribute name="alias" type="xsd:string" /> | ||
81 | <xsd:attribute name="name" type="xsd:string" /> | ||
82 | </xsd:complexType> | ||
83 | </xsd:element> | ||
84 | <xsd:element name="data"> | ||
85 | <xsd:complexType> | ||
86 | <xsd:sequence> | ||
87 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
88 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
89 | </xsd:sequence> | ||
90 | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||
91 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
92 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
93 | <xsd:attribute ref="xml:space" /> | ||
94 | </xsd:complexType> | ||
95 | </xsd:element> | ||
96 | <xsd:element name="resheader"> | ||
97 | <xsd:complexType> | ||
98 | <xsd:sequence> | ||
99 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
100 | </xsd:sequence> | ||
101 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
102 | </xsd:complexType> | ||
103 | </xsd:element> | ||
104 | </xsd:choice> | ||
105 | </xsd:complexType> | ||
106 | </xsd:element> | ||
107 | </xsd:schema> | ||
108 | <resheader name="resmimetype"> | ||
109 | <value>text/microsoft-resx</value> | ||
110 | </resheader> | ||
111 | <resheader name="version"> | ||
112 | <value>2.0</value> | ||
113 | </resheader> | ||
114 | <resheader name="reader"> | ||
115 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
116 | </resheader> | ||
117 | <resheader name="writer"> | ||
118 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
119 | </resheader> | ||
120 | </root> \ No newline at end of file | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/OpenSim.GUI.csproj b/OpenSim/Tools/OpenSim.GUI/OpenSim.GUI.csproj new file mode 100644 index 0000000..5228b2b --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/OpenSim.GUI.csproj | |||
@@ -0,0 +1,84 @@ | |||
1 | <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
2 | <PropertyGroup> | ||
3 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
4 | <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
5 | <ProductVersion>8.0.50727</ProductVersion> | ||
6 | <SchemaVersion>2.0</SchemaVersion> | ||
7 | <ProjectGuid>{78AEEDD5-4DA8-4E05-8D53-F3C5476A0B97}</ProjectGuid> | ||
8 | <OutputType>WinExe</OutputType> | ||
9 | <AppDesignerFolder>Properties</AppDesignerFolder> | ||
10 | <RootNamespace>OpenSim.GUI</RootNamespace> | ||
11 | <AssemblyName>OpenSim.GUI</AssemblyName> | ||
12 | </PropertyGroup> | ||
13 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
14 | <DebugSymbols>true</DebugSymbols> | ||
15 | <DebugType>full</DebugType> | ||
16 | <Optimize>false</Optimize> | ||
17 | <OutputPath>..\..\..\bin\</OutputPath> | ||
18 | <DefineConstants>DEBUG;TRACE</DefineConstants> | ||
19 | <ErrorReport>prompt</ErrorReport> | ||
20 | <WarningLevel>4</WarningLevel> | ||
21 | </PropertyGroup> | ||
22 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
23 | <DebugType>pdbonly</DebugType> | ||
24 | <Optimize>true</Optimize> | ||
25 | <OutputPath>bin\Release\</OutputPath> | ||
26 | <DefineConstants>TRACE</DefineConstants> | ||
27 | <ErrorReport>prompt</ErrorReport> | ||
28 | <WarningLevel>4</WarningLevel> | ||
29 | </PropertyGroup> | ||
30 | <ItemGroup> | ||
31 | <Reference Include="System" /> | ||
32 | <Reference Include="System.Data" /> | ||
33 | <Reference Include="System.Deployment" /> | ||
34 | <Reference Include="System.Drawing" /> | ||
35 | <Reference Include="System.Windows.Forms" /> | ||
36 | <Reference Include="System.Xml" /> | ||
37 | </ItemGroup> | ||
38 | <ItemGroup> | ||
39 | <Compile Include="InputTextBoxControl.cs"> | ||
40 | <SubType>Component</SubType> | ||
41 | </Compile> | ||
42 | <Compile Include="Main.cs"> | ||
43 | <SubType>Form</SubType> | ||
44 | </Compile> | ||
45 | <Compile Include="Main.Designer.cs"> | ||
46 | <DependentUpon>Main.cs</DependentUpon> | ||
47 | </Compile> | ||
48 | <Compile Include="ProcessManager.cs"> | ||
49 | <SubType>Component</SubType> | ||
50 | </Compile> | ||
51 | <Compile Include="Program.cs" /> | ||
52 | <Compile Include="Properties\AssemblyInfo.cs" /> | ||
53 | <EmbeddedResource Include="Main.resx"> | ||
54 | <SubType>Designer</SubType> | ||
55 | <DependentUpon>Main.cs</DependentUpon> | ||
56 | </EmbeddedResource> | ||
57 | <EmbeddedResource Include="Properties\Resources.resx"> | ||
58 | <Generator>ResXFileCodeGenerator</Generator> | ||
59 | <LastGenOutput>Resources.Designer.cs</LastGenOutput> | ||
60 | <SubType>Designer</SubType> | ||
61 | </EmbeddedResource> | ||
62 | <Compile Include="Properties\Resources.Designer.cs"> | ||
63 | <AutoGen>True</AutoGen> | ||
64 | <DependentUpon>Resources.resx</DependentUpon> | ||
65 | </Compile> | ||
66 | <None Include="Properties\Settings.settings"> | ||
67 | <Generator>SettingsSingleFileGenerator</Generator> | ||
68 | <LastGenOutput>Settings.Designer.cs</LastGenOutput> | ||
69 | </None> | ||
70 | <Compile Include="Properties\Settings.Designer.cs"> | ||
71 | <AutoGen>True</AutoGen> | ||
72 | <DependentUpon>Settings.settings</DependentUpon> | ||
73 | <DesignTimeSharedInput>True</DesignTimeSharedInput> | ||
74 | </Compile> | ||
75 | </ItemGroup> | ||
76 | <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> | ||
77 | <!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
78 | Other similar extension points exist, see Microsoft.Common.targets. | ||
79 | <Target Name="BeforeBuild"> | ||
80 | </Target> | ||
81 | <Target Name="AfterBuild"> | ||
82 | </Target> | ||
83 | --> | ||
84 | </Project> \ No newline at end of file | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/ProcessManager.cs b/OpenSim/Tools/OpenSim.GUI/ProcessManager.cs new file mode 100644 index 0000000..0ab074e --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/ProcessManager.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using System.Diagnostics; | ||
5 | |||
6 | namespace OpenSim.GUI | ||
7 | { | ||
8 | public class ProcessManager : Process | ||
9 | { | ||
10 | private string m_FileName; | ||
11 | private string m_Arguments; | ||
12 | public ProcessManager(string FileName,string Arguments) | ||
13 | { | ||
14 | m_FileName = FileName; | ||
15 | m_Arguments = Arguments; | ||
16 | |||
17 | // MyProc = new Process(); | ||
18 | StartInfo.WorkingDirectory = AppDomain.CurrentDomain.BaseDirectory; | ||
19 | Console.WriteLine("WorkingDirectory: " + StartInfo.WorkingDirectory); | ||
20 | StartInfo.FileName = m_FileName; | ||
21 | |||
22 | //p.StartInfo.Arguments = ""; | ||
23 | StartInfo.UseShellExecute = false; | ||
24 | StartInfo.RedirectStandardError = true; | ||
25 | StartInfo.RedirectStandardInput = true; | ||
26 | StartInfo.RedirectStandardOutput = true; | ||
27 | StartInfo.CreateNoWindow = true; | ||
28 | |||
29 | |||
30 | |||
31 | } | ||
32 | |||
33 | public void StartProcess() | ||
34 | { | ||
35 | try | ||
36 | { | ||
37 | Start(); | ||
38 | BeginOutputReadLine(); | ||
39 | BeginErrorReadLine(); | ||
40 | } | ||
41 | catch (Exception ex) | ||
42 | { | ||
43 | Console.WriteLine("Exception Occurred :{0},{1}", | ||
44 | ex.Message, ex.StackTrace.ToString()); | ||
45 | } | ||
46 | } | ||
47 | public void StopProcess() | ||
48 | { | ||
49 | try | ||
50 | { | ||
51 | CancelErrorRead(); | ||
52 | CancelErrorRead(); | ||
53 | if (!HasExited) | ||
54 | { | ||
55 | StandardInput.WriteLine("quit"); | ||
56 | StandardInput.WriteLine("shutdown"); | ||
57 | System.Threading.Thread.Sleep(500); | ||
58 | if (!HasExited) | ||
59 | { | ||
60 | Kill(); | ||
61 | } | ||
62 | } | ||
63 | } | ||
64 | catch (Exception ex) | ||
65 | { | ||
66 | Console.WriteLine("Exception Occurred :{0},{1}", | ||
67 | ex.Message, ex.StackTrace.ToString()); | ||
68 | } | ||
69 | } | ||
70 | } | ||
71 | } | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Program.cs b/OpenSim/Tools/OpenSim.GUI/Program.cs new file mode 100644 index 0000000..a849b1b --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Program.cs | |||
@@ -0,0 +1,20 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Windows.Forms; | ||
4 | |||
5 | namespace OpenSim.GUI | ||
6 | { | ||
7 | static class Program | ||
8 | { | ||
9 | /// <summary> | ||
10 | /// The main entry point for the application. | ||
11 | /// </summary> | ||
12 | [STAThread] | ||
13 | static void Main() | ||
14 | { | ||
15 | Application.EnableVisualStyles(); | ||
16 | Application.SetCompatibleTextRenderingDefault(false); | ||
17 | Application.Run(new Main()); | ||
18 | } | ||
19 | } | ||
20 | } \ No newline at end of file | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Properties/AssemblyInfo.cs b/OpenSim/Tools/OpenSim.GUI/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..3e86b1c --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Properties/AssemblyInfo.cs | |||
@@ -0,0 +1,33 @@ | |||
1 | using System.Reflection; | ||
2 | using System.Runtime.CompilerServices; | ||
3 | using System.Runtime.InteropServices; | ||
4 | |||
5 | // General Information about an assembly is controlled through the following | ||
6 | // set of attributes. Change these attribute values to modify the information | ||
7 | // associated with an assembly. | ||
8 | [assembly: AssemblyTitle("OpenSim.GUI")] | ||
9 | [assembly: AssemblyDescription("")] | ||
10 | [assembly: AssemblyConfiguration("")] | ||
11 | [assembly: AssemblyCompany("")] | ||
12 | [assembly: AssemblyProduct("OpenSim.GUI")] | ||
13 | [assembly: AssemblyCopyright("Copyright © 2007")] | ||
14 | [assembly: AssemblyTrademark("")] | ||
15 | [assembly: AssemblyCulture("")] | ||
16 | |||
17 | // Setting ComVisible to false makes the types in this assembly not visible | ||
18 | // to COM components. If you need to access a type in this assembly from | ||
19 | // COM, set the ComVisible attribute to true on that type. | ||
20 | [assembly: ComVisible(false)] | ||
21 | |||
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM | ||
23 | [assembly: Guid("c8dbda49-66bd-476b-93b3-71774870b73e")] | ||
24 | |||
25 | // Version information for an assembly consists of the following four values: | ||
26 | // | ||
27 | // Major Version | ||
28 | // Minor Version | ||
29 | // Build Number | ||
30 | // Revision | ||
31 | // | ||
32 | [assembly: AssemblyVersion("1.0.0.0")] | ||
33 | [assembly: AssemblyFileVersion("1.0.0.0")] | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Properties/Resources.Designer.cs b/OpenSim/Tools/OpenSim.GUI/Properties/Resources.Designer.cs new file mode 100644 index 0000000..f7de4f0 --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Properties/Resources.Designer.cs | |||
@@ -0,0 +1,71 @@ | |||
1 | //------------------------------------------------------------------------------ | ||
2 | // <auto-generated> | ||
3 | // This code was generated by a tool. | ||
4 | // Runtime Version:2.0.50727.312 | ||
5 | // | ||
6 | // Changes to this file may cause incorrect behavior and will be lost if | ||
7 | // the code is regenerated. | ||
8 | // </auto-generated> | ||
9 | //------------------------------------------------------------------------------ | ||
10 | |||
11 | namespace OpenSim.GUI.Properties | ||
12 | { | ||
13 | |||
14 | |||
15 | /// <summary> | ||
16 | /// A strongly-typed resource class, for looking up localized strings, etc. | ||
17 | /// </summary> | ||
18 | // This class was auto-generated by the StronglyTypedResourceBuilder | ||
19 | // class via a tool like ResGen or Visual Studio. | ||
20 | // To add or remove a member, edit your .ResX file then rerun ResGen | ||
21 | // with the /str option, or rebuild your VS project. | ||
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")] | ||
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] | ||
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] | ||
25 | internal class Resources | ||
26 | { | ||
27 | |||
28 | private static global::System.Resources.ResourceManager resourceMan; | ||
29 | |||
30 | private static global::System.Globalization.CultureInfo resourceCulture; | ||
31 | |||
32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] | ||
33 | internal Resources() | ||
34 | { | ||
35 | } | ||
36 | |||
37 | /// <summary> | ||
38 | /// Returns the cached ResourceManager instance used by this class. | ||
39 | /// </summary> | ||
40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] | ||
41 | internal static global::System.Resources.ResourceManager ResourceManager | ||
42 | { | ||
43 | get | ||
44 | { | ||
45 | if ((resourceMan == null)) | ||
46 | { | ||
47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OpenSim.GUI.Properties.Resources", typeof(Resources).Assembly); | ||
48 | resourceMan = temp; | ||
49 | } | ||
50 | return resourceMan; | ||
51 | } | ||
52 | } | ||
53 | |||
54 | /// <summary> | ||
55 | /// Overrides the current thread's CurrentUICulture property for all | ||
56 | /// resource lookups using this strongly typed resource class. | ||
57 | /// </summary> | ||
58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] | ||
59 | internal static global::System.Globalization.CultureInfo Culture | ||
60 | { | ||
61 | get | ||
62 | { | ||
63 | return resourceCulture; | ||
64 | } | ||
65 | set | ||
66 | { | ||
67 | resourceCulture = value; | ||
68 | } | ||
69 | } | ||
70 | } | ||
71 | } | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Properties/Resources.resx b/OpenSim/Tools/OpenSim.GUI/Properties/Resources.resx new file mode 100644 index 0000000..ffecec8 --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Properties/Resources.resx | |||
@@ -0,0 +1,117 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <root> | ||
3 | <!-- | ||
4 | Microsoft ResX Schema | ||
5 | |||
6 | Version 2.0 | ||
7 | |||
8 | The primary goals of this format is to allow a simple XML format | ||
9 | that is mostly human readable. The generation and parsing of the | ||
10 | various data types are done through the TypeConverter classes | ||
11 | associated with the data types. | ||
12 | |||
13 | Example: | ||
14 | |||
15 | ... ado.net/XML headers & schema ... | ||
16 | <resheader name="resmimetype">text/microsoft-resx</resheader> | ||
17 | <resheader name="version">2.0</resheader> | ||
18 | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||
19 | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||
20 | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||
21 | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||
22 | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||
23 | <value>[base64 mime encoded serialized .NET Framework object]</value> | ||
24 | </data> | ||
25 | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||
26 | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||
27 | <comment>This is a comment</comment> | ||
28 | </data> | ||
29 | |||
30 | There are any number of "resheader" rows that contain simple | ||
31 | name/value pairs. | ||
32 | |||
33 | Each data row contains a name, and value. The row also contains a | ||
34 | type or mimetype. Type corresponds to a .NET class that support | ||
35 | text/value conversion through the TypeConverter architecture. | ||
36 | Classes that don't support this are serialized and stored with the | ||
37 | mimetype set. | ||
38 | |||
39 | The mimetype is used for serialized objects, and tells the | ||
40 | ResXResourceReader how to depersist the object. This is currently not | ||
41 | extensible. For a given mimetype the value must be set accordingly: | ||
42 | |||
43 | Note - application/x-microsoft.net.object.binary.base64 is the format | ||
44 | that the ResXResourceWriter will generate, however the reader can | ||
45 | read any of the formats listed below. | ||
46 | |||
47 | mimetype: application/x-microsoft.net.object.binary.base64 | ||
48 | value : The object must be serialized with | ||
49 | : System.Serialization.Formatters.Binary.BinaryFormatter | ||
50 | : and then encoded with base64 encoding. | ||
51 | |||
52 | mimetype: application/x-microsoft.net.object.soap.base64 | ||
53 | value : The object must be serialized with | ||
54 | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||
55 | : and then encoded with base64 encoding. | ||
56 | |||
57 | mimetype: application/x-microsoft.net.object.bytearray.base64 | ||
58 | value : The object must be serialized into a byte array | ||
59 | : using a System.ComponentModel.TypeConverter | ||
60 | : and then encoded with base64 encoding. | ||
61 | --> | ||
62 | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||
63 | <xsd:element name="root" msdata:IsDataSet="true"> | ||
64 | <xsd:complexType> | ||
65 | <xsd:choice maxOccurs="unbounded"> | ||
66 | <xsd:element name="metadata"> | ||
67 | <xsd:complexType> | ||
68 | <xsd:sequence> | ||
69 | <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||
70 | </xsd:sequence> | ||
71 | <xsd:attribute name="name" type="xsd:string" /> | ||
72 | <xsd:attribute name="type" type="xsd:string" /> | ||
73 | <xsd:attribute name="mimetype" type="xsd:string" /> | ||
74 | </xsd:complexType> | ||
75 | </xsd:element> | ||
76 | <xsd:element name="assembly"> | ||
77 | <xsd:complexType> | ||
78 | <xsd:attribute name="alias" type="xsd:string" /> | ||
79 | <xsd:attribute name="name" type="xsd:string" /> | ||
80 | </xsd:complexType> | ||
81 | </xsd:element> | ||
82 | <xsd:element name="data"> | ||
83 | <xsd:complexType> | ||
84 | <xsd:sequence> | ||
85 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
86 | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||
87 | </xsd:sequence> | ||
88 | <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" /> | ||
89 | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||
90 | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||
91 | </xsd:complexType> | ||
92 | </xsd:element> | ||
93 | <xsd:element name="resheader"> | ||
94 | <xsd:complexType> | ||
95 | <xsd:sequence> | ||
96 | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||
97 | </xsd:sequence> | ||
98 | <xsd:attribute name="name" type="xsd:string" use="required" /> | ||
99 | </xsd:complexType> | ||
100 | </xsd:element> | ||
101 | </xsd:choice> | ||
102 | </xsd:complexType> | ||
103 | </xsd:element> | ||
104 | </xsd:schema> | ||
105 | <resheader name="resmimetype"> | ||
106 | <value>text/microsoft-resx</value> | ||
107 | </resheader> | ||
108 | <resheader name="version"> | ||
109 | <value>2.0</value> | ||
110 | </resheader> | ||
111 | <resheader name="reader"> | ||
112 | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
113 | </resheader> | ||
114 | <resheader name="writer"> | ||
115 | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||
116 | </resheader> | ||
117 | </root> \ No newline at end of file | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Properties/Settings.Designer.cs b/OpenSim/Tools/OpenSim.GUI/Properties/Settings.Designer.cs new file mode 100644 index 0000000..e23862a --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Properties/Settings.Designer.cs | |||
@@ -0,0 +1,30 @@ | |||
1 | //------------------------------------------------------------------------------ | ||
2 | // <auto-generated> | ||
3 | // This code was generated by a tool. | ||
4 | // Runtime Version:2.0.50727.312 | ||
5 | // | ||
6 | // Changes to this file may cause incorrect behavior and will be lost if | ||
7 | // the code is regenerated. | ||
8 | // </auto-generated> | ||
9 | //------------------------------------------------------------------------------ | ||
10 | |||
11 | namespace OpenSim.GUI.Properties | ||
12 | { | ||
13 | |||
14 | |||
15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] | ||
16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")] | ||
17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase | ||
18 | { | ||
19 | |||
20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); | ||
21 | |||
22 | public static Settings Default | ||
23 | { | ||
24 | get | ||
25 | { | ||
26 | return defaultInstance; | ||
27 | } | ||
28 | } | ||
29 | } | ||
30 | } | ||
diff --git a/OpenSim/Tools/OpenSim.GUI/Properties/Settings.settings b/OpenSim/Tools/OpenSim.GUI/Properties/Settings.settings new file mode 100644 index 0000000..abf36c5 --- /dev/null +++ b/OpenSim/Tools/OpenSim.GUI/Properties/Settings.settings | |||
@@ -0,0 +1,7 @@ | |||
1 | <?xml version='1.0' encoding='utf-8'?> | ||
2 | <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> | ||
3 | <Profiles> | ||
4 | <Profile Name="(Default)" /> | ||
5 | </Profiles> | ||
6 | <Settings /> | ||
7 | </SettingsFile> | ||