Fixed DSO Framer:
1. Open Properly if all tabs are closed 2. Open to a full window view 3. Set Current Item in the Tab Control Fixed Display Panel so that when you click on an item in an inactive panel, the item clicked-on become the selected item.
This commit is contained in:
@@ -19,6 +19,11 @@ namespace Volian.Controls.Library
|
||||
private static int _Count = 0;
|
||||
private DocumentInfo _MyDocument;
|
||||
private int _MyCount;
|
||||
public static int Count
|
||||
{
|
||||
get { return _Count; }
|
||||
set { _Count = value; }
|
||||
}
|
||||
private DisplayTabItem _TabItem;
|
||||
public DisplayTabItem TabItem
|
||||
{
|
||||
@@ -32,13 +37,11 @@ namespace Volian.Controls.Library
|
||||
SetupDSOTabPanel();
|
||||
_MyDocument = documentInfo;
|
||||
SetupDSO();
|
||||
|
||||
}
|
||||
|
||||
private void SetupDSOTabPanel()
|
||||
{
|
||||
private void SetupDSOTabPanel()
|
||||
{
|
||||
Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
}
|
||||
}
|
||||
public DocumentInfo DocumentInfo
|
||||
{
|
||||
get { return _MyDocument; }
|
||||
@@ -63,38 +66,30 @@ private void SetupDSOTabPanel()
|
||||
_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);
|
||||
//if (_MyCount < 20)
|
||||
// this._MyDSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoResetNow;
|
||||
this._MyDSOFramer.BeforeDocumentClosed += new AxDSOFramer._DFramerCtlEvents_BeforeDocumentClosedEventHandler(_MyDSOFramer_BeforeDocumentClosed);
|
||||
//this.Resize += new EventHandler(DSOTabPage_Resize);
|
||||
this._MyDSOFramer.OnSaveCompleted += new AxDSOFramer._DFramerCtlEvents_OnSaveCompletedEventHandler(_MyDSOFramer_OnSaveCompleted);
|
||||
this.Enter += new EventHandler(DSOTabPanel_Enter);
|
||||
}
|
||||
void _MyDSOFramer_OnSaveCompleted(object sender, AxDSOFramer._DFramerCtlEvents_OnSaveCompletedEvent e)
|
||||
{
|
||||
DSOFile.SaveFile();
|
||||
}
|
||||
void _MyDSOFramer_BeforeDocumentClosed(object sender, AxDSOFramer._DFramerCtlEvents_BeforeDocumentClosedEvent e)
|
||||
{
|
||||
try
|
||||
{
|
||||
SaveDirty();
|
||||
//if(SaveDirty()) e.cancel = true;
|
||||
//throw new System.Data.DataException();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -105,8 +100,9 @@ private void SetupDSOTabPanel()
|
||||
{
|
||||
try
|
||||
{
|
||||
_MyDSOFramer.EventsEnabled = true;
|
||||
_MyDSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoResetNow;
|
||||
_MyDSOFramer.Focus();
|
||||
_MyTabControl.OnItemSelectedChanged(this, null);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -133,7 +129,7 @@ private void SetupDSOTabPanel()
|
||||
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)
|
||||
if (MessageBox.Show("Save changes to " + _TabItem.MyItem.TabTitle + "\r\n" + _TabItem.MyItem.TabToolTip, "Document has Changed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
return SaveDSO();
|
||||
return false;
|
||||
}
|
||||
@@ -145,6 +141,7 @@ private void SetupDSOTabPanel()
|
||||
}
|
||||
public bool CloseDSO(bool force)
|
||||
{
|
||||
_MyLog.Debug("CloseDSO");
|
||||
bool result = true;
|
||||
try
|
||||
{
|
||||
@@ -153,6 +150,7 @@ private void SetupDSOTabPanel()
|
||||
components.Remove(_MyDSOFramer);
|
||||
_MyDSOFramer.Dispose();
|
||||
_MyDSOFramer = null;
|
||||
_Count--;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -161,16 +159,6 @@ private void SetupDSOTabPanel()
|
||||
}
|
||||
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
|
||||
@@ -178,7 +166,6 @@ private void SetupDSOTabPanel()
|
||||
this._MyDSOFramer.Activate();
|
||||
if (_MyCount < 20)
|
||||
this._MyDSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoResetNow;
|
||||
//this._DSOFramer.FrameHookPolicy = DSOFramer.dsoFrameHookPolicy.dsoSetOnFirstOpen;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
Reference in New Issue
Block a user