Message 1 of 7
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Afternoon Everyone,
I am writing a drawing number transposition plugin that will iterate all MText, DText, MLeaders etc in a drawing.
The below code flies through the Mtext, but struggles on the MLeader.
private static void process_QualifiedNumbers() { DateTime start = DateTime.Now; processMText_Qualified(); DateTime end = DateTime.Now; Ed.WriteMessage("\n{0} Mtext processed in {1}s", MText.Count, end.Subtract(start).TotalSeconds); start = DateTime.Now; processMLeader_Qualified(); end = DateTime.Now; Ed.WriteMessage("\n{0} MLeaders processed in {1}s", Multileaders.Count, end.Subtract(start).TotalSeconds); } private static void processMText_Qualified() { foreach (MText mt in MText) { foreach (DrawingNumber dwg in DrawingNumbers.List) { if (mt.Contents.Contains(dwg.ProjectNumber)) { mt.Contents = mt.Contents.Replace(dwg.ProjectNumber, dwg.ClientNumber); } } } } private static void processMLeader_Qualified() { foreach (MLeader ml in Multileaders) { foreach (DrawingNumber dwg in DrawingNumbers.List) { if (ml.MText.Contents.Contains(dwg.ProjectNumber)) { ml.MText.Contents = ml.MText.Contents.Replace(dwg.ProjectNumber, dwg.ClientNumber); } } } }
The output is
8 Mtext processed in 0.0468003s
22 MLeaders processed in 71.9402444s
however the MLeader text does not change.
Am I doing something wrong? Is there a way to speed it up and get the MLeader text to change?
Cheers,
Brent
Solved! Go to Solution.