This commit is contained in:
John Jenko 2011-04-15 14:45:39 +00:00
parent ee90d4d732
commit 6ac65a51a3
4 changed files with 495 additions and 795 deletions

View File

@ -341,6 +341,7 @@ namespace DataLoader
}
private Regex _RemoveComments = new Regex(@"\\v .*?\\v0( |$)");
private string ConvertTableToGrid(string stepText, Content content, FormatInfo fmt, bool isROTable)
{
string savethis = stepText;
@ -350,49 +351,7 @@ namespace DataLoader
VE_Font vefont = fmt.PlantFormat.FormatData.StepDataList.Table.Font;
Font GridFont = new Font(vefont.Family, (float)vefont.Size);
grd.Font = GridFont; // this also changes the default Row Height "Rows.DefaultSize"
stepText = FixStepText(stepText);
stepText = stepText.Replace(@"\u8209?", "-");
stepText = stepText.Replace(@"\u9474?", "\xB3"); // Vert Line graphic character
stepText = stepText.Replace(@"\'b0", "\xB0");
stepText = stepText.Replace(@"\up2 ", "\x9566");
stepText = stepText.Replace(@"\up0 ", "\x9567");
stepText = stepText.Replace(@"\ulnone", "\xBB");
stepText = stepText.Replace(@"\ul", "\xAB");
stepText = stepText.Replace(@"\{", "{");
stepText = stepText.Replace(@"\}", "}");
stepText = stepText.Replace(@"\b0", "\xD6");
stepText = stepText.Replace(@"\b", "\xD5");
stepText = stepText.Replace(@"\u160?", "\xA0"); //hard space
stepText = stepText.Replace(@"\u916?", "\x7F"); // delta
stepText = stepText.Replace(@"\u8805?", "\xF2"); //greater than or equal
stepText = stepText.Replace(@"\u8804?", "\xF3"); // less than or equal
stepText = stepText.Replace(@"\u931?", "\xE4"); // sigma
stepText = stepText.Replace(@"\u947?", "\xE7"); // gamma
stepText = stepText.Replace(@"\u9604?", "\xFE"); // accum 2584
stepText = stepText.Replace(@"\u9679?", "\x7"); // bullet 25CF
stepText = stepText.Replace(@"\u8776?", "\xF7"); // approx eq
stepText = stepText.Replace(@"\u8773?", "\xF0"); // similar eq 2245
stepText = stepText.Replace(@"\u8730?", "\xFB"); // square root
stepText = stepText.Replace(@"\u961?", "\xE2"); // rho 3C1
stepText = stepText.Replace(@"\u960?", "\xE3"); // pi
stepText = stepText.Replace(@"\u956?", "\xE6"); // micro
stepText = stepText.Replace(@"\u948?", "\xEB"); // lower case delta
stepText = stepText.Replace(@"\u963?", "\xE5"); // lower case sigma
stepText = stepText.Replace(@"\u274?", "\x90"); // energy, 112
stepText = stepText.Replace(@"\u949?", "\xEE"); // epsilon
stepText = stepText.Replace(@"\u952?", "\xE9"); // theta, 3B8
stepText = stepText.Replace(@"\u8857?", "\xEC"); // dot in oval, 2299
stepText = stepText.Replace(@"\u964?", "\xA8"); // tau, 3C4
stepText = stepText.Replace(@"\u9830?", "\xA9"); // diamond, 2666
stepText = stepText.Replace(@"\u8593?", "\x18"); // Up Arrow - changes to \xff
stepText = stepText.Replace(@"\u8595?", "\x19"); // Down Arrow - changes to \xd6
//Console.WriteLine("B4 Parse Orig Text: '{0}'", savethis);
//Console.WriteLine("B4 Parse sym repl: '{0}'", stepText);
if (grd.IsRoTable)
grd.ParseTableFromText(_RemoveComments.Replace(stepText, ""));
else
grd.ParseTableFromText(stepText);
grd.ParseTableFromText(stepText);
grd.AutoSizeCols();
grd.AutoSizeRows();
grd.MakeRTFcells();
@ -407,23 +366,7 @@ namespace DataLoader
}
return strGrid;
}
//private void FixSymbolsInGridTable(Content content, ItemInfo ii)
//{
// VlnFlexGrid grd = new VlnFlexGrid(1, 1);
// using (TextReader stringreader = new StringReader(content.MyGrid.Data))
// {
// grd.ReadXml(stringreader);
// stringreader.Close();
// }
// for (int r = 0; r < grd.Rows.Count; r++)
// for (int c = 0; c < grd.Cols.Count; c++)
// {
// StepRTB trtb = new StepRTB();
// trtb = grd[r, c];
// DisplayText dt = new DisplayText(trtb.Rtf, true);
// grd[r, c] = dt.OriginalText;
// }
//}
private bool IsATable(int? contenttype)
{
bool rtnval = false;

View File

@ -290,12 +290,13 @@ namespace Volian.Controls.Library
{
if (MyFlexGrid.IsRoTable)
{
MyFlexGrid.MergedRanges.Clear();
MyFlexGrid.Clear();
ConvertTableToGrid(args.RawValText);
MyFlexGrid.RODbId = args.RODbID;
MyFlexGrid.ROID = args.ROID;
SaveContents();
MyFlexGrid.ConvertTableROToGrid(args.ValText, args.RODbID, args.ROID);
//MyFlexGrid.MergedRanges.Clear();
//MyFlexGrid.Clear();
//ConvertTableToGrid(args.RawValText, args.RODbID, args.ROID);
//MyFlexGrid.RODbId = args.RODbID;
//MyFlexGrid.ROID = args.ROID;
//SaveContents();
}
else
MyStepRTB.UpdateStepRtb(args.LinkText, args.ValText);
@ -498,17 +499,23 @@ namespace Volian.Controls.Library
MyItemInfo.MyContent.RefreshContentRoUsages();
return string.Format(@"#Link:ReferencedObject:{0} {1} {2}", rousg.ROUsageID, MyFlexGrid.ROID, MyFlexGrid.RODbId);
}
private void ConvertTableToGrid(string valtext)
{
VE_Font vefont = MyItemInfo.GetItemFont();
MyFlexGrid.Font = vefont.WindowsFont;
Initializing = true;
MyFlexGrid.ParseTableFromText(valtext);
MyFlexGrid.AutoSizeCols();
MyFlexGrid.AutoSizeRows();
MyFlexGrid.MakeRTFcells();
Initializing = false;
}
//private void ConvertTableToGrid(string valtext, int rodbid, string roid)
//{
// VE_Font vefont = MyItemInfo.GetItemFont();
// MyFlexGrid.Font = vefont.WindowsFont;
// //Initializing = true;
// MyFlexGrid.MergedRanges.Clear();
// MyFlexGrid.Clear();
// MyFlexGrid.ParseTableFromText(valtext);
// MyFlexGrid.AutoSizeCols();
// MyFlexGrid.AutoSizeRows();
// MyFlexGrid.MakeRTFcells();
// MyFlexGrid.RODbId = rodbid;
// MyFlexGrid.ROID = roid;
// MyFlexGrid.IsRoTable = true;
// //Initializing = false;
// SaveContents();
//}
private bool FinishSave(string searchableText)
{
// Just in case if the grid was in a mode to change sizes, clear out that setting
@ -879,18 +886,19 @@ namespace Volian.Controls.Library
IdentifyMe(false);
}
private void RefreshGridData()
{
string ROID = MyFlexGrid.ROID;
int rodbid = MyFlexGrid.RODbId;
MyFlexGrid.Clear();
ROFSTLookup MyROFSTLookup = MyItemInfo.MyDocVersion.DocVersionAssociations[0].MyROFst.ROFSTLookup;
ConvertTableToGrid(MyROFSTLookup.GetRoValue(ROID));
MyFlexGrid.RODbId = rodbid;
MyFlexGrid.ROID = ROID;
MyFlexGrid.IsRoTable = true;
SaveContents();
}
//private void RefreshGridData()
//{
// string ROID = MyFlexGrid.ROID;
// int rodbid = MyFlexGrid.RODbId;
// //MyFlexGrid.Clear();
// ROFSTLookup MyROFSTLookup = MyItemInfo.MyDocVersion.DocVersionAssociations[0].MyROFst.ROFSTLookup;
// MyFlexGrid.ConvertTableROToGrid(MyROFSTLookup.GetRoValue(ROID), rodbid, ROID);
// //ConvertTableToGrid(MyROFSTLookup.GetRoValue(ROID), rodbid, ROID);
// //MyFlexGrid.RODbId = rodbid;
// //MyFlexGrid.ROID = ROID;
// //MyFlexGrid.IsRoTable = true;
// //SaveContents();
//}
public override void SetExpandAndExpander(ItemInfo itemInfo) { CanExpand = false; } // can't expand a table
public void SavePastedCellRoTran()
{

View File

@ -1171,15 +1171,17 @@ namespace Volian.Controls.Library
}
string roid = myGrid.ROID;
int rodbid = myGrid.RODbId;
Font GridFont = myGrid.Font;
myGrid.Clear();
myGrid.ParseTableFromText(args.ROText);
myGrid.AutoSizeCols();
myGrid.AutoSizeRows();
myGrid.MakeRTFcells();
myGrid.RODbId = rodbid;
myGrid.ROID = roid;
myGrid.IsRoTable = true;
////Font GridFont = myGrid.Font;
//myGrid.MergedRanges.Clear();
//myGrid.Clear();
//myGrid.ParseTableFromText(args.ROText);
//myGrid.AutoSizeCols();
//myGrid.AutoSizeRows();
//myGrid.MakeRTFcells();
//myGrid.RODbId = rodbid;
//myGrid.ROID = roid;
//myGrid.IsRoTable = true;
myGrid.ConvertTableROToGrid(args.ROText, rodbid, roid);
using (StringWriter sw = new StringWriter())
{
myGrid.WriteXml(sw);

File diff suppressed because it is too large Load Diff