98 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
using System;
 | 
						|
using System.Collections.Generic;
 | 
						|
using System.ComponentModel;
 | 
						|
using System.Data;
 | 
						|
using System.Drawing;
 | 
						|
using System.Text;
 | 
						|
using System.Windows.Forms;
 | 
						|
using VEPROMS.CSLA.Library;
 | 
						|
using Volian.Controls.Library;
 | 
						|
 | 
						|
namespace FixTransitions
 | 
						|
{
 | 
						|
	public partial class frmFindAndFix : Form
 | 
						|
	{
 | 
						|
		public frmFindAndFix()
 | 
						|
		{
 | 
						|
			InitializeComponent();
 | 
						|
		}
 | 
						|
		public string FormStatus
 | 
						|
		{
 | 
						|
			get { return tsslStatus.Text; }
 | 
						|
			set { tsslStatus.Text = value; Application.DoEvents(); }
 | 
						|
		}
 | 
						|
		private ItemInfoList _ListToFix = null;
 | 
						|
		private void findToolStripMenuItem_Click(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			FormStatus = "Searching";
 | 
						|
			// Perform a query looking for '(Resolved Transition Text)'
 | 
						|
			//_ListToFix = ItemInfoList.GetListFromTextSearch("", "", "(Resolved Transition Text)", 0, ItemSearchIncludeLinks.Value, false, false);\
 | 
						|
			_ListToFix = ItemInfoList.GetListFromTextSearch("", "", "Resolved Transition Text", 0, ItemSearchIncludeLinks.Value, false, false, "");
 | 
						|
			// Place the results in the ListBox
 | 
						|
			lbResults.DataSource=_ListToFix;
 | 
						|
			lbResults.DisplayMember="DisplayText";
 | 
						|
			FormStatus = string.Format("Searching Complete: {0} Items Found",_ListToFix.Count);
 | 
						|
 | 
						|
		}
 | 
						|
		private void fixToolStripMenuItem_Click(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			int i = 0;
 | 
						|
			foreach (ItemInfo item in _ListToFix)
 | 
						|
			{
 | 
						|
				i++;
 | 
						|
				//if (item.MyContent.ContentID == 363) 
 | 
						|
				//{
 | 
						|
				//  Console.WriteLine("Stop Here");
 | 
						|
					if (i >= lbResults.SelectedIndex)
 | 
						|
					{
 | 
						|
						FormStatus = string.Format("Processing {0} of {1} steps ({2})", i, _ListToFix.Count, item.DisplayText);
 | 
						|
						//rtb.ViewRTB = false;
 | 
						|
						rtb.MyItemInfo = item;
 | 
						|
						rtb.RefreshDisplay(true);
 | 
						|
						SaveText(rtb);
 | 
						|
					}
 | 
						|
				//}
 | 
						|
			}
 | 
						|
			FormStatus = "Refreshing Results";
 | 
						|
			findToolStripMenuItem_Click(sender, e);
 | 
						|
			FormStatus = "Fix Done";
 | 
						|
		}
 | 
						|
		public void SaveText(StepRTB myStepRTB)
 | 
						|
		{
 | 
						|
			if (myStepRTB.ReadOnly) return;
 | 
						|
			//if (myStepRTB.ViewRTB) return;
 | 
						|
			if (!myStepRTB.IsDirty && myStepRTB.Text.Contains("(Resolved Transition Text)") == false) return;
 | 
						|
			bool success = myStepRTB.OrigDisplayText.Save((RichTextBox)myStepRTB);
 | 
						|
			if (success)
 | 
						|
			{
 | 
						|
				myStepRTB.FindAllLinks();
 | 
						|
				myStepRTB.OrigRTF = myStepRTB.Rtf;
 | 
						|
				myStepRTB.ClearUndo();
 | 
						|
			}
 | 
						|
		}
 | 
						|
		private void processToolStripMenuItem_Click(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			ItemInfo item = ItemInfo.Get(int.Parse(tbItemID.Text));
 | 
						|
			item.UpdateTransitionText();
 | 
						|
		}
 | 
						|
 | 
						|
		private void compareToolStripMenuItem_Click(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
		//  TransitionInfoList transitions = TransitionInfoList.Get();
 | 
						|
		//  FormStatus = string.Format("Checking {0} transitions", transitions.Count);
 | 
						|
		//  int differences = 0;
 | 
						|
		//  foreach (TransitionInfo transition in transitions)
 | 
						|
		//  {
 | 
						|
		//    FormStatus = string.Format("Checking transition {0}", transition.TransitionID);
 | 
						|
		//    string oldPath = transition.ResolvePathTo();
 | 
						|
		//    string newPath = transition.ResolvePathNew2();
 | 
						|
		//    if (oldPath != newPath)
 | 
						|
		//    {
 | 
						|
		//      differences++;
 | 
						|
		//      Console.WriteLine("{0},'{1}','{2}'", transition.TransitionID, oldPath, newPath);
 | 
						|
		//    }
 | 
						|
		//  }
 | 
						|
		//  FormStatus = string.Format("{0} transitions checked - {1} differences found", transitions.Count, differences);
 | 
						|
		}
 | 
						|
	}
 | 
						|
} |