diff --git a/PROMS/Volian.Controls.Library/DSOTabPanel.Designer.cs b/PROMS/Volian.Controls.Library/DSOTabPanel.Designer.cs
new file mode 100644
index 00000000..8d3455ab
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DSOTabPanel.Designer.cs
@@ -0,0 +1,36 @@
+namespace Volian.Controls.Library
+{
+ partial class DSOTabPanel
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ components = new System.ComponentModel.Container();
+ }
+
+ #endregion
+ }
+}
diff --git a/PROMS/Volian.Controls.Library/DSOTabPanel.cs b/PROMS/Volian.Controls.Library/DSOTabPanel.cs
new file mode 100644
index 00000000..d02b43d7
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DSOTabPanel.cs
@@ -0,0 +1,187 @@
+using System;
+using System.ComponentModel;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Text;
+using System.Drawing;
+using System.Windows.Forms;
+using VEPROMS.CSLA.Library;
+using Volian.Controls.Library;
+
+
+namespace Volian.Controls.Library
+{
+ public partial class DSOTabPanel : DevComponents.DotNetBar.PanelDockContainer
+ {
+ private static readonly log4net.ILog _MyLog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+ private AxDSOFramer.AxFramerControl _MyDSOFramer;
+ private static int _Count = 0;
+ private DocumentInfo _MyDocument;
+ private int _MyCount;
+ private DisplayTabItem _TabItem;
+ public DisplayTabItem TabItem
+ {
+ get { return _TabItem; }
+ set { _TabItem = value; }
+ }
+ public DSOTabPanel(DocumentInfo documentInfo)
+ {
+ InitializeComponent();
+ SetupDSOTabPanel();
+ _MyDocument = documentInfo;
+ SetupDSO();
+
+ }
+
+private void SetupDSOTabPanel()
+{
+ Dock = System.Windows.Forms.DockStyle.Fill;
+}
+ public DocumentInfo DocumentInfo
+ {
+ get { return _MyDocument; }
+ }
+ private DSOFile _DSOFile;
+ internal DSOFile DSOFile
+ {
+ get
+ {
+ if (_DSOFile == null)
+ _DSOFile = new DSOFile(_MyDocument);
+ return _DSOFile;
+ }
+ }
+ public bool IsDirty
+ {
+ get { return _MyDSOFramer.IsDirty; }
+ }
+ private void SetupDSO()
+ {
+ _Count++;
+ _MyCount = _Count;
+ this._MyDSOFramer = new AxDSOFramer.AxFramerControl();
+ ((System.ComponentModel.ISupportInitialize)(this._MyDSOFramer)).BeginInit();
+ //this.SuspendLayout();
+ this.Controls.Add(this._MyDSOFramer);
+ this.components.Add(this._MyDSOFramer);
+ this._MyDSOFramer.Dock = System.Windows.Forms.DockStyle.Fill;
+ //this._MyDSOFramer.Enabled = true;
+ //this._MyDSOFramer.Location = new System.Drawing.Point(0, 0);
+ //this._MyDSOFramer.Name = "_DSOFramer";
+ //System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(WordDSOTab));
+ //this._DSOFramer.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("_FC.OcxState")));
+ //this._MyDSOFramer.Size = new System.Drawing.Size(657, 453);
+ //this._MyDSOFramer.TabIndex = 0;
+ ((System.ComponentModel.ISupportInitialize)(this._MyDSOFramer)).EndInit();
+ //this.ResumeLayout(false);
+ this._MyDSOFramer.EventsEnabled = true;
+ this._MyDSOFramer.Open(DSOFile.MyFile.FullName);
+ this._MyDSOFramer.Menubar = false;
+ this._MyDSOFramer.Titlebar = false;
+ //this._DSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoSetOnFirstOpen;
+ if (_MyCount < 20)
+ this._MyDSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoResetNow;
+ this._MyDSOFramer.Invalidated += new InvalidateEventHandler(_DSOFramer_Invalidated);
+ this._MyDSOFramer.BeforeDocumentClosed += new AxDSOFramer._DFramerCtlEvents_BeforeDocumentClosedEventHandler(_MyDSOFramer_BeforeDocumentClosed);
+ //this.Resize += new EventHandler(DSOTabPage_Resize);
+ this.Enter += new EventHandler(DSOTabPanel_Enter);
+ }
+ void _MyDSOFramer_BeforeDocumentClosed(object sender, AxDSOFramer._DFramerCtlEvents_BeforeDocumentClosedEvent e)
+ {
+ try
+ {
+ SaveDirty();
+ //if(SaveDirty()) e.cancel = true;
+ //throw new System.Data.DataException();
+ }
+ catch (Exception ex)
+ {
+ _MyLog.Warn("Before Closing Document ", ex);
+ }
+ }
+ void DSOTabPanel_Enter(object sender, EventArgs e)
+ {
+ try
+ {
+ _MyDSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoResetNow;
+ _MyDSOFramer.Focus();
+ }
+ catch (Exception ex)
+ {
+ if (_MyLog.IsErrorEnabled) _MyLog.ErrorFormat("DSOTabPage_Enter", ex);
+ }
+ }
+ public bool SaveDSO()
+ {
+ bool result = true;
+ try
+ {
+ _MyDSOFramer.Save();
+ DSOFile.SaveFile();
+ }
+ catch (Exception ex)
+ {
+ if (_MyLog.IsErrorEnabled) _MyLog.Error("SaveDSO", ex);
+ result = false;
+ }
+ return result;
+ }
+ public bool SaveDirty()
+ {
+ if (_MyDSOFramer.IsDirty)
+ {
+ // TODO: Should be based upon Item rather than Document.
+ if (MessageBox.Show("Save changes to " + this.Name, "Document has Changed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
+ return SaveDSO();
+ return false;
+ }
+ return true;
+ }
+ public bool CloseDSO()
+ {
+ return CloseDSO(false);
+ }
+ public bool CloseDSO(bool force)
+ {
+ bool result = true;
+ try
+ {
+ _MyDSOFramer.Close();
+ Controls.Remove(_MyDSOFramer);
+ components.Remove(_MyDSOFramer);
+ _MyDSOFramer.Dispose();
+ _MyDSOFramer = null;
+ }
+ catch (Exception ex)
+ {
+ if (_MyLog.IsErrorEnabled) _MyLog.Error("SaveDSO - " + this.Name, ex);
+ result = false;
+ }
+ return result;
+ }
+ void _DSOFramer_Invalidated(object sender, InvalidateEventArgs e)
+ {
+ //ConsoleWriteLine("_DSOFramer_Invalidated");
+ if (_MyCount >= 20)
+ _MyDSOFramer.Activate();
+ }
+ //void DSOTabPage_Resize(object sender, EventArgs e)
+ //{
+ // //_DSOFramer.Refresh();
+ //}
+ public void Activate()
+ {
+ try
+ {
+ this._MyDSOFramer.Activate();
+ if (_MyCount < 20)
+ this._MyDSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoResetNow;
+ //this._DSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoSetOnFirstOpen;
+ }
+ catch (Exception ex)
+ {
+ if (_MyLog.IsErrorEnabled) _MyLog.Error("Activate", ex);
+ }
+ }
+ }
+}
diff --git a/PROMS/Volian.Controls.Library/DisplayTabControl.Designer.cs b/PROMS/Volian.Controls.Library/DisplayTabControl.Designer.cs
new file mode 100644
index 00000000..5ebb23d0
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DisplayTabControl.Designer.cs
@@ -0,0 +1,259 @@
+namespace Volian.Controls.Library
+{
+ partial class DisplayTabControl
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ this.dotNetBarManager1 = new DevComponents.DotNetBar.DotNetBarManager(this.components);
+ this.dockSite4 = new DevComponents.DotNetBar.DockSite();
+ this.dockSite9 = new DevComponents.DotNetBar.DockSite();
+ this._MyBar = new DevComponents.DotNetBar.Bar();
+ this.dockSite1 = new DevComponents.DotNetBar.DockSite();
+ this.dockSite2 = new DevComponents.DotNetBar.DockSite();
+ this.dockSite8 = new DevComponents.DotNetBar.DockSite();
+ this.dockSite5 = new DevComponents.DotNetBar.DockSite();
+ this.dockSite6 = new DevComponents.DotNetBar.DockSite();
+ this.dockSite7 = new DevComponents.DotNetBar.DockSite();
+ this.dockSite3 = new DevComponents.DotNetBar.DockSite();
+ this.dockContainerItem3 = new DevComponents.DotNetBar.DockContainerItem();
+ this.dockContainerItem1 = new DevComponents.DotNetBar.DockContainerItem();
+ this.dockContainerItem2 = new DevComponents.DotNetBar.DockContainerItem();
+ this.superTooltip1 = new DevComponents.DotNetBar.SuperTooltip();
+ this.dockSite9.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this._MyBar)).BeginInit();
+ this.SuspendLayout();
+ //
+ // dotNetBarManager1
+ //
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.F1);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlC);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlA);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlV);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlX);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlZ);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.CtrlY);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.Del);
+ this.dotNetBarManager1.AutoDispatchShortcuts.Add(DevComponents.DotNetBar.eShortcut.Ins);
+ this.dotNetBarManager1.BottomDockSite = this.dockSite4;
+ this.dotNetBarManager1.DefinitionName = "";
+ this.dotNetBarManager1.EnableFullSizeDock = false;
+ this.dotNetBarManager1.FillDockSite = this.dockSite9;
+ this.dotNetBarManager1.LeftDockSite = this.dockSite1;
+ this.dotNetBarManager1.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F";
+ this.dotNetBarManager1.ParentForm = null;
+ this.dotNetBarManager1.ParentUserControl = this;
+ this.dotNetBarManager1.RightDockSite = this.dockSite2;
+ this.dotNetBarManager1.Style = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
+ this.dotNetBarManager1.ToolbarBottomDockSite = this.dockSite8;
+ this.dotNetBarManager1.ToolbarLeftDockSite = this.dockSite5;
+ this.dotNetBarManager1.ToolbarRightDockSite = this.dockSite6;
+ this.dotNetBarManager1.ToolbarTopDockSite = this.dockSite7;
+ this.dotNetBarManager1.TopDockSite = this.dockSite3;
+ //
+ // dockSite4
+ //
+ this.dockSite4.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite4.Dock = System.Windows.Forms.DockStyle.Bottom;
+ this.dockSite4.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
+ this.dockSite4.Location = new System.Drawing.Point(0, 383);
+ this.dockSite4.Name = "dockSite4";
+ this.dockSite4.Size = new System.Drawing.Size(673, 0);
+ this.dockSite4.TabIndex = 3;
+ this.dockSite4.TabStop = false;
+ //
+ // dockSite9
+ //
+ this.dockSite9.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite9.Controls.Add(this._MyBar);
+ this.dockSite9.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.dockSite9.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer(new DevComponents.DotNetBar.DocumentBaseContainer[] {
+ ((DevComponents.DotNetBar.DocumentBaseContainer)(new DevComponents.DotNetBar.DocumentBarContainer(this._MyBar, 673, 383)))}, DevComponents.DotNetBar.eOrientation.Horizontal);
+ this.dockSite9.Location = new System.Drawing.Point(0, 0);
+ this.dockSite9.Name = "dockSite9";
+ this.dockSite9.Size = new System.Drawing.Size(673, 383);
+ this.dockSite9.TabIndex = 8;
+ this.dockSite9.TabStop = false;
+ //
+ // _MyBar
+ //
+ this._MyBar.AccessibleDescription = "DotNetBar Bar (_MyBar)";
+ this._MyBar.AccessibleName = "DotNetBar Bar";
+ this._MyBar.AccessibleRole = System.Windows.Forms.AccessibleRole.ToolBar;
+ this._MyBar.AlwaysDisplayDockTab = true;
+ this._MyBar.CanCustomize = false;
+ this._MyBar.CanDockBottom = false;
+ this._MyBar.CanDockDocument = true;
+ this._MyBar.CanDockLeft = false;
+ this._MyBar.CanDockRight = false;
+ this._MyBar.CanDockTop = false;
+ this._MyBar.CanHide = true;
+ this._MyBar.CanUndock = false;
+ this._MyBar.CloseSingleTab = true;
+ this._MyBar.DockTabAlignment = DevComponents.DotNetBar.eTabStripAlignment.Top;
+ this._MyBar.LayoutType = DevComponents.DotNetBar.eLayoutType.DockContainer;
+ this._MyBar.Location = new System.Drawing.Point(0, 0);
+ this._MyBar.Name = "_MyBar";
+ this._MyBar.Size = new System.Drawing.Size(673, 383);
+ this._MyBar.Stretch = true;
+ this._MyBar.Style = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
+ this._MyBar.TabIndex = 0;
+ this._MyBar.TabNavigation = true;
+ this._MyBar.TabStop = false;
+ //
+ // dockSite1
+ //
+ this.dockSite1.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite1.Dock = System.Windows.Forms.DockStyle.Left;
+ this.dockSite1.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
+ this.dockSite1.Location = new System.Drawing.Point(0, 0);
+ this.dockSite1.Name = "dockSite1";
+ this.dockSite1.Size = new System.Drawing.Size(0, 383);
+ this.dockSite1.TabIndex = 0;
+ this.dockSite1.TabStop = false;
+ //
+ // dockSite2
+ //
+ this.dockSite2.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite2.Dock = System.Windows.Forms.DockStyle.Right;
+ this.dockSite2.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
+ this.dockSite2.Location = new System.Drawing.Point(673, 0);
+ this.dockSite2.Name = "dockSite2";
+ this.dockSite2.Size = new System.Drawing.Size(0, 383);
+ this.dockSite2.TabIndex = 1;
+ this.dockSite2.TabStop = false;
+ //
+ // dockSite8
+ //
+ this.dockSite8.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite8.Dock = System.Windows.Forms.DockStyle.Bottom;
+ this.dockSite8.Location = new System.Drawing.Point(0, 383);
+ this.dockSite8.Name = "dockSite8";
+ this.dockSite8.Size = new System.Drawing.Size(673, 0);
+ this.dockSite8.TabIndex = 7;
+ this.dockSite8.TabStop = false;
+ //
+ // dockSite5
+ //
+ this.dockSite5.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite5.Dock = System.Windows.Forms.DockStyle.Left;
+ this.dockSite5.Location = new System.Drawing.Point(0, 0);
+ this.dockSite5.Name = "dockSite5";
+ this.dockSite5.Size = new System.Drawing.Size(0, 383);
+ this.dockSite5.TabIndex = 4;
+ this.dockSite5.TabStop = false;
+ //
+ // dockSite6
+ //
+ this.dockSite6.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite6.Dock = System.Windows.Forms.DockStyle.Right;
+ this.dockSite6.Location = new System.Drawing.Point(673, 0);
+ this.dockSite6.Name = "dockSite6";
+ this.dockSite6.Size = new System.Drawing.Size(0, 383);
+ this.dockSite6.TabIndex = 5;
+ this.dockSite6.TabStop = false;
+ //
+ // dockSite7
+ //
+ this.dockSite7.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite7.Dock = System.Windows.Forms.DockStyle.Top;
+ this.dockSite7.Location = new System.Drawing.Point(0, 0);
+ this.dockSite7.Name = "dockSite7";
+ this.dockSite7.Size = new System.Drawing.Size(673, 0);
+ this.dockSite7.TabIndex = 6;
+ this.dockSite7.TabStop = false;
+ //
+ // dockSite3
+ //
+ this.dockSite3.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.dockSite3.Dock = System.Windows.Forms.DockStyle.Top;
+ this.dockSite3.DocumentDockContainer = new DevComponents.DotNetBar.DocumentDockContainer();
+ this.dockSite3.Location = new System.Drawing.Point(0, 0);
+ this.dockSite3.Name = "dockSite3";
+ this.dockSite3.Size = new System.Drawing.Size(673, 0);
+ this.dockSite3.TabIndex = 2;
+ this.dockSite3.TabStop = false;
+ //
+ // dockContainerItem3
+ //
+ this.dockContainerItem3.Name = "dockContainerItem3";
+ this.dockContainerItem3.Text = "dockContainerItem3";
+ //
+ // dockContainerItem1
+ //
+ this.dockContainerItem1.Name = "dockContainerItem1";
+ this.dockContainerItem1.Text = "dockContainerItem1";
+ //
+ // dockContainerItem2
+ //
+ this.dockContainerItem2.Name = "dockContainerItem2";
+ this.dockContainerItem2.Text = "dockContainerItem2";
+ //
+ // superTooltip1
+ //
+ this.superTooltip1.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F";
+ //
+ // DisplayTabControl
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.Controls.Add(this.dockSite9);
+ this.Controls.Add(this.dockSite2);
+ this.Controls.Add(this.dockSite1);
+ this.Controls.Add(this.dockSite3);
+ this.Controls.Add(this.dockSite4);
+ this.Controls.Add(this.dockSite5);
+ this.Controls.Add(this.dockSite6);
+ this.Controls.Add(this.dockSite7);
+ this.Controls.Add(this.dockSite8);
+ this.Name = "DisplayTabControl";
+ this.Size = new System.Drawing.Size(673, 383);
+ this.dockSite9.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this._MyBar)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private DevComponents.DotNetBar.DotNetBarManager dotNetBarManager1;
+ private DevComponents.DotNetBar.DockSite dockSite4;
+ private DevComponents.DotNetBar.DockSite dockSite9;
+ private DevComponents.DotNetBar.Bar _MyBar;
+ private DevComponents.DotNetBar.DockContainerItem dockContainerItem1;
+ private DevComponents.DotNetBar.DockSite dockSite1;
+ private DevComponents.DotNetBar.DockSite dockSite2;
+ private DevComponents.DotNetBar.DockSite dockSite3;
+ private DevComponents.DotNetBar.DockSite dockSite5;
+ private DevComponents.DotNetBar.DockSite dockSite6;
+ private DevComponents.DotNetBar.DockSite dockSite7;
+ private DevComponents.DotNetBar.DockSite dockSite8;
+ private DevComponents.DotNetBar.DockContainerItem dockContainerItem2;
+ private DevComponents.DotNetBar.DockContainerItem dockContainerItem3;
+ private DevComponents.DotNetBar.SuperTooltip superTooltip1;
+ }
+}
diff --git a/PROMS/Volian.Controls.Library/DisplayTabControl.cs b/PROMS/Volian.Controls.Library/DisplayTabControl.cs
new file mode 100644
index 00000000..2834f29b
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DisplayTabControl.cs
@@ -0,0 +1,84 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Text;
+using System.Windows.Forms;
+using VEPROMS.CSLA.Library;
+using Volian.Controls.Library;
+
+namespace Volian.Controls.Library
+{
+ public partial class DisplayTabControl : UserControl
+ {
+ public event DisplayPanelEvent ItemClick;
+ private Dictionary _MyPages;
+ internal void OnItemClick(object sender, DisplayPanelEventArgs args)
+ {
+ if (ItemClick != null) ItemClick(sender, args);
+ }
+ public DisplayTabControl()
+ {
+ InitializeComponent();
+ SetUp();
+ }
+ private void SetUp()
+ {
+ Dock = DockStyle.Fill;
+ dotNetBarManager1.Style = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
+ _MyPages = new Dictionary();
+ }
+ public DevComponents.DotNetBar.Bar MyBar
+ {
+ get { return _MyBar; }
+ }
+ public DisplayTabItem SelectedTab
+ {
+ get { return (DisplayTabItem)_MyBar.SelectedDockContainerItem; }
+ set { if(value != null)_MyBar.SelectedDockContainerItem = value; }
+ }
+ public DisplayTabItem OpenItem(ItemInfo myItem)
+ {
+ if (myItem.MyContent.MyEntry == null)
+ return OpenDisplayTabPage(myItem);
+ else
+ return OpenDSOTabPage(myItem);
+ }
+ private DisplayTabItem OpenDisplayTabPage(ItemInfo myItem)
+ {
+ ItemInfo proc = myItem.MyProcedure; // Find procedure Item
+ string key = "Item - " + proc.ItemID.ToString();
+ DisplayTabItem pg = null;
+ if (_MyPages.ContainsKey(key)) // If Procedure Open use it
+ {
+ pg = _MyPages[key];
+ SelectedTab = pg;
+ }
+ else
+ {
+ pg = new DisplayTabItem(this.components, this, proc); // Open a new Procedure Tab
+ _MyPages.Add(key, pg);
+ SelectedTab = pg;
+ pg.MyTabPanel.MyItem = proc;
+ }
+ pg.ItemSelected = myItem; // Select the item
+ return pg;
+ }
+ private DisplayTabItem OpenDSOTabPage(ItemInfo myItem)
+ {
+ DisplayTabItem pg = null;
+ EntryInfo myEntry = myItem.MyContent.MyEntry;
+ string key = "Doc - " + myEntry.DocID;
+ if (_MyPages.ContainsKey(key)) // If Procedure Open use it
+ pg = _MyPages[key];
+ else
+ {
+ pg = new DisplayTabItem(this.components, this, myItem); // Open a new Procedure Tab
+ _MyPages.Add(key, pg);
+ }
+ SelectedTab = pg;
+ return pg;
+ }
+ }
+}
diff --git a/PROMS/Volian.Controls.Library/DisplayTabControl.resx b/PROMS/Volian.Controls.Library/DisplayTabControl.resx
new file mode 100644
index 00000000..9b30e3b8
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DisplayTabControl.resx
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 17, 17
+
+
+ 168, 17
+
+
\ No newline at end of file
diff --git a/PROMS/Volian.Controls.Library/DisplayTabItem.Designer.cs b/PROMS/Volian.Controls.Library/DisplayTabItem.Designer.cs
new file mode 100644
index 00000000..b21848c5
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DisplayTabItem.Designer.cs
@@ -0,0 +1,36 @@
+namespace Volian.Controls.Library
+{
+ partial class DisplayTabItem
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ //protected override void Dispose(bool disposing)
+ //{
+ // if (disposing && (components != null))
+ // {
+ // components.Dispose();
+ // }
+ // base.Dispose(disposing);
+ //}
+
+ #region Component Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ components = new System.ComponentModel.Container();
+ }
+
+ #endregion
+ }
+}
diff --git a/PROMS/Volian.Controls.Library/DisplayTabItem.cs b/PROMS/Volian.Controls.Library/DisplayTabItem.cs
new file mode 100644
index 00000000..86d8cf91
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DisplayTabItem.cs
@@ -0,0 +1,86 @@
+using System;
+using System.ComponentModel;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Text;
+using System.Drawing;
+using VEPROMS.CSLA.Library;
+
+namespace Volian.Controls.Library
+{
+ public partial class DisplayTabItem : DevComponents.DotNetBar.DockContainerItem
+ {
+ private DisplayTabControl _MyTabControl;
+ private ItemInfo _MyItem;
+ private DisplayTabPanel _MyTabPanel;
+ public DisplayTabPanel MyTabPanel
+ {
+ get { return _MyTabPanel; }
+ set { _MyTabPanel = value; }
+ }
+ private DSOTabPanel _MyDSOTabPanel;
+ public ItemInfo ItemSelected
+ {
+ get { return _MyTabPanel.ItemSelected; }
+ set { _MyTabPanel.ItemSelected = value; }
+ }
+ public DisplayTabItem(IContainer container, DisplayTabControl myTabControl, ItemInfo myItem)
+ {
+ _MyTabControl = myTabControl;
+ _MyItem = myItem;
+ container.Add(this);
+ InitializeComponent();
+ if (myItem.MyContent.MyEntry == null)
+ SetupDisplayPanel();
+ else
+ SetupDSOPanel();
+ }
+ private void SetupDisplayPanel()
+ {
+ ((System.ComponentModel.ISupportInitialize)(_MyTabControl.MyBar)).BeginInit();
+ _MyTabControl.MyBar.SuspendLayout();
+ _MyTabPanel = new DisplayTabPanel(_MyTabControl);
+ //
+ // tabItem
+ //
+ Control = _MyTabPanel;
+ Name = "tabItem Item " + _MyItem.ItemID;
+ Text = _MyItem.TabTitle;
+ Tooltip = _MyItem.TabToolTip;
+ //
+ _MyTabControl.Controls.Add(_MyTabPanel);
+ _MyTabControl.MyBar.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this});
+ // TODO: Cleanup _MyTabControl.Tabs.Add(this);
+ //
+ // tabPanel
+ //
+ _MyTabPanel.TabItem = this;
+ ((System.ComponentModel.ISupportInitialize)(_MyTabControl.MyBar)).EndInit();
+ _MyTabControl.MyBar.ResumeLayout(false);
+ //_MyTabPanel.MyItem = _MyItem;
+ }
+ private void SetupDSOPanel()
+ {
+ EntryInfo myEntry = _MyItem.MyContent.MyEntry;
+ _MyDSOTabPanel = new DSOTabPanel(myEntry.MyDocument);
+ //
+ // tabItem
+ //
+ Control = _MyDSOTabPanel;
+ Name = "tabItem Item " + _MyItem.ItemID;
+ Text = _MyItem.TabTitle;
+ Tooltip = _MyItem.TabToolTip;
+ //
+ _MyTabControl.Controls.Add(_MyDSOTabPanel);
+ _MyTabControl.MyBar.Items.AddRange(new DevComponents.DotNetBar.BaseItem[] {
+ this});
+ //
+ // tabPanel
+ //
+ _MyTabControl.SelectedTab = this;
+ _MyDSOTabPanel.TabItem = this;
+ //_MyTabControl.SetToolTip(this, "Header", "Footer", "Body");
+ }
+ }
+}
diff --git a/PROMS/Volian.Controls.Library/DisplayTabPanel.Designer.cs b/PROMS/Volian.Controls.Library/DisplayTabPanel.Designer.cs
new file mode 100644
index 00000000..17e3969a
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DisplayTabPanel.Designer.cs
@@ -0,0 +1,36 @@
+namespace Volian.Controls.Library
+{
+ partial class DisplayTabPanel
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ /// true if managed resources should be disposed; otherwise, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Component Designer generated code
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ components = new System.ComponentModel.Container();
+ }
+
+ #endregion
+ }
+}
diff --git a/PROMS/Volian.Controls.Library/DisplayTabPanel.cs b/PROMS/Volian.Controls.Library/DisplayTabPanel.cs
new file mode 100644
index 00000000..3ed4c320
--- /dev/null
+++ b/PROMS/Volian.Controls.Library/DisplayTabPanel.cs
@@ -0,0 +1,70 @@
+using System;
+using System.ComponentModel;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Text;
+using System.Drawing;
+using VEPROMS.CSLA.Library;
+using Volian.Controls.Library;
+
+namespace Volian.Controls.Library
+{
+ public partial class DisplayTabPanel : DevComponents.DotNetBar.PanelDockContainer
+ {
+ private DisplayTabControl _MyTabControl;
+ private Volian.Controls.Library.DisplayPanel _MyPanel;
+ private DisplayTabItem _TabItem;
+ public DisplayTabItem TabItem
+ {
+ get { return _TabItem; }
+ set { _TabItem = value; }
+ }
+ public ItemInfo ItemSelected
+ {
+ get { return _MyPanel.ItemSelected; }
+ set { _MyPanel.ItemSelected = value; }
+ }
+ public ItemInfo MyItem
+ {
+ get { return _MyPanel.MyItem; }
+ set { _MyPanel.MyItem = value; }
+ }
+ public DisplayTabPanel(DisplayTabControl myTabControl)
+ {
+ _MyTabControl = myTabControl;
+ InitializeComponent();
+ SetupDisplayTabPanel();
+ SetupDisplayPanel();
+ }
+ private void SetupDisplayTabPanel()
+ {
+ Dock = System.Windows.Forms.DockStyle.Fill;
+ }
+ private void SetupDisplayPanel()
+ {
+ //this.Font = new Font("Microsoft Sans Serif", 8.25F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(0)));
+ _MyPanel = new Volian.Controls.Library.DisplayPanel(this.components);
+ this.Controls.Add(_MyPanel);
+ //
+ // _MyPanel
+ //
+ _MyPanel.AutoScroll = true;
+ _MyPanel.Dock = System.Windows.Forms.DockStyle.Fill;
+ _MyPanel.LinkClicked +=new Volian.Controls.Library.DisplayPanelLinkEvent(_MyPanel_LinkClicked);
+ _MyPanel.ItemClick +=new Volian.Controls.Library.DisplayPanelEvent(_MyPanel_ItemClick);
+ _MyPanel.AttachmentClicked += new Volian.Controls.Library.DisplayPanelAttachmentEvent(_MyPanel_AttachmentClicked);
+ }
+ void _MyPanel_AttachmentClicked(object sender, DisplayPanelAttachmentEventArgs args)
+ {
+ _MyTabControl.OpenItem(args.MyDisplayItem.MyItem);
+ }
+ void _MyPanel_ItemClick(object sender, DisplayPanelEventArgs args)
+ {
+ _MyTabControl.OnItemClick(sender, args);
+ }
+ void _MyPanel_LinkClicked(object sender, DisplayLinkEventArgs args)
+ {
+ _MyTabControl.OpenItem(args.ItemTo);
+ }
+ }
+}