diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/AssemblyInfo.cs b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/AssemblyInfo.cs
new file mode 100644
index 00000000..568c2136
--- /dev/null
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/AssemblyInfo.cs
@@ -0,0 +1,27 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+
+[assembly: AssemblyTitle("UniversalEditor.Engines.GTK.Plugins.FileSystem")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("")]
+[assembly: AssemblyCopyright("beckermj")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+
+[assembly: AssemblyVersion("1.0.*")]
+
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+
diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/Editors/FileSystem/FileSystemEditor.cs b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/Editors/FileSystem/FileSystemEditor.cs
new file mode 100644
index 00000000..5ba19c7d
--- /dev/null
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/Editors/FileSystem/FileSystemEditor.cs
@@ -0,0 +1,58 @@
+using System;
+using UniversalEditor.Engines.GTK;
+
+using UniversalEditor;
+using UniversalEditor.UserInterface;
+using UniversalEditor.ObjectModels.FileSystem;
+
+namespace UniversalEditor.Editors.FileSystem
+{
+ [System.ComponentModel.ToolboxItem(true)]
+ public partial class FileSystemEditor : Editor
+ {
+ public FileSystemEditor ()
+ {
+ this.Build ();
+
+ tvFiles.AppendColumn(new Gtk.TreeViewColumn("Name", new Gtk.CellRendererText(), 1));
+ tvFiles.AppendColumn(new Gtk.TreeViewColumn("Size", new Gtk.CellRendererText(), 2));
+ tvFiles.AppendColumn(new Gtk.TreeViewColumn("Type", new Gtk.CellRendererText()));
+ tvFiles.AppendColumn(new Gtk.TreeViewColumn("Date Modified", new Gtk.CellRendererText()));
+ }
+
+ private Folder mvarCurrentFolder = null;
+ private void RefreshListView()
+ {
+ FileSystemObjectModel fsom = (ObjectModel as FileSystemObjectModel);
+ if (fsom == null) return;
+
+ File.FileCollection fileColl = null;
+ if (mvarCurrentFolder == null)
+ {
+ fileColl = fsom.Files;
+ }
+ else
+ {
+ fileColl = mvarCurrentFolder.Files;
+ }
+
+ Gtk.TreeStore ts = new Gtk.TreeStore(typeof(File), typeof(string), typeof(long));
+ foreach (File file in fileColl)
+ {
+ ts.AppendValues(file, file.Name, file.Size);
+ }
+ tvFiles.Model = ts;
+ }
+
+ protected override void OnObjectModelChanged (EventArgs e)
+ {
+ base.OnObjectModelChanged(e);
+
+ FileSystemObjectModel fsom = (ObjectModel as FileSystemObjectModel);
+ if (fsom == null) return;
+
+ RefreshListView();
+ }
+ }
+}
+
diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem.csproj b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem.csproj
new file mode 100644
index 00000000..1245e17c
--- /dev/null
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem.csproj
@@ -0,0 +1,87 @@
+
+
+
+ Debug
+ AnyCPU
+ 10.0.0
+ 2.0
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}
+ Library
+ UniversalEditor.Engines.GTK.Plugins.FileSystem
+ UniversalEditor.Engines.GTK.Plugins.FileSystem
+
+
+ true
+ full
+ false
+ bin\Debug
+ DEBUG;
+ prompt
+ 4
+ false
+
+
+ none
+ true
+ bin\Release
+ prompt
+ 4
+ false
+
+
+
+
+
+ gtk-sharp-2.0
+
+
+ gtk-sharp-2.0
+
+
+ glib-sharp-2.0
+
+
+ glade-sharp-2.0
+
+
+ gtk-sharp-2.0
+
+
+ gtk-sharp-2.0
+
+
+
+
+ gui.stetic
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {2D4737E6-6D95-408A-90DB-8DFF38147E85}
+ UniversalEditor.Core
+
+
+ {AF5F8ED3-D534-4609-94ED-B2800455B88F}
+ UniversalEditor.Engines.GTK
+
+
+ {30467E5C-05BC-4856-AADC-13906EF4CADD}
+ UniversalEditor.Essential
+
+
+ {8622EBC4-8E20-476E-B284-33D472081F5C}
+ UniversalEditor.UserInterface
+
+
+
\ No newline at end of file
diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/UniversalEditor.Editors.FileSystem.FileSystemEditor.cs b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/UniversalEditor.Editors.FileSystem.FileSystemEditor.cs
new file mode 100644
index 00000000..ae103e15
--- /dev/null
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/UniversalEditor.Editors.FileSystem.FileSystemEditor.cs
@@ -0,0 +1,85 @@
+
+// This file has been generated by the GUI designer. Do not modify.
+namespace UniversalEditor.Editors.FileSystem
+{
+ public partial class FileSystemEditor
+ {
+ private global::Gtk.UIManager UIManager;
+ private global::Gtk.HBox hbox1;
+ private global::Gtk.HPaned hpaned1;
+ private global::Gtk.ScrolledWindow GtkScrolledWindow;
+ private global::Gtk.TreeView tvFolders;
+ private global::Gtk.VBox vbox3;
+ private global::Gtk.Toolbar tbBreadcrumb;
+ private global::Gtk.ScrolledWindow GtkScrolledWindow1;
+ private global::Gtk.TreeView tvFiles;
+
+ protected virtual void Build ()
+ {
+ global::Stetic.Gui.Initialize (this);
+ // Widget UniversalEditor.Editors.FileSystem.FileSystemEditor
+ Stetic.BinContainer w1 = global::Stetic.BinContainer.Attach (this);
+ this.UIManager = new global::Gtk.UIManager ();
+ global::Gtk.ActionGroup w2 = new global::Gtk.ActionGroup ("Default");
+ this.UIManager.InsertActionGroup (w2, 0);
+ this.Name = "UniversalEditor.Editors.FileSystem.FileSystemEditor";
+ // Container child UniversalEditor.Editors.FileSystem.FileSystemEditor.Gtk.Container+ContainerChild
+ this.hbox1 = new global::Gtk.HBox ();
+ this.hbox1.Name = "hbox1";
+ this.hbox1.Spacing = 6;
+ // Container child hbox1.Gtk.Box+BoxChild
+ this.hpaned1 = new global::Gtk.HPaned ();
+ this.hpaned1.CanFocus = true;
+ this.hpaned1.Name = "hpaned1";
+ this.hpaned1.Position = 203;
+ // Container child hpaned1.Gtk.Paned+PanedChild
+ this.GtkScrolledWindow = new global::Gtk.ScrolledWindow ();
+ this.GtkScrolledWindow.Name = "GtkScrolledWindow";
+ this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1));
+ // Container child GtkScrolledWindow.Gtk.Container+ContainerChild
+ this.tvFolders = new global::Gtk.TreeView ();
+ this.tvFolders.CanFocus = true;
+ this.tvFolders.Name = "tvFolders";
+ this.GtkScrolledWindow.Add (this.tvFolders);
+ this.hpaned1.Add (this.GtkScrolledWindow);
+ global::Gtk.Paned.PanedChild w4 = ((global::Gtk.Paned.PanedChild)(this.hpaned1 [this.GtkScrolledWindow]));
+ w4.Resize = false;
+ // Container child hpaned1.Gtk.Paned+PanedChild
+ this.vbox3 = new global::Gtk.VBox ();
+ this.vbox3.Name = "vbox3";
+ this.vbox3.Spacing = 6;
+ // Container child vbox3.Gtk.Box+BoxChild
+ this.UIManager.AddUiFromString ("");
+ this.tbBreadcrumb = ((global::Gtk.Toolbar)(this.UIManager.GetWidget ("/tbBreadcrumb")));
+ this.tbBreadcrumb.Name = "tbBreadcrumb";
+ this.tbBreadcrumb.ShowArrow = false;
+ this.vbox3.Add (this.tbBreadcrumb);
+ global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.tbBreadcrumb]));
+ w5.Position = 0;
+ w5.Expand = false;
+ w5.Fill = false;
+ // Container child vbox3.Gtk.Box+BoxChild
+ this.GtkScrolledWindow1 = new global::Gtk.ScrolledWindow ();
+ this.GtkScrolledWindow1.Name = "GtkScrolledWindow1";
+ this.GtkScrolledWindow1.ShadowType = ((global::Gtk.ShadowType)(1));
+ // Container child GtkScrolledWindow1.Gtk.Container+ContainerChild
+ this.tvFiles = new global::Gtk.TreeView ();
+ this.tvFiles.CanFocus = true;
+ this.tvFiles.Name = "tvFiles";
+ this.GtkScrolledWindow1.Add (this.tvFiles);
+ this.vbox3.Add (this.GtkScrolledWindow1);
+ global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.GtkScrolledWindow1]));
+ w7.Position = 1;
+ this.hpaned1.Add (this.vbox3);
+ this.hbox1.Add (this.hpaned1);
+ global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.hpaned1]));
+ w9.Position = 0;
+ this.Add (this.hbox1);
+ if ((this.Child != null)) {
+ this.Child.ShowAll ();
+ }
+ w1.SetUiManager (UIManager);
+ this.Hide ();
+ }
+ }
+}
diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/generated.cs b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/generated.cs
new file mode 100644
index 00000000..8d3a3ae5
--- /dev/null
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/generated.cs
@@ -0,0 +1,81 @@
+
+// This file has been generated by the GUI designer. Do not modify.
+namespace Stetic
+{
+ internal class Gui
+ {
+ private static bool initialized;
+
+ internal static void Initialize (Gtk.Widget iconRenderer)
+ {
+ if ((Stetic.Gui.initialized == false)) {
+ Stetic.Gui.initialized = true;
+ }
+ }
+ }
+
+ internal class BinContainer
+ {
+ private Gtk.Widget child;
+ private Gtk.UIManager uimanager;
+
+ public static BinContainer Attach (Gtk.Bin bin)
+ {
+ BinContainer bc = new BinContainer ();
+ bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
+ bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
+ bin.Added += new Gtk.AddedHandler (bc.OnAdded);
+ return bc;
+ }
+
+ private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
+ {
+ if ((this.child != null)) {
+ args.Requisition = this.child.SizeRequest ();
+ }
+ }
+
+ private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
+ {
+ if ((this.child != null)) {
+ this.child.Allocation = args.Allocation;
+ }
+ }
+
+ private void OnAdded (object sender, Gtk.AddedArgs args)
+ {
+ this.child = args.Widget;
+ }
+
+ public void SetUiManager (Gtk.UIManager uim)
+ {
+ this.uimanager = uim;
+ this.child.Realized += new System.EventHandler (this.OnRealized);
+ }
+
+ private void OnRealized (object sender, System.EventArgs args)
+ {
+ if ((this.uimanager != null)) {
+ Gtk.Widget w;
+ w = this.child.Toplevel;
+ if (((w != null) && typeof(Gtk.Window).IsInstanceOfType (w))) {
+ ((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
+ this.uimanager = null;
+ }
+ }
+ }
+ }
+
+ internal class ActionGroups
+ {
+ public static Gtk.ActionGroup GetActionGroup (System.Type type)
+ {
+ return Stetic.ActionGroups.GetActionGroup (type.FullName);
+ }
+
+ public static Gtk.ActionGroup GetActionGroup (string name)
+ {
+ return null;
+ }
+ }
+}
diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/gui.stetic b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/gui.stetic
new file mode 100644
index 00000000..baa35f5d
--- /dev/null
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.FileSystem/UniversalEditor.Engines.GTK.Plugins.FileSystem/gtk-gui/gui.stetic
@@ -0,0 +1,86 @@
+
+
+
+ ../../UniversalEditor.Engines.GTK.Plugins.FileSystem
+ 2.12
+
+
+
+
+
+
+
+
+
+ False
+
+
+
+ 6
+
+
+
+ True
+ 203
+
+
+
+ In
+
+
+
+ True
+ True
+
+
+
+
+ False
+
+
+
+
+
+ 6
+
+
+
+ False
+
+
+
+ 0
+ True
+ False
+ False
+
+
+
+
+
+ In
+
+
+
+ True
+ True
+
+
+
+
+ 1
+ True
+
+
+
+
+
+
+ 0
+ True
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.UnrealEngine/UniversalEditor.Engines.GTK.Plugins.UnrealEngine.csproj b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.UnrealEngine/UniversalEditor.Engines.GTK.Plugins.UnrealEngine.csproj
index 74d44597..12b085b7 100644
--- a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.UnrealEngine/UniversalEditor.Engines.GTK.Plugins.UnrealEngine.csproj
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.UnrealEngine/UniversalEditor.Engines.GTK.Plugins.UnrealEngine.csproj
@@ -59,6 +59,7 @@
+
diff --git a/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.UnrealEngine/gtk-gui/UniversalEditor.Editors.UnrealEngine.Package.UnrealPackageEditor.cs b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.UnrealEngine/gtk-gui/UniversalEditor.Editors.UnrealEngine.Package.UnrealPackageEditor.cs
new file mode 100644
index 00000000..b57fa950
--- /dev/null
+++ b/CSharp/Engines/GTK/Plugins/UniversalEditor.Engines.GTK.Plugins.UnrealEngine/gtk-gui/UniversalEditor.Editors.UnrealEngine.Package.UnrealPackageEditor.cs
@@ -0,0 +1,68 @@
+
+// This file has been generated by the GUI designer. Do not modify.
+namespace UniversalEditor.Editors.UnrealEngine.Package
+{
+ public partial class UnrealPackageEditor
+ {
+ private global::Gtk.Notebook notebook2;
+ private global::Gtk.Label label2;
+ private global::Gtk.Label label3;
+ private global::Gtk.ScrolledWindow GtkScrolledWindow;
+ private global::Gtk.TreeView tvExport;
+ private global::Gtk.Label label4;
+
+ protected virtual void Build ()
+ {
+ global::Stetic.Gui.Initialize (this);
+ // Widget UniversalEditor.Editors.UnrealEngine.Package.UnrealPackageEditor
+ global::Stetic.BinContainer.Attach (this);
+ this.Name = "UniversalEditor.Editors.UnrealEngine.Package.UnrealPackageEditor";
+ // Container child UniversalEditor.Editors.UnrealEngine.Package.UnrealPackageEditor.Gtk.Container+ContainerChild
+ this.notebook2 = new global::Gtk.Notebook ();
+ this.notebook2.CanFocus = true;
+ this.notebook2.Name = "notebook2";
+ this.notebook2.CurrentPage = 2;
+ // Notebook tab
+ global::Gtk.Label w1 = new global::Gtk.Label ();
+ w1.Visible = true;
+ this.notebook2.Add (w1);
+ this.label2 = new global::Gtk.Label ();
+ this.label2.Name = "label2";
+ this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("Name Table");
+ this.notebook2.SetTabLabel (w1, this.label2);
+ this.label2.ShowAll ();
+ // Notebook tab
+ global::Gtk.Label w2 = new global::Gtk.Label ();
+ w2.Visible = true;
+ this.notebook2.Add (w2);
+ this.label3 = new global::Gtk.Label ();
+ this.label3.Name = "label3";
+ this.label3.LabelProp = global::Mono.Unix.Catalog.GetString ("Import Table");
+ this.notebook2.SetTabLabel (w2, this.label3);
+ this.label3.ShowAll ();
+ // Container child notebook2.Gtk.Notebook+NotebookChild
+ this.GtkScrolledWindow = new global::Gtk.ScrolledWindow ();
+ this.GtkScrolledWindow.Name = "GtkScrolledWindow";
+ this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1));
+ // Container child GtkScrolledWindow.Gtk.Container+ContainerChild
+ this.tvExport = new global::Gtk.TreeView ();
+ this.tvExport.CanFocus = true;
+ this.tvExport.Name = "tvExport";
+ this.GtkScrolledWindow.Add (this.tvExport);
+ this.notebook2.Add (this.GtkScrolledWindow);
+ global::Gtk.Notebook.NotebookChild w4 = ((global::Gtk.Notebook.NotebookChild)(this.notebook2 [this.GtkScrolledWindow]));
+ w4.Position = 2;
+ // Notebook tab
+ this.label4 = new global::Gtk.Label ();
+ this.label4.Name = "label4";
+ this.label4.LabelProp = global::Mono.Unix.Catalog.GetString ("Export Table");
+ this.notebook2.SetTabLabel (this.GtkScrolledWindow, this.label4);
+ this.label4.ShowAll ();
+ this.Add (this.notebook2);
+ if ((this.Child != null)) {
+ this.Child.ShowAll ();
+ }
+ this.Hide ();
+ }
+ }
+}
diff --git a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/Editor.cs b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/Editor.cs
index cd98b925..cafd7382 100644
--- a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/Editor.cs
+++ b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/Editor.cs
@@ -1,7 +1,6 @@
using System;
using UniversalEditor.UserInterface;
-
namespace UniversalEditor.Engines.GTK
{
[System.ComponentModel.ToolboxItem(true)]
@@ -37,11 +36,40 @@ namespace UniversalEditor.Engines.GTK
{
return false;
}
+
+ private ObjectModel mvarObjectModel = null;
+ public ObjectModel ObjectModel
+ {
+ get { return mvarObjectModel; }
+ set
+ {
+ if (mvarObjectModel == value) return;
+
+ ObjectModelChangingEventArgs omcea = new ObjectModelChangingEventArgs(mvarObjectModel, value);
+ OnObjectModelChanging (omcea);
+ if (omcea.Cancel) return;
+
+ mvarObjectModel = value;
+ OnObjectModelChanged(EventArgs.Empty);
+ }
+ }
+
public virtual string Title { get { return String.Empty; } }
private ObjectModelReference.ObjectModelReferenceCollection mvarSupportedObjectModels = new ObjectModelReference.ObjectModelReferenceCollection();
public ObjectModelReference.ObjectModelReferenceCollection SupportedObjectModels { get { return mvarSupportedObjectModels; } }
+
+ public event ObjectModelChangingEventHandler ObjectModelChanging;
+ protected virtual void OnObjectModelChanging(ObjectModelChangingEventArgs e)
+ {
+ if (ObjectModelChanging != null) ObjectModelChanging(this, e);
+ }
+ public event EventHandler ObjectModelChanged;
+ protected virtual void OnObjectModelChanged(EventArgs e)
+ {
+ if (ObjectModelChanged != null) ObjectModelChanged(this, e);
+ }
#endregion
}
}
diff --git a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/MainWindow.cs b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/MainWindow.cs
index f85c866b..2898f1fa 100644
--- a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/MainWindow.cs
+++ b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/MainWindow.cs
@@ -14,11 +14,15 @@ namespace UniversalEditor.Engines.GTK
{
Build ();
InitializeMenuBar();
+ tbsDocumentTabs.RemovePage(0);
}
public IEditorImplementation GetCurrentEditor()
{
- return null;
+ if (tbsDocumentTabs.Page < 0 || tbsDocumentTabs.Page >= tbsDocumentTabs.NPages) return null;
+
+ Gtk.Widget currentEditor = tbsDocumentTabs.GetNthPage(tbsDocumentTabs.Page);
+ return (currentEditor as IEditorImplementation);
}
protected override bool OnFocused (DirectionType direction)
diff --git a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/UniversalEditor.Engines.GTK.MainWindow.cs b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/UniversalEditor.Engines.GTK.MainWindow.cs
index 2e3ea4aa..933be8e7 100644
--- a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/UniversalEditor.Engines.GTK.MainWindow.cs
+++ b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/UniversalEditor.Engines.GTK.MainWindow.cs
@@ -8,7 +8,7 @@ namespace UniversalEditor.Engines.GTK
private global::Gtk.VBox vbox2;
private global::Gtk.MenuBar menubar1;
private global::Gtk.Toolbar toolbar1;
- private global::Gtk.Notebook notebook1;
+ private global::Gtk.Notebook tbsDocumentTabs;
private global::Gtk.Label label1;
private global::Gtk.Statusbar statusbar1;
@@ -47,21 +47,21 @@ namespace UniversalEditor.Engines.GTK
w3.Expand = false;
w3.Fill = false;
// Container child vbox2.Gtk.Box+BoxChild
- this.notebook1 = new global::Gtk.Notebook ();
- this.notebook1.CanFocus = true;
- this.notebook1.Name = "notebook1";
- this.notebook1.CurrentPage = 0;
+ this.tbsDocumentTabs = new global::Gtk.Notebook ();
+ this.tbsDocumentTabs.CanFocus = true;
+ this.tbsDocumentTabs.Name = "tbsDocumentTabs";
+ this.tbsDocumentTabs.CurrentPage = 0;
// Notebook tab
global::Gtk.Label w4 = new global::Gtk.Label ();
w4.Visible = true;
- this.notebook1.Add (w4);
+ this.tbsDocumentTabs.Add (w4);
this.label1 = new global::Gtk.Label ();
this.label1.Name = "label1";
this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("page1");
- this.notebook1.SetTabLabel (w4, this.label1);
+ this.tbsDocumentTabs.SetTabLabel (w4, this.label1);
this.label1.ShowAll ();
- this.vbox2.Add (this.notebook1);
- global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.notebook1]));
+ this.vbox2.Add (this.tbsDocumentTabs);
+ global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.tbsDocumentTabs]));
w5.Position = 2;
// Container child vbox2.Gtk.Box+BoxChild
this.statusbar1 = new global::Gtk.Statusbar ();
diff --git a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/gui.stetic b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/gui.stetic
index f8474872..d06ead05 100644
--- a/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/gui.stetic
+++ b/CSharp/Engines/GTK/UniversalEditor.Engines.GTK/gtk-gui/gui.stetic
@@ -27,7 +27,7 @@
0
@@ -40,7 +40,7 @@
False
-
+
1
@@ -50,7 +50,7 @@
-
+
True
0
diff --git a/CSharp/UniversalEditor.GTK.sln b/CSharp/UniversalEditor.GTK.sln
index 84508912..a59787a7 100644
--- a/CSharp/UniversalEditor.GTK.sln
+++ b/CSharp/UniversalEditor.GTK.sln
@@ -79,6 +79,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Plugins", "Plugins", "{B2A3
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UniversalEditor.Engines.GTK.Plugins.UnrealEngine", "..\..\..\..\..\..\media\0d14d2b2-1b67-4757-8f87-2520a8715f9f\beckermj\Documents\Projects\UniversalEditor\CSharp\Engines\GTK\Plugins\UniversalEditor.Engines.GTK.Plugins.UnrealEngine\UniversalEditor.Engines.GTK.Plugins.UnrealEngine.csproj", "{78D1381A-AF21-43B2-9DDA-727AF15539AB}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UniversalEditor.Engines.GTK.Plugins.FileSystem", "..\..\..\..\..\..\media\0d14d2b2-1b67-4757-8f87-2520a8715f9f\beckermj\Documents\Projects\UniversalEditor\CSharp\Engines\GTK\Plugins\UniversalEditor.Engines.GTK.Plugins.FileSystem\UniversalEditor.Engines.GTK.Plugins.FileSystem\UniversalEditor.Engines.GTK.Plugins.FileSystem.csproj", "{895D95A4-E37F-40F7-B606-4B8FA61B0449}"
+EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UniversalEditor.Engines.GTK", "Engines\GTK\UniversalEditor.Engines.GTK\UniversalEditor.Engines.GTK.csproj", "{AF5F8ED3-D534-4609-94ED-B2800455B88F}"
EndProject
Global
@@ -283,6 +285,18 @@ Global
{8622EBC4-8E20-476E-B284-33D472081F5C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{8622EBC4-8E20-476E-B284-33D472081F5C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{8622EBC4-8E20-476E-B284-33D472081F5C}.Release|x86.ActiveCfg = Release|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Debug|x86.Build.0 = Debug|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Release|Any CPU.Build.0 = Release|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Release|x86.ActiveCfg = Release|Any CPU
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449}.Release|x86.Build.0 = Release|Any CPU
{899E3DD6-EA65-4168-AAE3-867A4F9650A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{899E3DD6-EA65-4168-AAE3-867A4F9650A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{899E3DD6-EA65-4168-AAE3-867A4F9650A6}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -526,6 +540,7 @@ Global
{B2A30AE0-2FDD-40D1-88CF-9E4B95277F95} = {E0422169-2DF9-4B50-A019-84A3251727F9}
{AF5F8ED3-D534-4609-94ED-B2800455B88F} = {E0422169-2DF9-4B50-A019-84A3251727F9}
{78D1381A-AF21-43B2-9DDA-727AF15539AB} = {B2A30AE0-2FDD-40D1-88CF-9E4B95277F95}
+ {895D95A4-E37F-40F7-B606-4B8FA61B0449} = {B2A30AE0-2FDD-40D1-88CF-9E4B95277F95}
EndGlobalSection
GlobalSection(MonoDevelopProperties) = preSolution
StartupItem = Applications\UniversalEditor.Bootstrapper\UniversalEditor.Bootstrapper.csproj