* Rex merges, Grid Manager

afrisby-3
Adam Frisby 2008-02-23 02:45:52 +00:00
parent f06b6e2274
commit ab27cd5513
12 changed files with 1402 additions and 1411 deletions

View File

@ -1,60 +1,60 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using System.Reflection; using System.Reflection;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following // Information about this assembly is defined by the following
// attributes. // attributes.
// //
// change them to the information which is associated with the assembly // change them to the information which is associated with the assembly
// you compile. // you compile.
[assembly: AssemblyTitle("")] [assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")] [assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")] [assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")] [assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] [assembly: AssemblyCulture("")]
// The assembly version has following format : // The assembly version has following format :
// //
// Major.Minor.Build.Revision // Major.Minor.Build.Revision
// //
// You can specify all values by your own or you can build default build and revision // You can specify all values by your own or you can build default build and revision
// numbers with the '*' character (the default): // numbers with the '*' character (the default):
[assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.0.*")]
// The following attributes specify the key for the sign of your assembly. See the // The following attributes specify the key for the sign of your assembly. See the
// .NET Framework documentation for more information about signing. // .NET Framework documentation for more information about signing.
// This is not required, if you don't want signing let these attributes like they're. // This is not required, if you don't want signing let these attributes like they're.
[assembly: AssemblyDelaySign(false)] [assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")] [assembly: AssemblyKeyFile("")]

View File

@ -1,61 +1,61 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using System; using System;
using System.Threading; using System.Threading;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
namespace OpenGridServices.Manager namespace OpenGridServices.Manager
{ {
public class BlockingQueue<T> public class BlockingQueue<T>
{ {
private Queue<T> _queue = new Queue<T>(); private Queue<T> _queue = new Queue<T>();
private object _queueSync = new object(); private object _queueSync = new object();
public void Enqueue(T value) public void Enqueue(T value)
{ {
lock (_queueSync) lock (_queueSync)
{ {
_queue.Enqueue(value); _queue.Enqueue(value);
Monitor.Pulse(_queueSync); Monitor.Pulse(_queueSync);
} }
} }
public T Dequeue() public T Dequeue()
{ {
lock (_queueSync) lock (_queueSync)
{ {
if (_queue.Count < 1) if (_queue.Count < 1)
Monitor.Wait(_queueSync); Monitor.Wait(_queueSync);
return _queue.Dequeue(); return _queue.Dequeue();
} }
} }
} }
} }

View File

@ -1,44 +1,41 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using System; using System;
namespace OpenGridServices.Manager namespace OpenGridServices.Manager
{ {
public partial class Connect to grid server : Gtk.Dialog
{
public partial class Connect to grid server : Gtk.Dialog public Connect to grid server()
{ {
this.Build();
public Connect to grid server() }
{ }
this.Build(); }
}
}
}

View File

@ -1,57 +1,54 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using Gtk; using Gtk;
using System; using System;
namespace OpenGridServices.Manager { namespace OpenGridServices.Manager
public partial class ConnectToGridServerDialog : Gtk.Dialog {
{ public partial class ConnectToGridServerDialog : Gtk.Dialog
{
public ConnectToGridServerDialog() public ConnectToGridServerDialog()
{ {
this.Build(); this.Build();
} }
protected virtual void OnResponse(object o, Gtk.ResponseArgs args) protected virtual void OnResponse(object o, Gtk.ResponseArgs args)
{ {
switch(args.ResponseId) { switch(args.ResponseId) {
case Gtk.ResponseType.Ok: case Gtk.ResponseType.Ok:
MainClass.PendingOperations.Enqueue("connect_to_gridserver " + this.entry1.Text + " " + this.entry2.Text + " " + this.entry3.Text); MainClass.PendingOperations.Enqueue("connect_to_gridserver " + this.entry1.Text + " " + this.entry2.Text + " " + this.entry3.Text);
break; break;
case Gtk.ResponseType.Cancel: case Gtk.ResponseType.Cancel:
break; break;
} }
this.Hide(); this.Hide();
}
} }
}
}
}

View File

@ -1,134 +1,134 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using Nwc.XmlRpc; using Nwc.XmlRpc;
using System; using System;
using System.Net; using System.Net;
using System.IO; using System.IO;
using System.Xml; using System.Xml;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using libsecondlife; using libsecondlife;
namespace OpenGridServices.Manager namespace OpenGridServices.Manager
{ {
public class GridServerConnectionManager public class GridServerConnectionManager
{ {
private string ServerURL; private string ServerURL;
public LLUUID SessionID; public LLUUID SessionID;
public bool connected=false; public bool connected=false;
public RegionBlock[][] WorldMap; public RegionBlock[][] WorldMap;
public bool Connect(string GridServerURL, string username, string password) public bool Connect(string GridServerURL, string username, string password)
{ {
try { try {
this.ServerURL=GridServerURL; this.ServerURL=GridServerURL;
Hashtable LoginParamsHT = new Hashtable(); Hashtable LoginParamsHT = new Hashtable();
LoginParamsHT["username"]=username; LoginParamsHT["username"]=username;
LoginParamsHT["password"]=password; LoginParamsHT["password"]=password;
ArrayList LoginParams = new ArrayList(); ArrayList LoginParams = new ArrayList();
LoginParams.Add(LoginParamsHT); LoginParams.Add(LoginParamsHT);
XmlRpcRequest GridLoginReq = new XmlRpcRequest("manager_login",LoginParams); XmlRpcRequest GridLoginReq = new XmlRpcRequest("manager_login",LoginParams);
XmlRpcResponse GridResp = GridLoginReq.Send(ServerURL,3000); XmlRpcResponse GridResp = GridLoginReq.Send(ServerURL,3000);
if(GridResp.IsFault) { if(GridResp.IsFault) {
connected=false; connected=false;
return false; return false;
} else { } else {
Hashtable gridrespData = (Hashtable)GridResp.Value; Hashtable gridrespData = (Hashtable)GridResp.Value;
this.SessionID = new LLUUID((string)gridrespData["session_id"]); this.SessionID = new LLUUID((string)gridrespData["session_id"]);
connected=true; connected=true;
return true; return true;
} }
} catch(Exception e) { } catch(Exception e) {
Console.WriteLine(e.ToString()); Console.WriteLine(e.ToString());
connected=false; connected=false;
return false; return false;
} }
} }
public void DownloadMap() public void DownloadMap()
{ {
System.Net.WebClient mapdownloader = new WebClient(); System.Net.WebClient mapdownloader = new WebClient();
Stream regionliststream = mapdownloader.OpenRead(ServerURL + "/regionlist"); Stream regionliststream = mapdownloader.OpenRead(ServerURL + "/regionlist");
RegionBlock TempRegionData; RegionBlock TempRegionData;
XmlDocument doc = new XmlDocument(); XmlDocument doc = new XmlDocument();
doc.Load(regionliststream); doc.Load(regionliststream);
regionliststream.Close(); regionliststream.Close();
XmlNode rootnode = doc.FirstChild; XmlNode rootnode = doc.FirstChild;
if (rootnode.Name != "regions") if (rootnode.Name != "regions")
{ {
// TODO - ERROR! // TODO - ERROR!
} }
for(int i=0; i<=rootnode.ChildNodes.Count; i++) for(int i=0; i<=rootnode.ChildNodes.Count; i++)
{ {
if(rootnode.ChildNodes.Item(i).Name != "region") { if(rootnode.ChildNodes.Item(i).Name != "region") {
// TODO - ERROR! // TODO - ERROR!
} else { } else {
TempRegionData = new RegionBlock(); TempRegionData = new RegionBlock();
} }
} }
} }
public bool RestartServer() public bool RestartServer()
{ {
return true; return true;
} }
public bool ShutdownServer() public bool ShutdownServer()
{ {
try { try {
Hashtable ShutdownParamsHT = new Hashtable(); Hashtable ShutdownParamsHT = new Hashtable();
ArrayList ShutdownParams = new ArrayList(); ArrayList ShutdownParams = new ArrayList();
ShutdownParamsHT["session_id"]=this.SessionID.ToString(); ShutdownParamsHT["session_id"]=this.SessionID.ToString();
ShutdownParams.Add(ShutdownParamsHT); ShutdownParams.Add(ShutdownParamsHT);
XmlRpcRequest GridShutdownReq = new XmlRpcRequest("shutdown",ShutdownParams); XmlRpcRequest GridShutdownReq = new XmlRpcRequest("shutdown",ShutdownParams);
XmlRpcResponse GridResp = GridShutdownReq.Send(this.ServerURL,3000); XmlRpcResponse GridResp = GridShutdownReq.Send(this.ServerURL,3000);
if(GridResp.IsFault) { if(GridResp.IsFault) {
return false; return false;
} else { } else {
connected=false; connected=false;
return true; return true;
} }
} catch(Exception e) { } catch(Exception e) {
Console.WriteLine(e.ToString()); Console.WriteLine(e.ToString());
return false; return false;
} }
} }
public void DisconnectServer() public void DisconnectServer()
{ {
this.connected=false; this.connected=false;
} }
} }
} }

View File

@ -1,124 +1,123 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
// project created on 5/14/2007 at 2:04 PM using System;
using System; using System.Threading;
using System.Threading; using Gtk;
using Gtk;
namespace OpenGridServices.Manager
namespace OpenGridServices.Manager {
{ class MainClass
class MainClass {
{
public static bool QuitReq=false;
public static bool QuitReq=false; public static BlockingQueue<string> PendingOperations = new BlockingQueue<string>();
public static BlockingQueue<string> PendingOperations = new BlockingQueue<string>();
private static Thread OperationsRunner;
private static Thread OperationsRunner;
private static GridServerConnectionManager gridserverConn;
private static GridServerConnectionManager gridserverConn;
private static MainWindow win;
private static MainWindow win;
public static void DoMainLoop()
public static void DoMainLoop() {
{ while(!QuitReq)
while(!QuitReq) {
{ Application.RunIteration();
Application.RunIteration(); }
} }
}
public static void RunOperations()
public static void RunOperations() {
{ string operation;
string operation; string cmd;
string cmd; char[] sep = new char[1];
char[] sep = new char[1]; sep[0]=' ';
sep[0]=' '; while(!QuitReq)
while(!QuitReq) {
{ operation=PendingOperations.Dequeue();
operation=PendingOperations.Dequeue(); Console.WriteLine(operation);
Console.WriteLine(operation); cmd = operation.Split(sep)[0];
cmd = operation.Split(sep)[0]; switch(cmd) {
switch(cmd) { case "connect_to_gridserver":
case "connect_to_gridserver": win.SetStatus("Connecting to grid server...");
win.SetStatus("Connecting to grid server..."); if(gridserverConn.Connect(operation.Split(sep)[1],operation.Split(sep)[2],operation.Split(sep)[3])) {
if(gridserverConn.Connect(operation.Split(sep)[1],operation.Split(sep)[2],operation.Split(sep)[3])) { win.SetStatus("Connected OK with session ID:" + gridserverConn.SessionID);
win.SetStatus("Connected OK with session ID:" + gridserverConn.SessionID); win.SetGridServerConnected(true);
win.SetGridServerConnected(true); Thread.Sleep(3000);
Thread.Sleep(3000); win.SetStatus("Downloading region maps...");
win.SetStatus("Downloading region maps..."); gridserverConn.DownloadMap();
gridserverConn.DownloadMap(); } else {
} else { win.SetStatus("Could not connect");
win.SetStatus("Could not connect"); }
} break;
break;
case "restart_gridserver":
case "restart_gridserver": win.SetStatus("Restarting grid server...");
win.SetStatus("Restarting grid server..."); if(gridserverConn.RestartServer()) {
if(gridserverConn.RestartServer()) { win.SetStatus("Restarted server OK");
win.SetStatus("Restarted server OK"); Thread.Sleep(3000);
Thread.Sleep(3000); win.SetStatus("");
win.SetStatus(""); } else {
} else { win.SetStatus("Error restarting grid server!!!");
win.SetStatus("Error restarting grid server!!!"); }
} break;
break;
case "shutdown_gridserver":
case "shutdown_gridserver": win.SetStatus("Shutting down grid server...");
win.SetStatus("Shutting down grid server..."); if(gridserverConn.ShutdownServer()) {
if(gridserverConn.ShutdownServer()) { win.SetStatus("Grid server shutdown");
win.SetStatus("Grid server shutdown"); win.SetGridServerConnected(false);
win.SetGridServerConnected(false); Thread.Sleep(3000);
Thread.Sleep(3000); win.SetStatus("");
win.SetStatus(""); } else {
} else { win.SetStatus("Could not shutdown grid server!!!");
win.SetStatus("Could not shutdown grid server!!!"); }
} break;
break;
case "disconnect_gridserver":
case "disconnect_gridserver": gridserverConn.DisconnectServer();
gridserverConn.DisconnectServer(); win.SetGridServerConnected(false);
win.SetGridServerConnected(false); break;
break; }
} }
} }
}
public static void Main (string[] args)
public static void Main (string[] args) {
{ gridserverConn = new GridServerConnectionManager();
gridserverConn = new GridServerConnectionManager(); Application.Init ();
Application.Init (); win = new MainWindow ();
win = new MainWindow (); win.Show ();
win.Show (); OperationsRunner = new Thread(new ThreadStart(RunOperations));
OperationsRunner = new Thread(new ThreadStart(RunOperations)); OperationsRunner.IsBackground=true;
OperationsRunner.IsBackground=true; OperationsRunner.Start();
OperationsRunner.Start(); DoMainLoop();
DoMainLoop(); }
} }
} }
}

View File

@ -1,104 +1,104 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using System; using System;
using Gtk; using Gtk;
namespace OpenGridServices.Manager { namespace OpenGridServices.Manager
public partial class MainWindow: Gtk.Window {
{ public partial class MainWindow: Gtk.Window
public MainWindow (): base (Gtk.WindowType.Toplevel) {
{ public MainWindow (): base (Gtk.WindowType.Toplevel)
Build (); {
} Build();
}
public void SetStatus(string statustext)
{ public void SetStatus(string statustext)
this.statusbar1.Pop(0); {
this.statusbar1.Push(0,statustext); this.statusbar1.Pop(0);
} this.statusbar1.Push(0, statustext);
}
public void DrawGrid(RegionBlock[][] regions)
{ public void DrawGrid(RegionBlock[][] regions)
for(int x=0; x<=regions.GetUpperBound(0); x++) { {
for(int y=0; y<=regions.GetUpperBound(1); y++) { for (int x=0; x<=regions.GetUpperBound(0); x++)
Gdk.Image themap = new Gdk.Image(Gdk.ImageType.Fastest,Gdk.Visual.System,256,256); {
this.drawingarea1.GdkWindow.DrawImage(new Gdk.GC(this.drawingarea1.GdkWindow),themap,0,0,x*256,y*256,256,256); for (int y=0; y<=regions.GetUpperBound(1); y++)
} {
} Gdk.Image themap = new Gdk.Image(Gdk.ImageType.Fastest,Gdk.Visual.System,256,256);
} this.drawingarea1.GdkWindow.DrawImage(new Gdk.GC(this.drawingarea1.GdkWindow),themap,0,0,x*256,y*256,256,256);
}
public void SetGridServerConnected(bool connected) }
{ }
if(connected) {
this.ConnectToGridserver.Visible=false; public void SetGridServerConnected(bool connected)
this.DisconnectFromGridServer.Visible=true; {
} else { if (connected) {
this.ConnectToGridserver.Visible=true; this.ConnectToGridserver.Visible=false;
this.DisconnectFromGridServer.Visible=false; this.DisconnectFromGridServer.Visible=true;
} } else {
} this.ConnectToGridserver.Visible=true;
this.DisconnectFromGridServer.Visible=false;
protected void OnDeleteEvent (object sender, DeleteEventArgs a) }
{ }
Application.Quit ();
MainClass.QuitReq=true; protected void OnDeleteEvent (object sender, DeleteEventArgs a)
a.RetVal = true; {
} Application.Quit ();
MainClass.QuitReq=true;
protected virtual void QuitMenu(object sender, System.EventArgs e) a.RetVal = true;
{ }
MainClass.QuitReq=true;
Application.Quit(); protected virtual void QuitMenu(object sender, System.EventArgs e)
} {
MainClass.QuitReq=true;
protected virtual void ConnectToGridServerMenu(object sender, System.EventArgs e) Application.Quit();
{ }
ConnectToGridServerDialog griddialog = new ConnectToGridServerDialog ();
griddialog.Show(); protected virtual void ConnectToGridServerMenu(object sender, System.EventArgs e)
} {
ConnectToGridServerDialog griddialog = new ConnectToGridServerDialog ();
protected virtual void RestartGridserverMenu(object sender, System.EventArgs e) griddialog.Show();
{ }
MainClass.PendingOperations.Enqueue("restart_gridserver");
} protected virtual void RestartGridserverMenu(object sender, System.EventArgs e)
{
protected virtual void ShutdownGridserverMenu(object sender, System.EventArgs e) MainClass.PendingOperations.Enqueue("restart_gridserver");
{ }
MainClass.PendingOperations.Enqueue("shutdown_gridserver");
} protected virtual void ShutdownGridserverMenu(object sender, System.EventArgs e)
{
protected virtual void DisconnectGridServerMenu(object sender, System.EventArgs e) MainClass.PendingOperations.Enqueue("shutdown_gridserver");
{ }
MainClass.PendingOperations.Enqueue("disconnect_gridserver");
} protected virtual void DisconnectGridServerMenu(object sender, System.EventArgs e)
{
} MainClass.PendingOperations.Enqueue("disconnect_gridserver");
} }
}
}

View File

@ -1,65 +1,63 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using System; using System;
using System.Xml; using System.Xml;
using libsecondlife; using libsecondlife;
using OpenSim.Framework.Utilities; using OpenSim.Framework.Utilities;
namespace OpenGridServices.Manager namespace OpenGridServices.Manager
{ {
public class RegionBlock
{
public class RegionBlock public uint regloc_x;
{ public uint regloc_y;
public uint regloc_x;
public uint regloc_y; public string httpd_url;
public string httpd_url; public string region_name;
public string region_name; public ulong regionhandle {
get { return Util.UIntsToLong(regloc_x*256,regloc_y*256); }
public ulong regionhandle { }
get { return Util.UIntsToLong(regloc_x*256,regloc_y*256); }
} public Gdk.Pixbuf MiniMap;
public Gdk.Pixbuf MiniMap; public RegionBlock()
{
public RegionBlock() }
{
} public void LoadFromXmlNode(XmlNode sourcenode)
{
public void LoadFromXmlNode(XmlNode sourcenode) this.regloc_x=Convert.ToUInt32(sourcenode.Attributes.GetNamedItem("loc_x").Value);
{ this.regloc_y=Convert.ToUInt32(sourcenode.Attributes.GetNamedItem("loc_y").Value);
this.regloc_x=Convert.ToUInt32(sourcenode.Attributes.GetNamedItem("loc_x").Value); this.region_name=sourcenode.Attributes.GetNamedItem("region_name").Value;
this.regloc_y=Convert.ToUInt32(sourcenode.Attributes.GetNamedItem("loc_y").Value); this.httpd_url=sourcenode.Attributes.GetNamedItem("httpd_url").Value;
this.region_name=sourcenode.Attributes.GetNamedItem("region_name").Value; }
this.httpd_url=sourcenode.Attributes.GetNamedItem("httpd_url").Value; }
} }
}
}

View File

@ -1,161 +1,161 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
using libsecondlife; using libsecondlife;
using libsecondlife.Packets; using libsecondlife.Packets;
namespace OpenSim.Framework.Utilities namespace OpenSim.Framework.Utilities
{ {
public class Util public class Util
{ {
private static Random randomClass = new Random(); private static Random randomClass = new Random();
private static uint nextXferID = 5000; private static uint nextXferID = 5000;
private static object XferLock = new object(); private static object XferLock = new object();
public static ulong UIntsToLong(uint X, uint Y) public static ulong UIntsToLong(uint X, uint Y)
{ {
return Helpers.UIntsToLong(X, Y); return Helpers.UIntsToLong(X, Y);
} }
public static Random RandomClass public static Random RandomClass
{ {
get get
{ {
return randomClass; return randomClass;
} }
} }
public static uint GetNextXferID() public static uint GetNextXferID()
{ {
uint id = 0; uint id = 0;
lock(XferLock) lock(XferLock)
{ {
id = nextXferID; id = nextXferID;
nextXferID++; nextXferID++;
} }
return id; return id;
} }
//public static int fast_distance2d(int x, int y) //public static int fast_distance2d(int x, int y)
//{ //{
// x = System.Math.Abs(x); // x = System.Math.Abs(x);
// y = System.Math.Abs(y); // y = System.Math.Abs(y);
// int min = System.Math.Min(x, y); // int min = System.Math.Min(x, y);
// return (x + y - (min >> 1) - (min >> 2) + (min >> 4)); // return (x + y - (min >> 1) - (min >> 2) + (min >> 4));
//} //}
public static string FieldToString(byte[] bytes) public static string FieldToString(byte[] bytes)
{ {
return FieldToString(bytes, String.Empty); return FieldToString(bytes, String.Empty);
} }
/// <summary> /// <summary>
/// Convert a variable length field (byte array) to a string, with a /// Convert a variable length field (byte array) to a string, with a
/// field name prepended to each line of the output /// field name prepended to each line of the output
/// </summary> /// </summary>
/// <remarks>If the byte array has unprintable characters in it, a /// <remarks>If the byte array has unprintable characters in it, a
/// hex dump will be put in the string instead</remarks> /// hex dump will be put in the string instead</remarks>
/// <param name="bytes">The byte array to convert to a string</param> /// <param name="bytes">The byte array to convert to a string</param>
/// <param name="fieldName">A field name to prepend to each line of output</param> /// <param name="fieldName">A field name to prepend to each line of output</param>
/// <returns>An ASCII string or a string containing a hex dump, minus /// <returns>An ASCII string or a string containing a hex dump, minus
/// the null terminator</returns> /// the null terminator</returns>
public static string FieldToString(byte[] bytes, string fieldName) public static string FieldToString(byte[] bytes, string fieldName)
{ {
// Check for a common case // Check for a common case
if (bytes.Length == 0) return String.Empty; if (bytes.Length == 0) return String.Empty;
StringBuilder output = new StringBuilder(); StringBuilder output = new StringBuilder();
bool printable = true; bool printable = true;
for (int i = 0; i < bytes.Length; ++i) for (int i = 0; i < bytes.Length; ++i)
{ {
// Check if there are any unprintable characters in the array // Check if there are any unprintable characters in the array
if ((bytes[i] < 0x20 || bytes[i] > 0x7E) && bytes[i] != 0x09 if ((bytes[i] < 0x20 || bytes[i] > 0x7E) && bytes[i] != 0x09
&& bytes[i] != 0x0D && bytes[i] != 0x0A && bytes[i] != 0x00) && bytes[i] != 0x0D && bytes[i] != 0x0A && bytes[i] != 0x00)
{ {
printable = false; printable = false;
break; break;
} }
} }
if (printable) if (printable)
{ {
if (fieldName.Length > 0) if (fieldName.Length > 0)
{ {
output.Append(fieldName); output.Append(fieldName);
output.Append(": "); output.Append(": ");
} }
if (bytes[bytes.Length - 1] == 0x00) if (bytes[bytes.Length - 1] == 0x00)
output.Append(UTF8Encoding.UTF8.GetString(bytes, 0, bytes.Length - 1)); output.Append(UTF8Encoding.UTF8.GetString(bytes, 0, bytes.Length - 1));
else else
output.Append(UTF8Encoding.UTF8.GetString(bytes)); output.Append(UTF8Encoding.UTF8.GetString(bytes));
} }
else else
{ {
for (int i = 0; i < bytes.Length; i += 16) for (int i = 0; i < bytes.Length; i += 16)
{ {
if (i != 0) if (i != 0)
output.Append(Environment.NewLine); output.Append(Environment.NewLine);
if (fieldName.Length > 0) if (fieldName.Length > 0)
{ {
output.Append(fieldName); output.Append(fieldName);
output.Append(": "); output.Append(": ");
} }
for (int j = 0; j < 16; j++) for (int j = 0; j < 16; j++)
{ {
if ((i + j) < bytes.Length) if ((i + j) < bytes.Length)
output.Append(String.Format("{0:X2} ", bytes[i + j])); output.Append(String.Format("{0:X2} ", bytes[i + j]));
else else
output.Append(" "); output.Append(" ");
} }
for (int j = 0; j < 16 && (i + j) < bytes.Length; j++) for (int j = 0; j < 16 && (i + j) < bytes.Length; j++)
{ {
if (bytes[i + j] >= 0x20 && bytes[i + j] < 0x7E) if (bytes[i + j] >= 0x20 && bytes[i + j] < 0x7E)
output.Append((char)bytes[i + j]); output.Append((char)bytes[i + j]);
else else
output.Append("."); output.Append(".");
} }
} }
} }
return output.ToString(); return output.ToString();
} }
public Util() public Util()
{ {
} }
} }
} }

View File

@ -1,254 +1,254 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <autogenerated> // <autogenerated>
// This code was generated by a tool. // This code was generated by a tool.
// Mono Runtime Version: 2.0.50727.42 // Mono Runtime Version: 2.0.50727.42
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </autogenerated> // </autogenerated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
namespace OpenGridServices.Manager { namespace OpenGridServices.Manager {
public partial class ConnectToGridServerDialog { public partial class ConnectToGridServerDialog {
private Gtk.VBox vbox2; private Gtk.VBox vbox2;
private Gtk.VBox vbox3; private Gtk.VBox vbox3;
private Gtk.HBox hbox1; private Gtk.HBox hbox1;
private Gtk.Label label1; private Gtk.Label label1;
private Gtk.Entry entry1; private Gtk.Entry entry1;
private Gtk.HBox hbox2; private Gtk.HBox hbox2;
private Gtk.Label label2; private Gtk.Label label2;
private Gtk.Entry entry2; private Gtk.Entry entry2;
private Gtk.HBox hbox3; private Gtk.HBox hbox3;
private Gtk.Label label3; private Gtk.Label label3;
private Gtk.Entry entry3; private Gtk.Entry entry3;
private Gtk.Button button2; private Gtk.Button button2;
private Gtk.Button button8; private Gtk.Button button8;
protected virtual void Build() { protected virtual void Build() {
Stetic.Gui.Initialize(); Stetic.Gui.Initialize();
// Widget OpenGridServices.Manager.ConnectToGridServerDialog // Widget OpenGridServices.Manager.ConnectToGridServerDialog
this.Events = ((Gdk.EventMask)(256)); this.Events = ((Gdk.EventMask)(256));
this.Name = "OpenGridServices.Manager.ConnectToGridServerDialog"; this.Name = "OpenGridServices.Manager.ConnectToGridServerDialog";
this.Title = Mono.Unix.Catalog.GetString("Connect to Grid server"); this.Title = Mono.Unix.Catalog.GetString("Connect to Grid server");
this.WindowPosition = ((Gtk.WindowPosition)(4)); this.WindowPosition = ((Gtk.WindowPosition)(4));
this.HasSeparator = false; this.HasSeparator = false;
// Internal child OpenGridServices.Manager.ConnectToGridServerDialog.VBox // Internal child OpenGridServices.Manager.ConnectToGridServerDialog.VBox
Gtk.VBox w1 = this.VBox; Gtk.VBox w1 = this.VBox;
w1.Events = ((Gdk.EventMask)(256)); w1.Events = ((Gdk.EventMask)(256));
w1.Name = "dialog_VBox"; w1.Name = "dialog_VBox";
w1.BorderWidth = ((uint)(2)); w1.BorderWidth = ((uint)(2));
// Container child dialog_VBox.Gtk.Box+BoxChild // Container child dialog_VBox.Gtk.Box+BoxChild
this.vbox2 = new Gtk.VBox(); this.vbox2 = new Gtk.VBox();
this.vbox2.Name = "vbox2"; this.vbox2.Name = "vbox2";
// Container child vbox2.Gtk.Box+BoxChild // Container child vbox2.Gtk.Box+BoxChild
this.vbox3 = new Gtk.VBox(); this.vbox3 = new Gtk.VBox();
this.vbox3.Name = "vbox3"; this.vbox3.Name = "vbox3";
// Container child vbox3.Gtk.Box+BoxChild // Container child vbox3.Gtk.Box+BoxChild
this.hbox1 = new Gtk.HBox(); this.hbox1 = new Gtk.HBox();
this.hbox1.Name = "hbox1"; this.hbox1.Name = "hbox1";
// Container child hbox1.Gtk.Box+BoxChild // Container child hbox1.Gtk.Box+BoxChild
this.label1 = new Gtk.Label(); this.label1 = new Gtk.Label();
this.label1.Name = "label1"; this.label1.Name = "label1";
this.label1.Xalign = 1F; this.label1.Xalign = 1F;
this.label1.LabelProp = Mono.Unix.Catalog.GetString("Grid server URL: "); this.label1.LabelProp = Mono.Unix.Catalog.GetString("Grid server URL: ");
this.label1.Justify = ((Gtk.Justification)(1)); this.label1.Justify = ((Gtk.Justification)(1));
this.hbox1.Add(this.label1); this.hbox1.Add(this.label1);
Gtk.Box.BoxChild w2 = ((Gtk.Box.BoxChild)(this.hbox1[this.label1])); Gtk.Box.BoxChild w2 = ((Gtk.Box.BoxChild)(this.hbox1[this.label1]));
w2.Position = 0; w2.Position = 0;
// Container child hbox1.Gtk.Box+BoxChild // Container child hbox1.Gtk.Box+BoxChild
this.entry1 = new Gtk.Entry(); this.entry1 = new Gtk.Entry();
this.entry1.CanFocus = true; this.entry1.CanFocus = true;
this.entry1.Name = "entry1"; this.entry1.Name = "entry1";
this.entry1.Text = Mono.Unix.Catalog.GetString("http://gridserver:8001"); this.entry1.Text = Mono.Unix.Catalog.GetString("http://gridserver:8001");
this.entry1.IsEditable = true; this.entry1.IsEditable = true;
this.entry1.MaxLength = 255; this.entry1.MaxLength = 255;
this.entry1.InvisibleChar = '•'; this.entry1.InvisibleChar = '•';
this.hbox1.Add(this.entry1); this.hbox1.Add(this.entry1);
Gtk.Box.BoxChild w3 = ((Gtk.Box.BoxChild)(this.hbox1[this.entry1])); Gtk.Box.BoxChild w3 = ((Gtk.Box.BoxChild)(this.hbox1[this.entry1]));
w3.Position = 1; w3.Position = 1;
this.vbox3.Add(this.hbox1); this.vbox3.Add(this.hbox1);
Gtk.Box.BoxChild w4 = ((Gtk.Box.BoxChild)(this.vbox3[this.hbox1])); Gtk.Box.BoxChild w4 = ((Gtk.Box.BoxChild)(this.vbox3[this.hbox1]));
w4.Position = 0; w4.Position = 0;
w4.Expand = false; w4.Expand = false;
w4.Fill = false; w4.Fill = false;
// Container child vbox3.Gtk.Box+BoxChild // Container child vbox3.Gtk.Box+BoxChild
this.hbox2 = new Gtk.HBox(); this.hbox2 = new Gtk.HBox();
this.hbox2.Name = "hbox2"; this.hbox2.Name = "hbox2";
// Container child hbox2.Gtk.Box+BoxChild // Container child hbox2.Gtk.Box+BoxChild
this.label2 = new Gtk.Label(); this.label2 = new Gtk.Label();
this.label2.Name = "label2"; this.label2.Name = "label2";
this.label2.Xalign = 1F; this.label2.Xalign = 1F;
this.label2.LabelProp = Mono.Unix.Catalog.GetString("Username:"); this.label2.LabelProp = Mono.Unix.Catalog.GetString("Username:");
this.label2.Justify = ((Gtk.Justification)(1)); this.label2.Justify = ((Gtk.Justification)(1));
this.hbox2.Add(this.label2); this.hbox2.Add(this.label2);
Gtk.Box.BoxChild w5 = ((Gtk.Box.BoxChild)(this.hbox2[this.label2])); Gtk.Box.BoxChild w5 = ((Gtk.Box.BoxChild)(this.hbox2[this.label2]));
w5.Position = 0; w5.Position = 0;
// Container child hbox2.Gtk.Box+BoxChild // Container child hbox2.Gtk.Box+BoxChild
this.entry2 = new Gtk.Entry(); this.entry2 = new Gtk.Entry();
this.entry2.CanFocus = true; this.entry2.CanFocus = true;
this.entry2.Name = "entry2"; this.entry2.Name = "entry2";
this.entry2.IsEditable = true; this.entry2.IsEditable = true;
this.entry2.InvisibleChar = '•'; this.entry2.InvisibleChar = '•';
this.hbox2.Add(this.entry2); this.hbox2.Add(this.entry2);
Gtk.Box.BoxChild w6 = ((Gtk.Box.BoxChild)(this.hbox2[this.entry2])); Gtk.Box.BoxChild w6 = ((Gtk.Box.BoxChild)(this.hbox2[this.entry2]));
w6.Position = 1; w6.Position = 1;
this.vbox3.Add(this.hbox2); this.vbox3.Add(this.hbox2);
Gtk.Box.BoxChild w7 = ((Gtk.Box.BoxChild)(this.vbox3[this.hbox2])); Gtk.Box.BoxChild w7 = ((Gtk.Box.BoxChild)(this.vbox3[this.hbox2]));
w7.Position = 1; w7.Position = 1;
w7.Expand = false; w7.Expand = false;
w7.Fill = false; w7.Fill = false;
// Container child vbox3.Gtk.Box+BoxChild // Container child vbox3.Gtk.Box+BoxChild
this.hbox3 = new Gtk.HBox(); this.hbox3 = new Gtk.HBox();
this.hbox3.Name = "hbox3"; this.hbox3.Name = "hbox3";
// Container child hbox3.Gtk.Box+BoxChild // Container child hbox3.Gtk.Box+BoxChild
this.label3 = new Gtk.Label(); this.label3 = new Gtk.Label();
this.label3.Name = "label3"; this.label3.Name = "label3";
this.label3.Xalign = 1F; this.label3.Xalign = 1F;
this.label3.LabelProp = Mono.Unix.Catalog.GetString("Password:"); this.label3.LabelProp = Mono.Unix.Catalog.GetString("Password:");
this.label3.Justify = ((Gtk.Justification)(1)); this.label3.Justify = ((Gtk.Justification)(1));
this.hbox3.Add(this.label3); this.hbox3.Add(this.label3);
Gtk.Box.BoxChild w8 = ((Gtk.Box.BoxChild)(this.hbox3[this.label3])); Gtk.Box.BoxChild w8 = ((Gtk.Box.BoxChild)(this.hbox3[this.label3]));
w8.Position = 0; w8.Position = 0;
// Container child hbox3.Gtk.Box+BoxChild // Container child hbox3.Gtk.Box+BoxChild
this.entry3 = new Gtk.Entry(); this.entry3 = new Gtk.Entry();
this.entry3.CanFocus = true; this.entry3.CanFocus = true;
this.entry3.Name = "entry3"; this.entry3.Name = "entry3";
this.entry3.IsEditable = true; this.entry3.IsEditable = true;
this.entry3.InvisibleChar = '•'; this.entry3.InvisibleChar = '•';
this.hbox3.Add(this.entry3); this.hbox3.Add(this.entry3);
Gtk.Box.BoxChild w9 = ((Gtk.Box.BoxChild)(this.hbox3[this.entry3])); Gtk.Box.BoxChild w9 = ((Gtk.Box.BoxChild)(this.hbox3[this.entry3]));
w9.Position = 1; w9.Position = 1;
this.vbox3.Add(this.hbox3); this.vbox3.Add(this.hbox3);
Gtk.Box.BoxChild w10 = ((Gtk.Box.BoxChild)(this.vbox3[this.hbox3])); Gtk.Box.BoxChild w10 = ((Gtk.Box.BoxChild)(this.vbox3[this.hbox3]));
w10.Position = 2; w10.Position = 2;
w10.Expand = false; w10.Expand = false;
w10.Fill = false; w10.Fill = false;
this.vbox2.Add(this.vbox3); this.vbox2.Add(this.vbox3);
Gtk.Box.BoxChild w11 = ((Gtk.Box.BoxChild)(this.vbox2[this.vbox3])); Gtk.Box.BoxChild w11 = ((Gtk.Box.BoxChild)(this.vbox2[this.vbox3]));
w11.Position = 2; w11.Position = 2;
w11.Expand = false; w11.Expand = false;
w11.Fill = false; w11.Fill = false;
w1.Add(this.vbox2); w1.Add(this.vbox2);
Gtk.Box.BoxChild w12 = ((Gtk.Box.BoxChild)(w1[this.vbox2])); Gtk.Box.BoxChild w12 = ((Gtk.Box.BoxChild)(w1[this.vbox2]));
w12.Position = 0; w12.Position = 0;
// Internal child OpenGridServices.Manager.ConnectToGridServerDialog.ActionArea // Internal child OpenGridServices.Manager.ConnectToGridServerDialog.ActionArea
Gtk.HButtonBox w13 = this.ActionArea; Gtk.HButtonBox w13 = this.ActionArea;
w13.Events = ((Gdk.EventMask)(256)); w13.Events = ((Gdk.EventMask)(256));
w13.Name = "OpenGridServices.Manager.ConnectToGridServerDialog_ActionArea"; w13.Name = "OpenGridServices.Manager.ConnectToGridServerDialog_ActionArea";
w13.Spacing = 6; w13.Spacing = 6;
w13.BorderWidth = ((uint)(5)); w13.BorderWidth = ((uint)(5));
w13.LayoutStyle = ((Gtk.ButtonBoxStyle)(4)); w13.LayoutStyle = ((Gtk.ButtonBoxStyle)(4));
// Container child OpenGridServices.Manager.ConnectToGridServerDialog_ActionArea.Gtk.ButtonBox+ButtonBoxChild // Container child OpenGridServices.Manager.ConnectToGridServerDialog_ActionArea.Gtk.ButtonBox+ButtonBoxChild
this.button2 = new Gtk.Button(); this.button2 = new Gtk.Button();
this.button2.CanDefault = true; this.button2.CanDefault = true;
this.button2.CanFocus = true; this.button2.CanFocus = true;
this.button2.Name = "button2"; this.button2.Name = "button2";
this.button2.UseUnderline = true; this.button2.UseUnderline = true;
// Container child button2.Gtk.Container+ContainerChild // Container child button2.Gtk.Container+ContainerChild
Gtk.Alignment w14 = new Gtk.Alignment(0.5F, 0.5F, 0F, 0F); Gtk.Alignment w14 = new Gtk.Alignment(0.5F, 0.5F, 0F, 0F);
w14.Name = "GtkAlignment"; w14.Name = "GtkAlignment";
// Container child GtkAlignment.Gtk.Container+ContainerChild // Container child GtkAlignment.Gtk.Container+ContainerChild
Gtk.HBox w15 = new Gtk.HBox(); Gtk.HBox w15 = new Gtk.HBox();
w15.Name = "GtkHBox"; w15.Name = "GtkHBox";
w15.Spacing = 2; w15.Spacing = 2;
// Container child GtkHBox.Gtk.Container+ContainerChild // Container child GtkHBox.Gtk.Container+ContainerChild
Gtk.Image w16 = new Gtk.Image(); Gtk.Image w16 = new Gtk.Image();
w16.Name = "image1"; w16.Name = "image1";
w16.Pixbuf = Gtk.IconTheme.Default.LoadIcon("gtk-apply", 16, 0); w16.Pixbuf = Gtk.IconTheme.Default.LoadIcon("gtk-apply", 16, 0);
w15.Add(w16); w15.Add(w16);
// Container child GtkHBox.Gtk.Container+ContainerChild // Container child GtkHBox.Gtk.Container+ContainerChild
Gtk.Label w18 = new Gtk.Label(); Gtk.Label w18 = new Gtk.Label();
w18.Name = "GtkLabel"; w18.Name = "GtkLabel";
w18.LabelProp = Mono.Unix.Catalog.GetString("Connect"); w18.LabelProp = Mono.Unix.Catalog.GetString("Connect");
w18.UseUnderline = true; w18.UseUnderline = true;
w15.Add(w18); w15.Add(w18);
w14.Add(w15); w14.Add(w15);
this.button2.Add(w14); this.button2.Add(w14);
this.AddActionWidget(this.button2, -5); this.AddActionWidget(this.button2, -5);
Gtk.ButtonBox.ButtonBoxChild w22 = ((Gtk.ButtonBox.ButtonBoxChild)(w13[this.button2])); Gtk.ButtonBox.ButtonBoxChild w22 = ((Gtk.ButtonBox.ButtonBoxChild)(w13[this.button2]));
w22.Expand = false; w22.Expand = false;
w22.Fill = false; w22.Fill = false;
// Container child OpenGridServices.Manager.ConnectToGridServerDialog_ActionArea.Gtk.ButtonBox+ButtonBoxChild // Container child OpenGridServices.Manager.ConnectToGridServerDialog_ActionArea.Gtk.ButtonBox+ButtonBoxChild
this.button8 = new Gtk.Button(); this.button8 = new Gtk.Button();
this.button8.CanDefault = true; this.button8.CanDefault = true;
this.button8.CanFocus = true; this.button8.CanFocus = true;
this.button8.Name = "button8"; this.button8.Name = "button8";
this.button8.UseUnderline = true; this.button8.UseUnderline = true;
// Container child button8.Gtk.Container+ContainerChild // Container child button8.Gtk.Container+ContainerChild
Gtk.Alignment w23 = new Gtk.Alignment(0.5F, 0.5F, 0F, 0F); Gtk.Alignment w23 = new Gtk.Alignment(0.5F, 0.5F, 0F, 0F);
w23.Name = "GtkAlignment1"; w23.Name = "GtkAlignment1";
// Container child GtkAlignment1.Gtk.Container+ContainerChild // Container child GtkAlignment1.Gtk.Container+ContainerChild
Gtk.HBox w24 = new Gtk.HBox(); Gtk.HBox w24 = new Gtk.HBox();
w24.Name = "GtkHBox1"; w24.Name = "GtkHBox1";
w24.Spacing = 2; w24.Spacing = 2;
// Container child GtkHBox1.Gtk.Container+ContainerChild // Container child GtkHBox1.Gtk.Container+ContainerChild
Gtk.Image w25 = new Gtk.Image(); Gtk.Image w25 = new Gtk.Image();
w25.Name = "image2"; w25.Name = "image2";
w25.Pixbuf = Gtk.IconTheme.Default.LoadIcon("gtk-cancel", 16, 0); w25.Pixbuf = Gtk.IconTheme.Default.LoadIcon("gtk-cancel", 16, 0);
w24.Add(w25); w24.Add(w25);
// Container child GtkHBox1.Gtk.Container+ContainerChild // Container child GtkHBox1.Gtk.Container+ContainerChild
Gtk.Label w27 = new Gtk.Label(); Gtk.Label w27 = new Gtk.Label();
w27.Name = "GtkLabel1"; w27.Name = "GtkLabel1";
w27.LabelProp = Mono.Unix.Catalog.GetString("Cancel"); w27.LabelProp = Mono.Unix.Catalog.GetString("Cancel");
w27.UseUnderline = true; w27.UseUnderline = true;
w24.Add(w27); w24.Add(w27);
w23.Add(w24); w23.Add(w24);
this.button8.Add(w23); this.button8.Add(w23);
this.AddActionWidget(this.button8, -6); this.AddActionWidget(this.button8, -6);
Gtk.ButtonBox.ButtonBoxChild w31 = ((Gtk.ButtonBox.ButtonBoxChild)(w13[this.button8])); Gtk.ButtonBox.ButtonBoxChild w31 = ((Gtk.ButtonBox.ButtonBoxChild)(w13[this.button8]));
w31.Position = 1; w31.Position = 1;
w31.Expand = false; w31.Expand = false;
w31.Fill = false; w31.Fill = false;
if ((this.Child != null)) { if ((this.Child != null)) {
this.Child.ShowAll(); this.Child.ShowAll();
} }
this.DefaultWidth = 476; this.DefaultWidth = 476;
this.DefaultHeight = 137; this.DefaultHeight = 137;
this.Show(); this.Show();
this.Response += new Gtk.ResponseHandler(this.OnResponse); this.Response += new Gtk.ResponseHandler(this.OnResponse);
} }
} }
} }

View File

@ -1,284 +1,284 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <autogenerated> // <autogenerated>
// This code was generated by a tool. // This code was generated by a tool.
// Mono Runtime Version: 2.0.50727.42 // Mono Runtime Version: 2.0.50727.42
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </autogenerated> // </autogenerated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
namespace OpenGridServices.Manager { namespace OpenGridServices.Manager {
public partial class MainWindow { public partial class MainWindow {
private Gtk.Action Grid; private Gtk.Action Grid;
private Gtk.Action User; private Gtk.Action User;
private Gtk.Action Asset; private Gtk.Action Asset;
private Gtk.Action Region; private Gtk.Action Region;
private Gtk.Action Services; private Gtk.Action Services;
private Gtk.Action ConnectToGridserver; private Gtk.Action ConnectToGridserver;
private Gtk.Action RestartWholeGrid; private Gtk.Action RestartWholeGrid;
private Gtk.Action ShutdownWholeGrid; private Gtk.Action ShutdownWholeGrid;
private Gtk.Action ExitGridManager; private Gtk.Action ExitGridManager;
private Gtk.Action ConnectToUserserver; private Gtk.Action ConnectToUserserver;
private Gtk.Action AccountManagment; private Gtk.Action AccountManagment;
private Gtk.Action GlobalNotice; private Gtk.Action GlobalNotice;
private Gtk.Action DisableAllLogins; private Gtk.Action DisableAllLogins;
private Gtk.Action DisableNonGodUsersOnly; private Gtk.Action DisableNonGodUsersOnly;
private Gtk.Action ShutdownUserServer; private Gtk.Action ShutdownUserServer;
private Gtk.Action ShutdownGridserverOnly; private Gtk.Action ShutdownGridserverOnly;
private Gtk.Action RestartGridserverOnly; private Gtk.Action RestartGridserverOnly;
private Gtk.Action DefaultLocalGridUserserver; private Gtk.Action DefaultLocalGridUserserver;
private Gtk.Action CustomUserserver; private Gtk.Action CustomUserserver;
private Gtk.Action RemoteGridDefaultUserserver; private Gtk.Action RemoteGridDefaultUserserver;
private Gtk.Action DisconnectFromGridServer; private Gtk.Action DisconnectFromGridServer;
private Gtk.Action UploadAsset; private Gtk.Action UploadAsset;
private Gtk.Action AssetManagement; private Gtk.Action AssetManagement;
private Gtk.Action ConnectToAssetServer; private Gtk.Action ConnectToAssetServer;
private Gtk.Action ConnectToDefaultAssetServerForGrid; private Gtk.Action ConnectToDefaultAssetServerForGrid;
private Gtk.Action DefaultForLocalGrid; private Gtk.Action DefaultForLocalGrid;
private Gtk.Action DefaultForRemoteGrid; private Gtk.Action DefaultForRemoteGrid;
private Gtk.Action CustomAssetServer; private Gtk.Action CustomAssetServer;
private Gtk.VBox vbox1; private Gtk.VBox vbox1;
private Gtk.MenuBar menubar2; private Gtk.MenuBar menubar2;
private Gtk.HBox hbox1; private Gtk.HBox hbox1;
private Gtk.ScrolledWindow scrolledwindow1; private Gtk.ScrolledWindow scrolledwindow1;
private Gtk.DrawingArea drawingarea1; private Gtk.DrawingArea drawingarea1;
private Gtk.TreeView treeview1; private Gtk.TreeView treeview1;
private Gtk.Statusbar statusbar1; private Gtk.Statusbar statusbar1;
protected virtual void Build() { protected virtual void Build() {
Stetic.Gui.Initialize(); Stetic.Gui.Initialize();
// Widget OpenGridServices.Manager.MainWindow // Widget OpenGridServices.Manager.MainWindow
Gtk.UIManager w1 = new Gtk.UIManager(); Gtk.UIManager w1 = new Gtk.UIManager();
Gtk.ActionGroup w2 = new Gtk.ActionGroup("Default"); Gtk.ActionGroup w2 = new Gtk.ActionGroup("Default");
this.Grid = new Gtk.Action("Grid", Mono.Unix.Catalog.GetString("Grid"), null, null); this.Grid = new Gtk.Action("Grid", Mono.Unix.Catalog.GetString("Grid"), null, null);
this.Grid.HideIfEmpty = false; this.Grid.HideIfEmpty = false;
this.Grid.ShortLabel = Mono.Unix.Catalog.GetString("Grid"); this.Grid.ShortLabel = Mono.Unix.Catalog.GetString("Grid");
w2.Add(this.Grid, "<Alt><Mod2>g"); w2.Add(this.Grid, "<Alt><Mod2>g");
this.User = new Gtk.Action("User", Mono.Unix.Catalog.GetString("User"), null, null); this.User = new Gtk.Action("User", Mono.Unix.Catalog.GetString("User"), null, null);
this.User.HideIfEmpty = false; this.User.HideIfEmpty = false;
this.User.ShortLabel = Mono.Unix.Catalog.GetString("User"); this.User.ShortLabel = Mono.Unix.Catalog.GetString("User");
w2.Add(this.User, null); w2.Add(this.User, null);
this.Asset = new Gtk.Action("Asset", Mono.Unix.Catalog.GetString("Asset"), null, null); this.Asset = new Gtk.Action("Asset", Mono.Unix.Catalog.GetString("Asset"), null, null);
this.Asset.HideIfEmpty = false; this.Asset.HideIfEmpty = false;
this.Asset.ShortLabel = Mono.Unix.Catalog.GetString("Asset"); this.Asset.ShortLabel = Mono.Unix.Catalog.GetString("Asset");
w2.Add(this.Asset, null); w2.Add(this.Asset, null);
this.Region = new Gtk.Action("Region", Mono.Unix.Catalog.GetString("Region"), null, null); this.Region = new Gtk.Action("Region", Mono.Unix.Catalog.GetString("Region"), null, null);
this.Region.ShortLabel = Mono.Unix.Catalog.GetString("Region"); this.Region.ShortLabel = Mono.Unix.Catalog.GetString("Region");
w2.Add(this.Region, null); w2.Add(this.Region, null);
this.Services = new Gtk.Action("Services", Mono.Unix.Catalog.GetString("Services"), null, null); this.Services = new Gtk.Action("Services", Mono.Unix.Catalog.GetString("Services"), null, null);
this.Services.ShortLabel = Mono.Unix.Catalog.GetString("Services"); this.Services.ShortLabel = Mono.Unix.Catalog.GetString("Services");
w2.Add(this.Services, null); w2.Add(this.Services, null);
this.ConnectToGridserver = new Gtk.Action("ConnectToGridserver", Mono.Unix.Catalog.GetString("Connect to gridserver..."), null, "gtk-connect"); this.ConnectToGridserver = new Gtk.Action("ConnectToGridserver", Mono.Unix.Catalog.GetString("Connect to gridserver..."), null, "gtk-connect");
this.ConnectToGridserver.HideIfEmpty = false; this.ConnectToGridserver.HideIfEmpty = false;
this.ConnectToGridserver.ShortLabel = Mono.Unix.Catalog.GetString("Connect to gridserver"); this.ConnectToGridserver.ShortLabel = Mono.Unix.Catalog.GetString("Connect to gridserver");
w2.Add(this.ConnectToGridserver, null); w2.Add(this.ConnectToGridserver, null);
this.RestartWholeGrid = new Gtk.Action("RestartWholeGrid", Mono.Unix.Catalog.GetString("Restart whole grid"), null, "gtk-refresh"); this.RestartWholeGrid = new Gtk.Action("RestartWholeGrid", Mono.Unix.Catalog.GetString("Restart whole grid"), null, "gtk-refresh");
this.RestartWholeGrid.ShortLabel = Mono.Unix.Catalog.GetString("Restart whole grid"); this.RestartWholeGrid.ShortLabel = Mono.Unix.Catalog.GetString("Restart whole grid");
w2.Add(this.RestartWholeGrid, null); w2.Add(this.RestartWholeGrid, null);
this.ShutdownWholeGrid = new Gtk.Action("ShutdownWholeGrid", Mono.Unix.Catalog.GetString("Shutdown whole grid"), null, "gtk-stop"); this.ShutdownWholeGrid = new Gtk.Action("ShutdownWholeGrid", Mono.Unix.Catalog.GetString("Shutdown whole grid"), null, "gtk-stop");
this.ShutdownWholeGrid.ShortLabel = Mono.Unix.Catalog.GetString("Shutdown whole grid"); this.ShutdownWholeGrid.ShortLabel = Mono.Unix.Catalog.GetString("Shutdown whole grid");
w2.Add(this.ShutdownWholeGrid, null); w2.Add(this.ShutdownWholeGrid, null);
this.ExitGridManager = new Gtk.Action("ExitGridManager", Mono.Unix.Catalog.GetString("Exit grid manager"), null, "gtk-close"); this.ExitGridManager = new Gtk.Action("ExitGridManager", Mono.Unix.Catalog.GetString("Exit grid manager"), null, "gtk-close");
this.ExitGridManager.ShortLabel = Mono.Unix.Catalog.GetString("Exit grid manager"); this.ExitGridManager.ShortLabel = Mono.Unix.Catalog.GetString("Exit grid manager");
w2.Add(this.ExitGridManager, null); w2.Add(this.ExitGridManager, null);
this.ConnectToUserserver = new Gtk.Action("ConnectToUserserver", Mono.Unix.Catalog.GetString("Connect to userserver"), null, "gtk-connect"); this.ConnectToUserserver = new Gtk.Action("ConnectToUserserver", Mono.Unix.Catalog.GetString("Connect to userserver"), null, "gtk-connect");
this.ConnectToUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Connect to userserver"); this.ConnectToUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Connect to userserver");
w2.Add(this.ConnectToUserserver, null); w2.Add(this.ConnectToUserserver, null);
this.AccountManagment = new Gtk.Action("AccountManagment", Mono.Unix.Catalog.GetString("Account managment"), null, "gtk-properties"); this.AccountManagment = new Gtk.Action("AccountManagment", Mono.Unix.Catalog.GetString("Account managment"), null, "gtk-properties");
this.AccountManagment.ShortLabel = Mono.Unix.Catalog.GetString("Account managment"); this.AccountManagment.ShortLabel = Mono.Unix.Catalog.GetString("Account managment");
w2.Add(this.AccountManagment, null); w2.Add(this.AccountManagment, null);
this.GlobalNotice = new Gtk.Action("GlobalNotice", Mono.Unix.Catalog.GetString("Global notice"), null, "gtk-network"); this.GlobalNotice = new Gtk.Action("GlobalNotice", Mono.Unix.Catalog.GetString("Global notice"), null, "gtk-network");
this.GlobalNotice.ShortLabel = Mono.Unix.Catalog.GetString("Global notice"); this.GlobalNotice.ShortLabel = Mono.Unix.Catalog.GetString("Global notice");
w2.Add(this.GlobalNotice, null); w2.Add(this.GlobalNotice, null);
this.DisableAllLogins = new Gtk.Action("DisableAllLogins", Mono.Unix.Catalog.GetString("Disable all logins"), null, "gtk-no"); this.DisableAllLogins = new Gtk.Action("DisableAllLogins", Mono.Unix.Catalog.GetString("Disable all logins"), null, "gtk-no");
this.DisableAllLogins.ShortLabel = Mono.Unix.Catalog.GetString("Disable all logins"); this.DisableAllLogins.ShortLabel = Mono.Unix.Catalog.GetString("Disable all logins");
w2.Add(this.DisableAllLogins, null); w2.Add(this.DisableAllLogins, null);
this.DisableNonGodUsersOnly = new Gtk.Action("DisableNonGodUsersOnly", Mono.Unix.Catalog.GetString("Disable non-god users only"), null, "gtk-no"); this.DisableNonGodUsersOnly = new Gtk.Action("DisableNonGodUsersOnly", Mono.Unix.Catalog.GetString("Disable non-god users only"), null, "gtk-no");
this.DisableNonGodUsersOnly.ShortLabel = Mono.Unix.Catalog.GetString("Disable non-god users only"); this.DisableNonGodUsersOnly.ShortLabel = Mono.Unix.Catalog.GetString("Disable non-god users only");
w2.Add(this.DisableNonGodUsersOnly, null); w2.Add(this.DisableNonGodUsersOnly, null);
this.ShutdownUserServer = new Gtk.Action("ShutdownUserServer", Mono.Unix.Catalog.GetString("Shutdown user server"), null, "gtk-stop"); this.ShutdownUserServer = new Gtk.Action("ShutdownUserServer", Mono.Unix.Catalog.GetString("Shutdown user server"), null, "gtk-stop");
this.ShutdownUserServer.ShortLabel = Mono.Unix.Catalog.GetString("Shutdown user server"); this.ShutdownUserServer.ShortLabel = Mono.Unix.Catalog.GetString("Shutdown user server");
w2.Add(this.ShutdownUserServer, null); w2.Add(this.ShutdownUserServer, null);
this.ShutdownGridserverOnly = new Gtk.Action("ShutdownGridserverOnly", Mono.Unix.Catalog.GetString("Shutdown gridserver only"), null, "gtk-stop"); this.ShutdownGridserverOnly = new Gtk.Action("ShutdownGridserverOnly", Mono.Unix.Catalog.GetString("Shutdown gridserver only"), null, "gtk-stop");
this.ShutdownGridserverOnly.ShortLabel = Mono.Unix.Catalog.GetString("Shutdown gridserver only"); this.ShutdownGridserverOnly.ShortLabel = Mono.Unix.Catalog.GetString("Shutdown gridserver only");
w2.Add(this.ShutdownGridserverOnly, null); w2.Add(this.ShutdownGridserverOnly, null);
this.RestartGridserverOnly = new Gtk.Action("RestartGridserverOnly", Mono.Unix.Catalog.GetString("Restart gridserver only"), null, "gtk-refresh"); this.RestartGridserverOnly = new Gtk.Action("RestartGridserverOnly", Mono.Unix.Catalog.GetString("Restart gridserver only"), null, "gtk-refresh");
this.RestartGridserverOnly.ShortLabel = Mono.Unix.Catalog.GetString("Restart gridserver only"); this.RestartGridserverOnly.ShortLabel = Mono.Unix.Catalog.GetString("Restart gridserver only");
w2.Add(this.RestartGridserverOnly, null); w2.Add(this.RestartGridserverOnly, null);
this.DefaultLocalGridUserserver = new Gtk.Action("DefaultLocalGridUserserver", Mono.Unix.Catalog.GetString("Default local grid userserver"), null, null); this.DefaultLocalGridUserserver = new Gtk.Action("DefaultLocalGridUserserver", Mono.Unix.Catalog.GetString("Default local grid userserver"), null, null);
this.DefaultLocalGridUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Default local grid userserver"); this.DefaultLocalGridUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Default local grid userserver");
w2.Add(this.DefaultLocalGridUserserver, null); w2.Add(this.DefaultLocalGridUserserver, null);
this.CustomUserserver = new Gtk.Action("CustomUserserver", Mono.Unix.Catalog.GetString("Custom userserver..."), null, null); this.CustomUserserver = new Gtk.Action("CustomUserserver", Mono.Unix.Catalog.GetString("Custom userserver..."), null, null);
this.CustomUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Custom userserver"); this.CustomUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Custom userserver");
w2.Add(this.CustomUserserver, null); w2.Add(this.CustomUserserver, null);
this.RemoteGridDefaultUserserver = new Gtk.Action("RemoteGridDefaultUserserver", Mono.Unix.Catalog.GetString("Remote grid default userserver..."), null, null); this.RemoteGridDefaultUserserver = new Gtk.Action("RemoteGridDefaultUserserver", Mono.Unix.Catalog.GetString("Remote grid default userserver..."), null, null);
this.RemoteGridDefaultUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Remote grid default userserver"); this.RemoteGridDefaultUserserver.ShortLabel = Mono.Unix.Catalog.GetString("Remote grid default userserver");
w2.Add(this.RemoteGridDefaultUserserver, null); w2.Add(this.RemoteGridDefaultUserserver, null);
this.DisconnectFromGridServer = new Gtk.Action("DisconnectFromGridServer", Mono.Unix.Catalog.GetString("Disconnect from grid server"), null, "gtk-disconnect"); this.DisconnectFromGridServer = new Gtk.Action("DisconnectFromGridServer", Mono.Unix.Catalog.GetString("Disconnect from grid server"), null, "gtk-disconnect");
this.DisconnectFromGridServer.ShortLabel = Mono.Unix.Catalog.GetString("Disconnect from grid server"); this.DisconnectFromGridServer.ShortLabel = Mono.Unix.Catalog.GetString("Disconnect from grid server");
this.DisconnectFromGridServer.Visible = false; this.DisconnectFromGridServer.Visible = false;
w2.Add(this.DisconnectFromGridServer, null); w2.Add(this.DisconnectFromGridServer, null);
this.UploadAsset = new Gtk.Action("UploadAsset", Mono.Unix.Catalog.GetString("Upload asset"), null, null); this.UploadAsset = new Gtk.Action("UploadAsset", Mono.Unix.Catalog.GetString("Upload asset"), null, null);
this.UploadAsset.ShortLabel = Mono.Unix.Catalog.GetString("Upload asset"); this.UploadAsset.ShortLabel = Mono.Unix.Catalog.GetString("Upload asset");
w2.Add(this.UploadAsset, null); w2.Add(this.UploadAsset, null);
this.AssetManagement = new Gtk.Action("AssetManagement", Mono.Unix.Catalog.GetString("Asset management"), null, null); this.AssetManagement = new Gtk.Action("AssetManagement", Mono.Unix.Catalog.GetString("Asset management"), null, null);
this.AssetManagement.ShortLabel = Mono.Unix.Catalog.GetString("Asset management"); this.AssetManagement.ShortLabel = Mono.Unix.Catalog.GetString("Asset management");
w2.Add(this.AssetManagement, null); w2.Add(this.AssetManagement, null);
this.ConnectToAssetServer = new Gtk.Action("ConnectToAssetServer", Mono.Unix.Catalog.GetString("Connect to asset server"), null, null); this.ConnectToAssetServer = new Gtk.Action("ConnectToAssetServer", Mono.Unix.Catalog.GetString("Connect to asset server"), null, null);
this.ConnectToAssetServer.ShortLabel = Mono.Unix.Catalog.GetString("Connect to asset server"); this.ConnectToAssetServer.ShortLabel = Mono.Unix.Catalog.GetString("Connect to asset server");
w2.Add(this.ConnectToAssetServer, null); w2.Add(this.ConnectToAssetServer, null);
this.ConnectToDefaultAssetServerForGrid = new Gtk.Action("ConnectToDefaultAssetServerForGrid", Mono.Unix.Catalog.GetString("Connect to default asset server for grid"), null, null); this.ConnectToDefaultAssetServerForGrid = new Gtk.Action("ConnectToDefaultAssetServerForGrid", Mono.Unix.Catalog.GetString("Connect to default asset server for grid"), null, null);
this.ConnectToDefaultAssetServerForGrid.ShortLabel = Mono.Unix.Catalog.GetString("Connect to default asset server for grid"); this.ConnectToDefaultAssetServerForGrid.ShortLabel = Mono.Unix.Catalog.GetString("Connect to default asset server for grid");
w2.Add(this.ConnectToDefaultAssetServerForGrid, null); w2.Add(this.ConnectToDefaultAssetServerForGrid, null);
this.DefaultForLocalGrid = new Gtk.Action("DefaultForLocalGrid", Mono.Unix.Catalog.GetString("Default for local grid"), null, null); this.DefaultForLocalGrid = new Gtk.Action("DefaultForLocalGrid", Mono.Unix.Catalog.GetString("Default for local grid"), null, null);
this.DefaultForLocalGrid.ShortLabel = Mono.Unix.Catalog.GetString("Default for local grid"); this.DefaultForLocalGrid.ShortLabel = Mono.Unix.Catalog.GetString("Default for local grid");
w2.Add(this.DefaultForLocalGrid, null); w2.Add(this.DefaultForLocalGrid, null);
this.DefaultForRemoteGrid = new Gtk.Action("DefaultForRemoteGrid", Mono.Unix.Catalog.GetString("Default for remote grid..."), null, null); this.DefaultForRemoteGrid = new Gtk.Action("DefaultForRemoteGrid", Mono.Unix.Catalog.GetString("Default for remote grid..."), null, null);
this.DefaultForRemoteGrid.ShortLabel = Mono.Unix.Catalog.GetString("Default for remote grid..."); this.DefaultForRemoteGrid.ShortLabel = Mono.Unix.Catalog.GetString("Default for remote grid...");
w2.Add(this.DefaultForRemoteGrid, null); w2.Add(this.DefaultForRemoteGrid, null);
this.CustomAssetServer = new Gtk.Action("CustomAssetServer", Mono.Unix.Catalog.GetString("Custom asset server..."), null, null); this.CustomAssetServer = new Gtk.Action("CustomAssetServer", Mono.Unix.Catalog.GetString("Custom asset server..."), null, null);
this.CustomAssetServer.ShortLabel = Mono.Unix.Catalog.GetString("Custom asset server..."); this.CustomAssetServer.ShortLabel = Mono.Unix.Catalog.GetString("Custom asset server...");
w2.Add(this.CustomAssetServer, null); w2.Add(this.CustomAssetServer, null);
w1.InsertActionGroup(w2, 0); w1.InsertActionGroup(w2, 0);
this.AddAccelGroup(w1.AccelGroup); this.AddAccelGroup(w1.AccelGroup);
this.WidthRequest = 800; this.WidthRequest = 800;
this.HeightRequest = 600; this.HeightRequest = 600;
this.Name = "OpenGridServices.Manager.MainWindow"; this.Name = "OpenGridServices.Manager.MainWindow";
this.Title = Mono.Unix.Catalog.GetString("Open Grid Services Manager"); this.Title = Mono.Unix.Catalog.GetString("Open Grid Services Manager");
this.Icon = Gtk.IconTheme.Default.LoadIcon("gtk-network", 48, 0); this.Icon = Gtk.IconTheme.Default.LoadIcon("gtk-network", 48, 0);
// Container child OpenGridServices.Manager.MainWindow.Gtk.Container+ContainerChild // Container child OpenGridServices.Manager.MainWindow.Gtk.Container+ContainerChild
this.vbox1 = new Gtk.VBox(); this.vbox1 = new Gtk.VBox();
this.vbox1.Name = "vbox1"; this.vbox1.Name = "vbox1";
// Container child vbox1.Gtk.Box+BoxChild // Container child vbox1.Gtk.Box+BoxChild
w1.AddUiFromString("<ui><menubar name='menubar2'><menu action='Grid'><menuitem action='ConnectToGridserver'/><menuitem action='DisconnectFromGridServer'/><separator/><menuitem action='RestartWholeGrid'/><menuitem action='RestartGridserverOnly'/><separator/><menuitem action='ShutdownWholeGrid'/><menuitem action='ShutdownGridserverOnly'/><separator/><menuitem action='ExitGridManager'/></menu><menu action='User'><menu action='ConnectToUserserver'><menuitem action='DefaultLocalGridUserserver'/><menuitem action='CustomUserserver'/><menuitem action='RemoteGridDefaultUserserver'/></menu><separator/><menuitem action='AccountManagment'/><menuitem action='GlobalNotice'/><separator/><menuitem action='DisableAllLogins'/><menuitem action='DisableNonGodUsersOnly'/><separator/><menuitem action='ShutdownUserServer'/></menu><menu action='Asset'><menuitem action='UploadAsset'/><menuitem action='AssetManagement'/><menu action='ConnectToAssetServer'><menuitem action='DefaultForLocalGrid'/><menuitem action='DefaultForRemoteGrid'/><menuitem action='CustomAssetServer'/></menu></menu><menu action='Region'/><menu action='Services'/></menubar></ui>"); w1.AddUiFromString("<ui><menubar name='menubar2'><menu action='Grid'><menuitem action='ConnectToGridserver'/><menuitem action='DisconnectFromGridServer'/><separator/><menuitem action='RestartWholeGrid'/><menuitem action='RestartGridserverOnly'/><separator/><menuitem action='ShutdownWholeGrid'/><menuitem action='ShutdownGridserverOnly'/><separator/><menuitem action='ExitGridManager'/></menu><menu action='User'><menu action='ConnectToUserserver'><menuitem action='DefaultLocalGridUserserver'/><menuitem action='CustomUserserver'/><menuitem action='RemoteGridDefaultUserserver'/></menu><separator/><menuitem action='AccountManagment'/><menuitem action='GlobalNotice'/><separator/><menuitem action='DisableAllLogins'/><menuitem action='DisableNonGodUsersOnly'/><separator/><menuitem action='ShutdownUserServer'/></menu><menu action='Asset'><menuitem action='UploadAsset'/><menuitem action='AssetManagement'/><menu action='ConnectToAssetServer'><menuitem action='DefaultForLocalGrid'/><menuitem action='DefaultForRemoteGrid'/><menuitem action='CustomAssetServer'/></menu></menu><menu action='Region'/><menu action='Services'/></menubar></ui>");
this.menubar2 = ((Gtk.MenuBar)(w1.GetWidget("/menubar2"))); this.menubar2 = ((Gtk.MenuBar)(w1.GetWidget("/menubar2")));
this.menubar2.HeightRequest = 25; this.menubar2.HeightRequest = 25;
this.menubar2.Name = "menubar2"; this.menubar2.Name = "menubar2";
this.vbox1.Add(this.menubar2); this.vbox1.Add(this.menubar2);
Gtk.Box.BoxChild w3 = ((Gtk.Box.BoxChild)(this.vbox1[this.menubar2])); Gtk.Box.BoxChild w3 = ((Gtk.Box.BoxChild)(this.vbox1[this.menubar2]));
w3.Position = 0; w3.Position = 0;
w3.Expand = false; w3.Expand = false;
w3.Fill = false; w3.Fill = false;
// Container child vbox1.Gtk.Box+BoxChild // Container child vbox1.Gtk.Box+BoxChild
this.hbox1 = new Gtk.HBox(); this.hbox1 = new Gtk.HBox();
this.hbox1.Name = "hbox1"; this.hbox1.Name = "hbox1";
// Container child hbox1.Gtk.Box+BoxChild // Container child hbox1.Gtk.Box+BoxChild
this.scrolledwindow1 = new Gtk.ScrolledWindow(); this.scrolledwindow1 = new Gtk.ScrolledWindow();
this.scrolledwindow1.CanFocus = true; this.scrolledwindow1.CanFocus = true;
this.scrolledwindow1.Name = "scrolledwindow1"; this.scrolledwindow1.Name = "scrolledwindow1";
this.scrolledwindow1.VscrollbarPolicy = ((Gtk.PolicyType)(1)); this.scrolledwindow1.VscrollbarPolicy = ((Gtk.PolicyType)(1));
this.scrolledwindow1.HscrollbarPolicy = ((Gtk.PolicyType)(1)); this.scrolledwindow1.HscrollbarPolicy = ((Gtk.PolicyType)(1));
// Container child scrolledwindow1.Gtk.Container+ContainerChild // Container child scrolledwindow1.Gtk.Container+ContainerChild
Gtk.Viewport w4 = new Gtk.Viewport(); Gtk.Viewport w4 = new Gtk.Viewport();
w4.Name = "GtkViewport"; w4.Name = "GtkViewport";
w4.ShadowType = ((Gtk.ShadowType)(0)); w4.ShadowType = ((Gtk.ShadowType)(0));
// Container child GtkViewport.Gtk.Container+ContainerChild // Container child GtkViewport.Gtk.Container+ContainerChild
this.drawingarea1 = new Gtk.DrawingArea(); this.drawingarea1 = new Gtk.DrawingArea();
this.drawingarea1.Name = "drawingarea1"; this.drawingarea1.Name = "drawingarea1";
w4.Add(this.drawingarea1); w4.Add(this.drawingarea1);
this.scrolledwindow1.Add(w4); this.scrolledwindow1.Add(w4);
this.hbox1.Add(this.scrolledwindow1); this.hbox1.Add(this.scrolledwindow1);
Gtk.Box.BoxChild w7 = ((Gtk.Box.BoxChild)(this.hbox1[this.scrolledwindow1])); Gtk.Box.BoxChild w7 = ((Gtk.Box.BoxChild)(this.hbox1[this.scrolledwindow1]));
w7.Position = 1; w7.Position = 1;
// Container child hbox1.Gtk.Box+BoxChild // Container child hbox1.Gtk.Box+BoxChild
this.treeview1 = new Gtk.TreeView(); this.treeview1 = new Gtk.TreeView();
this.treeview1.CanFocus = true; this.treeview1.CanFocus = true;
this.treeview1.Name = "treeview1"; this.treeview1.Name = "treeview1";
this.hbox1.Add(this.treeview1); this.hbox1.Add(this.treeview1);
Gtk.Box.BoxChild w8 = ((Gtk.Box.BoxChild)(this.hbox1[this.treeview1])); Gtk.Box.BoxChild w8 = ((Gtk.Box.BoxChild)(this.hbox1[this.treeview1]));
w8.Position = 2; w8.Position = 2;
this.vbox1.Add(this.hbox1); this.vbox1.Add(this.hbox1);
Gtk.Box.BoxChild w9 = ((Gtk.Box.BoxChild)(this.vbox1[this.hbox1])); Gtk.Box.BoxChild w9 = ((Gtk.Box.BoxChild)(this.vbox1[this.hbox1]));
w9.Position = 1; w9.Position = 1;
// Container child vbox1.Gtk.Box+BoxChild // Container child vbox1.Gtk.Box+BoxChild
this.statusbar1 = new Gtk.Statusbar(); this.statusbar1 = new Gtk.Statusbar();
this.statusbar1.Name = "statusbar1"; this.statusbar1.Name = "statusbar1";
this.statusbar1.Spacing = 5; this.statusbar1.Spacing = 5;
this.vbox1.Add(this.statusbar1); this.vbox1.Add(this.statusbar1);
Gtk.Box.BoxChild w10 = ((Gtk.Box.BoxChild)(this.vbox1[this.statusbar1])); Gtk.Box.BoxChild w10 = ((Gtk.Box.BoxChild)(this.vbox1[this.statusbar1]));
w10.PackType = ((Gtk.PackType)(1)); w10.PackType = ((Gtk.PackType)(1));
w10.Position = 2; w10.Position = 2;
w10.Expand = false; w10.Expand = false;
w10.Fill = false; w10.Fill = false;
this.Add(this.vbox1); this.Add(this.vbox1);
if ((this.Child != null)) { if ((this.Child != null)) {
this.Child.ShowAll(); this.Child.ShowAll();
} }
this.DefaultWidth = 800; this.DefaultWidth = 800;
this.DefaultHeight = 800; this.DefaultHeight = 800;
this.Show(); this.Show();
this.DeleteEvent += new Gtk.DeleteEventHandler(this.OnDeleteEvent); this.DeleteEvent += new Gtk.DeleteEventHandler(this.OnDeleteEvent);
this.ConnectToGridserver.Activated += new System.EventHandler(this.ConnectToGridServerMenu); this.ConnectToGridserver.Activated += new System.EventHandler(this.ConnectToGridServerMenu);
this.ExitGridManager.Activated += new System.EventHandler(this.QuitMenu); this.ExitGridManager.Activated += new System.EventHandler(this.QuitMenu);
this.ShutdownGridserverOnly.Activated += new System.EventHandler(this.ShutdownGridserverMenu); this.ShutdownGridserverOnly.Activated += new System.EventHandler(this.ShutdownGridserverMenu);
this.RestartGridserverOnly.Activated += new System.EventHandler(this.RestartGridserverMenu); this.RestartGridserverOnly.Activated += new System.EventHandler(this.RestartGridserverMenu);
this.DisconnectFromGridServer.Activated += new System.EventHandler(this.DisconnectGridServerMenu); this.DisconnectFromGridServer.Activated += new System.EventHandler(this.DisconnectGridServerMenu);
} }
} }
} }

View File

@ -1,63 +1,63 @@
/* /*
* Copyright (c) Contributors, http://opensimulator.org/ * Copyright (c) Contributors, http://opensimulator.org/
* See CONTRIBUTORS.TXT for a full list of copyright holders. * See CONTRIBUTORS.TXT for a full list of copyright holders.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright * * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer. * notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright * * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the * notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution. * documentation and/or other materials provided with the distribution.
* * Neither the name of the OpenSim Project nor the * * Neither the name of the OpenSim Project nor the
* names of its contributors may be used to endorse or promote products * names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission. * derived from this software without specific prior written permission.
* *
* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* *
*/ */
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
// <autogenerated> // <autogenerated>
// This code was generated by a tool. // This code was generated by a tool.
// Mono Runtime Version: 2.0.50727.42 // Mono Runtime Version: 2.0.50727.42
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
// </autogenerated> // </autogenerated>
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
namespace Stetic { namespace Stetic {
internal class Gui { internal class Gui {
private static bool initialized; private static bool initialized;
internal static void Initialize() { internal static void Initialize() {
if ((Stetic.Gui.initialized == false)) { if ((Stetic.Gui.initialized == false)) {
Stetic.Gui.initialized = true; Stetic.Gui.initialized = true;
} }
} }
} }
internal class ActionGroups { internal class ActionGroups {
public static Gtk.ActionGroup GetActionGroup(System.Type type) { public static Gtk.ActionGroup GetActionGroup(System.Type type) {
return Stetic.ActionGroups.GetActionGroup(type.FullName); return Stetic.ActionGroups.GetActionGroup(type.FullName);
} }
public static Gtk.ActionGroup GetActionGroup(string name) { public static Gtk.ActionGroup GetActionGroup(string name) {
return null; return null;
} }
} }
} }