This commit is contained in:
parent
12816c2ff0
commit
b1da81e65f
@ -75,6 +75,7 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
get { return _MyDSOFramer.IsDirty; }
|
get { return _MyDSOFramer.IsDirty; }
|
||||||
}
|
}
|
||||||
|
public E_ViewMode PanelViewEditMode = E_ViewMode.Edit;
|
||||||
#endregion
|
#endregion
|
||||||
//private frmPG _frm = null;
|
//private frmPG _frm = null;
|
||||||
#region Constructors
|
#region Constructors
|
||||||
@ -231,6 +232,12 @@ namespace Volian.Controls.Library
|
|||||||
/// <param name="e"></param>
|
/// <param name="e"></param>
|
||||||
void _MyDSOFramer_OnSaveCompleted(object sender, AxDSOFramer._DFramerCtlEvents_OnSaveCompletedEvent e)
|
void _MyDSOFramer_OnSaveCompleted(object sender, AxDSOFramer._DFramerCtlEvents_OnSaveCompletedEvent e)
|
||||||
{
|
{
|
||||||
|
// Unfortunately, the only way to handle view mode for DSO Framer is to not save.
|
||||||
|
if (PanelViewEditMode == E_ViewMode.View)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Currently in VIEW mode,\r\n cannot Save " + _MyDisplayTabItem.Tooltip);
|
||||||
|
return;
|
||||||
|
}
|
||||||
MyDSOFile.FullName = GetReflectiveProperty(_MyDSOFramer.ActiveDocument, "FullName");
|
MyDSOFile.FullName = GetReflectiveProperty(_MyDSOFramer.ActiveDocument, "FullName");
|
||||||
MyDSOFile.SaveFile();
|
MyDSOFile.SaveFile();
|
||||||
}
|
}
|
||||||
@ -245,7 +252,7 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
this.Enter -= new EventHandler(DSOTabPanel_Enter);
|
this.Enter -= new EventHandler(DSOTabPanel_Enter);
|
||||||
this.Leave -= new EventHandler(DSOTabPanel_Leave);
|
this.Leave -= new EventHandler(DSOTabPanel_Leave);
|
||||||
SaveDirty();
|
// SaveDirty(); // SaveDirty happens in CloseDSO(bool)
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
@ -264,6 +271,19 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
if (IgnoreEnter) return;
|
if (IgnoreEnter) return;
|
||||||
_MyTransparentPanel.SendToBack();
|
_MyTransparentPanel.SendToBack();
|
||||||
|
|
||||||
|
// Set whether this worddoc is in view/edit mode by checking whether the
|
||||||
|
// procedure is in view/edit mode (based on the steppanel. This occurs on
|
||||||
|
// the enter event so that the mode is determined any time this panel becomes
|
||||||
|
// active.
|
||||||
|
// find steptabpanel and its view/edit. If it doesn't have a steptabpanel
|
||||||
|
// use default - edit. Later when we have ownership, need to use that.
|
||||||
|
PanelViewEditMode = E_ViewMode.Edit; // default to edit
|
||||||
|
if (MyDisplayTabItem.MyItemInfo != null) // lib doc with no associated active procedure defaults to edit
|
||||||
|
{
|
||||||
|
StepTabPanel stpanel = _MyDisplayTabControl.GetProcedureTabPanel(MyDisplayTabItem.MyItemInfo);
|
||||||
|
PanelViewEditMode = (stpanel==null)? E_ViewMode.Edit : stpanel.MyStepPanel.PanelViewEditMode;
|
||||||
|
}
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
_MyDSOFramer.EventsEnabled = true;
|
_MyDSOFramer.EventsEnabled = true;
|
||||||
@ -313,7 +333,12 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
if (_MyDSOFramer.IsDirty)
|
if (_MyDSOFramer.IsDirty)
|
||||||
{
|
{
|
||||||
// TODO: Should be based upon Item rather than Document.
|
// Unfortunately, the only way to handle view mode for DSO Framer is to not save.
|
||||||
|
if (PanelViewEditMode == E_ViewMode.View)
|
||||||
|
{
|
||||||
|
MessageBox.Show("Currently in VIEW mode,\r\n cannot Save " + _MyDisplayTabItem.Tooltip);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
//if (MessageBox.Show("Save changes to " + _MyDisplayTabItem.MyItemInfo.TabTitle + "\r\n" + _MyDisplayTabItem.MyItemInfo.TabToolTip, "Document has Changed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
//if (MessageBox.Show("Save changes to " + _MyDisplayTabItem.MyItemInfo.TabTitle + "\r\n" + _MyDisplayTabItem.MyItemInfo.TabToolTip, "Document has Changed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||||
if (MessageBox.Show("Save changes to " + _MyDisplayTabItem.Text + "\r\n" + _MyDisplayTabItem.Tooltip, "Document has Changed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
if (MessageBox.Show("Save changes to " + _MyDisplayTabItem.Text + "\r\n" + _MyDisplayTabItem.Tooltip, "Document has Changed", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||||
return SaveDSO();
|
return SaveDSO();
|
||||||
|
@ -1365,6 +1365,10 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
_MyStepPanel.CursorMovement(sender as StepRTB, args.CursorLocation, args.Key);
|
_MyStepPanel.CursorMovement(sender as StepRTB, args.CursorLocation, args.Key);
|
||||||
}
|
}
|
||||||
|
private void _MyStepRTB_ModeChange(object sender, StepRTBModeChangeEventArgs args)
|
||||||
|
{
|
||||||
|
_MyStepPanel.OnModeChange(sender as StepRTB, args);
|
||||||
|
}
|
||||||
#endregion // Event Handlers
|
#endregion // Event Handlers
|
||||||
#region Private Methods
|
#region Private Methods
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -74,6 +74,7 @@ namespace Volian.Controls.Library
|
|||||||
this._MyStepRTB.CursorKeyPress += new Volian.Controls.Library.StepRTBCursorKeysEvent(this._MyStepRTB_CursorKeyPress);
|
this._MyStepRTB.CursorKeyPress += new Volian.Controls.Library.StepRTBCursorKeysEvent(this._MyStepRTB_CursorKeyPress);
|
||||||
this._MyStepRTB.CursorMovement += new Volian.Controls.Library.StepRTBCursorMovementEvent(this._MyStepRTB_CursorMovement);
|
this._MyStepRTB.CursorMovement += new Volian.Controls.Library.StepRTBCursorMovementEvent(this._MyStepRTB_CursorMovement);
|
||||||
this._MyStepRTB.LinkModifyRO += new Volian.Controls.Library.StepRTBLinkEvent(this._StepRTB_LinkModifyRO);
|
this._MyStepRTB.LinkModifyRO += new Volian.Controls.Library.StepRTBLinkEvent(this._StepRTB_LinkModifyRO);
|
||||||
|
this._MyStepRTB.ModeChange += new Volian.Controls.Library.StepRTBModeChangeEvent(this._MyStepRTB_ModeChange);
|
||||||
//
|
//
|
||||||
// _MyvlnExpander
|
// _MyvlnExpander
|
||||||
//
|
//
|
||||||
|
@ -57,6 +57,10 @@ namespace Volian.Controls.Library
|
|||||||
private Color _TabColor = Color.White;
|
private Color _TabColor = Color.White;
|
||||||
private Color _PanelColor = Color.White;
|
private Color _PanelColor = Color.White;
|
||||||
#endif
|
#endif
|
||||||
|
// Whether panel is in view or edit mode. Toggled from steprtb
|
||||||
|
// or set based on approval/multi-user (these two will be done
|
||||||
|
// later.
|
||||||
|
public E_ViewMode PanelViewEditMode = E_ViewMode.Edit;
|
||||||
internal string _LastAdjust="";
|
internal string _LastAdjust="";
|
||||||
private bool _ShowLines = true;
|
private bool _ShowLines = true;
|
||||||
private Graphics _MyGraphics = null;
|
private Graphics _MyGraphics = null;
|
||||||
@ -106,6 +110,14 @@ namespace Volian.Controls.Library
|
|||||||
if (AttachmentClicked != null) AttachmentClicked(sender, args);
|
if (AttachmentClicked != null) AttachmentClicked(sender, args);
|
||||||
else MessageBox.Show(args.MyStepItem.MyItemInfo.MyContent.MyEntry.MyDocument.DocumentTitle, "Unhandled Attachment Click", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
else MessageBox.Show(args.MyStepItem.MyItemInfo.MyContent.MyEntry.MyDocument.DocumentTitle, "Unhandled Attachment Click", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Edit/View mode change
|
||||||
|
public event StepPanelModeChangeEvent ModeChange;
|
||||||
|
internal void OnModeChange(object sender, StepRTBModeChangeEventArgs args)
|
||||||
|
{
|
||||||
|
PanelViewEditMode = args.ViewMode;
|
||||||
|
ModeChange(sender, args);
|
||||||
|
}
|
||||||
#endregion
|
#endregion
|
||||||
#region Link Events
|
#region Link Events
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -312,8 +324,8 @@ namespace Volian.Controls.Library
|
|||||||
_SelectedStepRTB = value;
|
_SelectedStepRTB = value;
|
||||||
if (value != null)
|
if (value != null)
|
||||||
{
|
{
|
||||||
_SelectedStepRTB.ViewRTB = false;
|
_SelectedStepRTB.ViewRTB = PanelViewEditMode == E_ViewMode.View;
|
||||||
_SelectedStepRTB.RTBFillIn(true);
|
_SelectedStepRTB.RTBFillIn(PanelViewEditMode != E_ViewMode.View);
|
||||||
if (_SelectedItemInfo.ItemID != value.MyItemInfo.ItemID)
|
if (_SelectedItemInfo.ItemID != value.MyItemInfo.ItemID)
|
||||||
SelectedItemInfo = value.MyItemInfo;
|
SelectedItemInfo = value.MyItemInfo;
|
||||||
}
|
}
|
||||||
@ -945,6 +957,7 @@ namespace Volian.Controls.Library
|
|||||||
_MyStepItem = myStepItem;
|
_MyStepItem = myStepItem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public partial class StepPanelLinkEventArgs : EventArgs
|
public partial class StepPanelLinkEventArgs : EventArgs
|
||||||
{
|
{
|
||||||
private static readonly log4net.ILog _MyLog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly log4net.ILog _MyLog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
@ -977,4 +990,5 @@ namespace Volian.Controls.Library
|
|||||||
public delegate void StepPanelLinkEvent(object sender, StepPanelLinkEventArgs args);
|
public delegate void StepPanelLinkEvent(object sender, StepPanelLinkEventArgs args);
|
||||||
public delegate void StepPanelAttachmentEvent(object sender, StepPanelAttachmentEventArgs args);
|
public delegate void StepPanelAttachmentEvent(object sender, StepPanelAttachmentEventArgs args);
|
||||||
public delegate void StepRTBLinkEvent(object sender, StepPanelLinkEventArgs args);
|
public delegate void StepRTBLinkEvent(object sender, StepPanelLinkEventArgs args);
|
||||||
|
public delegate void StepPanelModeChangeEvent(object sender, StepRTBModeChangeEventArgs args);
|
||||||
}
|
}
|
||||||
|
@ -12,9 +12,11 @@ using VEPROMS.CSLA.Library;
|
|||||||
|
|
||||||
namespace Volian.Controls.Library
|
namespace Volian.Controls.Library
|
||||||
{
|
{
|
||||||
|
|
||||||
public delegate void StepRTBEvent(object sender, EventArgs args);
|
public delegate void StepRTBEvent(object sender, EventArgs args);
|
||||||
public delegate void StepRTBCursorKeysEvent(object sender, KeyEventArgs args);
|
public delegate void StepRTBCursorKeysEvent(object sender, KeyEventArgs args);
|
||||||
public delegate void StepRTBCursorMovementEvent(object sender, StepRTBCursorMovementEventArgs args);
|
public delegate void StepRTBCursorMovementEvent(object sender, StepRTBCursorMovementEventArgs args);
|
||||||
|
public delegate void StepRTBModeChangeEvent(object sender, StepRTBModeChangeEventArgs args);
|
||||||
//public delegate void StepRTBMouseWheelEvent(object sender, MouseEventArgs args);
|
//public delegate void StepRTBMouseWheelEvent(object sender, MouseEventArgs args);
|
||||||
public partial class StepRTB : RichTextBox , IStepRTB
|
public partial class StepRTB : RichTextBox , IStepRTB
|
||||||
{
|
{
|
||||||
@ -44,6 +46,13 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
if (CursorMovement != null) CursorMovement(sender, args);
|
if (CursorMovement != null) CursorMovement(sender, args);
|
||||||
}
|
}
|
||||||
|
public event StepRTBModeChangeEvent ModeChange;
|
||||||
|
private void OnModeChange(object sender, StepRTBModeChangeEventArgs args)
|
||||||
|
{
|
||||||
|
//_MyModeChangeEventArgs = args;
|
||||||
|
if (ModeChange != null) ModeChange(sender, args);
|
||||||
|
else MessageBox.Show("StepRTB - no mode change defined");
|
||||||
|
}
|
||||||
//public event StepRTBMouseWheelEvent MouseWheel;
|
//public event StepRTBMouseWheelEvent MouseWheel;
|
||||||
//private void OnMouseWheel(object sender, MouseEventArgs args)
|
//private void OnMouseWheel(object sender, MouseEventArgs args)
|
||||||
//{
|
//{
|
||||||
@ -91,7 +100,12 @@ namespace Volian.Controls.Library
|
|||||||
get { return _MyStepItem; }
|
get { return _MyStepItem; }
|
||||||
set { _MyStepItem = value; }
|
set { _MyStepItem = value; }
|
||||||
}
|
}
|
||||||
private bool _IsDirty = false;
|
// _IsDirty compares the original rtf to the current rtf from the
|
||||||
|
// richtextbox to see if a change was made.
|
||||||
|
private bool _IsDirty
|
||||||
|
{
|
||||||
|
get { return _origRTF != Rtf; }
|
||||||
|
}
|
||||||
private bool _InitializingRTB;
|
private bool _InitializingRTB;
|
||||||
private IContainer _Container = null;
|
private IContainer _Container = null;
|
||||||
private string _MyClassName=string.Empty;
|
private string _MyClassName=string.Empty;
|
||||||
@ -128,10 +142,11 @@ namespace Volian.Controls.Library
|
|||||||
if (value != null)
|
if (value != null)
|
||||||
{
|
{
|
||||||
RTBFillIn(!ViewRTB);
|
RTBFillIn(!ViewRTB);
|
||||||
|
//ViewRTB = MyStepItem.MyStepPanel.PanelViewEditMode == E_ViewMode.View;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
private string _origRTF;
|
||||||
public void RTBFillIn(bool edit)
|
public void RTBFillIn(bool edit)
|
||||||
{
|
{
|
||||||
_InitializingRTB = true;
|
_InitializingRTB = true;
|
||||||
@ -156,9 +171,10 @@ namespace Volian.Controls.Library
|
|||||||
RTBAPI.SetLineSpacing(this, RTBAPI.ParaSpacing.PFS_EXACT);
|
RTBAPI.SetLineSpacing(this, RTBAPI.ParaSpacing.PFS_EXACT);
|
||||||
AddRtfText(vlntxt.StartText);
|
AddRtfText(vlntxt.StartText);
|
||||||
AddRtfStyles();
|
AddRtfStyles();
|
||||||
|
// set readonly based on initial modes, however, these may change if
|
||||||
|
// user selected view mode.
|
||||||
ReadOnly = !(EpMode == E_EditPrintMode.Edit && VwMode == E_ViewMode.Edit);
|
ReadOnly = !(EpMode == E_EditPrintMode.Edit && VwMode == E_ViewMode.Edit);
|
||||||
_InitializingRTB = false;
|
if (!ReadOnly && !edit) ReadOnly = true;
|
||||||
_IsDirty = false;
|
|
||||||
ClearUndo();
|
ClearUndo();
|
||||||
RightMargin = Width;
|
RightMargin = Width;
|
||||||
// figure out if needs outlined, depends on table/figure type
|
// figure out if needs outlined, depends on table/figure type
|
||||||
@ -184,7 +200,9 @@ namespace Volian.Controls.Library
|
|||||||
indchar++;
|
indchar++;
|
||||||
}
|
}
|
||||||
AddEventHandlers();
|
AddEventHandlers();
|
||||||
}
|
}
|
||||||
|
_origRTF = Rtf;
|
||||||
|
_InitializingRTB = false;
|
||||||
_MyItemInfo.MyConfig.PropertyChanged += new PropertyChangedEventHandler(MyConfig_PropertyChanged);
|
_MyItemInfo.MyConfig.PropertyChanged += new PropertyChangedEventHandler(MyConfig_PropertyChanged);
|
||||||
}
|
}
|
||||||
private bool _ProcessKeystrokes = true;
|
private bool _ProcessKeystrokes = true;
|
||||||
@ -356,15 +374,21 @@ namespace Volian.Controls.Library
|
|||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
#region ApplicationSupport
|
#region ApplicationSupport
|
||||||
public void ToggleViewEdit()
|
public void ToggleEditView()
|
||||||
{
|
{
|
||||||
ItemInfo tmp = MyItemInfo;
|
SaveText();
|
||||||
MyItemInfo = null;
|
//ItemInfo tmp = MyItemInfo;
|
||||||
|
//MyItemInfo = null;
|
||||||
ReadOnly = !ReadOnly;
|
ReadOnly = !ReadOnly;
|
||||||
EpMode = ReadOnly ? E_EditPrintMode.Print : E_EditPrintMode.Edit;
|
EpMode = ReadOnly ? E_EditPrintMode.Print : E_EditPrintMode.Edit;
|
||||||
VwMode = ReadOnly ? E_ViewMode.View : E_ViewMode.Edit;
|
VwMode = ReadOnly ? E_ViewMode.View : E_ViewMode.Edit;
|
||||||
|
ViewRTB = ReadOnly;
|
||||||
Clear();
|
Clear();
|
||||||
MyItemInfo = tmp;
|
RTBFillIn(!ViewRTB);
|
||||||
|
//MyItemInfo = tmp;
|
||||||
|
SelectionStart = 0;
|
||||||
|
SelectionLength = 0;
|
||||||
|
OnModeChange(this, new StepRTBModeChangeEventArgs(ViewRTB?E_ViewMode.View:E_ViewMode.Edit));
|
||||||
}
|
}
|
||||||
public void InsertRO(string value, string link)
|
public void InsertRO(string value, string link)
|
||||||
{
|
{
|
||||||
@ -482,16 +506,14 @@ namespace Volian.Controls.Library
|
|||||||
public void SaveText()
|
public void SaveText()
|
||||||
{
|
{
|
||||||
if (ReadOnly) return;
|
if (ReadOnly) return;
|
||||||
|
if (ViewRTB) return;
|
||||||
if (!_IsDirty) return;
|
if (!_IsDirty) return;
|
||||||
if (_IsDirty)
|
bool success = _origDisplayText.Save((RichTextBox)this);
|
||||||
|
if (success)
|
||||||
{
|
{
|
||||||
bool success = _origDisplayText.Save((RichTextBox)this);
|
FindAllLinks();
|
||||||
if (success)
|
_origRTF = Rtf;
|
||||||
{
|
ClearUndo();
|
||||||
FindAllLinks();
|
|
||||||
_IsDirty = false;
|
|
||||||
ClearUndo();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public void SaveConfig()
|
public void SaveConfig()
|
||||||
@ -793,10 +815,14 @@ namespace Volian.Controls.Library
|
|||||||
if (LinkModifyRO != null) LinkModifyRO(sender, args);
|
if (LinkModifyRO != null) LinkModifyRO(sender, args);
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
#region TextOrContents
|
#region TextAndContentsEvents
|
||||||
void StepRTB_TextChanged(object sender, EventArgs e)
|
void StepRTB_TextChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
_IsDirty = true;
|
if (_InitializingRTB) return;
|
||||||
|
// Was setting _IsDirty to true here, but this was getting called from
|
||||||
|
// 'dotnetbar' when text was NOT Changed. So _IsDirty was made into
|
||||||
|
// a property and compared original rtf versus current richtextbox's
|
||||||
|
// rtf.
|
||||||
FindAllLinks();
|
FindAllLinks();
|
||||||
}
|
}
|
||||||
void StepRTB_ContentsResized(object sender, ContentsResizedEventArgs e)
|
void StepRTB_ContentsResized(object sender, ContentsResizedEventArgs e)
|
||||||
@ -1449,8 +1475,8 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
string str = Text;
|
string str = Text;
|
||||||
_LinkLocations = new List<LinkLocation>();
|
_LinkLocations = new List<LinkLocation>();
|
||||||
MatchCollection matches = Regex.Matches(str, "<START](.*?)[[]END>");
|
MatchCollection matches = Regex.Matches(str, @"<START](.*?)[[]END>", RegexOptions.Singleline);
|
||||||
MatchCollection matchesRtf = Regex.Matches(Rtf, "<START](.*?)[[]END>");
|
MatchCollection matchesRtf = Regex.Matches(Rtf, "<START](.*?)[[]END>", RegexOptions.Singleline);
|
||||||
LinkLocation thisLink = null;
|
LinkLocation thisLink = null;
|
||||||
for (int i = 0; i < matches.Count; i++) //each (Match match in matches)
|
for (int i = 0; i < matches.Count; i++) //each (Match match in matches)
|
||||||
{
|
{
|
||||||
@ -1881,7 +1907,14 @@ namespace Volian.Controls.Library
|
|||||||
lastIndex = m.Index + m.Length; // Calculate the beginning of the remaining text
|
lastIndex = m.Index + m.Length; // Calculate the beginning of the remaining text
|
||||||
}
|
}
|
||||||
sb.Append(line.Substring(lastIndex)); // Append the text following the last link
|
sb.Append(line.Substring(lastIndex)); // Append the text following the last link
|
||||||
return sb.ToString();
|
string result = sb.ToString();
|
||||||
|
MatchCollection mcEnd = Regex.Matches(line, @"#Link.*?\[END>");
|
||||||
|
result = result.Replace(@"<START]", "");
|
||||||
|
if (mcEnd.Count > 0)
|
||||||
|
{
|
||||||
|
result = result.Substring(0, mcEnd[0].Index - 1) + result.Substring(mcEnd[0].Index + mcEnd[0].Length);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
private void ReplaceLinesInTable(bool withBorder)
|
private void ReplaceLinesInTable(bool withBorder)
|
||||||
{
|
{
|
||||||
@ -1892,7 +1925,9 @@ namespace Volian.Controls.Library
|
|||||||
string lineAbove = RemoveLinkComments(Lines[row-1]);
|
string lineAbove = RemoveLinkComments(Lines[row-1]);
|
||||||
string lineBelow = RemoveLinkComments(Lines[row+1]);
|
string lineBelow = RemoveLinkComments(Lines[row+1]);
|
||||||
int rowOffset = GetFirstCharIndexFromLine(row);
|
int rowOffset = GetFirstCharIndexFromLine(row);
|
||||||
MatchCollection matchCollection = Regex.Matches(line, @"<START\](.*?)#Link.*?\[END>");
|
MatchCollection matchCollection = Regex.Matches(line, @"<START\](.*?)#Link.*?\[END>"); //, RegexOptions.Singleline);
|
||||||
|
if (matchCollection.Count == 0) matchCollection = Regex.Matches(line, @"<START\]");
|
||||||
|
if (matchCollection.Count == 0) matchCollection = Regex.Matches(line, @"#Link.*?\[END>");
|
||||||
Match match = matchCollection.Count > 0 ? matchCollection[0] : null;
|
Match match = matchCollection.Count > 0 ? matchCollection[0] : null;
|
||||||
int matchOffset = 0;
|
int matchOffset = 0;
|
||||||
for (int col = 1; col < rowWidth - 1; col++)
|
for (int col = 1; col < rowWidth - 1; col++)
|
||||||
@ -1969,6 +2004,19 @@ namespace Volian.Controls.Library
|
|||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
public partial class StepRTBModeChangeEventArgs : EventArgs
|
||||||
|
{
|
||||||
|
private E_ViewMode _ViewMode;
|
||||||
|
public E_ViewMode ViewMode
|
||||||
|
{
|
||||||
|
get { return _ViewMode; }
|
||||||
|
set { _ViewMode = value; }
|
||||||
|
}
|
||||||
|
public StepRTBModeChangeEventArgs(E_ViewMode vmode)
|
||||||
|
{
|
||||||
|
_ViewMode = vmode;
|
||||||
|
}
|
||||||
|
}
|
||||||
public class StepRTBCursorMovementEventArgs
|
public class StepRTBCursorMovementEventArgs
|
||||||
{
|
{
|
||||||
private Point _CursorLocation;
|
private Point _CursorLocation;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user