mirror of https://github.com/odrling/Aegisub
6485 lines
312 KiB
C#
6485 lines
312 KiB
C#
/*
|
|
SSATool - A collection of utilities for Advanced Substation Alpha
|
|
Copyright (C) 2007 Dan Donovan
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License
|
|
as published by the Free Software Foundation; ONLY under version 2
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
*/
|
|
|
|
|
|
|
|
using System;
|
|
using System.Collections;
|
|
using System.ComponentModel;
|
|
using System.Windows.Forms;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.IO;
|
|
using System.Text;
|
|
using System.Text.RegularExpressions;
|
|
using System.Xml;
|
|
using System.Collections.Generic;
|
|
|
|
namespace SSATool {
|
|
/// <summary>
|
|
/// Summary description for Form1.
|
|
/// </summary>
|
|
public class Form1 : System.Windows.Forms.Form {
|
|
public static Form1 FormMain;
|
|
|
|
|
|
#region Form Info
|
|
public System.Windows.Forms.MainMenu mainMenu1;
|
|
public System.Windows.Forms.MenuItem menuItem1;
|
|
public System.Windows.Forms.MenuItem menuItem5;
|
|
public System.Windows.Forms.MenuItem menuItem8;
|
|
public System.Windows.Forms.MenuItem menuItem10;
|
|
public System.Windows.Forms.MenuItem menuItem13;
|
|
public System.Windows.Forms.MenuItem menuItem15;
|
|
public System.Windows.Forms.MenuItem menuItem16;
|
|
public System.Windows.Forms.OpenFileDialog openFileDialog1;
|
|
public System.Windows.Forms.CheckedListBox lstEffectOpts;
|
|
public System.Windows.Forms.MenuItem menuOpen;
|
|
public System.Windows.Forms.MenuItem menuOpenSJIS;
|
|
public System.Windows.Forms.MenuItem menuSave;
|
|
public System.Windows.Forms.MenuItem menuSaveAs;
|
|
public System.Windows.Forms.MenuItem menuLoadProj;
|
|
public System.Windows.Forms.MenuItem menuSaveProj;
|
|
public System.Windows.Forms.MenuItem menuExit;
|
|
public System.Windows.Forms.MenuItem menuLoadEffects;
|
|
public System.Windows.Forms.MenuItem menuItem3;
|
|
public System.Windows.Forms.MenuItem menuShowEffectEditor;
|
|
public System.Windows.Forms.FontDialog fontDialog1;
|
|
public System.Windows.Forms.MenuItem menuFont;
|
|
public System.Windows.Forms.MenuItem menuItem2;
|
|
public System.Windows.Forms.MenuItem menuGoTo;
|
|
public System.Windows.Forms.MenuItem menuNewLineBeginning;
|
|
public System.Windows.Forms.MenuItem menuNewLineEnd;
|
|
public System.Windows.Forms.MenuItem menuNewLineAbove;
|
|
public System.Windows.Forms.MenuItem menuNewLineBelow;
|
|
public System.Windows.Forms.MenuItem menuMoveLineUp;
|
|
public System.Windows.Forms.MenuItem menuMoveLineDown;
|
|
public System.Windows.Forms.MenuItem menuChangeLine;
|
|
public System.Windows.Forms.MenuItem menuRemoveLine;
|
|
public System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1;
|
|
public System.Windows.Forms.ColumnHeader columnHeader11;
|
|
private IContainer components;
|
|
public MenuItem menuItem4;
|
|
public MenuItem menuItem6;
|
|
public MenuItem menuPrecisioncs;
|
|
public MenuItem menuPrecisionms;
|
|
public MenuItem menuItem7;
|
|
public MenuItem menuItem9;
|
|
public TabPage tabPage6;
|
|
public Button button2;
|
|
public Button button1;
|
|
public TextBox textBox2;
|
|
public Button button4;
|
|
public Button button3;
|
|
public CheckBox checkBox1;
|
|
public ComboBox comboBox1;
|
|
public Label label55;
|
|
public Button button6;
|
|
public MaskedTextBox maskedTextBox1;
|
|
public CheckBox checkBox2;
|
|
public TreeView treeView1;
|
|
public MenuItem menuItem11;
|
|
public MenuItem menuUndo;
|
|
public MenuItem menuRedo;
|
|
public MenuItem menuOpenEUCJP;
|
|
public SplitContainer splitContainer1;
|
|
public ListViewES listSSA;
|
|
public ColumnHeader columnHeader14;
|
|
public TabControl tabMain;
|
|
public TabPage tabPage1;
|
|
public GroupBox groupBox12;
|
|
public ComboBox cmbFR;
|
|
public Label label54;
|
|
public GroupBox groupBox4;
|
|
public Button cmdSearchReplace;
|
|
public TextBox txtSearchReplaceWith;
|
|
public TextBox txtSearchFor;
|
|
public Label label12;
|
|
public Label label11;
|
|
public GroupBox groupBox3;
|
|
public Button cmdChangeLastKLen;
|
|
public Button cmdRemoveDups;
|
|
public Button cmdStrip;
|
|
public GroupBox groupBox2;
|
|
public Button cmdShift;
|
|
public CheckBox chkShiftNoNeg;
|
|
public CheckBox chkShiftEnd;
|
|
public CheckBox chkShiftStart;
|
|
public TabControl tabShiftType;
|
|
public TabPage tabPage9;
|
|
public MaskedTextBox maskedTextShiftTime;
|
|
public RadioButton radTShiftBack;
|
|
public RadioButton radTShiftForward;
|
|
public Label label3;
|
|
public TabPage tabPage10;
|
|
public RadioButton radFShiftBackward;
|
|
public RadioButton radFShiftForward;
|
|
public TextBox txtShiftFrames;
|
|
public Label label4;
|
|
public TabPage tabPage11;
|
|
public MaskedTextBox maskedTextTDShiftNew;
|
|
public MaskedTextBox maskedTextTDShiftOld;
|
|
public Label label7;
|
|
public Label label6;
|
|
public TabPage tabPage12;
|
|
public Label label9;
|
|
public Label label8;
|
|
public TextBox txtFDShiftNew;
|
|
public TextBox txtFDShiftOld;
|
|
public TabPage tabPage2;
|
|
public GroupBox groupBox11;
|
|
public Button cmdTimecodesDeapply;
|
|
public Button cmdTimecodesApply;
|
|
public Button cmdTimecodesBrowse;
|
|
public TextBox textTimecodeFile;
|
|
public GroupBox groupBox10;
|
|
public MaskedTextBox txtLeadOut;
|
|
public MaskedTextBox txtLeadIn;
|
|
public CheckBox chkLeadOut;
|
|
public CheckBox chkLeadIn;
|
|
public Button cmdLead;
|
|
public CheckBox chkLeadKaraEmptyK;
|
|
public CheckBox chkLeadKaraOnly;
|
|
public GroupBox groupBox6;
|
|
public CheckBox chkScalePlayRes;
|
|
public TextBox txtScaleYDenominator;
|
|
public Label label50;
|
|
public TextBox txtScaleYNumerator;
|
|
public Label label51;
|
|
public Button cmdScale;
|
|
public TextBox txtScaleXDenominator;
|
|
public Label label26;
|
|
public TextBox txtScaleXNumerator;
|
|
public Label label25;
|
|
public GroupBox groupBox5;
|
|
public Button cmdLenBasedK;
|
|
public TextBox txtLenBasedKThreshold;
|
|
public Label label13;
|
|
public TabPage tabPage3;
|
|
public Button cmdAddEffect;
|
|
public TreeView treeKaraoke;
|
|
public Button cmdNewLayer;
|
|
public Button cmdKaraDel;
|
|
public Button cmdDoEffects;
|
|
public Button cmdKaraDup;
|
|
public Panel panelLayer;
|
|
public CheckBox chkSyllablePerLine;
|
|
public GroupBox groupBox16;
|
|
public CheckBox chkKaraAddText;
|
|
public CheckBox chkKaraAddClosingBracket;
|
|
public CheckBox chkKaraAddASSA;
|
|
public CheckBox chkKaraAddK;
|
|
public TextBox textLayerRepetitions;
|
|
public Label label49;
|
|
public CheckBox chkAddOnce;
|
|
public CheckBox chkAddAnyway;
|
|
public CheckBox chkLayerPerSyllable;
|
|
public Button cmdDelLayerCondition;
|
|
public Button cmdNewLayerCondition;
|
|
public ListViewES lstLayerConditions;
|
|
public ColumnHeader columnHeader4;
|
|
public ColumnHeader columnHeader5;
|
|
public ColumnHeader columnHeader6;
|
|
public Panel panelEffect;
|
|
public TabControl tabControl1;
|
|
public TabPage tabPage7;
|
|
public ListView lstEffectOptions;
|
|
public ColumnHeader lstoOptionName;
|
|
public ColumnHeader lstoOptionValue;
|
|
public Label label2;
|
|
public TabPage tabPage8;
|
|
public ListViewES lstEffectConditions;
|
|
public ColumnHeader columnHeader1;
|
|
public ColumnHeader columnHeader2;
|
|
public ColumnHeader columnHeader3;
|
|
public Button cmdDelEffectCondition;
|
|
public Button cmdAddEffectCondition;
|
|
public TabPage tabPage4;
|
|
public Label label16;
|
|
public Label label18;
|
|
public Label label15;
|
|
public Label label14;
|
|
public Button cmdGradMoveBefore;
|
|
public TextBox txtGradOut;
|
|
public TextBox txtGradIn;
|
|
public TextBox txtGradBefore;
|
|
public TabPage tabPage14;
|
|
public Label label42;
|
|
public TextBox txtBlurRadV;
|
|
public GroupBox groupBlurAffect;
|
|
public CheckBox chkBlur4a;
|
|
public CheckBox chkBlur3a;
|
|
public CheckBox chkBlur2a;
|
|
public CheckBox chkBlur1a;
|
|
public GroupBox groupBox9;
|
|
public RadioButton radBlurExp;
|
|
public RadioButton radBlurLog;
|
|
public RadioButton radBlurPoly;
|
|
public GroupBox groupBlurSub;
|
|
public CheckBox chkBlur2aSub;
|
|
public CheckBox chkBlur4aSub;
|
|
public CheckBox chkBlur3aSub;
|
|
public CheckBox chkBlur1aSub;
|
|
public Label label38;
|
|
public TextBox txtBlurBase;
|
|
public TextBox txtBlurPos;
|
|
public Label label36;
|
|
public Button cmdBlurListToInput;
|
|
public Button cmdBlurInsertBefore;
|
|
public Button cmdBlurInsertAfter;
|
|
public Button cmdBlurReplaceLine;
|
|
public Button cmdBlurMoveBefore;
|
|
public Label label35;
|
|
public TextBox txtBlurBefore;
|
|
public TextBox txtBlurRadH;
|
|
public Label label34;
|
|
public Label label32;
|
|
public Label label31;
|
|
public TextBox txtBlurOut;
|
|
public TextBox txtBlurIn;
|
|
public GroupBox groupBox8;
|
|
public RadioButton radBlurGlow;
|
|
public RadioButton radBlurHV;
|
|
public Button cmdDoBlur;
|
|
public TextBox txtBlurEndAlpha;
|
|
public TextBox txtBlurStartAlpha;
|
|
public Label label30;
|
|
public Label label29;
|
|
public TextBox txtBlurLines;
|
|
public Label label28;
|
|
public TabPage tabPage16;
|
|
public MaskedTextBox maskedTextTransformTime;
|
|
public Button cmdTransformListToInput;
|
|
public Button cmdTransformInsertBefore;
|
|
public Button cmdTransformInsertAfter;
|
|
public Button cmdTransformReplaceLine;
|
|
public Label label45;
|
|
public TextBox txtTransformPrecision;
|
|
public Label label1;
|
|
public ListViewES listTransformVars;
|
|
public ColumnHeader columnHeader13;
|
|
public TextBox txtTransformCode;
|
|
public Label label47;
|
|
public Label label46;
|
|
public Button cmdTransformDelVar;
|
|
public Button cmdTransformNewVar;
|
|
public Button cmdDoTransform;
|
|
public Label label44;
|
|
public Button cmdTransformDelTime;
|
|
public Button cmdTransformAddTime;
|
|
public ListBox listTransformTimes;
|
|
public Label label43;
|
|
public TextBox txtTransformOut;
|
|
public TabPage tabPage13;
|
|
public ListBox lstErrors;
|
|
public Label label27;
|
|
public Button cmdCheckErrors;
|
|
public TabPage tabPage15;
|
|
public Label labelFontNum;
|
|
public Button cmdFontSearchFolder;
|
|
public Label label40;
|
|
public Button cmdFindFonts;
|
|
public Label label39;
|
|
public ListView lstFonts;
|
|
public ColumnHeader columnHeader7;
|
|
public ColumnHeader columnHeader8;
|
|
public ColumnHeader columnHeader9;
|
|
public TabPage tabPage5;
|
|
public GroupBox groupBox19;
|
|
public TextBox textBox1;
|
|
public GroupBox groupBox18;
|
|
public Label lblRegroupDestIndex;
|
|
public Label label10;
|
|
public Label lblRegroupSourceIndex;
|
|
public Label label5;
|
|
public GroupBox groupBox17;
|
|
public ListView listRegroupPairs;
|
|
public ColumnHeader columnHeader10;
|
|
public ColumnHeader columnHeader12;
|
|
public GroupBox groupBox15;
|
|
public Button cmdRegroupStart;
|
|
public Button cmdRegroupAcceptLine;
|
|
public Button cmdRegroupUnlinkLast;
|
|
public Button cmdRegroupGoBack;
|
|
public Button cmdRegroupSkipDestLine;
|
|
public Button cmdRegroupSkipSourceLine;
|
|
public Button cmdRegroupLink;
|
|
public GroupBox groupBox14;
|
|
public TextBox txtRegroupSource;
|
|
public TextBox txtRegroupDest;
|
|
public GroupBox groupBox13;
|
|
public ComboBox cmbRegroupDest;
|
|
public ComboBox cmbRegroupSource;
|
|
public Label label53;
|
|
public Label label52;
|
|
public TabPage tabPage17;
|
|
public GroupBox groupBox22;
|
|
public ComboBox cmbNBStyle;
|
|
public Label label59;
|
|
public Button cmdNBCopyStyles;
|
|
public Button cmdNBInsertBefore;
|
|
public Button cmdNBInsertAfter;
|
|
public Button cmdNBReplaceLine;
|
|
public Button cmdNoteBox;
|
|
public GroupBox groupBox21;
|
|
public TextBox textNBStyles;
|
|
public TextBox textNBOut;
|
|
public GroupBox groupBox20;
|
|
public Button cmdNBGetTimes;
|
|
public MaskedTextBox maskedTextNBEnd;
|
|
public Label label58;
|
|
public MaskedTextBox maskedTextNBStart;
|
|
public Label label57;
|
|
public TextBox textNotebox2;
|
|
public TextBox textNotebox1;
|
|
public Label label56;
|
|
public Label label48;
|
|
public GroupBox groupBox1;
|
|
public Label labelSelLine;
|
|
public Label label41;
|
|
public Button cmdReloadFile;
|
|
public CheckedListBox lstStyles;
|
|
public Button cmdSSAInvertSel;
|
|
public Button cmdSSADeselall;
|
|
public Button cmdSSASelall;
|
|
public Button cmdDeselAll;
|
|
public Button cmdSelAll;
|
|
public Button cmdNBReparse;
|
|
private CheckBox chkSRCaseSensitive;
|
|
private TextBox textNBDesc;
|
|
public Label label17;
|
|
private Panel panelGradient;
|
|
public GroupBox groupBox7;
|
|
public RadioButton radGradExp;
|
|
public RadioButton radGradLog;
|
|
public RadioButton radGradPoly;
|
|
public TextBox txtGradMirror;
|
|
public Label label33;
|
|
public Label label37;
|
|
public TextBox txtGradBase;
|
|
public CheckBox chkGrad4c;
|
|
public CheckBox chkGrad3c;
|
|
public CheckBox chkGrad2c;
|
|
public CheckBox chkGrad1c;
|
|
public Button cmdGradListToInput;
|
|
public TextBox txtGradEndBGR;
|
|
public TextBox txtGradStartBGR;
|
|
public TextBox txtGradOffset;
|
|
public TextBox txtGradEndPos;
|
|
public TextBox txtGradStartPos;
|
|
public TextBox txtGradCLines;
|
|
public Label label24;
|
|
public Label label23;
|
|
public Label label22;
|
|
public Label label21;
|
|
public Label label20;
|
|
public Label label19;
|
|
public Button cmdGradInsertBefore;
|
|
public Button cmdGradInsertAfter;
|
|
public Button cmdGradReplaceLine;
|
|
public Button cmdGradDoGrad;
|
|
private Panel panelBlur;
|
|
public MenuItem menuClearUndoRedo;
|
|
|
|
#endregion
|
|
protected override void Dispose(bool disposing) {
|
|
base.Dispose(disposing);
|
|
}
|
|
#region Windows Form Designer generated code
|
|
private void InitializeComponent() {
|
|
this.components = new System.ComponentModel.Container();
|
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
|
|
this.mainMenu1 = new System.Windows.Forms.MainMenu(this.components);
|
|
this.menuItem1 = new System.Windows.Forms.MenuItem();
|
|
this.menuOpen = new System.Windows.Forms.MenuItem();
|
|
this.menuOpenSJIS = new System.Windows.Forms.MenuItem();
|
|
this.menuOpenEUCJP = new System.Windows.Forms.MenuItem();
|
|
this.menuSave = new System.Windows.Forms.MenuItem();
|
|
this.menuSaveAs = new System.Windows.Forms.MenuItem();
|
|
this.menuItem5 = new System.Windows.Forms.MenuItem();
|
|
this.menuLoadProj = new System.Windows.Forms.MenuItem();
|
|
this.menuSaveProj = new System.Windows.Forms.MenuItem();
|
|
this.menuItem8 = new System.Windows.Forms.MenuItem();
|
|
this.menuExit = new System.Windows.Forms.MenuItem();
|
|
this.menuItem11 = new System.Windows.Forms.MenuItem();
|
|
this.menuUndo = new System.Windows.Forms.MenuItem();
|
|
this.menuRedo = new System.Windows.Forms.MenuItem();
|
|
this.menuClearUndoRedo = new System.Windows.Forms.MenuItem();
|
|
this.menuItem2 = new System.Windows.Forms.MenuItem();
|
|
this.menuItem7 = new System.Windows.Forms.MenuItem();
|
|
this.menuNewLineBeginning = new System.Windows.Forms.MenuItem();
|
|
this.menuNewLineEnd = new System.Windows.Forms.MenuItem();
|
|
this.menuNewLineAbove = new System.Windows.Forms.MenuItem();
|
|
this.menuNewLineBelow = new System.Windows.Forms.MenuItem();
|
|
this.menuItem9 = new System.Windows.Forms.MenuItem();
|
|
this.menuMoveLineUp = new System.Windows.Forms.MenuItem();
|
|
this.menuMoveLineDown = new System.Windows.Forms.MenuItem();
|
|
this.menuGoTo = new System.Windows.Forms.MenuItem();
|
|
this.menuChangeLine = new System.Windows.Forms.MenuItem();
|
|
this.menuRemoveLine = new System.Windows.Forms.MenuItem();
|
|
this.menuItem10 = new System.Windows.Forms.MenuItem();
|
|
this.menuFont = new System.Windows.Forms.MenuItem();
|
|
this.menuItem4 = new System.Windows.Forms.MenuItem();
|
|
this.menuItem6 = new System.Windows.Forms.MenuItem();
|
|
this.menuPrecisioncs = new System.Windows.Forms.MenuItem();
|
|
this.menuPrecisionms = new System.Windows.Forms.MenuItem();
|
|
this.menuItem13 = new System.Windows.Forms.MenuItem();
|
|
this.menuShowEffectEditor = new System.Windows.Forms.MenuItem();
|
|
this.menuItem15 = new System.Windows.Forms.MenuItem();
|
|
this.menuItem16 = new System.Windows.Forms.MenuItem();
|
|
this.menuItem3 = new System.Windows.Forms.MenuItem();
|
|
this.menuLoadEffects = new System.Windows.Forms.MenuItem();
|
|
this.tabPage6 = new System.Windows.Forms.TabPage();
|
|
this.treeView1 = new System.Windows.Forms.TreeView();
|
|
this.maskedTextBox1 = new System.Windows.Forms.MaskedTextBox();
|
|
this.checkBox2 = new System.Windows.Forms.CheckBox();
|
|
this.button6 = new System.Windows.Forms.Button();
|
|
this.comboBox1 = new System.Windows.Forms.ComboBox();
|
|
this.label55 = new System.Windows.Forms.Label();
|
|
this.checkBox1 = new System.Windows.Forms.CheckBox();
|
|
this.button4 = new System.Windows.Forms.Button();
|
|
this.button3 = new System.Windows.Forms.Button();
|
|
this.button2 = new System.Windows.Forms.Button();
|
|
this.button1 = new System.Windows.Forms.Button();
|
|
this.textBox2 = new System.Windows.Forms.TextBox();
|
|
this.columnHeader11 = new System.Windows.Forms.ColumnHeader();
|
|
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
|
|
this.lstEffectOpts = new System.Windows.Forms.CheckedListBox();
|
|
this.fontDialog1 = new System.Windows.Forms.FontDialog();
|
|
this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
|
|
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
|
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
|
this.labelSelLine = new System.Windows.Forms.Label();
|
|
this.label41 = new System.Windows.Forms.Label();
|
|
this.cmdReloadFile = new System.Windows.Forms.Button();
|
|
this.lstStyles = new System.Windows.Forms.CheckedListBox();
|
|
this.cmdSSAInvertSel = new System.Windows.Forms.Button();
|
|
this.cmdSSADeselall = new System.Windows.Forms.Button();
|
|
this.cmdSSASelall = new System.Windows.Forms.Button();
|
|
this.cmdDeselAll = new System.Windows.Forms.Button();
|
|
this.cmdSelAll = new System.Windows.Forms.Button();
|
|
this.listSSA = new SSATool.ListViewES();
|
|
this.columnHeader14 = new System.Windows.Forms.ColumnHeader();
|
|
this.tabMain = new System.Windows.Forms.TabControl();
|
|
this.tabPage1 = new System.Windows.Forms.TabPage();
|
|
this.groupBox12 = new System.Windows.Forms.GroupBox();
|
|
this.cmbFR = new System.Windows.Forms.ComboBox();
|
|
this.label54 = new System.Windows.Forms.Label();
|
|
this.groupBox4 = new System.Windows.Forms.GroupBox();
|
|
this.chkSRCaseSensitive = new System.Windows.Forms.CheckBox();
|
|
this.cmdSearchReplace = new System.Windows.Forms.Button();
|
|
this.txtSearchReplaceWith = new System.Windows.Forms.TextBox();
|
|
this.txtSearchFor = new System.Windows.Forms.TextBox();
|
|
this.label12 = new System.Windows.Forms.Label();
|
|
this.label11 = new System.Windows.Forms.Label();
|
|
this.groupBox3 = new System.Windows.Forms.GroupBox();
|
|
this.cmdChangeLastKLen = new System.Windows.Forms.Button();
|
|
this.cmdRemoveDups = new System.Windows.Forms.Button();
|
|
this.cmdStrip = new System.Windows.Forms.Button();
|
|
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
|
this.cmdShift = new System.Windows.Forms.Button();
|
|
this.chkShiftNoNeg = new System.Windows.Forms.CheckBox();
|
|
this.chkShiftEnd = new System.Windows.Forms.CheckBox();
|
|
this.chkShiftStart = new System.Windows.Forms.CheckBox();
|
|
this.tabShiftType = new System.Windows.Forms.TabControl();
|
|
this.tabPage9 = new System.Windows.Forms.TabPage();
|
|
this.maskedTextShiftTime = new System.Windows.Forms.MaskedTextBox();
|
|
this.radTShiftBack = new System.Windows.Forms.RadioButton();
|
|
this.radTShiftForward = new System.Windows.Forms.RadioButton();
|
|
this.label3 = new System.Windows.Forms.Label();
|
|
this.tabPage10 = new System.Windows.Forms.TabPage();
|
|
this.radFShiftBackward = new System.Windows.Forms.RadioButton();
|
|
this.radFShiftForward = new System.Windows.Forms.RadioButton();
|
|
this.txtShiftFrames = new System.Windows.Forms.TextBox();
|
|
this.label4 = new System.Windows.Forms.Label();
|
|
this.tabPage11 = new System.Windows.Forms.TabPage();
|
|
this.maskedTextTDShiftNew = new System.Windows.Forms.MaskedTextBox();
|
|
this.maskedTextTDShiftOld = new System.Windows.Forms.MaskedTextBox();
|
|
this.label7 = new System.Windows.Forms.Label();
|
|
this.label6 = new System.Windows.Forms.Label();
|
|
this.tabPage12 = new System.Windows.Forms.TabPage();
|
|
this.label9 = new System.Windows.Forms.Label();
|
|
this.label8 = new System.Windows.Forms.Label();
|
|
this.txtFDShiftNew = new System.Windows.Forms.TextBox();
|
|
this.txtFDShiftOld = new System.Windows.Forms.TextBox();
|
|
this.tabPage2 = new System.Windows.Forms.TabPage();
|
|
this.groupBox11 = new System.Windows.Forms.GroupBox();
|
|
this.cmdTimecodesDeapply = new System.Windows.Forms.Button();
|
|
this.cmdTimecodesApply = new System.Windows.Forms.Button();
|
|
this.cmdTimecodesBrowse = new System.Windows.Forms.Button();
|
|
this.textTimecodeFile = new System.Windows.Forms.TextBox();
|
|
this.groupBox10 = new System.Windows.Forms.GroupBox();
|
|
this.txtLeadOut = new System.Windows.Forms.MaskedTextBox();
|
|
this.txtLeadIn = new System.Windows.Forms.MaskedTextBox();
|
|
this.chkLeadOut = new System.Windows.Forms.CheckBox();
|
|
this.chkLeadIn = new System.Windows.Forms.CheckBox();
|
|
this.cmdLead = new System.Windows.Forms.Button();
|
|
this.chkLeadKaraEmptyK = new System.Windows.Forms.CheckBox();
|
|
this.chkLeadKaraOnly = new System.Windows.Forms.CheckBox();
|
|
this.groupBox6 = new System.Windows.Forms.GroupBox();
|
|
this.chkScalePlayRes = new System.Windows.Forms.CheckBox();
|
|
this.txtScaleYDenominator = new System.Windows.Forms.TextBox();
|
|
this.label50 = new System.Windows.Forms.Label();
|
|
this.txtScaleYNumerator = new System.Windows.Forms.TextBox();
|
|
this.label51 = new System.Windows.Forms.Label();
|
|
this.cmdScale = new System.Windows.Forms.Button();
|
|
this.txtScaleXDenominator = new System.Windows.Forms.TextBox();
|
|
this.label26 = new System.Windows.Forms.Label();
|
|
this.txtScaleXNumerator = new System.Windows.Forms.TextBox();
|
|
this.label25 = new System.Windows.Forms.Label();
|
|
this.groupBox5 = new System.Windows.Forms.GroupBox();
|
|
this.cmdLenBasedK = new System.Windows.Forms.Button();
|
|
this.txtLenBasedKThreshold = new System.Windows.Forms.TextBox();
|
|
this.label13 = new System.Windows.Forms.Label();
|
|
this.tabPage3 = new System.Windows.Forms.TabPage();
|
|
this.cmdAddEffect = new System.Windows.Forms.Button();
|
|
this.treeKaraoke = new System.Windows.Forms.TreeView();
|
|
this.cmdNewLayer = new System.Windows.Forms.Button();
|
|
this.cmdKaraDel = new System.Windows.Forms.Button();
|
|
this.cmdDoEffects = new System.Windows.Forms.Button();
|
|
this.cmdKaraDup = new System.Windows.Forms.Button();
|
|
this.panelEffect = new System.Windows.Forms.Panel();
|
|
this.tabControl1 = new System.Windows.Forms.TabControl();
|
|
this.tabPage7 = new System.Windows.Forms.TabPage();
|
|
this.lstEffectOptions = new System.Windows.Forms.ListView();
|
|
this.lstoOptionName = new System.Windows.Forms.ColumnHeader();
|
|
this.lstoOptionValue = new System.Windows.Forms.ColumnHeader();
|
|
this.label2 = new System.Windows.Forms.Label();
|
|
this.tabPage8 = new System.Windows.Forms.TabPage();
|
|
this.lstEffectConditions = new SSATool.ListViewES();
|
|
this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
|
|
this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
|
|
this.columnHeader3 = new System.Windows.Forms.ColumnHeader();
|
|
this.cmdDelEffectCondition = new System.Windows.Forms.Button();
|
|
this.cmdAddEffectCondition = new System.Windows.Forms.Button();
|
|
this.panelLayer = new System.Windows.Forms.Panel();
|
|
this.chkSyllablePerLine = new System.Windows.Forms.CheckBox();
|
|
this.groupBox16 = new System.Windows.Forms.GroupBox();
|
|
this.chkKaraAddText = new System.Windows.Forms.CheckBox();
|
|
this.chkKaraAddClosingBracket = new System.Windows.Forms.CheckBox();
|
|
this.chkKaraAddASSA = new System.Windows.Forms.CheckBox();
|
|
this.chkKaraAddK = new System.Windows.Forms.CheckBox();
|
|
this.textLayerRepetitions = new System.Windows.Forms.TextBox();
|
|
this.label49 = new System.Windows.Forms.Label();
|
|
this.chkAddOnce = new System.Windows.Forms.CheckBox();
|
|
this.chkAddAnyway = new System.Windows.Forms.CheckBox();
|
|
this.chkLayerPerSyllable = new System.Windows.Forms.CheckBox();
|
|
this.cmdDelLayerCondition = new System.Windows.Forms.Button();
|
|
this.cmdNewLayerCondition = new System.Windows.Forms.Button();
|
|
this.lstLayerConditions = new SSATool.ListViewES();
|
|
this.columnHeader4 = new System.Windows.Forms.ColumnHeader();
|
|
this.columnHeader5 = new System.Windows.Forms.ColumnHeader();
|
|
this.columnHeader6 = new System.Windows.Forms.ColumnHeader();
|
|
this.tabPage4 = new System.Windows.Forms.TabPage();
|
|
this.label17 = new System.Windows.Forms.Label();
|
|
this.panelGradient = new System.Windows.Forms.Panel();
|
|
this.txtGradCLines = new System.Windows.Forms.TextBox();
|
|
this.cmdGradDoGrad = new System.Windows.Forms.Button();
|
|
this.groupBox7 = new System.Windows.Forms.GroupBox();
|
|
this.radGradExp = new System.Windows.Forms.RadioButton();
|
|
this.radGradLog = new System.Windows.Forms.RadioButton();
|
|
this.radGradPoly = new System.Windows.Forms.RadioButton();
|
|
this.cmdGradReplaceLine = new System.Windows.Forms.Button();
|
|
this.txtGradMirror = new System.Windows.Forms.TextBox();
|
|
this.cmdGradInsertAfter = new System.Windows.Forms.Button();
|
|
this.label33 = new System.Windows.Forms.Label();
|
|
this.cmdGradInsertBefore = new System.Windows.Forms.Button();
|
|
this.label37 = new System.Windows.Forms.Label();
|
|
this.label19 = new System.Windows.Forms.Label();
|
|
this.txtGradBase = new System.Windows.Forms.TextBox();
|
|
this.label20 = new System.Windows.Forms.Label();
|
|
this.chkGrad4c = new System.Windows.Forms.CheckBox();
|
|
this.label21 = new System.Windows.Forms.Label();
|
|
this.chkGrad3c = new System.Windows.Forms.CheckBox();
|
|
this.label22 = new System.Windows.Forms.Label();
|
|
this.chkGrad2c = new System.Windows.Forms.CheckBox();
|
|
this.label23 = new System.Windows.Forms.Label();
|
|
this.chkGrad1c = new System.Windows.Forms.CheckBox();
|
|
this.label24 = new System.Windows.Forms.Label();
|
|
this.txtGradStartPos = new System.Windows.Forms.TextBox();
|
|
this.cmdGradListToInput = new System.Windows.Forms.Button();
|
|
this.txtGradEndPos = new System.Windows.Forms.TextBox();
|
|
this.txtGradEndBGR = new System.Windows.Forms.TextBox();
|
|
this.txtGradOffset = new System.Windows.Forms.TextBox();
|
|
this.txtGradStartBGR = new System.Windows.Forms.TextBox();
|
|
this.label16 = new System.Windows.Forms.Label();
|
|
this.label18 = new System.Windows.Forms.Label();
|
|
this.label15 = new System.Windows.Forms.Label();
|
|
this.label14 = new System.Windows.Forms.Label();
|
|
this.cmdGradMoveBefore = new System.Windows.Forms.Button();
|
|
this.txtGradOut = new System.Windows.Forms.TextBox();
|
|
this.txtGradIn = new System.Windows.Forms.TextBox();
|
|
this.txtGradBefore = new System.Windows.Forms.TextBox();
|
|
this.tabPage14 = new System.Windows.Forms.TabPage();
|
|
this.panelBlur = new System.Windows.Forms.Panel();
|
|
this.groupBlurAffect = new System.Windows.Forms.GroupBox();
|
|
this.chkBlur4a = new System.Windows.Forms.CheckBox();
|
|
this.chkBlur3a = new System.Windows.Forms.CheckBox();
|
|
this.chkBlur2a = new System.Windows.Forms.CheckBox();
|
|
this.chkBlur1a = new System.Windows.Forms.CheckBox();
|
|
this.label42 = new System.Windows.Forms.Label();
|
|
this.label28 = new System.Windows.Forms.Label();
|
|
this.txtBlurRadV = new System.Windows.Forms.TextBox();
|
|
this.txtBlurLines = new System.Windows.Forms.TextBox();
|
|
this.label29 = new System.Windows.Forms.Label();
|
|
this.groupBox9 = new System.Windows.Forms.GroupBox();
|
|
this.radBlurExp = new System.Windows.Forms.RadioButton();
|
|
this.radBlurLog = new System.Windows.Forms.RadioButton();
|
|
this.radBlurPoly = new System.Windows.Forms.RadioButton();
|
|
this.label30 = new System.Windows.Forms.Label();
|
|
this.groupBlurSub = new System.Windows.Forms.GroupBox();
|
|
this.chkBlur2aSub = new System.Windows.Forms.CheckBox();
|
|
this.chkBlur4aSub = new System.Windows.Forms.CheckBox();
|
|
this.chkBlur3aSub = new System.Windows.Forms.CheckBox();
|
|
this.chkBlur1aSub = new System.Windows.Forms.CheckBox();
|
|
this.txtBlurStartAlpha = new System.Windows.Forms.TextBox();
|
|
this.label38 = new System.Windows.Forms.Label();
|
|
this.txtBlurEndAlpha = new System.Windows.Forms.TextBox();
|
|
this.txtBlurBase = new System.Windows.Forms.TextBox();
|
|
this.cmdDoBlur = new System.Windows.Forms.Button();
|
|
this.txtBlurPos = new System.Windows.Forms.TextBox();
|
|
this.groupBox8 = new System.Windows.Forms.GroupBox();
|
|
this.radBlurGlow = new System.Windows.Forms.RadioButton();
|
|
this.radBlurHV = new System.Windows.Forms.RadioButton();
|
|
this.label36 = new System.Windows.Forms.Label();
|
|
this.label34 = new System.Windows.Forms.Label();
|
|
this.cmdBlurListToInput = new System.Windows.Forms.Button();
|
|
this.txtBlurRadH = new System.Windows.Forms.TextBox();
|
|
this.cmdBlurInsertBefore = new System.Windows.Forms.Button();
|
|
this.cmdBlurReplaceLine = new System.Windows.Forms.Button();
|
|
this.cmdBlurInsertAfter = new System.Windows.Forms.Button();
|
|
this.cmdBlurMoveBefore = new System.Windows.Forms.Button();
|
|
this.label35 = new System.Windows.Forms.Label();
|
|
this.txtBlurBefore = new System.Windows.Forms.TextBox();
|
|
this.label32 = new System.Windows.Forms.Label();
|
|
this.label31 = new System.Windows.Forms.Label();
|
|
this.txtBlurOut = new System.Windows.Forms.TextBox();
|
|
this.txtBlurIn = new System.Windows.Forms.TextBox();
|
|
this.tabPage16 = new System.Windows.Forms.TabPage();
|
|
this.maskedTextTransformTime = new System.Windows.Forms.MaskedTextBox();
|
|
this.cmdTransformListToInput = new System.Windows.Forms.Button();
|
|
this.cmdTransformInsertBefore = new System.Windows.Forms.Button();
|
|
this.cmdTransformInsertAfter = new System.Windows.Forms.Button();
|
|
this.cmdTransformReplaceLine = new System.Windows.Forms.Button();
|
|
this.label45 = new System.Windows.Forms.Label();
|
|
this.txtTransformPrecision = new System.Windows.Forms.TextBox();
|
|
this.label1 = new System.Windows.Forms.Label();
|
|
this.listTransformVars = new SSATool.ListViewES();
|
|
this.columnHeader13 = new System.Windows.Forms.ColumnHeader();
|
|
this.txtTransformCode = new System.Windows.Forms.TextBox();
|
|
this.label47 = new System.Windows.Forms.Label();
|
|
this.label46 = new System.Windows.Forms.Label();
|
|
this.cmdTransformDelVar = new System.Windows.Forms.Button();
|
|
this.cmdTransformNewVar = new System.Windows.Forms.Button();
|
|
this.cmdDoTransform = new System.Windows.Forms.Button();
|
|
this.label44 = new System.Windows.Forms.Label();
|
|
this.cmdTransformDelTime = new System.Windows.Forms.Button();
|
|
this.cmdTransformAddTime = new System.Windows.Forms.Button();
|
|
this.listTransformTimes = new System.Windows.Forms.ListBox();
|
|
this.label43 = new System.Windows.Forms.Label();
|
|
this.txtTransformOut = new System.Windows.Forms.TextBox();
|
|
this.tabPage13 = new System.Windows.Forms.TabPage();
|
|
this.lstErrors = new System.Windows.Forms.ListBox();
|
|
this.label27 = new System.Windows.Forms.Label();
|
|
this.cmdCheckErrors = new System.Windows.Forms.Button();
|
|
this.tabPage15 = new System.Windows.Forms.TabPage();
|
|
this.labelFontNum = new System.Windows.Forms.Label();
|
|
this.cmdFontSearchFolder = new System.Windows.Forms.Button();
|
|
this.label40 = new System.Windows.Forms.Label();
|
|
this.cmdFindFonts = new System.Windows.Forms.Button();
|
|
this.label39 = new System.Windows.Forms.Label();
|
|
this.lstFonts = new System.Windows.Forms.ListView();
|
|
this.columnHeader7 = new System.Windows.Forms.ColumnHeader();
|
|
this.columnHeader8 = new System.Windows.Forms.ColumnHeader();
|
|
this.columnHeader9 = new System.Windows.Forms.ColumnHeader();
|
|
this.tabPage5 = new System.Windows.Forms.TabPage();
|
|
this.groupBox19 = new System.Windows.Forms.GroupBox();
|
|
this.textBox1 = new System.Windows.Forms.TextBox();
|
|
this.groupBox18 = new System.Windows.Forms.GroupBox();
|
|
this.lblRegroupDestIndex = new System.Windows.Forms.Label();
|
|
this.label10 = new System.Windows.Forms.Label();
|
|
this.lblRegroupSourceIndex = new System.Windows.Forms.Label();
|
|
this.label5 = new System.Windows.Forms.Label();
|
|
this.groupBox17 = new System.Windows.Forms.GroupBox();
|
|
this.listRegroupPairs = new System.Windows.Forms.ListView();
|
|
this.columnHeader10 = new System.Windows.Forms.ColumnHeader();
|
|
this.columnHeader12 = new System.Windows.Forms.ColumnHeader();
|
|
this.groupBox15 = new System.Windows.Forms.GroupBox();
|
|
this.cmdRegroupStart = new System.Windows.Forms.Button();
|
|
this.cmdRegroupAcceptLine = new System.Windows.Forms.Button();
|
|
this.cmdRegroupUnlinkLast = new System.Windows.Forms.Button();
|
|
this.cmdRegroupGoBack = new System.Windows.Forms.Button();
|
|
this.cmdRegroupSkipDestLine = new System.Windows.Forms.Button();
|
|
this.cmdRegroupSkipSourceLine = new System.Windows.Forms.Button();
|
|
this.cmdRegroupLink = new System.Windows.Forms.Button();
|
|
this.groupBox14 = new System.Windows.Forms.GroupBox();
|
|
this.txtRegroupSource = new System.Windows.Forms.TextBox();
|
|
this.txtRegroupDest = new System.Windows.Forms.TextBox();
|
|
this.groupBox13 = new System.Windows.Forms.GroupBox();
|
|
this.cmbRegroupDest = new System.Windows.Forms.ComboBox();
|
|
this.cmbRegroupSource = new System.Windows.Forms.ComboBox();
|
|
this.label53 = new System.Windows.Forms.Label();
|
|
this.label52 = new System.Windows.Forms.Label();
|
|
this.tabPage17 = new System.Windows.Forms.TabPage();
|
|
this.cmdNBReparse = new System.Windows.Forms.Button();
|
|
this.groupBox22 = new System.Windows.Forms.GroupBox();
|
|
this.textNBDesc = new System.Windows.Forms.TextBox();
|
|
this.cmbNBStyle = new System.Windows.Forms.ComboBox();
|
|
this.label59 = new System.Windows.Forms.Label();
|
|
this.cmdNBCopyStyles = new System.Windows.Forms.Button();
|
|
this.cmdNBInsertBefore = new System.Windows.Forms.Button();
|
|
this.cmdNBInsertAfter = new System.Windows.Forms.Button();
|
|
this.cmdNBReplaceLine = new System.Windows.Forms.Button();
|
|
this.cmdNoteBox = new System.Windows.Forms.Button();
|
|
this.groupBox21 = new System.Windows.Forms.GroupBox();
|
|
this.textNBStyles = new System.Windows.Forms.TextBox();
|
|
this.textNBOut = new System.Windows.Forms.TextBox();
|
|
this.groupBox20 = new System.Windows.Forms.GroupBox();
|
|
this.cmdNBGetTimes = new System.Windows.Forms.Button();
|
|
this.maskedTextNBEnd = new System.Windows.Forms.MaskedTextBox();
|
|
this.label58 = new System.Windows.Forms.Label();
|
|
this.maskedTextNBStart = new System.Windows.Forms.MaskedTextBox();
|
|
this.label57 = new System.Windows.Forms.Label();
|
|
this.textNotebox2 = new System.Windows.Forms.TextBox();
|
|
this.textNotebox1 = new System.Windows.Forms.TextBox();
|
|
this.label56 = new System.Windows.Forms.Label();
|
|
this.label48 = new System.Windows.Forms.Label();
|
|
this.tabPage6.SuspendLayout();
|
|
this.splitContainer1.Panel1.SuspendLayout();
|
|
this.splitContainer1.Panel2.SuspendLayout();
|
|
this.splitContainer1.SuspendLayout();
|
|
this.groupBox1.SuspendLayout();
|
|
this.tabMain.SuspendLayout();
|
|
this.tabPage1.SuspendLayout();
|
|
this.groupBox12.SuspendLayout();
|
|
this.groupBox4.SuspendLayout();
|
|
this.groupBox3.SuspendLayout();
|
|
this.groupBox2.SuspendLayout();
|
|
this.tabShiftType.SuspendLayout();
|
|
this.tabPage9.SuspendLayout();
|
|
this.tabPage10.SuspendLayout();
|
|
this.tabPage11.SuspendLayout();
|
|
this.tabPage12.SuspendLayout();
|
|
this.tabPage2.SuspendLayout();
|
|
this.groupBox11.SuspendLayout();
|
|
this.groupBox10.SuspendLayout();
|
|
this.groupBox6.SuspendLayout();
|
|
this.groupBox5.SuspendLayout();
|
|
this.tabPage3.SuspendLayout();
|
|
this.panelEffect.SuspendLayout();
|
|
this.tabControl1.SuspendLayout();
|
|
this.tabPage7.SuspendLayout();
|
|
this.tabPage8.SuspendLayout();
|
|
this.panelLayer.SuspendLayout();
|
|
this.groupBox16.SuspendLayout();
|
|
this.tabPage4.SuspendLayout();
|
|
this.panelGradient.SuspendLayout();
|
|
this.groupBox7.SuspendLayout();
|
|
this.tabPage14.SuspendLayout();
|
|
this.panelBlur.SuspendLayout();
|
|
this.groupBlurAffect.SuspendLayout();
|
|
this.groupBox9.SuspendLayout();
|
|
this.groupBlurSub.SuspendLayout();
|
|
this.groupBox8.SuspendLayout();
|
|
this.tabPage16.SuspendLayout();
|
|
this.tabPage13.SuspendLayout();
|
|
this.tabPage15.SuspendLayout();
|
|
this.tabPage5.SuspendLayout();
|
|
this.groupBox19.SuspendLayout();
|
|
this.groupBox18.SuspendLayout();
|
|
this.groupBox17.SuspendLayout();
|
|
this.groupBox15.SuspendLayout();
|
|
this.groupBox14.SuspendLayout();
|
|
this.groupBox13.SuspendLayout();
|
|
this.tabPage17.SuspendLayout();
|
|
this.groupBox22.SuspendLayout();
|
|
this.groupBox21.SuspendLayout();
|
|
this.groupBox20.SuspendLayout();
|
|
this.SuspendLayout();
|
|
//
|
|
// mainMenu1
|
|
//
|
|
this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuItem1,
|
|
this.menuItem11,
|
|
this.menuItem2,
|
|
this.menuItem10,
|
|
this.menuItem13});
|
|
//
|
|
// menuItem1
|
|
//
|
|
this.menuItem1.Index = 0;
|
|
this.menuItem1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuOpen,
|
|
this.menuOpenSJIS,
|
|
this.menuOpenEUCJP,
|
|
this.menuSave,
|
|
this.menuSaveAs,
|
|
this.menuItem5,
|
|
this.menuLoadProj,
|
|
this.menuSaveProj,
|
|
this.menuItem8,
|
|
this.menuExit});
|
|
resources.ApplyResources(this.menuItem1, "menuItem1");
|
|
//
|
|
// menuOpen
|
|
//
|
|
this.menuOpen.Index = 0;
|
|
resources.ApplyResources(this.menuOpen, "menuOpen");
|
|
this.menuOpen.Click += new System.EventHandler(this.menuOpen_Click);
|
|
//
|
|
// menuOpenSJIS
|
|
//
|
|
this.menuOpenSJIS.Index = 1;
|
|
resources.ApplyResources(this.menuOpenSJIS, "menuOpenSJIS");
|
|
this.menuOpenSJIS.Click += new System.EventHandler(this.menuOpenSJIS_Click);
|
|
//
|
|
// menuOpenEUCJP
|
|
//
|
|
this.menuOpenEUCJP.Index = 2;
|
|
resources.ApplyResources(this.menuOpenEUCJP, "menuOpenEUCJP");
|
|
this.menuOpenEUCJP.Click += new System.EventHandler(this.menuOpenEUCJP_Click);
|
|
//
|
|
// menuSave
|
|
//
|
|
this.menuSave.Index = 3;
|
|
resources.ApplyResources(this.menuSave, "menuSave");
|
|
this.menuSave.Click += new System.EventHandler(this.menuSave_Click);
|
|
//
|
|
// menuSaveAs
|
|
//
|
|
this.menuSaveAs.Index = 4;
|
|
resources.ApplyResources(this.menuSaveAs, "menuSaveAs");
|
|
this.menuSaveAs.Click += new System.EventHandler(this.menuSaveAs_Click);
|
|
//
|
|
// menuItem5
|
|
//
|
|
this.menuItem5.Index = 5;
|
|
resources.ApplyResources(this.menuItem5, "menuItem5");
|
|
//
|
|
// menuLoadProj
|
|
//
|
|
this.menuLoadProj.Index = 6;
|
|
resources.ApplyResources(this.menuLoadProj, "menuLoadProj");
|
|
this.menuLoadProj.Click += new System.EventHandler(this.menuLoadProj_Click);
|
|
//
|
|
// menuSaveProj
|
|
//
|
|
this.menuSaveProj.Index = 7;
|
|
resources.ApplyResources(this.menuSaveProj, "menuSaveProj");
|
|
this.menuSaveProj.Click += new System.EventHandler(this.menuSaveProj_Click);
|
|
//
|
|
// menuItem8
|
|
//
|
|
this.menuItem8.Index = 8;
|
|
resources.ApplyResources(this.menuItem8, "menuItem8");
|
|
//
|
|
// menuExit
|
|
//
|
|
this.menuExit.Index = 9;
|
|
resources.ApplyResources(this.menuExit, "menuExit");
|
|
this.menuExit.Click += new System.EventHandler(this.menuExit_Click);
|
|
//
|
|
// menuItem11
|
|
//
|
|
this.menuItem11.Index = 1;
|
|
this.menuItem11.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuUndo,
|
|
this.menuRedo,
|
|
this.menuClearUndoRedo});
|
|
resources.ApplyResources(this.menuItem11, "menuItem11");
|
|
//
|
|
// menuUndo
|
|
//
|
|
resources.ApplyResources(this.menuUndo, "menuUndo");
|
|
this.menuUndo.Index = 0;
|
|
this.menuUndo.Click += new System.EventHandler(this.menuUndo_Click);
|
|
//
|
|
// menuRedo
|
|
//
|
|
resources.ApplyResources(this.menuRedo, "menuRedo");
|
|
this.menuRedo.Index = 1;
|
|
this.menuRedo.Click += new System.EventHandler(this.menuRedo_Click);
|
|
//
|
|
// menuClearUndoRedo
|
|
//
|
|
this.menuClearUndoRedo.Index = 2;
|
|
resources.ApplyResources(this.menuClearUndoRedo, "menuClearUndoRedo");
|
|
this.menuClearUndoRedo.Click += new System.EventHandler(this.menuClearUndoRedo_Click);
|
|
//
|
|
// menuItem2
|
|
//
|
|
this.menuItem2.Index = 2;
|
|
this.menuItem2.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuItem7,
|
|
this.menuItem9,
|
|
this.menuGoTo,
|
|
this.menuChangeLine,
|
|
this.menuRemoveLine});
|
|
resources.ApplyResources(this.menuItem2, "menuItem2");
|
|
//
|
|
// menuItem7
|
|
//
|
|
this.menuItem7.Index = 0;
|
|
this.menuItem7.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuNewLineBeginning,
|
|
this.menuNewLineEnd,
|
|
this.menuNewLineAbove,
|
|
this.menuNewLineBelow});
|
|
resources.ApplyResources(this.menuItem7, "menuItem7");
|
|
//
|
|
// menuNewLineBeginning
|
|
//
|
|
this.menuNewLineBeginning.Index = 0;
|
|
resources.ApplyResources(this.menuNewLineBeginning, "menuNewLineBeginning");
|
|
this.menuNewLineBeginning.Click += new System.EventHandler(this.menuNewLineBeginning_Click);
|
|
//
|
|
// menuNewLineEnd
|
|
//
|
|
this.menuNewLineEnd.Index = 1;
|
|
resources.ApplyResources(this.menuNewLineEnd, "menuNewLineEnd");
|
|
this.menuNewLineEnd.Click += new System.EventHandler(this.menuNewLineEnd_Click);
|
|
//
|
|
// menuNewLineAbove
|
|
//
|
|
this.menuNewLineAbove.Index = 2;
|
|
resources.ApplyResources(this.menuNewLineAbove, "menuNewLineAbove");
|
|
this.menuNewLineAbove.Click += new System.EventHandler(this.menuNewLineAbove_Click);
|
|
//
|
|
// menuNewLineBelow
|
|
//
|
|
this.menuNewLineBelow.Index = 3;
|
|
resources.ApplyResources(this.menuNewLineBelow, "menuNewLineBelow");
|
|
this.menuNewLineBelow.Click += new System.EventHandler(this.menuNewLineBelow_Click);
|
|
//
|
|
// menuItem9
|
|
//
|
|
this.menuItem9.Index = 1;
|
|
this.menuItem9.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuMoveLineUp,
|
|
this.menuMoveLineDown});
|
|
resources.ApplyResources(this.menuItem9, "menuItem9");
|
|
//
|
|
// menuMoveLineUp
|
|
//
|
|
this.menuMoveLineUp.Index = 0;
|
|
resources.ApplyResources(this.menuMoveLineUp, "menuMoveLineUp");
|
|
this.menuMoveLineUp.Click += new System.EventHandler(this.menuMoveLineUp_Click);
|
|
//
|
|
// menuMoveLineDown
|
|
//
|
|
this.menuMoveLineDown.Index = 1;
|
|
resources.ApplyResources(this.menuMoveLineDown, "menuMoveLineDown");
|
|
this.menuMoveLineDown.Click += new System.EventHandler(this.menuMoveLineDown_Click);
|
|
//
|
|
// menuGoTo
|
|
//
|
|
this.menuGoTo.Index = 2;
|
|
resources.ApplyResources(this.menuGoTo, "menuGoTo");
|
|
this.menuGoTo.Click += new System.EventHandler(this.menuGoTo_Click);
|
|
//
|
|
// menuChangeLine
|
|
//
|
|
this.menuChangeLine.Index = 3;
|
|
resources.ApplyResources(this.menuChangeLine, "menuChangeLine");
|
|
this.menuChangeLine.Click += new System.EventHandler(this.menuChangeLine_Click);
|
|
//
|
|
// menuRemoveLine
|
|
//
|
|
this.menuRemoveLine.Index = 4;
|
|
resources.ApplyResources(this.menuRemoveLine, "menuRemoveLine");
|
|
this.menuRemoveLine.Click += new System.EventHandler(this.menuRemoveLine_Click);
|
|
//
|
|
// menuItem10
|
|
//
|
|
this.menuItem10.Index = 3;
|
|
this.menuItem10.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuFont,
|
|
this.menuItem4,
|
|
this.menuItem6});
|
|
resources.ApplyResources(this.menuItem10, "menuItem10");
|
|
//
|
|
// menuFont
|
|
//
|
|
this.menuFont.Index = 0;
|
|
resources.ApplyResources(this.menuFont, "menuFont");
|
|
this.menuFont.Click += new System.EventHandler(this.menuFont_Click);
|
|
//
|
|
// menuItem4
|
|
//
|
|
this.menuItem4.Index = 1;
|
|
resources.ApplyResources(this.menuItem4, "menuItem4");
|
|
//
|
|
// menuItem6
|
|
//
|
|
this.menuItem6.Index = 2;
|
|
this.menuItem6.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuPrecisioncs,
|
|
this.menuPrecisionms});
|
|
resources.ApplyResources(this.menuItem6, "menuItem6");
|
|
//
|
|
// menuPrecisioncs
|
|
//
|
|
this.menuPrecisioncs.Checked = true;
|
|
this.menuPrecisioncs.Index = 0;
|
|
resources.ApplyResources(this.menuPrecisioncs, "menuPrecisioncs");
|
|
this.menuPrecisioncs.Click += new System.EventHandler(this.menuPrecisioncs_Click);
|
|
//
|
|
// menuPrecisionms
|
|
//
|
|
this.menuPrecisionms.Index = 1;
|
|
resources.ApplyResources(this.menuPrecisionms, "menuPrecisionms");
|
|
this.menuPrecisionms.Click += new System.EventHandler(this.menuPrecisionms_Click);
|
|
//
|
|
// menuItem13
|
|
//
|
|
this.menuItem13.Index = 4;
|
|
this.menuItem13.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuShowEffectEditor,
|
|
this.menuItem15,
|
|
this.menuItem3,
|
|
this.menuLoadEffects});
|
|
resources.ApplyResources(this.menuItem13, "menuItem13");
|
|
//
|
|
// menuShowEffectEditor
|
|
//
|
|
this.menuShowEffectEditor.Index = 0;
|
|
resources.ApplyResources(this.menuShowEffectEditor, "menuShowEffectEditor");
|
|
this.menuShowEffectEditor.Click += new System.EventHandler(this.menuShowEffectsEditor_Click);
|
|
//
|
|
// menuItem15
|
|
//
|
|
this.menuItem15.Index = 1;
|
|
this.menuItem15.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
|
|
this.menuItem16});
|
|
resources.ApplyResources(this.menuItem15, "menuItem15");
|
|
//
|
|
// menuItem16
|
|
//
|
|
this.menuItem16.Index = 0;
|
|
resources.ApplyResources(this.menuItem16, "menuItem16");
|
|
this.menuItem16.Click += new System.EventHandler(this.menuFilter_Click);
|
|
//
|
|
// menuItem3
|
|
//
|
|
this.menuItem3.Index = 2;
|
|
resources.ApplyResources(this.menuItem3, "menuItem3");
|
|
//
|
|
// menuLoadEffects
|
|
//
|
|
this.menuLoadEffects.Index = 3;
|
|
resources.ApplyResources(this.menuLoadEffects, "menuLoadEffects");
|
|
this.menuLoadEffects.Click += new System.EventHandler(this.menuLoadEffects_Click);
|
|
//
|
|
// tabPage6
|
|
//
|
|
this.tabPage6.Controls.Add(this.treeView1);
|
|
this.tabPage6.Controls.Add(this.maskedTextBox1);
|
|
this.tabPage6.Controls.Add(this.checkBox2);
|
|
this.tabPage6.Controls.Add(this.button6);
|
|
this.tabPage6.Controls.Add(this.comboBox1);
|
|
this.tabPage6.Controls.Add(this.label55);
|
|
this.tabPage6.Controls.Add(this.checkBox1);
|
|
this.tabPage6.Controls.Add(this.button4);
|
|
this.tabPage6.Controls.Add(this.button3);
|
|
this.tabPage6.Controls.Add(this.button2);
|
|
this.tabPage6.Controls.Add(this.button1);
|
|
this.tabPage6.Controls.Add(this.textBox2);
|
|
resources.ApplyResources(this.tabPage6, "tabPage6");
|
|
this.tabPage6.Name = "tabPage6";
|
|
this.tabPage6.UseVisualStyleBackColor = true;
|
|
//
|
|
// treeView1
|
|
//
|
|
this.treeView1.LineColor = System.Drawing.Color.Empty;
|
|
resources.ApplyResources(this.treeView1, "treeView1");
|
|
this.treeView1.Name = "treeView1";
|
|
//
|
|
// maskedTextBox1
|
|
//
|
|
resources.ApplyResources(this.maskedTextBox1, "maskedTextBox1");
|
|
this.maskedTextBox1.Name = "maskedTextBox1";
|
|
//
|
|
// checkBox2
|
|
//
|
|
resources.ApplyResources(this.checkBox2, "checkBox2");
|
|
this.checkBox2.Name = "checkBox2";
|
|
this.checkBox2.UseVisualStyleBackColor = true;
|
|
//
|
|
// button6
|
|
//
|
|
resources.ApplyResources(this.button6, "button6");
|
|
this.button6.Name = "button6";
|
|
this.button6.UseVisualStyleBackColor = true;
|
|
//
|
|
// comboBox1
|
|
//
|
|
this.comboBox1.FormattingEnabled = true;
|
|
resources.ApplyResources(this.comboBox1, "comboBox1");
|
|
this.comboBox1.Name = "comboBox1";
|
|
//
|
|
// label55
|
|
//
|
|
resources.ApplyResources(this.label55, "label55");
|
|
this.label55.Name = "label55";
|
|
//
|
|
// checkBox1
|
|
//
|
|
resources.ApplyResources(this.checkBox1, "checkBox1");
|
|
this.checkBox1.Checked = true;
|
|
this.checkBox1.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
this.checkBox1.Name = "checkBox1";
|
|
this.checkBox1.UseVisualStyleBackColor = true;
|
|
//
|
|
// button4
|
|
//
|
|
resources.ApplyResources(this.button4, "button4");
|
|
this.button4.Name = "button4";
|
|
this.button4.UseVisualStyleBackColor = true;
|
|
//
|
|
// button3
|
|
//
|
|
resources.ApplyResources(this.button3, "button3");
|
|
this.button3.Name = "button3";
|
|
this.button3.UseVisualStyleBackColor = true;
|
|
//
|
|
// button2
|
|
//
|
|
resources.ApplyResources(this.button2, "button2");
|
|
this.button2.Name = "button2";
|
|
this.button2.UseCompatibleTextRendering = true;
|
|
this.button2.UseVisualStyleBackColor = true;
|
|
//
|
|
// button1
|
|
//
|
|
resources.ApplyResources(this.button1, "button1");
|
|
this.button1.Name = "button1";
|
|
this.button1.UseCompatibleTextRendering = true;
|
|
this.button1.UseVisualStyleBackColor = true;
|
|
//
|
|
// textBox2
|
|
//
|
|
resources.ApplyResources(this.textBox2, "textBox2");
|
|
this.textBox2.Name = "textBox2";
|
|
//
|
|
// columnHeader11
|
|
//
|
|
resources.ApplyResources(this.columnHeader11, "columnHeader11");
|
|
//
|
|
// lstEffectOpts
|
|
//
|
|
resources.ApplyResources(this.lstEffectOpts, "lstEffectOpts");
|
|
this.lstEffectOpts.MultiColumn = true;
|
|
this.lstEffectOpts.Name = "lstEffectOpts";
|
|
//
|
|
// fontDialog1
|
|
//
|
|
this.fontDialog1.AllowVerticalFonts = false;
|
|
this.fontDialog1.ShowEffects = false;
|
|
//
|
|
// folderBrowserDialog1
|
|
//
|
|
this.folderBrowserDialog1.ShowNewFolderButton = false;
|
|
//
|
|
// splitContainer1
|
|
//
|
|
resources.ApplyResources(this.splitContainer1, "splitContainer1");
|
|
this.splitContainer1.Name = "splitContainer1";
|
|
//
|
|
// splitContainer1.Panel1
|
|
//
|
|
this.splitContainer1.Panel1.Controls.Add(this.groupBox1);
|
|
this.splitContainer1.Panel1.Controls.Add(this.listSSA);
|
|
//
|
|
// splitContainer1.Panel2
|
|
//
|
|
this.splitContainer1.Panel2.Controls.Add(this.tabMain);
|
|
this.splitContainer1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.splitContainer1_MouseDown);
|
|
this.splitContainer1.SplitterMoved += new System.Windows.Forms.SplitterEventHandler(this.splitterMoved);
|
|
this.splitContainer1.MouseUp += new System.Windows.Forms.MouseEventHandler(this.splitContainer1_MouseUp);
|
|
this.splitContainer1.SizeChanged += new System.EventHandler(this.Resize_Handler);
|
|
//
|
|
// groupBox1
|
|
//
|
|
this.groupBox1.Controls.Add(this.labelSelLine);
|
|
this.groupBox1.Controls.Add(this.label41);
|
|
this.groupBox1.Controls.Add(this.cmdReloadFile);
|
|
this.groupBox1.Controls.Add(this.lstStyles);
|
|
this.groupBox1.Controls.Add(this.cmdSSAInvertSel);
|
|
this.groupBox1.Controls.Add(this.cmdSSADeselall);
|
|
this.groupBox1.Controls.Add(this.cmdSSASelall);
|
|
this.groupBox1.Controls.Add(this.cmdDeselAll);
|
|
this.groupBox1.Controls.Add(this.cmdSelAll);
|
|
resources.ApplyResources(this.groupBox1, "groupBox1");
|
|
this.groupBox1.Name = "groupBox1";
|
|
this.groupBox1.TabStop = false;
|
|
//
|
|
// labelSelLine
|
|
//
|
|
resources.ApplyResources(this.labelSelLine, "labelSelLine");
|
|
this.labelSelLine.Name = "labelSelLine";
|
|
//
|
|
// label41
|
|
//
|
|
resources.ApplyResources(this.label41, "label41");
|
|
this.label41.Name = "label41";
|
|
//
|
|
// cmdReloadFile
|
|
//
|
|
resources.ApplyResources(this.cmdReloadFile, "cmdReloadFile");
|
|
this.cmdReloadFile.Name = "cmdReloadFile";
|
|
this.cmdReloadFile.UseCompatibleTextRendering = true;
|
|
this.cmdReloadFile.Click += new System.EventHandler(this.cmdReloadFile_Click);
|
|
//
|
|
// lstStyles
|
|
//
|
|
resources.ApplyResources(this.lstStyles, "lstStyles");
|
|
this.lstStyles.Name = "lstStyles";
|
|
this.lstStyles.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.lstStyles_ItemCheck);
|
|
//
|
|
// cmdSSAInvertSel
|
|
//
|
|
resources.ApplyResources(this.cmdSSAInvertSel, "cmdSSAInvertSel");
|
|
this.cmdSSAInvertSel.Name = "cmdSSAInvertSel";
|
|
this.cmdSSAInvertSel.UseCompatibleTextRendering = true;
|
|
//
|
|
// cmdSSADeselall
|
|
//
|
|
resources.ApplyResources(this.cmdSSADeselall, "cmdSSADeselall");
|
|
this.cmdSSADeselall.Name = "cmdSSADeselall";
|
|
this.cmdSSADeselall.UseCompatibleTextRendering = true;
|
|
this.cmdSSADeselall.Click += new System.EventHandler(this.cmdSSADeselall_Click);
|
|
//
|
|
// cmdSSASelall
|
|
//
|
|
resources.ApplyResources(this.cmdSSASelall, "cmdSSASelall");
|
|
this.cmdSSASelall.Name = "cmdSSASelall";
|
|
this.cmdSSASelall.UseCompatibleTextRendering = true;
|
|
this.cmdSSASelall.Click += new System.EventHandler(this.cmdSSASelall_Click);
|
|
//
|
|
// cmdDeselAll
|
|
//
|
|
resources.ApplyResources(this.cmdDeselAll, "cmdDeselAll");
|
|
this.cmdDeselAll.Name = "cmdDeselAll";
|
|
this.cmdDeselAll.UseCompatibleTextRendering = true;
|
|
this.cmdDeselAll.Click += new System.EventHandler(this.cmdDeselAll_Click);
|
|
//
|
|
// cmdSelAll
|
|
//
|
|
resources.ApplyResources(this.cmdSelAll, "cmdSelAll");
|
|
this.cmdSelAll.Name = "cmdSelAll";
|
|
this.cmdSelAll.UseCompatibleTextRendering = true;
|
|
this.cmdSelAll.Click += new System.EventHandler(this.cmdSelAll_Click);
|
|
//
|
|
// listSSA
|
|
//
|
|
this.listSSA.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
|
this.columnHeader14});
|
|
this.listSSA.FullRowSelect = true;
|
|
this.listSSA.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
|
this.listSSA.HideSelection = false;
|
|
this.listSSA.LabelEdit = true;
|
|
resources.ApplyResources(this.listSSA, "listSSA");
|
|
this.listSSA.Name = "listSSA";
|
|
this.listSSA.OwnerDraw = true;
|
|
this.listSSA.UseCompatibleStateImageBehavior = false;
|
|
this.listSSA.View = System.Windows.Forms.View.Details;
|
|
this.listSSA.VirtualMode = true;
|
|
this.listSSA.DrawItem += new System.Windows.Forms.DrawListViewItemEventHandler(this.listSSA_DrawItem);
|
|
this.listSSA.DoubleClick += new System.EventHandler(this.listSSA_DoubleClick);
|
|
this.listSSA.VirtualItemsSelectionRangeChanged += new System.Windows.Forms.ListViewVirtualItemsSelectionRangeChangedEventHandler(this.listSSA_VirtualItemsSelectionRangeChanged);
|
|
this.listSSA.OnScroll += new System.Windows.Forms.ScrollEventHandler(this.listSSA_OnScroll);
|
|
this.listSSA.SelectedIndexChanged += new System.EventHandler(this.listSSA_SelectedIndexChanged);
|
|
this.listSSA.MouseUp += new System.Windows.Forms.MouseEventHandler(this.listSSA_MouseUp);
|
|
this.listSSA.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.listSSA_ItemCheck);
|
|
this.listSSA.RetrieveVirtualItem += new System.Windows.Forms.RetrieveVirtualItemEventHandler(this.listSSA_RetrieveVirtualItem);
|
|
this.listSSA.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listSSA_ItemSelectionChanged);
|
|
this.listSSA.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.listSSA_KeyPress);
|
|
this.listSSA.KeyUp += new System.Windows.Forms.KeyEventHandler(this.listSSA_KeyUp);
|
|
//
|
|
// columnHeader14
|
|
//
|
|
resources.ApplyResources(this.columnHeader14, "columnHeader14");
|
|
//
|
|
// tabMain
|
|
//
|
|
this.tabMain.Controls.Add(this.tabPage1);
|
|
this.tabMain.Controls.Add(this.tabPage2);
|
|
this.tabMain.Controls.Add(this.tabPage3);
|
|
this.tabMain.Controls.Add(this.tabPage4);
|
|
this.tabMain.Controls.Add(this.tabPage14);
|
|
this.tabMain.Controls.Add(this.tabPage16);
|
|
this.tabMain.Controls.Add(this.tabPage13);
|
|
this.tabMain.Controls.Add(this.tabPage15);
|
|
this.tabMain.Controls.Add(this.tabPage5);
|
|
this.tabMain.Controls.Add(this.tabPage17);
|
|
resources.ApplyResources(this.tabMain, "tabMain");
|
|
this.tabMain.Name = "tabMain";
|
|
this.tabMain.SelectedIndex = 0;
|
|
this.tabMain.Resize += new System.EventHandler(this.tabMain_Resize);
|
|
//
|
|
// tabPage1
|
|
//
|
|
this.tabPage1.Controls.Add(this.groupBox12);
|
|
this.tabPage1.Controls.Add(this.groupBox4);
|
|
this.tabPage1.Controls.Add(this.groupBox3);
|
|
this.tabPage1.Controls.Add(this.groupBox2);
|
|
resources.ApplyResources(this.tabPage1, "tabPage1");
|
|
this.tabPage1.Name = "tabPage1";
|
|
this.tabPage1.UseVisualStyleBackColor = true;
|
|
//
|
|
// groupBox12
|
|
//
|
|
this.groupBox12.Controls.Add(this.cmbFR);
|
|
this.groupBox12.Controls.Add(this.label54);
|
|
resources.ApplyResources(this.groupBox12, "groupBox12");
|
|
this.groupBox12.Name = "groupBox12";
|
|
this.groupBox12.TabStop = false;
|
|
//
|
|
// cmbFR
|
|
//
|
|
this.cmbFR.FormattingEnabled = true;
|
|
this.cmbFR.Items.AddRange(new object[] {
|
|
resources.GetString("cmbFR.Items"),
|
|
resources.GetString("cmbFR.Items1"),
|
|
resources.GetString("cmbFR.Items2"),
|
|
resources.GetString("cmbFR.Items3"),
|
|
resources.GetString("cmbFR.Items4"),
|
|
resources.GetString("cmbFR.Items5"),
|
|
resources.GetString("cmbFR.Items6"),
|
|
resources.GetString("cmbFR.Items7")});
|
|
resources.ApplyResources(this.cmbFR, "cmbFR");
|
|
this.cmbFR.Name = "cmbFR";
|
|
//
|
|
// label54
|
|
//
|
|
resources.ApplyResources(this.label54, "label54");
|
|
this.label54.Name = "label54";
|
|
//
|
|
// groupBox4
|
|
//
|
|
this.groupBox4.Controls.Add(this.chkSRCaseSensitive);
|
|
this.groupBox4.Controls.Add(this.cmdSearchReplace);
|
|
this.groupBox4.Controls.Add(this.txtSearchReplaceWith);
|
|
this.groupBox4.Controls.Add(this.txtSearchFor);
|
|
this.groupBox4.Controls.Add(this.label12);
|
|
this.groupBox4.Controls.Add(this.label11);
|
|
resources.ApplyResources(this.groupBox4, "groupBox4");
|
|
this.groupBox4.Name = "groupBox4";
|
|
this.groupBox4.TabStop = false;
|
|
//
|
|
// chkSRCaseSensitive
|
|
//
|
|
resources.ApplyResources(this.chkSRCaseSensitive, "chkSRCaseSensitive");
|
|
this.chkSRCaseSensitive.Name = "chkSRCaseSensitive";
|
|
this.chkSRCaseSensitive.UseVisualStyleBackColor = true;
|
|
//
|
|
// cmdSearchReplace
|
|
//
|
|
resources.ApplyResources(this.cmdSearchReplace, "cmdSearchReplace");
|
|
this.cmdSearchReplace.Name = "cmdSearchReplace";
|
|
this.cmdSearchReplace.Click += new System.EventHandler(this.cmdSearchReplace_Click);
|
|
//
|
|
// txtSearchReplaceWith
|
|
//
|
|
resources.ApplyResources(this.txtSearchReplaceWith, "txtSearchReplaceWith");
|
|
this.txtSearchReplaceWith.Name = "txtSearchReplaceWith";
|
|
//
|
|
// txtSearchFor
|
|
//
|
|
resources.ApplyResources(this.txtSearchFor, "txtSearchFor");
|
|
this.txtSearchFor.Name = "txtSearchFor";
|
|
//
|
|
// label12
|
|
//
|
|
resources.ApplyResources(this.label12, "label12");
|
|
this.label12.Name = "label12";
|
|
//
|
|
// label11
|
|
//
|
|
resources.ApplyResources(this.label11, "label11");
|
|
this.label11.Name = "label11";
|
|
//
|
|
// groupBox3
|
|
//
|
|
this.groupBox3.Controls.Add(this.cmdChangeLastKLen);
|
|
this.groupBox3.Controls.Add(this.cmdRemoveDups);
|
|
this.groupBox3.Controls.Add(this.cmdStrip);
|
|
resources.ApplyResources(this.groupBox3, "groupBox3");
|
|
this.groupBox3.Name = "groupBox3";
|
|
this.groupBox3.TabStop = false;
|
|
//
|
|
// cmdChangeLastKLen
|
|
//
|
|
resources.ApplyResources(this.cmdChangeLastKLen, "cmdChangeLastKLen");
|
|
this.cmdChangeLastKLen.Name = "cmdChangeLastKLen";
|
|
this.cmdChangeLastKLen.Click += new System.EventHandler(this.cmdChangeLastKLen_Click);
|
|
//
|
|
// cmdRemoveDups
|
|
//
|
|
resources.ApplyResources(this.cmdRemoveDups, "cmdRemoveDups");
|
|
this.cmdRemoveDups.Name = "cmdRemoveDups";
|
|
this.cmdRemoveDups.Click += new System.EventHandler(this.cmdRemoveDups_Click);
|
|
//
|
|
// cmdStrip
|
|
//
|
|
resources.ApplyResources(this.cmdStrip, "cmdStrip");
|
|
this.cmdStrip.Name = "cmdStrip";
|
|
this.cmdStrip.Click += new System.EventHandler(this.cmdStrip_Click);
|
|
//
|
|
// groupBox2
|
|
//
|
|
this.groupBox2.Controls.Add(this.cmdShift);
|
|
this.groupBox2.Controls.Add(this.chkShiftNoNeg);
|
|
this.groupBox2.Controls.Add(this.chkShiftEnd);
|
|
this.groupBox2.Controls.Add(this.chkShiftStart);
|
|
this.groupBox2.Controls.Add(this.tabShiftType);
|
|
resources.ApplyResources(this.groupBox2, "groupBox2");
|
|
this.groupBox2.Name = "groupBox2";
|
|
this.groupBox2.TabStop = false;
|
|
//
|
|
// cmdShift
|
|
//
|
|
resources.ApplyResources(this.cmdShift, "cmdShift");
|
|
this.cmdShift.Name = "cmdShift";
|
|
this.cmdShift.Click += new System.EventHandler(this.cmdShift_Click);
|
|
//
|
|
// chkShiftNoNeg
|
|
//
|
|
this.chkShiftNoNeg.Checked = true;
|
|
this.chkShiftNoNeg.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkShiftNoNeg, "chkShiftNoNeg");
|
|
this.chkShiftNoNeg.Name = "chkShiftNoNeg";
|
|
//
|
|
// chkShiftEnd
|
|
//
|
|
this.chkShiftEnd.Checked = true;
|
|
this.chkShiftEnd.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkShiftEnd, "chkShiftEnd");
|
|
this.chkShiftEnd.Name = "chkShiftEnd";
|
|
//
|
|
// chkShiftStart
|
|
//
|
|
this.chkShiftStart.Checked = true;
|
|
this.chkShiftStart.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkShiftStart, "chkShiftStart");
|
|
this.chkShiftStart.Name = "chkShiftStart";
|
|
//
|
|
// tabShiftType
|
|
//
|
|
resources.ApplyResources(this.tabShiftType, "tabShiftType");
|
|
this.tabShiftType.Controls.Add(this.tabPage9);
|
|
this.tabShiftType.Controls.Add(this.tabPage10);
|
|
this.tabShiftType.Controls.Add(this.tabPage11);
|
|
this.tabShiftType.Controls.Add(this.tabPage12);
|
|
this.tabShiftType.Name = "tabShiftType";
|
|
this.tabShiftType.SelectedIndex = 0;
|
|
//
|
|
// tabPage9
|
|
//
|
|
this.tabPage9.Controls.Add(this.maskedTextShiftTime);
|
|
this.tabPage9.Controls.Add(this.radTShiftBack);
|
|
this.tabPage9.Controls.Add(this.radTShiftForward);
|
|
this.tabPage9.Controls.Add(this.label3);
|
|
resources.ApplyResources(this.tabPage9, "tabPage9");
|
|
this.tabPage9.Name = "tabPage9";
|
|
//
|
|
// maskedTextShiftTime
|
|
//
|
|
resources.ApplyResources(this.maskedTextShiftTime, "maskedTextShiftTime");
|
|
this.maskedTextShiftTime.Name = "maskedTextShiftTime";
|
|
this.maskedTextShiftTime.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// radTShiftBack
|
|
//
|
|
resources.ApplyResources(this.radTShiftBack, "radTShiftBack");
|
|
this.radTShiftBack.Name = "radTShiftBack";
|
|
//
|
|
// radTShiftForward
|
|
//
|
|
this.radTShiftForward.Checked = true;
|
|
resources.ApplyResources(this.radTShiftForward, "radTShiftForward");
|
|
this.radTShiftForward.Name = "radTShiftForward";
|
|
this.radTShiftForward.TabStop = true;
|
|
//
|
|
// label3
|
|
//
|
|
resources.ApplyResources(this.label3, "label3");
|
|
this.label3.Name = "label3";
|
|
//
|
|
// tabPage10
|
|
//
|
|
this.tabPage10.Controls.Add(this.radFShiftBackward);
|
|
this.tabPage10.Controls.Add(this.radFShiftForward);
|
|
this.tabPage10.Controls.Add(this.txtShiftFrames);
|
|
this.tabPage10.Controls.Add(this.label4);
|
|
resources.ApplyResources(this.tabPage10, "tabPage10");
|
|
this.tabPage10.Name = "tabPage10";
|
|
//
|
|
// radFShiftBackward
|
|
//
|
|
resources.ApplyResources(this.radFShiftBackward, "radFShiftBackward");
|
|
this.radFShiftBackward.Name = "radFShiftBackward";
|
|
//
|
|
// radFShiftForward
|
|
//
|
|
this.radFShiftForward.Checked = true;
|
|
resources.ApplyResources(this.radFShiftForward, "radFShiftForward");
|
|
this.radFShiftForward.Name = "radFShiftForward";
|
|
this.radFShiftForward.TabStop = true;
|
|
//
|
|
// txtShiftFrames
|
|
//
|
|
resources.ApplyResources(this.txtShiftFrames, "txtShiftFrames");
|
|
this.txtShiftFrames.Name = "txtShiftFrames";
|
|
//
|
|
// label4
|
|
//
|
|
resources.ApplyResources(this.label4, "label4");
|
|
this.label4.Name = "label4";
|
|
//
|
|
// tabPage11
|
|
//
|
|
this.tabPage11.Controls.Add(this.maskedTextTDShiftNew);
|
|
this.tabPage11.Controls.Add(this.maskedTextTDShiftOld);
|
|
this.tabPage11.Controls.Add(this.label7);
|
|
this.tabPage11.Controls.Add(this.label6);
|
|
resources.ApplyResources(this.tabPage11, "tabPage11");
|
|
this.tabPage11.Name = "tabPage11";
|
|
//
|
|
// maskedTextTDShiftNew
|
|
//
|
|
resources.ApplyResources(this.maskedTextTDShiftNew, "maskedTextTDShiftNew");
|
|
this.maskedTextTDShiftNew.Name = "maskedTextTDShiftNew";
|
|
this.maskedTextTDShiftNew.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// maskedTextTDShiftOld
|
|
//
|
|
resources.ApplyResources(this.maskedTextTDShiftOld, "maskedTextTDShiftOld");
|
|
this.maskedTextTDShiftOld.Name = "maskedTextTDShiftOld";
|
|
this.maskedTextTDShiftOld.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// label7
|
|
//
|
|
resources.ApplyResources(this.label7, "label7");
|
|
this.label7.Name = "label7";
|
|
//
|
|
// label6
|
|
//
|
|
resources.ApplyResources(this.label6, "label6");
|
|
this.label6.Name = "label6";
|
|
//
|
|
// tabPage12
|
|
//
|
|
this.tabPage12.Controls.Add(this.label9);
|
|
this.tabPage12.Controls.Add(this.label8);
|
|
this.tabPage12.Controls.Add(this.txtFDShiftNew);
|
|
this.tabPage12.Controls.Add(this.txtFDShiftOld);
|
|
resources.ApplyResources(this.tabPage12, "tabPage12");
|
|
this.tabPage12.Name = "tabPage12";
|
|
//
|
|
// label9
|
|
//
|
|
resources.ApplyResources(this.label9, "label9");
|
|
this.label9.Name = "label9";
|
|
//
|
|
// label8
|
|
//
|
|
resources.ApplyResources(this.label8, "label8");
|
|
this.label8.Name = "label8";
|
|
//
|
|
// txtFDShiftNew
|
|
//
|
|
resources.ApplyResources(this.txtFDShiftNew, "txtFDShiftNew");
|
|
this.txtFDShiftNew.Name = "txtFDShiftNew";
|
|
//
|
|
// txtFDShiftOld
|
|
//
|
|
resources.ApplyResources(this.txtFDShiftOld, "txtFDShiftOld");
|
|
this.txtFDShiftOld.Name = "txtFDShiftOld";
|
|
//
|
|
// tabPage2
|
|
//
|
|
this.tabPage2.Controls.Add(this.groupBox11);
|
|
this.tabPage2.Controls.Add(this.groupBox10);
|
|
this.tabPage2.Controls.Add(this.groupBox6);
|
|
this.tabPage2.Controls.Add(this.groupBox5);
|
|
resources.ApplyResources(this.tabPage2, "tabPage2");
|
|
this.tabPage2.Name = "tabPage2";
|
|
this.tabPage2.UseVisualStyleBackColor = true;
|
|
//
|
|
// groupBox11
|
|
//
|
|
this.groupBox11.Controls.Add(this.cmdTimecodesDeapply);
|
|
this.groupBox11.Controls.Add(this.cmdTimecodesApply);
|
|
this.groupBox11.Controls.Add(this.cmdTimecodesBrowse);
|
|
this.groupBox11.Controls.Add(this.textTimecodeFile);
|
|
resources.ApplyResources(this.groupBox11, "groupBox11");
|
|
this.groupBox11.Name = "groupBox11";
|
|
this.groupBox11.TabStop = false;
|
|
//
|
|
// cmdTimecodesDeapply
|
|
//
|
|
resources.ApplyResources(this.cmdTimecodesDeapply, "cmdTimecodesDeapply");
|
|
this.cmdTimecodesDeapply.Name = "cmdTimecodesDeapply";
|
|
this.cmdTimecodesDeapply.UseVisualStyleBackColor = true;
|
|
this.cmdTimecodesDeapply.Click += new System.EventHandler(this.cmdTimecodesDeapply_Click);
|
|
//
|
|
// cmdTimecodesApply
|
|
//
|
|
resources.ApplyResources(this.cmdTimecodesApply, "cmdTimecodesApply");
|
|
this.cmdTimecodesApply.Name = "cmdTimecodesApply";
|
|
this.cmdTimecodesApply.UseVisualStyleBackColor = true;
|
|
this.cmdTimecodesApply.Click += new System.EventHandler(this.cmdTimecodesApply_Click);
|
|
//
|
|
// cmdTimecodesBrowse
|
|
//
|
|
resources.ApplyResources(this.cmdTimecodesBrowse, "cmdTimecodesBrowse");
|
|
this.cmdTimecodesBrowse.Name = "cmdTimecodesBrowse";
|
|
this.cmdTimecodesBrowse.UseCompatibleTextRendering = true;
|
|
this.cmdTimecodesBrowse.UseVisualStyleBackColor = true;
|
|
this.cmdTimecodesBrowse.Click += new System.EventHandler(this.cmdTimecodesBrowse_Click);
|
|
//
|
|
// textTimecodeFile
|
|
//
|
|
resources.ApplyResources(this.textTimecodeFile, "textTimecodeFile");
|
|
this.textTimecodeFile.Name = "textTimecodeFile";
|
|
//
|
|
// groupBox10
|
|
//
|
|
this.groupBox10.Controls.Add(this.txtLeadOut);
|
|
this.groupBox10.Controls.Add(this.txtLeadIn);
|
|
this.groupBox10.Controls.Add(this.chkLeadOut);
|
|
this.groupBox10.Controls.Add(this.chkLeadIn);
|
|
this.groupBox10.Controls.Add(this.cmdLead);
|
|
this.groupBox10.Controls.Add(this.chkLeadKaraEmptyK);
|
|
this.groupBox10.Controls.Add(this.chkLeadKaraOnly);
|
|
resources.ApplyResources(this.groupBox10, "groupBox10");
|
|
this.groupBox10.Name = "groupBox10";
|
|
this.groupBox10.TabStop = false;
|
|
//
|
|
// txtLeadOut
|
|
//
|
|
resources.ApplyResources(this.txtLeadOut, "txtLeadOut");
|
|
this.txtLeadOut.Name = "txtLeadOut";
|
|
this.txtLeadOut.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// txtLeadIn
|
|
//
|
|
resources.ApplyResources(this.txtLeadIn, "txtLeadIn");
|
|
this.txtLeadIn.Name = "txtLeadIn";
|
|
this.txtLeadIn.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// chkLeadOut
|
|
//
|
|
resources.ApplyResources(this.chkLeadOut, "chkLeadOut");
|
|
this.chkLeadOut.Name = "chkLeadOut";
|
|
this.chkLeadOut.UseCompatibleTextRendering = true;
|
|
this.chkLeadOut.UseVisualStyleBackColor = true;
|
|
//
|
|
// chkLeadIn
|
|
//
|
|
resources.ApplyResources(this.chkLeadIn, "chkLeadIn");
|
|
this.chkLeadIn.Name = "chkLeadIn";
|
|
this.chkLeadIn.UseCompatibleTextRendering = true;
|
|
this.chkLeadIn.UseVisualStyleBackColor = true;
|
|
//
|
|
// cmdLead
|
|
//
|
|
resources.ApplyResources(this.cmdLead, "cmdLead");
|
|
this.cmdLead.Name = "cmdLead";
|
|
this.cmdLead.UseVisualStyleBackColor = true;
|
|
this.cmdLead.Click += new System.EventHandler(this.cmdLead_Click);
|
|
//
|
|
// chkLeadKaraEmptyK
|
|
//
|
|
resources.ApplyResources(this.chkLeadKaraEmptyK, "chkLeadKaraEmptyK");
|
|
this.chkLeadKaraEmptyK.Name = "chkLeadKaraEmptyK";
|
|
this.chkLeadKaraEmptyK.UseVisualStyleBackColor = true;
|
|
//
|
|
// chkLeadKaraOnly
|
|
//
|
|
resources.ApplyResources(this.chkLeadKaraOnly, "chkLeadKaraOnly");
|
|
this.chkLeadKaraOnly.Name = "chkLeadKaraOnly";
|
|
this.chkLeadKaraOnly.UseVisualStyleBackColor = true;
|
|
//
|
|
// groupBox6
|
|
//
|
|
this.groupBox6.Controls.Add(this.chkScalePlayRes);
|
|
this.groupBox6.Controls.Add(this.txtScaleYDenominator);
|
|
this.groupBox6.Controls.Add(this.label50);
|
|
this.groupBox6.Controls.Add(this.txtScaleYNumerator);
|
|
this.groupBox6.Controls.Add(this.label51);
|
|
this.groupBox6.Controls.Add(this.cmdScale);
|
|
this.groupBox6.Controls.Add(this.txtScaleXDenominator);
|
|
this.groupBox6.Controls.Add(this.label26);
|
|
this.groupBox6.Controls.Add(this.txtScaleXNumerator);
|
|
this.groupBox6.Controls.Add(this.label25);
|
|
resources.ApplyResources(this.groupBox6, "groupBox6");
|
|
this.groupBox6.Name = "groupBox6";
|
|
this.groupBox6.TabStop = false;
|
|
//
|
|
// chkScalePlayRes
|
|
//
|
|
resources.ApplyResources(this.chkScalePlayRes, "chkScalePlayRes");
|
|
this.chkScalePlayRes.Name = "chkScalePlayRes";
|
|
this.chkScalePlayRes.UseVisualStyleBackColor = true;
|
|
//
|
|
// txtScaleYDenominator
|
|
//
|
|
resources.ApplyResources(this.txtScaleYDenominator, "txtScaleYDenominator");
|
|
this.txtScaleYDenominator.Name = "txtScaleYDenominator";
|
|
//
|
|
// label50
|
|
//
|
|
resources.ApplyResources(this.label50, "label50");
|
|
this.label50.Name = "label50";
|
|
//
|
|
// txtScaleYNumerator
|
|
//
|
|
resources.ApplyResources(this.txtScaleYNumerator, "txtScaleYNumerator");
|
|
this.txtScaleYNumerator.Name = "txtScaleYNumerator";
|
|
//
|
|
// label51
|
|
//
|
|
resources.ApplyResources(this.label51, "label51");
|
|
this.label51.Name = "label51";
|
|
//
|
|
// cmdScale
|
|
//
|
|
resources.ApplyResources(this.cmdScale, "cmdScale");
|
|
this.cmdScale.Name = "cmdScale";
|
|
this.cmdScale.Click += new System.EventHandler(this.cmdScale_Click);
|
|
//
|
|
// txtScaleXDenominator
|
|
//
|
|
resources.ApplyResources(this.txtScaleXDenominator, "txtScaleXDenominator");
|
|
this.txtScaleXDenominator.Name = "txtScaleXDenominator";
|
|
//
|
|
// label26
|
|
//
|
|
resources.ApplyResources(this.label26, "label26");
|
|
this.label26.Name = "label26";
|
|
//
|
|
// txtScaleXNumerator
|
|
//
|
|
resources.ApplyResources(this.txtScaleXNumerator, "txtScaleXNumerator");
|
|
this.txtScaleXNumerator.Name = "txtScaleXNumerator";
|
|
//
|
|
// label25
|
|
//
|
|
resources.ApplyResources(this.label25, "label25");
|
|
this.label25.Name = "label25";
|
|
//
|
|
// groupBox5
|
|
//
|
|
this.groupBox5.Controls.Add(this.cmdLenBasedK);
|
|
this.groupBox5.Controls.Add(this.txtLenBasedKThreshold);
|
|
this.groupBox5.Controls.Add(this.label13);
|
|
resources.ApplyResources(this.groupBox5, "groupBox5");
|
|
this.groupBox5.Name = "groupBox5";
|
|
this.groupBox5.TabStop = false;
|
|
//
|
|
// cmdLenBasedK
|
|
//
|
|
resources.ApplyResources(this.cmdLenBasedK, "cmdLenBasedK");
|
|
this.cmdLenBasedK.Name = "cmdLenBasedK";
|
|
this.cmdLenBasedK.Click += new System.EventHandler(this.cmdLenBasedK_Click);
|
|
//
|
|
// txtLenBasedKThreshold
|
|
//
|
|
resources.ApplyResources(this.txtLenBasedKThreshold, "txtLenBasedKThreshold");
|
|
this.txtLenBasedKThreshold.Name = "txtLenBasedKThreshold";
|
|
//
|
|
// label13
|
|
//
|
|
resources.ApplyResources(this.label13, "label13");
|
|
this.label13.Name = "label13";
|
|
//
|
|
// tabPage3
|
|
//
|
|
this.tabPage3.Controls.Add(this.cmdAddEffect);
|
|
this.tabPage3.Controls.Add(this.treeKaraoke);
|
|
this.tabPage3.Controls.Add(this.cmdNewLayer);
|
|
this.tabPage3.Controls.Add(this.cmdKaraDel);
|
|
this.tabPage3.Controls.Add(this.cmdDoEffects);
|
|
this.tabPage3.Controls.Add(this.cmdKaraDup);
|
|
this.tabPage3.Controls.Add(this.panelEffect);
|
|
this.tabPage3.Controls.Add(this.panelLayer);
|
|
resources.ApplyResources(this.tabPage3, "tabPage3");
|
|
this.tabPage3.Name = "tabPage3";
|
|
this.tabPage3.UseVisualStyleBackColor = true;
|
|
//
|
|
// cmdAddEffect
|
|
//
|
|
resources.ApplyResources(this.cmdAddEffect, "cmdAddEffect");
|
|
this.cmdAddEffect.Name = "cmdAddEffect";
|
|
this.cmdAddEffect.Click += new System.EventHandler(this.cmdAddEffect_Click);
|
|
//
|
|
// treeKaraoke
|
|
//
|
|
this.treeKaraoke.AllowDrop = true;
|
|
this.treeKaraoke.CheckBoxes = true;
|
|
this.treeKaraoke.HideSelection = false;
|
|
resources.ApplyResources(this.treeKaraoke, "treeKaraoke");
|
|
this.treeKaraoke.ItemHeight = 18;
|
|
this.treeKaraoke.LabelEdit = true;
|
|
this.treeKaraoke.Name = "treeKaraoke";
|
|
this.treeKaraoke.ShowPlusMinus = false;
|
|
this.treeKaraoke.ShowRootLines = false;
|
|
this.treeKaraoke.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.treeKaraoke_AfterCheck);
|
|
this.treeKaraoke.DragDrop += new System.Windows.Forms.DragEventHandler(this.treeKaraoke_DragDrop);
|
|
this.treeKaraoke.AfterLabelEdit += new System.Windows.Forms.NodeLabelEditEventHandler(this.treeKaraoke_AfterLabelEdit);
|
|
this.treeKaraoke.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeKaraoke_AfterSelect);
|
|
this.treeKaraoke.DragEnter += new System.Windows.Forms.DragEventHandler(this.treeKaraoke_DragEnter);
|
|
this.treeKaraoke.ItemDrag += new System.Windows.Forms.ItemDragEventHandler(this.treeKaraoke_ItemDrag);
|
|
//
|
|
// cmdNewLayer
|
|
//
|
|
resources.ApplyResources(this.cmdNewLayer, "cmdNewLayer");
|
|
this.cmdNewLayer.Name = "cmdNewLayer";
|
|
this.cmdNewLayer.Click += new System.EventHandler(this.cmdNewLayer_Click);
|
|
//
|
|
// cmdKaraDel
|
|
//
|
|
resources.ApplyResources(this.cmdKaraDel, "cmdKaraDel");
|
|
this.cmdKaraDel.Name = "cmdKaraDel";
|
|
this.cmdKaraDel.Click += new System.EventHandler(this.cmdKaraDel_Click);
|
|
//
|
|
// cmdDoEffects
|
|
//
|
|
resources.ApplyResources(this.cmdDoEffects, "cmdDoEffects");
|
|
this.cmdDoEffects.Name = "cmdDoEffects";
|
|
this.cmdDoEffects.Click += new System.EventHandler(this.cmdDoEffects_Click);
|
|
//
|
|
// cmdKaraDup
|
|
//
|
|
resources.ApplyResources(this.cmdKaraDup, "cmdKaraDup");
|
|
this.cmdKaraDup.Name = "cmdKaraDup";
|
|
this.cmdKaraDup.Click += new System.EventHandler(this.cmdKaraDup_Click);
|
|
//
|
|
// panelEffect
|
|
//
|
|
this.panelEffect.Controls.Add(this.tabControl1);
|
|
resources.ApplyResources(this.panelEffect, "panelEffect");
|
|
this.panelEffect.Name = "panelEffect";
|
|
//
|
|
// tabControl1
|
|
//
|
|
this.tabControl1.Controls.Add(this.tabPage7);
|
|
this.tabControl1.Controls.Add(this.tabPage8);
|
|
resources.ApplyResources(this.tabControl1, "tabControl1");
|
|
this.tabControl1.Name = "tabControl1";
|
|
this.tabControl1.SelectedIndex = 0;
|
|
//
|
|
// tabPage7
|
|
//
|
|
this.tabPage7.Controls.Add(this.lstEffectOptions);
|
|
this.tabPage7.Controls.Add(this.label2);
|
|
resources.ApplyResources(this.tabPage7, "tabPage7");
|
|
this.tabPage7.Name = "tabPage7";
|
|
//
|
|
// lstEffectOptions
|
|
//
|
|
resources.ApplyResources(this.lstEffectOptions, "lstEffectOptions");
|
|
this.lstEffectOptions.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
|
this.lstoOptionName,
|
|
this.lstoOptionValue});
|
|
this.lstEffectOptions.FullRowSelect = true;
|
|
this.lstEffectOptions.GridLines = true;
|
|
this.lstEffectOptions.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
|
this.lstEffectOptions.MultiSelect = false;
|
|
this.lstEffectOptions.Name = "lstEffectOptions";
|
|
this.lstEffectOptions.UseCompatibleStateImageBehavior = false;
|
|
this.lstEffectOptions.View = System.Windows.Forms.View.Details;
|
|
this.lstEffectOptions.Click += new System.EventHandler(this.lstEffectOptions_Click);
|
|
//
|
|
// lstoOptionName
|
|
//
|
|
resources.ApplyResources(this.lstoOptionName, "lstoOptionName");
|
|
//
|
|
// lstoOptionValue
|
|
//
|
|
resources.ApplyResources(this.lstoOptionValue, "lstoOptionValue");
|
|
//
|
|
// label2
|
|
//
|
|
resources.ApplyResources(this.label2, "label2");
|
|
this.label2.Name = "label2";
|
|
//
|
|
// tabPage8
|
|
//
|
|
this.tabPage8.Controls.Add(this.lstEffectConditions);
|
|
this.tabPage8.Controls.Add(this.cmdDelEffectCondition);
|
|
this.tabPage8.Controls.Add(this.cmdAddEffectCondition);
|
|
resources.ApplyResources(this.tabPage8, "tabPage8");
|
|
this.tabPage8.Name = "tabPage8";
|
|
//
|
|
// lstEffectConditions
|
|
//
|
|
this.lstEffectConditions.AutoArrange = false;
|
|
this.lstEffectConditions.CheckBoxes = true;
|
|
this.lstEffectConditions.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
|
this.columnHeader1,
|
|
this.columnHeader2,
|
|
this.columnHeader3});
|
|
this.lstEffectConditions.FullRowSelect = true;
|
|
this.lstEffectConditions.GridLines = true;
|
|
this.lstEffectConditions.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
|
this.lstEffectConditions.HideSelection = false;
|
|
this.lstEffectConditions.LabelEdit = true;
|
|
resources.ApplyResources(this.lstEffectConditions, "lstEffectConditions");
|
|
this.lstEffectConditions.MultiSelect = false;
|
|
this.lstEffectConditions.Name = "lstEffectConditions";
|
|
this.lstEffectConditions.UseCompatibleStateImageBehavior = false;
|
|
this.lstEffectConditions.View = System.Windows.Forms.View.Details;
|
|
this.lstEffectConditions.SubItemClicked += new SSATool.ListViewES.LabelSubEditEventHandler(this.lstEffectConditions_SubItemClicked);
|
|
this.lstEffectConditions.SubItemEndEditing += new SSATool.ListViewES.LabelSubEditEndEventHandler(this.lstEffectConditions_SubItemEndEditing);
|
|
//
|
|
// columnHeader1
|
|
//
|
|
resources.ApplyResources(this.columnHeader1, "columnHeader1");
|
|
//
|
|
// columnHeader2
|
|
//
|
|
resources.ApplyResources(this.columnHeader2, "columnHeader2");
|
|
//
|
|
// columnHeader3
|
|
//
|
|
resources.ApplyResources(this.columnHeader3, "columnHeader3");
|
|
//
|
|
// cmdDelEffectCondition
|
|
//
|
|
resources.ApplyResources(this.cmdDelEffectCondition, "cmdDelEffectCondition");
|
|
this.cmdDelEffectCondition.Name = "cmdDelEffectCondition";
|
|
this.cmdDelEffectCondition.Click += new System.EventHandler(this.cmdDelEffectCondition_Click);
|
|
//
|
|
// cmdAddEffectCondition
|
|
//
|
|
resources.ApplyResources(this.cmdAddEffectCondition, "cmdAddEffectCondition");
|
|
this.cmdAddEffectCondition.Name = "cmdAddEffectCondition";
|
|
this.cmdAddEffectCondition.Click += new System.EventHandler(this.cmdAddEffectCondition_Click);
|
|
//
|
|
// panelLayer
|
|
//
|
|
this.panelLayer.Controls.Add(this.chkSyllablePerLine);
|
|
this.panelLayer.Controls.Add(this.groupBox16);
|
|
this.panelLayer.Controls.Add(this.textLayerRepetitions);
|
|
this.panelLayer.Controls.Add(this.label49);
|
|
this.panelLayer.Controls.Add(this.chkAddOnce);
|
|
this.panelLayer.Controls.Add(this.chkAddAnyway);
|
|
this.panelLayer.Controls.Add(this.chkLayerPerSyllable);
|
|
this.panelLayer.Controls.Add(this.cmdDelLayerCondition);
|
|
this.panelLayer.Controls.Add(this.cmdNewLayerCondition);
|
|
this.panelLayer.Controls.Add(this.lstLayerConditions);
|
|
resources.ApplyResources(this.panelLayer, "panelLayer");
|
|
this.panelLayer.Name = "panelLayer";
|
|
//
|
|
// chkSyllablePerLine
|
|
//
|
|
resources.ApplyResources(this.chkSyllablePerLine, "chkSyllablePerLine");
|
|
this.chkSyllablePerLine.Name = "chkSyllablePerLine";
|
|
this.chkSyllablePerLine.UseVisualStyleBackColor = true;
|
|
this.chkSyllablePerLine.CheckedChanged += new System.EventHandler(this.chkSyllablePerLine_CheckedChanged);
|
|
//
|
|
// groupBox16
|
|
//
|
|
this.groupBox16.Controls.Add(this.chkKaraAddText);
|
|
this.groupBox16.Controls.Add(this.chkKaraAddClosingBracket);
|
|
this.groupBox16.Controls.Add(this.chkKaraAddASSA);
|
|
this.groupBox16.Controls.Add(this.chkKaraAddK);
|
|
resources.ApplyResources(this.groupBox16, "groupBox16");
|
|
this.groupBox16.Name = "groupBox16";
|
|
this.groupBox16.TabStop = false;
|
|
//
|
|
// chkKaraAddText
|
|
//
|
|
resources.ApplyResources(this.chkKaraAddText, "chkKaraAddText");
|
|
this.chkKaraAddText.Checked = true;
|
|
this.chkKaraAddText.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
this.chkKaraAddText.Name = "chkKaraAddText";
|
|
this.chkKaraAddText.UseVisualStyleBackColor = true;
|
|
this.chkKaraAddText.CheckedChanged += new System.EventHandler(this.chkKaraAddText_CheckedChanged);
|
|
//
|
|
// chkKaraAddClosingBracket
|
|
//
|
|
resources.ApplyResources(this.chkKaraAddClosingBracket, "chkKaraAddClosingBracket");
|
|
this.chkKaraAddClosingBracket.Checked = true;
|
|
this.chkKaraAddClosingBracket.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
this.chkKaraAddClosingBracket.Name = "chkKaraAddClosingBracket";
|
|
this.chkKaraAddClosingBracket.UseVisualStyleBackColor = true;
|
|
this.chkKaraAddClosingBracket.CheckedChanged += new System.EventHandler(this.chkKaraAddClosingBracket_CheckedChanged);
|
|
//
|
|
// chkKaraAddASSA
|
|
//
|
|
resources.ApplyResources(this.chkKaraAddASSA, "chkKaraAddASSA");
|
|
this.chkKaraAddASSA.Checked = true;
|
|
this.chkKaraAddASSA.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
this.chkKaraAddASSA.Name = "chkKaraAddASSA";
|
|
this.chkKaraAddASSA.UseVisualStyleBackColor = true;
|
|
this.chkKaraAddASSA.CheckedChanged += new System.EventHandler(this.chkKaraAddASSA_CheckedChanged);
|
|
//
|
|
// chkKaraAddK
|
|
//
|
|
resources.ApplyResources(this.chkKaraAddK, "chkKaraAddK");
|
|
this.chkKaraAddK.Checked = true;
|
|
this.chkKaraAddK.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
this.chkKaraAddK.Name = "chkKaraAddK";
|
|
this.chkKaraAddK.UseVisualStyleBackColor = true;
|
|
this.chkKaraAddK.CheckedChanged += new System.EventHandler(this.chkKaraAddK_CheckedChanged);
|
|
//
|
|
// textLayerRepetitions
|
|
//
|
|
resources.ApplyResources(this.textLayerRepetitions, "textLayerRepetitions");
|
|
this.textLayerRepetitions.Name = "textLayerRepetitions";
|
|
this.textLayerRepetitions.Leave += new System.EventHandler(this.textLayerRepetitions_Leave);
|
|
this.textLayerRepetitions.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textLayerRepetitions_KeyPress);
|
|
//
|
|
// label49
|
|
//
|
|
resources.ApplyResources(this.label49, "label49");
|
|
this.label49.Name = "label49";
|
|
this.label49.UseCompatibleTextRendering = true;
|
|
//
|
|
// chkAddOnce
|
|
//
|
|
resources.ApplyResources(this.chkAddOnce, "chkAddOnce");
|
|
this.chkAddOnce.Name = "chkAddOnce";
|
|
this.chkAddOnce.UseCompatibleTextRendering = true;
|
|
this.chkAddOnce.CheckedChanged += new System.EventHandler(this.chkAddOnce_CheckedChanged);
|
|
//
|
|
// chkAddAnyway
|
|
//
|
|
resources.ApplyResources(this.chkAddAnyway, "chkAddAnyway");
|
|
this.chkAddAnyway.Name = "chkAddAnyway";
|
|
this.chkAddAnyway.UseCompatibleTextRendering = true;
|
|
this.chkAddAnyway.CheckedChanged += new System.EventHandler(this.chkAddAnyway_CheckedChanged);
|
|
//
|
|
// chkLayerPerSyllable
|
|
//
|
|
resources.ApplyResources(this.chkLayerPerSyllable, "chkLayerPerSyllable");
|
|
this.chkLayerPerSyllable.Name = "chkLayerPerSyllable";
|
|
this.chkLayerPerSyllable.UseCompatibleTextRendering = true;
|
|
this.chkLayerPerSyllable.CheckedChanged += new System.EventHandler(this.chkLayerPerSyllable_CheckedChanged);
|
|
//
|
|
// cmdDelLayerCondition
|
|
//
|
|
resources.ApplyResources(this.cmdDelLayerCondition, "cmdDelLayerCondition");
|
|
this.cmdDelLayerCondition.Name = "cmdDelLayerCondition";
|
|
this.cmdDelLayerCondition.Click += new System.EventHandler(this.cmdDelLayerCondition_Click);
|
|
//
|
|
// cmdNewLayerCondition
|
|
//
|
|
resources.ApplyResources(this.cmdNewLayerCondition, "cmdNewLayerCondition");
|
|
this.cmdNewLayerCondition.Name = "cmdNewLayerCondition";
|
|
this.cmdNewLayerCondition.Click += new System.EventHandler(this.cmdNewLayerCondition_Click);
|
|
//
|
|
// lstLayerConditions
|
|
//
|
|
this.lstLayerConditions.AutoArrange = false;
|
|
this.lstLayerConditions.CheckBoxes = true;
|
|
this.lstLayerConditions.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
|
this.columnHeader4,
|
|
this.columnHeader5,
|
|
this.columnHeader6});
|
|
resources.ApplyResources(this.lstLayerConditions, "lstLayerConditions");
|
|
this.lstLayerConditions.FullRowSelect = true;
|
|
this.lstLayerConditions.GridLines = true;
|
|
this.lstLayerConditions.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
|
this.lstLayerConditions.HideSelection = false;
|
|
this.lstLayerConditions.LabelEdit = true;
|
|
this.lstLayerConditions.MultiSelect = false;
|
|
this.lstLayerConditions.Name = "lstLayerConditions";
|
|
this.lstLayerConditions.UseCompatibleStateImageBehavior = false;
|
|
this.lstLayerConditions.View = System.Windows.Forms.View.Details;
|
|
this.lstLayerConditions.SubItemClicked += new SSATool.ListViewES.LabelSubEditEventHandler(this.lstLayerConditions_SubItemClicked);
|
|
this.lstLayerConditions.ItemCheck += new System.Windows.Forms.ItemCheckEventHandler(this.lstLayerConditions_ItemCheck);
|
|
this.lstLayerConditions.SubItemEndEditing += new SSATool.ListViewES.LabelSubEditEndEventHandler(this.lstLayerConditions_SubItemEndEditing);
|
|
//
|
|
// columnHeader4
|
|
//
|
|
resources.ApplyResources(this.columnHeader4, "columnHeader4");
|
|
//
|
|
// columnHeader5
|
|
//
|
|
resources.ApplyResources(this.columnHeader5, "columnHeader5");
|
|
//
|
|
// columnHeader6
|
|
//
|
|
resources.ApplyResources(this.columnHeader6, "columnHeader6");
|
|
//
|
|
// tabPage4
|
|
//
|
|
this.tabPage4.Controls.Add(this.label17);
|
|
this.tabPage4.Controls.Add(this.panelGradient);
|
|
this.tabPage4.Controls.Add(this.label16);
|
|
this.tabPage4.Controls.Add(this.label18);
|
|
this.tabPage4.Controls.Add(this.label15);
|
|
this.tabPage4.Controls.Add(this.label14);
|
|
this.tabPage4.Controls.Add(this.cmdGradMoveBefore);
|
|
this.tabPage4.Controls.Add(this.txtGradOut);
|
|
this.tabPage4.Controls.Add(this.txtGradIn);
|
|
this.tabPage4.Controls.Add(this.txtGradBefore);
|
|
resources.ApplyResources(this.tabPage4, "tabPage4");
|
|
this.tabPage4.Name = "tabPage4";
|
|
this.tabPage4.UseVisualStyleBackColor = true;
|
|
//
|
|
// label17
|
|
//
|
|
resources.ApplyResources(this.label17, "label17");
|
|
this.label17.Name = "label17";
|
|
//
|
|
// panelGradient
|
|
//
|
|
this.panelGradient.Controls.Add(this.txtGradCLines);
|
|
this.panelGradient.Controls.Add(this.cmdGradDoGrad);
|
|
this.panelGradient.Controls.Add(this.groupBox7);
|
|
this.panelGradient.Controls.Add(this.cmdGradReplaceLine);
|
|
this.panelGradient.Controls.Add(this.txtGradMirror);
|
|
this.panelGradient.Controls.Add(this.cmdGradInsertAfter);
|
|
this.panelGradient.Controls.Add(this.label33);
|
|
this.panelGradient.Controls.Add(this.cmdGradInsertBefore);
|
|
this.panelGradient.Controls.Add(this.label37);
|
|
this.panelGradient.Controls.Add(this.label19);
|
|
this.panelGradient.Controls.Add(this.txtGradBase);
|
|
this.panelGradient.Controls.Add(this.label20);
|
|
this.panelGradient.Controls.Add(this.chkGrad4c);
|
|
this.panelGradient.Controls.Add(this.label21);
|
|
this.panelGradient.Controls.Add(this.chkGrad3c);
|
|
this.panelGradient.Controls.Add(this.label22);
|
|
this.panelGradient.Controls.Add(this.chkGrad2c);
|
|
this.panelGradient.Controls.Add(this.label23);
|
|
this.panelGradient.Controls.Add(this.chkGrad1c);
|
|
this.panelGradient.Controls.Add(this.label24);
|
|
this.panelGradient.Controls.Add(this.txtGradStartPos);
|
|
this.panelGradient.Controls.Add(this.cmdGradListToInput);
|
|
this.panelGradient.Controls.Add(this.txtGradEndPos);
|
|
this.panelGradient.Controls.Add(this.txtGradEndBGR);
|
|
this.panelGradient.Controls.Add(this.txtGradOffset);
|
|
this.panelGradient.Controls.Add(this.txtGradStartBGR);
|
|
resources.ApplyResources(this.panelGradient, "panelGradient");
|
|
this.panelGradient.Name = "panelGradient";
|
|
//
|
|
// txtGradCLines
|
|
//
|
|
resources.ApplyResources(this.txtGradCLines, "txtGradCLines");
|
|
this.txtGradCLines.Name = "txtGradCLines";
|
|
//
|
|
// cmdGradDoGrad
|
|
//
|
|
resources.ApplyResources(this.cmdGradDoGrad, "cmdGradDoGrad");
|
|
this.cmdGradDoGrad.Name = "cmdGradDoGrad";
|
|
this.cmdGradDoGrad.Click += new System.EventHandler(this.cmdGradDoGrad_Click);
|
|
//
|
|
// groupBox7
|
|
//
|
|
this.groupBox7.Controls.Add(this.radGradExp);
|
|
this.groupBox7.Controls.Add(this.radGradLog);
|
|
this.groupBox7.Controls.Add(this.radGradPoly);
|
|
resources.ApplyResources(this.groupBox7, "groupBox7");
|
|
this.groupBox7.Name = "groupBox7";
|
|
this.groupBox7.TabStop = false;
|
|
//
|
|
// radGradExp
|
|
//
|
|
resources.ApplyResources(this.radGradExp, "radGradExp");
|
|
this.radGradExp.Name = "radGradExp";
|
|
this.radGradExp.UseCompatibleTextRendering = true;
|
|
//
|
|
// radGradLog
|
|
//
|
|
resources.ApplyResources(this.radGradLog, "radGradLog");
|
|
this.radGradLog.Name = "radGradLog";
|
|
this.radGradLog.UseCompatibleTextRendering = true;
|
|
//
|
|
// radGradPoly
|
|
//
|
|
this.radGradPoly.Checked = true;
|
|
resources.ApplyResources(this.radGradPoly, "radGradPoly");
|
|
this.radGradPoly.Name = "radGradPoly";
|
|
this.radGradPoly.TabStop = true;
|
|
this.radGradPoly.UseCompatibleTextRendering = true;
|
|
//
|
|
// cmdGradReplaceLine
|
|
//
|
|
resources.ApplyResources(this.cmdGradReplaceLine, "cmdGradReplaceLine");
|
|
this.cmdGradReplaceLine.Name = "cmdGradReplaceLine";
|
|
this.cmdGradReplaceLine.UseCompatibleTextRendering = true;
|
|
this.cmdGradReplaceLine.Click += new System.EventHandler(this.cmdGradReplaceLine_Click);
|
|
//
|
|
// txtGradMirror
|
|
//
|
|
resources.ApplyResources(this.txtGradMirror, "txtGradMirror");
|
|
this.txtGradMirror.Name = "txtGradMirror";
|
|
//
|
|
// cmdGradInsertAfter
|
|
//
|
|
resources.ApplyResources(this.cmdGradInsertAfter, "cmdGradInsertAfter");
|
|
this.cmdGradInsertAfter.Name = "cmdGradInsertAfter";
|
|
this.cmdGradInsertAfter.UseCompatibleTextRendering = true;
|
|
this.cmdGradInsertAfter.Click += new System.EventHandler(this.cmdGradInsertAfter_Click);
|
|
//
|
|
// label33
|
|
//
|
|
resources.ApplyResources(this.label33, "label33");
|
|
this.label33.Name = "label33";
|
|
//
|
|
// cmdGradInsertBefore
|
|
//
|
|
resources.ApplyResources(this.cmdGradInsertBefore, "cmdGradInsertBefore");
|
|
this.cmdGradInsertBefore.Name = "cmdGradInsertBefore";
|
|
this.cmdGradInsertBefore.UseCompatibleTextRendering = true;
|
|
this.cmdGradInsertBefore.Click += new System.EventHandler(this.cmdGradInsertBefore_Click);
|
|
//
|
|
// label37
|
|
//
|
|
resources.ApplyResources(this.label37, "label37");
|
|
this.label37.Name = "label37";
|
|
//
|
|
// label19
|
|
//
|
|
resources.ApplyResources(this.label19, "label19");
|
|
this.label19.Name = "label19";
|
|
//
|
|
// txtGradBase
|
|
//
|
|
resources.ApplyResources(this.txtGradBase, "txtGradBase");
|
|
this.txtGradBase.Name = "txtGradBase";
|
|
//
|
|
// label20
|
|
//
|
|
resources.ApplyResources(this.label20, "label20");
|
|
this.label20.Name = "label20";
|
|
//
|
|
// chkGrad4c
|
|
//
|
|
resources.ApplyResources(this.chkGrad4c, "chkGrad4c");
|
|
this.chkGrad4c.Name = "chkGrad4c";
|
|
//
|
|
// label21
|
|
//
|
|
resources.ApplyResources(this.label21, "label21");
|
|
this.label21.Name = "label21";
|
|
//
|
|
// chkGrad3c
|
|
//
|
|
resources.ApplyResources(this.chkGrad3c, "chkGrad3c");
|
|
this.chkGrad3c.Name = "chkGrad3c";
|
|
//
|
|
// label22
|
|
//
|
|
resources.ApplyResources(this.label22, "label22");
|
|
this.label22.Name = "label22";
|
|
//
|
|
// chkGrad2c
|
|
//
|
|
resources.ApplyResources(this.chkGrad2c, "chkGrad2c");
|
|
this.chkGrad2c.Name = "chkGrad2c";
|
|
//
|
|
// label23
|
|
//
|
|
resources.ApplyResources(this.label23, "label23");
|
|
this.label23.Name = "label23";
|
|
//
|
|
// chkGrad1c
|
|
//
|
|
this.chkGrad1c.Checked = true;
|
|
this.chkGrad1c.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkGrad1c, "chkGrad1c");
|
|
this.chkGrad1c.Name = "chkGrad1c";
|
|
//
|
|
// label24
|
|
//
|
|
resources.ApplyResources(this.label24, "label24");
|
|
this.label24.Name = "label24";
|
|
//
|
|
// txtGradStartPos
|
|
//
|
|
resources.ApplyResources(this.txtGradStartPos, "txtGradStartPos");
|
|
this.txtGradStartPos.Name = "txtGradStartPos";
|
|
//
|
|
// cmdGradListToInput
|
|
//
|
|
resources.ApplyResources(this.cmdGradListToInput, "cmdGradListToInput");
|
|
this.cmdGradListToInput.Name = "cmdGradListToInput";
|
|
this.cmdGradListToInput.UseCompatibleTextRendering = true;
|
|
this.cmdGradListToInput.Click += new System.EventHandler(this.cmdGradListToInput_Click);
|
|
//
|
|
// txtGradEndPos
|
|
//
|
|
resources.ApplyResources(this.txtGradEndPos, "txtGradEndPos");
|
|
this.txtGradEndPos.Name = "txtGradEndPos";
|
|
//
|
|
// txtGradEndBGR
|
|
//
|
|
resources.ApplyResources(this.txtGradEndBGR, "txtGradEndBGR");
|
|
this.txtGradEndBGR.Name = "txtGradEndBGR";
|
|
//
|
|
// txtGradOffset
|
|
//
|
|
resources.ApplyResources(this.txtGradOffset, "txtGradOffset");
|
|
this.txtGradOffset.Name = "txtGradOffset";
|
|
//
|
|
// txtGradStartBGR
|
|
//
|
|
resources.ApplyResources(this.txtGradStartBGR, "txtGradStartBGR");
|
|
this.txtGradStartBGR.Name = "txtGradStartBGR";
|
|
//
|
|
// label16
|
|
//
|
|
resources.ApplyResources(this.label16, "label16");
|
|
this.label16.Name = "label16";
|
|
//
|
|
// label18
|
|
//
|
|
resources.ApplyResources(this.label18, "label18");
|
|
this.label18.Name = "label18";
|
|
//
|
|
// label15
|
|
//
|
|
resources.ApplyResources(this.label15, "label15");
|
|
this.label15.Name = "label15";
|
|
//
|
|
// label14
|
|
//
|
|
resources.ApplyResources(this.label14, "label14");
|
|
this.label14.Name = "label14";
|
|
//
|
|
// cmdGradMoveBefore
|
|
//
|
|
resources.ApplyResources(this.cmdGradMoveBefore, "cmdGradMoveBefore");
|
|
this.cmdGradMoveBefore.Name = "cmdGradMoveBefore";
|
|
this.cmdGradMoveBefore.UseCompatibleTextRendering = true;
|
|
this.cmdGradMoveBefore.UseMnemonic = false;
|
|
this.cmdGradMoveBefore.Click += new System.EventHandler(this.cmdGradMoveBefore_Click);
|
|
//
|
|
// txtGradOut
|
|
//
|
|
this.txtGradOut.AcceptsReturn = true;
|
|
resources.ApplyResources(this.txtGradOut, "txtGradOut");
|
|
this.txtGradOut.Name = "txtGradOut";
|
|
//
|
|
// txtGradIn
|
|
//
|
|
resources.ApplyResources(this.txtGradIn, "txtGradIn");
|
|
this.txtGradIn.Name = "txtGradIn";
|
|
//
|
|
// txtGradBefore
|
|
//
|
|
resources.ApplyResources(this.txtGradBefore, "txtGradBefore");
|
|
this.txtGradBefore.Name = "txtGradBefore";
|
|
//
|
|
// tabPage14
|
|
//
|
|
this.tabPage14.Controls.Add(this.panelBlur);
|
|
this.tabPage14.Controls.Add(this.cmdBlurMoveBefore);
|
|
this.tabPage14.Controls.Add(this.label35);
|
|
this.tabPage14.Controls.Add(this.txtBlurBefore);
|
|
this.tabPage14.Controls.Add(this.label32);
|
|
this.tabPage14.Controls.Add(this.label31);
|
|
this.tabPage14.Controls.Add(this.txtBlurOut);
|
|
this.tabPage14.Controls.Add(this.txtBlurIn);
|
|
resources.ApplyResources(this.tabPage14, "tabPage14");
|
|
this.tabPage14.Name = "tabPage14";
|
|
this.tabPage14.UseVisualStyleBackColor = true;
|
|
//
|
|
// panelBlur
|
|
//
|
|
this.panelBlur.Controls.Add(this.groupBlurAffect);
|
|
this.panelBlur.Controls.Add(this.label42);
|
|
this.panelBlur.Controls.Add(this.label28);
|
|
this.panelBlur.Controls.Add(this.txtBlurRadV);
|
|
this.panelBlur.Controls.Add(this.txtBlurLines);
|
|
this.panelBlur.Controls.Add(this.label29);
|
|
this.panelBlur.Controls.Add(this.groupBox9);
|
|
this.panelBlur.Controls.Add(this.label30);
|
|
this.panelBlur.Controls.Add(this.groupBlurSub);
|
|
this.panelBlur.Controls.Add(this.txtBlurStartAlpha);
|
|
this.panelBlur.Controls.Add(this.label38);
|
|
this.panelBlur.Controls.Add(this.txtBlurEndAlpha);
|
|
this.panelBlur.Controls.Add(this.txtBlurBase);
|
|
this.panelBlur.Controls.Add(this.cmdDoBlur);
|
|
this.panelBlur.Controls.Add(this.txtBlurPos);
|
|
this.panelBlur.Controls.Add(this.groupBox8);
|
|
this.panelBlur.Controls.Add(this.label36);
|
|
this.panelBlur.Controls.Add(this.label34);
|
|
this.panelBlur.Controls.Add(this.cmdBlurListToInput);
|
|
this.panelBlur.Controls.Add(this.txtBlurRadH);
|
|
this.panelBlur.Controls.Add(this.cmdBlurInsertBefore);
|
|
this.panelBlur.Controls.Add(this.cmdBlurReplaceLine);
|
|
this.panelBlur.Controls.Add(this.cmdBlurInsertAfter);
|
|
resources.ApplyResources(this.panelBlur, "panelBlur");
|
|
this.panelBlur.Name = "panelBlur";
|
|
//
|
|
// groupBlurAffect
|
|
//
|
|
this.groupBlurAffect.Controls.Add(this.chkBlur4a);
|
|
this.groupBlurAffect.Controls.Add(this.chkBlur3a);
|
|
this.groupBlurAffect.Controls.Add(this.chkBlur2a);
|
|
this.groupBlurAffect.Controls.Add(this.chkBlur1a);
|
|
resources.ApplyResources(this.groupBlurAffect, "groupBlurAffect");
|
|
this.groupBlurAffect.Name = "groupBlurAffect";
|
|
this.groupBlurAffect.TabStop = false;
|
|
//
|
|
// chkBlur4a
|
|
//
|
|
resources.ApplyResources(this.chkBlur4a, "chkBlur4a");
|
|
this.chkBlur4a.Name = "chkBlur4a";
|
|
this.chkBlur4a.UseCompatibleTextRendering = true;
|
|
//
|
|
// chkBlur3a
|
|
//
|
|
this.chkBlur3a.Checked = true;
|
|
this.chkBlur3a.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkBlur3a, "chkBlur3a");
|
|
this.chkBlur3a.Name = "chkBlur3a";
|
|
this.chkBlur3a.UseCompatibleTextRendering = true;
|
|
//
|
|
// chkBlur2a
|
|
//
|
|
resources.ApplyResources(this.chkBlur2a, "chkBlur2a");
|
|
this.chkBlur2a.Name = "chkBlur2a";
|
|
this.chkBlur2a.UseCompatibleTextRendering = true;
|
|
//
|
|
// chkBlur1a
|
|
//
|
|
resources.ApplyResources(this.chkBlur1a, "chkBlur1a");
|
|
this.chkBlur1a.Name = "chkBlur1a";
|
|
this.chkBlur1a.UseCompatibleTextRendering = true;
|
|
//
|
|
// label42
|
|
//
|
|
resources.ApplyResources(this.label42, "label42");
|
|
this.label42.Name = "label42";
|
|
//
|
|
// label28
|
|
//
|
|
resources.ApplyResources(this.label28, "label28");
|
|
this.label28.Name = "label28";
|
|
//
|
|
// txtBlurRadV
|
|
//
|
|
resources.ApplyResources(this.txtBlurRadV, "txtBlurRadV");
|
|
this.txtBlurRadV.Name = "txtBlurRadV";
|
|
//
|
|
// txtBlurLines
|
|
//
|
|
resources.ApplyResources(this.txtBlurLines, "txtBlurLines");
|
|
this.txtBlurLines.Name = "txtBlurLines";
|
|
//
|
|
// label29
|
|
//
|
|
resources.ApplyResources(this.label29, "label29");
|
|
this.label29.Name = "label29";
|
|
//
|
|
// groupBox9
|
|
//
|
|
this.groupBox9.Controls.Add(this.radBlurExp);
|
|
this.groupBox9.Controls.Add(this.radBlurLog);
|
|
this.groupBox9.Controls.Add(this.radBlurPoly);
|
|
resources.ApplyResources(this.groupBox9, "groupBox9");
|
|
this.groupBox9.Name = "groupBox9";
|
|
this.groupBox9.TabStop = false;
|
|
//
|
|
// radBlurExp
|
|
//
|
|
resources.ApplyResources(this.radBlurExp, "radBlurExp");
|
|
this.radBlurExp.Name = "radBlurExp";
|
|
this.radBlurExp.UseCompatibleTextRendering = true;
|
|
//
|
|
// radBlurLog
|
|
//
|
|
resources.ApplyResources(this.radBlurLog, "radBlurLog");
|
|
this.radBlurLog.Name = "radBlurLog";
|
|
this.radBlurLog.UseCompatibleTextRendering = true;
|
|
//
|
|
// radBlurPoly
|
|
//
|
|
this.radBlurPoly.Checked = true;
|
|
resources.ApplyResources(this.radBlurPoly, "radBlurPoly");
|
|
this.radBlurPoly.Name = "radBlurPoly";
|
|
this.radBlurPoly.TabStop = true;
|
|
this.radBlurPoly.UseCompatibleTextRendering = true;
|
|
//
|
|
// label30
|
|
//
|
|
resources.ApplyResources(this.label30, "label30");
|
|
this.label30.Name = "label30";
|
|
//
|
|
// groupBlurSub
|
|
//
|
|
this.groupBlurSub.Controls.Add(this.chkBlur2aSub);
|
|
this.groupBlurSub.Controls.Add(this.chkBlur4aSub);
|
|
this.groupBlurSub.Controls.Add(this.chkBlur3aSub);
|
|
this.groupBlurSub.Controls.Add(this.chkBlur1aSub);
|
|
resources.ApplyResources(this.groupBlurSub, "groupBlurSub");
|
|
this.groupBlurSub.Name = "groupBlurSub";
|
|
this.groupBlurSub.TabStop = false;
|
|
//
|
|
// chkBlur2aSub
|
|
//
|
|
this.chkBlur2aSub.Checked = true;
|
|
this.chkBlur2aSub.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkBlur2aSub, "chkBlur2aSub");
|
|
this.chkBlur2aSub.Name = "chkBlur2aSub";
|
|
this.chkBlur2aSub.UseCompatibleTextRendering = true;
|
|
//
|
|
// chkBlur4aSub
|
|
//
|
|
this.chkBlur4aSub.Checked = true;
|
|
this.chkBlur4aSub.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkBlur4aSub, "chkBlur4aSub");
|
|
this.chkBlur4aSub.Name = "chkBlur4aSub";
|
|
this.chkBlur4aSub.UseCompatibleTextRendering = true;
|
|
//
|
|
// chkBlur3aSub
|
|
//
|
|
resources.ApplyResources(this.chkBlur3aSub, "chkBlur3aSub");
|
|
this.chkBlur3aSub.Name = "chkBlur3aSub";
|
|
this.chkBlur3aSub.UseCompatibleTextRendering = true;
|
|
//
|
|
// chkBlur1aSub
|
|
//
|
|
this.chkBlur1aSub.Checked = true;
|
|
this.chkBlur1aSub.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
resources.ApplyResources(this.chkBlur1aSub, "chkBlur1aSub");
|
|
this.chkBlur1aSub.Name = "chkBlur1aSub";
|
|
this.chkBlur1aSub.UseCompatibleTextRendering = true;
|
|
//
|
|
// txtBlurStartAlpha
|
|
//
|
|
resources.ApplyResources(this.txtBlurStartAlpha, "txtBlurStartAlpha");
|
|
this.txtBlurStartAlpha.Name = "txtBlurStartAlpha";
|
|
//
|
|
// label38
|
|
//
|
|
resources.ApplyResources(this.label38, "label38");
|
|
this.label38.Name = "label38";
|
|
//
|
|
// txtBlurEndAlpha
|
|
//
|
|
resources.ApplyResources(this.txtBlurEndAlpha, "txtBlurEndAlpha");
|
|
this.txtBlurEndAlpha.Name = "txtBlurEndAlpha";
|
|
//
|
|
// txtBlurBase
|
|
//
|
|
resources.ApplyResources(this.txtBlurBase, "txtBlurBase");
|
|
this.txtBlurBase.Name = "txtBlurBase";
|
|
//
|
|
// cmdDoBlur
|
|
//
|
|
resources.ApplyResources(this.cmdDoBlur, "cmdDoBlur");
|
|
this.cmdDoBlur.Name = "cmdDoBlur";
|
|
this.cmdDoBlur.Click += new System.EventHandler(this.cmdDoBlur_Click);
|
|
//
|
|
// txtBlurPos
|
|
//
|
|
resources.ApplyResources(this.txtBlurPos, "txtBlurPos");
|
|
this.txtBlurPos.Name = "txtBlurPos";
|
|
//
|
|
// groupBox8
|
|
//
|
|
this.groupBox8.Controls.Add(this.radBlurGlow);
|
|
this.groupBox8.Controls.Add(this.radBlurHV);
|
|
resources.ApplyResources(this.groupBox8, "groupBox8");
|
|
this.groupBox8.Name = "groupBox8";
|
|
this.groupBox8.TabStop = false;
|
|
//
|
|
// radBlurGlow
|
|
//
|
|
resources.ApplyResources(this.radBlurGlow, "radBlurGlow");
|
|
this.radBlurGlow.Name = "radBlurGlow";
|
|
this.radBlurGlow.UseCompatibleTextRendering = true;
|
|
this.radBlurGlow.CheckedChanged += new System.EventHandler(this.radBlurGlow_CheckedChanged);
|
|
//
|
|
// radBlurHV
|
|
//
|
|
this.radBlurHV.Checked = true;
|
|
resources.ApplyResources(this.radBlurHV, "radBlurHV");
|
|
this.radBlurHV.Name = "radBlurHV";
|
|
this.radBlurHV.TabStop = true;
|
|
this.radBlurHV.UseCompatibleTextRendering = true;
|
|
this.radBlurHV.CheckedChanged += new System.EventHandler(this.radBlurHV_CheckedChanged);
|
|
//
|
|
// label36
|
|
//
|
|
resources.ApplyResources(this.label36, "label36");
|
|
this.label36.Name = "label36";
|
|
//
|
|
// label34
|
|
//
|
|
resources.ApplyResources(this.label34, "label34");
|
|
this.label34.Name = "label34";
|
|
//
|
|
// cmdBlurListToInput
|
|
//
|
|
resources.ApplyResources(this.cmdBlurListToInput, "cmdBlurListToInput");
|
|
this.cmdBlurListToInput.Name = "cmdBlurListToInput";
|
|
this.cmdBlurListToInput.Click += new System.EventHandler(this.cmdBlurListToInput_Click);
|
|
//
|
|
// txtBlurRadH
|
|
//
|
|
resources.ApplyResources(this.txtBlurRadH, "txtBlurRadH");
|
|
this.txtBlurRadH.Name = "txtBlurRadH";
|
|
//
|
|
// cmdBlurInsertBefore
|
|
//
|
|
resources.ApplyResources(this.cmdBlurInsertBefore, "cmdBlurInsertBefore");
|
|
this.cmdBlurInsertBefore.Name = "cmdBlurInsertBefore";
|
|
this.cmdBlurInsertBefore.Click += new System.EventHandler(this.cmdBlurInsertBefore_Click);
|
|
//
|
|
// cmdBlurReplaceLine
|
|
//
|
|
resources.ApplyResources(this.cmdBlurReplaceLine, "cmdBlurReplaceLine");
|
|
this.cmdBlurReplaceLine.Name = "cmdBlurReplaceLine";
|
|
this.cmdBlurReplaceLine.Click += new System.EventHandler(this.cmdBlurReplaceLine_Click);
|
|
//
|
|
// cmdBlurInsertAfter
|
|
//
|
|
resources.ApplyResources(this.cmdBlurInsertAfter, "cmdBlurInsertAfter");
|
|
this.cmdBlurInsertAfter.Name = "cmdBlurInsertAfter";
|
|
this.cmdBlurInsertAfter.Click += new System.EventHandler(this.cmdBlurInsertAfter_Click);
|
|
//
|
|
// cmdBlurMoveBefore
|
|
//
|
|
resources.ApplyResources(this.cmdBlurMoveBefore, "cmdBlurMoveBefore");
|
|
this.cmdBlurMoveBefore.Name = "cmdBlurMoveBefore";
|
|
this.cmdBlurMoveBefore.UseCompatibleTextRendering = true;
|
|
this.cmdBlurMoveBefore.Click += new System.EventHandler(this.cmdBlurMoveBefore_Click);
|
|
//
|
|
// label35
|
|
//
|
|
resources.ApplyResources(this.label35, "label35");
|
|
this.label35.Name = "label35";
|
|
//
|
|
// txtBlurBefore
|
|
//
|
|
resources.ApplyResources(this.txtBlurBefore, "txtBlurBefore");
|
|
this.txtBlurBefore.Name = "txtBlurBefore";
|
|
//
|
|
// label32
|
|
//
|
|
resources.ApplyResources(this.label32, "label32");
|
|
this.label32.Name = "label32";
|
|
//
|
|
// label31
|
|
//
|
|
resources.ApplyResources(this.label31, "label31");
|
|
this.label31.Name = "label31";
|
|
//
|
|
// txtBlurOut
|
|
//
|
|
resources.ApplyResources(this.txtBlurOut, "txtBlurOut");
|
|
this.txtBlurOut.Name = "txtBlurOut";
|
|
//
|
|
// txtBlurIn
|
|
//
|
|
resources.ApplyResources(this.txtBlurIn, "txtBlurIn");
|
|
this.txtBlurIn.Name = "txtBlurIn";
|
|
//
|
|
// tabPage16
|
|
//
|
|
this.tabPage16.Controls.Add(this.maskedTextTransformTime);
|
|
this.tabPage16.Controls.Add(this.cmdTransformListToInput);
|
|
this.tabPage16.Controls.Add(this.cmdTransformInsertBefore);
|
|
this.tabPage16.Controls.Add(this.cmdTransformInsertAfter);
|
|
this.tabPage16.Controls.Add(this.cmdTransformReplaceLine);
|
|
this.tabPage16.Controls.Add(this.label45);
|
|
this.tabPage16.Controls.Add(this.txtTransformPrecision);
|
|
this.tabPage16.Controls.Add(this.label1);
|
|
this.tabPage16.Controls.Add(this.listTransformVars);
|
|
this.tabPage16.Controls.Add(this.txtTransformCode);
|
|
this.tabPage16.Controls.Add(this.label47);
|
|
this.tabPage16.Controls.Add(this.label46);
|
|
this.tabPage16.Controls.Add(this.cmdTransformDelVar);
|
|
this.tabPage16.Controls.Add(this.cmdTransformNewVar);
|
|
this.tabPage16.Controls.Add(this.cmdDoTransform);
|
|
this.tabPage16.Controls.Add(this.label44);
|
|
this.tabPage16.Controls.Add(this.cmdTransformDelTime);
|
|
this.tabPage16.Controls.Add(this.cmdTransformAddTime);
|
|
this.tabPage16.Controls.Add(this.listTransformTimes);
|
|
this.tabPage16.Controls.Add(this.label43);
|
|
this.tabPage16.Controls.Add(this.txtTransformOut);
|
|
resources.ApplyResources(this.tabPage16, "tabPage16");
|
|
this.tabPage16.Name = "tabPage16";
|
|
this.tabPage16.UseVisualStyleBackColor = true;
|
|
//
|
|
// maskedTextTransformTime
|
|
//
|
|
resources.ApplyResources(this.maskedTextTransformTime, "maskedTextTransformTime");
|
|
this.maskedTextTransformTime.Name = "maskedTextTransformTime";
|
|
this.maskedTextTransformTime.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// cmdTransformListToInput
|
|
//
|
|
resources.ApplyResources(this.cmdTransformListToInput, "cmdTransformListToInput");
|
|
this.cmdTransformListToInput.Name = "cmdTransformListToInput";
|
|
this.cmdTransformListToInput.Click += new System.EventHandler(this.cmdTransformListToInput_Click);
|
|
//
|
|
// cmdTransformInsertBefore
|
|
//
|
|
resources.ApplyResources(this.cmdTransformInsertBefore, "cmdTransformInsertBefore");
|
|
this.cmdTransformInsertBefore.Name = "cmdTransformInsertBefore";
|
|
this.cmdTransformInsertBefore.Click += new System.EventHandler(this.cmdTransformInsertBefore_Click);
|
|
//
|
|
// cmdTransformInsertAfter
|
|
//
|
|
resources.ApplyResources(this.cmdTransformInsertAfter, "cmdTransformInsertAfter");
|
|
this.cmdTransformInsertAfter.Name = "cmdTransformInsertAfter";
|
|
this.cmdTransformInsertAfter.Click += new System.EventHandler(this.cmdTransformInsertAfter_Click);
|
|
//
|
|
// cmdTransformReplaceLine
|
|
//
|
|
resources.ApplyResources(this.cmdTransformReplaceLine, "cmdTransformReplaceLine");
|
|
this.cmdTransformReplaceLine.Name = "cmdTransformReplaceLine";
|
|
this.cmdTransformReplaceLine.Click += new System.EventHandler(this.cmdTransformReplaceLine_Click);
|
|
//
|
|
// label45
|
|
//
|
|
resources.ApplyResources(this.label45, "label45");
|
|
this.label45.Name = "label45";
|
|
//
|
|
// txtTransformPrecision
|
|
//
|
|
resources.ApplyResources(this.txtTransformPrecision, "txtTransformPrecision");
|
|
this.txtTransformPrecision.Name = "txtTransformPrecision";
|
|
//
|
|
// label1
|
|
//
|
|
resources.ApplyResources(this.label1, "label1");
|
|
this.label1.Name = "label1";
|
|
//
|
|
// listTransformVars
|
|
//
|
|
this.listTransformVars.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
|
this.columnHeader13});
|
|
this.listTransformVars.GridLines = true;
|
|
this.listTransformVars.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
|
this.listTransformVars.LabelEdit = true;
|
|
resources.ApplyResources(this.listTransformVars, "listTransformVars");
|
|
this.listTransformVars.Name = "listTransformVars";
|
|
this.listTransformVars.UseCompatibleStateImageBehavior = false;
|
|
this.listTransformVars.View = System.Windows.Forms.View.Details;
|
|
//
|
|
// columnHeader13
|
|
//
|
|
resources.ApplyResources(this.columnHeader13, "columnHeader13");
|
|
//
|
|
// txtTransformCode
|
|
//
|
|
resources.ApplyResources(this.txtTransformCode, "txtTransformCode");
|
|
this.txtTransformCode.Name = "txtTransformCode";
|
|
//
|
|
// label47
|
|
//
|
|
resources.ApplyResources(this.label47, "label47");
|
|
this.label47.Name = "label47";
|
|
//
|
|
// label46
|
|
//
|
|
resources.ApplyResources(this.label46, "label46");
|
|
this.label46.Name = "label46";
|
|
//
|
|
// cmdTransformDelVar
|
|
//
|
|
resources.ApplyResources(this.cmdTransformDelVar, "cmdTransformDelVar");
|
|
this.cmdTransformDelVar.Name = "cmdTransformDelVar";
|
|
this.cmdTransformDelVar.UseCompatibleTextRendering = true;
|
|
this.cmdTransformDelVar.Click += new System.EventHandler(this.cmdTransformDelVar_Click);
|
|
//
|
|
// cmdTransformNewVar
|
|
//
|
|
resources.ApplyResources(this.cmdTransformNewVar, "cmdTransformNewVar");
|
|
this.cmdTransformNewVar.Name = "cmdTransformNewVar";
|
|
this.cmdTransformNewVar.UseCompatibleTextRendering = true;
|
|
this.cmdTransformNewVar.Click += new System.EventHandler(this.cmdTransformNewVar_Click);
|
|
//
|
|
// cmdDoTransform
|
|
//
|
|
resources.ApplyResources(this.cmdDoTransform, "cmdDoTransform");
|
|
this.cmdDoTransform.Name = "cmdDoTransform";
|
|
this.cmdDoTransform.Click += new System.EventHandler(this.cmdDoTransform_Click);
|
|
//
|
|
// label44
|
|
//
|
|
resources.ApplyResources(this.label44, "label44");
|
|
this.label44.Name = "label44";
|
|
//
|
|
// cmdTransformDelTime
|
|
//
|
|
resources.ApplyResources(this.cmdTransformDelTime, "cmdTransformDelTime");
|
|
this.cmdTransformDelTime.Name = "cmdTransformDelTime";
|
|
this.cmdTransformDelTime.UseCompatibleTextRendering = true;
|
|
this.cmdTransformDelTime.Click += new System.EventHandler(this.cmdTransformDelTime_Click);
|
|
//
|
|
// cmdTransformAddTime
|
|
//
|
|
resources.ApplyResources(this.cmdTransformAddTime, "cmdTransformAddTime");
|
|
this.cmdTransformAddTime.Name = "cmdTransformAddTime";
|
|
this.cmdTransformAddTime.UseCompatibleTextRendering = true;
|
|
this.cmdTransformAddTime.Click += new System.EventHandler(this.cmdTransformAddTime_Click);
|
|
//
|
|
// listTransformTimes
|
|
//
|
|
resources.ApplyResources(this.listTransformTimes, "listTransformTimes");
|
|
this.listTransformTimes.Name = "listTransformTimes";
|
|
//
|
|
// label43
|
|
//
|
|
resources.ApplyResources(this.label43, "label43");
|
|
this.label43.Name = "label43";
|
|
//
|
|
// txtTransformOut
|
|
//
|
|
resources.ApplyResources(this.txtTransformOut, "txtTransformOut");
|
|
this.txtTransformOut.Name = "txtTransformOut";
|
|
//
|
|
// tabPage13
|
|
//
|
|
this.tabPage13.Controls.Add(this.lstErrors);
|
|
this.tabPage13.Controls.Add(this.label27);
|
|
this.tabPage13.Controls.Add(this.cmdCheckErrors);
|
|
resources.ApplyResources(this.tabPage13, "tabPage13");
|
|
this.tabPage13.Name = "tabPage13";
|
|
this.tabPage13.UseVisualStyleBackColor = true;
|
|
//
|
|
// lstErrors
|
|
//
|
|
resources.ApplyResources(this.lstErrors, "lstErrors");
|
|
this.lstErrors.Name = "lstErrors";
|
|
this.lstErrors.DoubleClick += new System.EventHandler(this.lstErrors_DoubleClick);
|
|
//
|
|
// label27
|
|
//
|
|
resources.ApplyResources(this.label27, "label27");
|
|
this.label27.Name = "label27";
|
|
//
|
|
// cmdCheckErrors
|
|
//
|
|
resources.ApplyResources(this.cmdCheckErrors, "cmdCheckErrors");
|
|
this.cmdCheckErrors.Name = "cmdCheckErrors";
|
|
this.cmdCheckErrors.Click += new System.EventHandler(this.cmdCheckErrors_Click);
|
|
//
|
|
// tabPage15
|
|
//
|
|
this.tabPage15.Controls.Add(this.labelFontNum);
|
|
this.tabPage15.Controls.Add(this.cmdFontSearchFolder);
|
|
this.tabPage15.Controls.Add(this.label40);
|
|
this.tabPage15.Controls.Add(this.cmdFindFonts);
|
|
this.tabPage15.Controls.Add(this.label39);
|
|
this.tabPage15.Controls.Add(this.lstFonts);
|
|
resources.ApplyResources(this.tabPage15, "tabPage15");
|
|
this.tabPage15.Name = "tabPage15";
|
|
this.tabPage15.UseVisualStyleBackColor = true;
|
|
//
|
|
// labelFontNum
|
|
//
|
|
resources.ApplyResources(this.labelFontNum, "labelFontNum");
|
|
this.labelFontNum.Name = "labelFontNum";
|
|
//
|
|
// cmdFontSearchFolder
|
|
//
|
|
resources.ApplyResources(this.cmdFontSearchFolder, "cmdFontSearchFolder");
|
|
this.cmdFontSearchFolder.Name = "cmdFontSearchFolder";
|
|
this.cmdFontSearchFolder.Click += new System.EventHandler(this.cmdFontSearchFolder_Click);
|
|
//
|
|
// label40
|
|
//
|
|
resources.ApplyResources(this.label40, "label40");
|
|
this.label40.Name = "label40";
|
|
//
|
|
// cmdFindFonts
|
|
//
|
|
resources.ApplyResources(this.cmdFindFonts, "cmdFindFonts");
|
|
this.cmdFindFonts.Name = "cmdFindFonts";
|
|
this.cmdFindFonts.Click += new System.EventHandler(this.cmdFindFonts_Click);
|
|
//
|
|
// label39
|
|
//
|
|
resources.ApplyResources(this.label39, "label39");
|
|
this.label39.Name = "label39";
|
|
//
|
|
// lstFonts
|
|
//
|
|
this.lstFonts.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
|
this.columnHeader7,
|
|
this.columnHeader8,
|
|
this.columnHeader9});
|
|
this.lstFonts.FullRowSelect = true;
|
|
this.lstFonts.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
|
resources.ApplyResources(this.lstFonts, "lstFonts");
|
|
this.lstFonts.Name = "lstFonts";
|
|
this.lstFonts.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
|
this.lstFonts.UseCompatibleStateImageBehavior = false;
|
|
this.lstFonts.View = System.Windows.Forms.View.Details;
|
|
//
|
|
// columnHeader7
|
|
//
|
|
resources.ApplyResources(this.columnHeader7, "columnHeader7");
|
|
//
|
|
// columnHeader8
|
|
//
|
|
resources.ApplyResources(this.columnHeader8, "columnHeader8");
|
|
//
|
|
// columnHeader9
|
|
//
|
|
resources.ApplyResources(this.columnHeader9, "columnHeader9");
|
|
//
|
|
// tabPage5
|
|
//
|
|
this.tabPage5.Controls.Add(this.groupBox19);
|
|
this.tabPage5.Controls.Add(this.groupBox18);
|
|
this.tabPage5.Controls.Add(this.groupBox17);
|
|
this.tabPage5.Controls.Add(this.groupBox15);
|
|
this.tabPage5.Controls.Add(this.groupBox14);
|
|
this.tabPage5.Controls.Add(this.groupBox13);
|
|
resources.ApplyResources(this.tabPage5, "tabPage5");
|
|
this.tabPage5.Name = "tabPage5";
|
|
this.tabPage5.UseVisualStyleBackColor = true;
|
|
//
|
|
// groupBox19
|
|
//
|
|
this.groupBox19.Controls.Add(this.textBox1);
|
|
resources.ApplyResources(this.groupBox19, "groupBox19");
|
|
this.groupBox19.Name = "groupBox19";
|
|
this.groupBox19.TabStop = false;
|
|
//
|
|
// textBox1
|
|
//
|
|
this.textBox1.BackColor = System.Drawing.SystemColors.Control;
|
|
this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
|
resources.ApplyResources(this.textBox1, "textBox1");
|
|
this.textBox1.Name = "textBox1";
|
|
this.textBox1.ReadOnly = true;
|
|
//
|
|
// groupBox18
|
|
//
|
|
this.groupBox18.Controls.Add(this.lblRegroupDestIndex);
|
|
this.groupBox18.Controls.Add(this.label10);
|
|
this.groupBox18.Controls.Add(this.lblRegroupSourceIndex);
|
|
this.groupBox18.Controls.Add(this.label5);
|
|
resources.ApplyResources(this.groupBox18, "groupBox18");
|
|
this.groupBox18.Name = "groupBox18";
|
|
this.groupBox18.TabStop = false;
|
|
//
|
|
// lblRegroupDestIndex
|
|
//
|
|
resources.ApplyResources(this.lblRegroupDestIndex, "lblRegroupDestIndex");
|
|
this.lblRegroupDestIndex.Name = "lblRegroupDestIndex";
|
|
//
|
|
// label10
|
|
//
|
|
resources.ApplyResources(this.label10, "label10");
|
|
this.label10.Name = "label10";
|
|
//
|
|
// lblRegroupSourceIndex
|
|
//
|
|
resources.ApplyResources(this.lblRegroupSourceIndex, "lblRegroupSourceIndex");
|
|
this.lblRegroupSourceIndex.Name = "lblRegroupSourceIndex";
|
|
//
|
|
// label5
|
|
//
|
|
resources.ApplyResources(this.label5, "label5");
|
|
this.label5.Name = "label5";
|
|
//
|
|
// groupBox17
|
|
//
|
|
this.groupBox17.Controls.Add(this.listRegroupPairs);
|
|
resources.ApplyResources(this.groupBox17, "groupBox17");
|
|
this.groupBox17.Name = "groupBox17";
|
|
this.groupBox17.TabStop = false;
|
|
//
|
|
// listRegroupPairs
|
|
//
|
|
this.listRegroupPairs.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
|
|
this.columnHeader10,
|
|
this.columnHeader12});
|
|
this.listRegroupPairs.FullRowSelect = true;
|
|
this.listRegroupPairs.GridLines = true;
|
|
this.listRegroupPairs.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
|
|
resources.ApplyResources(this.listRegroupPairs, "listRegroupPairs");
|
|
this.listRegroupPairs.MultiSelect = false;
|
|
this.listRegroupPairs.Name = "listRegroupPairs";
|
|
this.listRegroupPairs.UseCompatibleStateImageBehavior = false;
|
|
this.listRegroupPairs.View = System.Windows.Forms.View.Details;
|
|
//
|
|
// columnHeader10
|
|
//
|
|
resources.ApplyResources(this.columnHeader10, "columnHeader10");
|
|
//
|
|
// columnHeader12
|
|
//
|
|
resources.ApplyResources(this.columnHeader12, "columnHeader12");
|
|
//
|
|
// groupBox15
|
|
//
|
|
this.groupBox15.Controls.Add(this.cmdRegroupStart);
|
|
this.groupBox15.Controls.Add(this.cmdRegroupAcceptLine);
|
|
this.groupBox15.Controls.Add(this.cmdRegroupUnlinkLast);
|
|
this.groupBox15.Controls.Add(this.cmdRegroupGoBack);
|
|
this.groupBox15.Controls.Add(this.cmdRegroupSkipDestLine);
|
|
this.groupBox15.Controls.Add(this.cmdRegroupSkipSourceLine);
|
|
this.groupBox15.Controls.Add(this.cmdRegroupLink);
|
|
resources.ApplyResources(this.groupBox15, "groupBox15");
|
|
this.groupBox15.Name = "groupBox15";
|
|
this.groupBox15.TabStop = false;
|
|
//
|
|
// cmdRegroupStart
|
|
//
|
|
resources.ApplyResources(this.cmdRegroupStart, "cmdRegroupStart");
|
|
this.cmdRegroupStart.Name = "cmdRegroupStart";
|
|
this.cmdRegroupStart.UseVisualStyleBackColor = true;
|
|
this.cmdRegroupStart.Click += new System.EventHandler(this.cmdRegroupStart_Click);
|
|
//
|
|
// cmdRegroupAcceptLine
|
|
//
|
|
resources.ApplyResources(this.cmdRegroupAcceptLine, "cmdRegroupAcceptLine");
|
|
this.cmdRegroupAcceptLine.Name = "cmdRegroupAcceptLine";
|
|
this.cmdRegroupAcceptLine.UseCompatibleTextRendering = true;
|
|
this.cmdRegroupAcceptLine.UseVisualStyleBackColor = true;
|
|
this.cmdRegroupAcceptLine.Click += new System.EventHandler(this.cmdRegroupAcceptLine_Click);
|
|
//
|
|
// cmdRegroupUnlinkLast
|
|
//
|
|
resources.ApplyResources(this.cmdRegroupUnlinkLast, "cmdRegroupUnlinkLast");
|
|
this.cmdRegroupUnlinkLast.Name = "cmdRegroupUnlinkLast";
|
|
this.cmdRegroupUnlinkLast.UseCompatibleTextRendering = true;
|
|
this.cmdRegroupUnlinkLast.UseVisualStyleBackColor = true;
|
|
this.cmdRegroupUnlinkLast.Click += new System.EventHandler(this.cmdRegroupUnlinkLast_Click);
|
|
//
|
|
// cmdRegroupGoBack
|
|
//
|
|
resources.ApplyResources(this.cmdRegroupGoBack, "cmdRegroupGoBack");
|
|
this.cmdRegroupGoBack.Name = "cmdRegroupGoBack";
|
|
this.cmdRegroupGoBack.UseCompatibleTextRendering = true;
|
|
this.cmdRegroupGoBack.UseVisualStyleBackColor = true;
|
|
this.cmdRegroupGoBack.Click += new System.EventHandler(this.cmdRegroupGoBack_Click);
|
|
//
|
|
// cmdRegroupSkipDestLine
|
|
//
|
|
resources.ApplyResources(this.cmdRegroupSkipDestLine, "cmdRegroupSkipDestLine");
|
|
this.cmdRegroupSkipDestLine.Name = "cmdRegroupSkipDestLine";
|
|
this.cmdRegroupSkipDestLine.UseCompatibleTextRendering = true;
|
|
this.cmdRegroupSkipDestLine.UseVisualStyleBackColor = true;
|
|
this.cmdRegroupSkipDestLine.Click += new System.EventHandler(this.cmdRegroupSkipDestLine_Click);
|
|
//
|
|
// cmdRegroupSkipSourceLine
|
|
//
|
|
resources.ApplyResources(this.cmdRegroupSkipSourceLine, "cmdRegroupSkipSourceLine");
|
|
this.cmdRegroupSkipSourceLine.Name = "cmdRegroupSkipSourceLine";
|
|
this.cmdRegroupSkipSourceLine.UseCompatibleTextRendering = true;
|
|
this.cmdRegroupSkipSourceLine.UseVisualStyleBackColor = true;
|
|
this.cmdRegroupSkipSourceLine.Click += new System.EventHandler(this.cmdRegroupSkipSourceLine_Click);
|
|
//
|
|
// cmdRegroupLink
|
|
//
|
|
resources.ApplyResources(this.cmdRegroupLink, "cmdRegroupLink");
|
|
this.cmdRegroupLink.Name = "cmdRegroupLink";
|
|
this.cmdRegroupLink.UseCompatibleTextRendering = true;
|
|
this.cmdRegroupLink.UseVisualStyleBackColor = true;
|
|
this.cmdRegroupLink.Click += new System.EventHandler(this.cmdRegroupLink_Click);
|
|
//
|
|
// groupBox14
|
|
//
|
|
this.groupBox14.Controls.Add(this.txtRegroupSource);
|
|
this.groupBox14.Controls.Add(this.txtRegroupDest);
|
|
resources.ApplyResources(this.groupBox14, "groupBox14");
|
|
this.groupBox14.Name = "groupBox14";
|
|
this.groupBox14.TabStop = false;
|
|
//
|
|
// txtRegroupSource
|
|
//
|
|
this.txtRegroupSource.BackColor = System.Drawing.SystemColors.Control;
|
|
this.txtRegroupSource.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
|
resources.ApplyResources(this.txtRegroupSource, "txtRegroupSource");
|
|
this.txtRegroupSource.HideSelection = false;
|
|
this.txtRegroupSource.Name = "txtRegroupSource";
|
|
this.txtRegroupSource.ReadOnly = true;
|
|
this.txtRegroupSource.ShortcutsEnabled = false;
|
|
//
|
|
// txtRegroupDest
|
|
//
|
|
this.txtRegroupDest.BackColor = System.Drawing.SystemColors.Control;
|
|
this.txtRegroupDest.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
|
resources.ApplyResources(this.txtRegroupDest, "txtRegroupDest");
|
|
this.txtRegroupDest.HideSelection = false;
|
|
this.txtRegroupDest.Name = "txtRegroupDest";
|
|
this.txtRegroupDest.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtRegroupDest_KeyPress);
|
|
this.txtRegroupDest.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtRegroupDest_KeyDown);
|
|
//
|
|
// groupBox13
|
|
//
|
|
this.groupBox13.Controls.Add(this.cmbRegroupDest);
|
|
this.groupBox13.Controls.Add(this.cmbRegroupSource);
|
|
this.groupBox13.Controls.Add(this.label53);
|
|
this.groupBox13.Controls.Add(this.label52);
|
|
resources.ApplyResources(this.groupBox13, "groupBox13");
|
|
this.groupBox13.Name = "groupBox13";
|
|
this.groupBox13.TabStop = false;
|
|
//
|
|
// cmbRegroupDest
|
|
//
|
|
this.cmbRegroupDest.FormattingEnabled = true;
|
|
resources.ApplyResources(this.cmbRegroupDest, "cmbRegroupDest");
|
|
this.cmbRegroupDest.Name = "cmbRegroupDest";
|
|
//
|
|
// cmbRegroupSource
|
|
//
|
|
this.cmbRegroupSource.FormattingEnabled = true;
|
|
resources.ApplyResources(this.cmbRegroupSource, "cmbRegroupSource");
|
|
this.cmbRegroupSource.Name = "cmbRegroupSource";
|
|
//
|
|
// label53
|
|
//
|
|
resources.ApplyResources(this.label53, "label53");
|
|
this.label53.Name = "label53";
|
|
//
|
|
// label52
|
|
//
|
|
resources.ApplyResources(this.label52, "label52");
|
|
this.label52.Name = "label52";
|
|
//
|
|
// tabPage17
|
|
//
|
|
this.tabPage17.Controls.Add(this.cmdNBReparse);
|
|
this.tabPage17.Controls.Add(this.groupBox22);
|
|
this.tabPage17.Controls.Add(this.cmdNBCopyStyles);
|
|
this.tabPage17.Controls.Add(this.cmdNBInsertBefore);
|
|
this.tabPage17.Controls.Add(this.cmdNBInsertAfter);
|
|
this.tabPage17.Controls.Add(this.cmdNBReplaceLine);
|
|
this.tabPage17.Controls.Add(this.cmdNoteBox);
|
|
this.tabPage17.Controls.Add(this.groupBox21);
|
|
this.tabPage17.Controls.Add(this.groupBox20);
|
|
resources.ApplyResources(this.tabPage17, "tabPage17");
|
|
this.tabPage17.Name = "tabPage17";
|
|
this.tabPage17.UseVisualStyleBackColor = true;
|
|
//
|
|
// cmdNBReparse
|
|
//
|
|
resources.ApplyResources(this.cmdNBReparse, "cmdNBReparse");
|
|
this.cmdNBReparse.Name = "cmdNBReparse";
|
|
this.cmdNBReparse.Click += new System.EventHandler(this.cmdNBReparse_Click);
|
|
//
|
|
// groupBox22
|
|
//
|
|
this.groupBox22.Controls.Add(this.textNBDesc);
|
|
this.groupBox22.Controls.Add(this.cmbNBStyle);
|
|
this.groupBox22.Controls.Add(this.label59);
|
|
resources.ApplyResources(this.groupBox22, "groupBox22");
|
|
this.groupBox22.Name = "groupBox22";
|
|
this.groupBox22.TabStop = false;
|
|
//
|
|
// textNBDesc
|
|
//
|
|
this.textNBDesc.BackColor = System.Drawing.SystemColors.Control;
|
|
this.textNBDesc.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
|
resources.ApplyResources(this.textNBDesc, "textNBDesc");
|
|
this.textNBDesc.Name = "textNBDesc";
|
|
//
|
|
// cmbNBStyle
|
|
//
|
|
this.cmbNBStyle.FormattingEnabled = true;
|
|
resources.ApplyResources(this.cmbNBStyle, "cmbNBStyle");
|
|
this.cmbNBStyle.Name = "cmbNBStyle";
|
|
this.cmbNBStyle.SelectedIndexChanged += new System.EventHandler(this.cmbNBStyle_SelectedIndexChanged);
|
|
//
|
|
// label59
|
|
//
|
|
resources.ApplyResources(this.label59, "label59");
|
|
this.label59.Name = "label59";
|
|
//
|
|
// cmdNBCopyStyles
|
|
//
|
|
resources.ApplyResources(this.cmdNBCopyStyles, "cmdNBCopyStyles");
|
|
this.cmdNBCopyStyles.Name = "cmdNBCopyStyles";
|
|
this.cmdNBCopyStyles.Click += new System.EventHandler(this.cmdNBCopyStyles_Click);
|
|
//
|
|
// cmdNBInsertBefore
|
|
//
|
|
resources.ApplyResources(this.cmdNBInsertBefore, "cmdNBInsertBefore");
|
|
this.cmdNBInsertBefore.Name = "cmdNBInsertBefore";
|
|
this.cmdNBInsertBefore.Click += new System.EventHandler(this.cmdNBInsertBefore_Click);
|
|
//
|
|
// cmdNBInsertAfter
|
|
//
|
|
resources.ApplyResources(this.cmdNBInsertAfter, "cmdNBInsertAfter");
|
|
this.cmdNBInsertAfter.Name = "cmdNBInsertAfter";
|
|
this.cmdNBInsertAfter.Click += new System.EventHandler(this.cmdNBInsertAfter_Click);
|
|
//
|
|
// cmdNBReplaceLine
|
|
//
|
|
resources.ApplyResources(this.cmdNBReplaceLine, "cmdNBReplaceLine");
|
|
this.cmdNBReplaceLine.Name = "cmdNBReplaceLine";
|
|
this.cmdNBReplaceLine.Click += new System.EventHandler(this.cmdNBReplaceLine_Click);
|
|
//
|
|
// cmdNoteBox
|
|
//
|
|
resources.ApplyResources(this.cmdNoteBox, "cmdNoteBox");
|
|
this.cmdNoteBox.Name = "cmdNoteBox";
|
|
this.cmdNoteBox.Click += new System.EventHandler(this.cmdNoteBox_Click);
|
|
//
|
|
// groupBox21
|
|
//
|
|
this.groupBox21.Controls.Add(this.textNBStyles);
|
|
this.groupBox21.Controls.Add(this.textNBOut);
|
|
resources.ApplyResources(this.groupBox21, "groupBox21");
|
|
this.groupBox21.Name = "groupBox21";
|
|
this.groupBox21.TabStop = false;
|
|
//
|
|
// textNBStyles
|
|
//
|
|
resources.ApplyResources(this.textNBStyles, "textNBStyles");
|
|
this.textNBStyles.Name = "textNBStyles";
|
|
//
|
|
// textNBOut
|
|
//
|
|
resources.ApplyResources(this.textNBOut, "textNBOut");
|
|
this.textNBOut.Name = "textNBOut";
|
|
//
|
|
// groupBox20
|
|
//
|
|
this.groupBox20.Controls.Add(this.cmdNBGetTimes);
|
|
this.groupBox20.Controls.Add(this.maskedTextNBEnd);
|
|
this.groupBox20.Controls.Add(this.label58);
|
|
this.groupBox20.Controls.Add(this.maskedTextNBStart);
|
|
this.groupBox20.Controls.Add(this.label57);
|
|
this.groupBox20.Controls.Add(this.textNotebox2);
|
|
this.groupBox20.Controls.Add(this.textNotebox1);
|
|
this.groupBox20.Controls.Add(this.label56);
|
|
this.groupBox20.Controls.Add(this.label48);
|
|
resources.ApplyResources(this.groupBox20, "groupBox20");
|
|
this.groupBox20.Name = "groupBox20";
|
|
this.groupBox20.TabStop = false;
|
|
//
|
|
// cmdNBGetTimes
|
|
//
|
|
resources.ApplyResources(this.cmdNBGetTimes, "cmdNBGetTimes");
|
|
this.cmdNBGetTimes.Name = "cmdNBGetTimes";
|
|
this.cmdNBGetTimes.UseCompatibleTextRendering = true;
|
|
this.cmdNBGetTimes.UseVisualStyleBackColor = true;
|
|
this.cmdNBGetTimes.Click += new System.EventHandler(this.cmdNBGetTimes_Click);
|
|
//
|
|
// maskedTextNBEnd
|
|
//
|
|
resources.ApplyResources(this.maskedTextNBEnd, "maskedTextNBEnd");
|
|
this.maskedTextNBEnd.Name = "maskedTextNBEnd";
|
|
this.maskedTextNBEnd.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// label58
|
|
//
|
|
resources.ApplyResources(this.label58, "label58");
|
|
this.label58.Name = "label58";
|
|
//
|
|
// maskedTextNBStart
|
|
//
|
|
this.maskedTextNBStart.InsertKeyMode = System.Windows.Forms.InsertKeyMode.Overwrite;
|
|
resources.ApplyResources(this.maskedTextNBStart, "maskedTextNBStart");
|
|
this.maskedTextNBStart.Name = "maskedTextNBStart";
|
|
this.maskedTextNBStart.TextMaskFormat = System.Windows.Forms.MaskFormat.IncludePromptAndLiterals;
|
|
//
|
|
// label57
|
|
//
|
|
resources.ApplyResources(this.label57, "label57");
|
|
this.label57.Name = "label57";
|
|
//
|
|
// textNotebox2
|
|
//
|
|
resources.ApplyResources(this.textNotebox2, "textNotebox2");
|
|
this.textNotebox2.Name = "textNotebox2";
|
|
//
|
|
// textNotebox1
|
|
//
|
|
resources.ApplyResources(this.textNotebox1, "textNotebox1");
|
|
this.textNotebox1.Name = "textNotebox1";
|
|
//
|
|
// label56
|
|
//
|
|
resources.ApplyResources(this.label56, "label56");
|
|
this.label56.Name = "label56";
|
|
//
|
|
// label48
|
|
//
|
|
resources.ApplyResources(this.label48, "label48");
|
|
this.label48.Name = "label48";
|
|
//
|
|
// Form1
|
|
//
|
|
resources.ApplyResources(this, "$this");
|
|
this.Controls.Add(this.splitContainer1);
|
|
this.DoubleBuffered = true;
|
|
this.Menu = this.mainMenu1;
|
|
this.Name = "Form1";
|
|
this.Resize += new System.EventHandler(this.Resize_Handler);
|
|
this.Load += new System.EventHandler(this.Form1_Load);
|
|
this.tabPage6.ResumeLayout(false);
|
|
this.tabPage6.PerformLayout();
|
|
this.splitContainer1.Panel1.ResumeLayout(false);
|
|
this.splitContainer1.Panel2.ResumeLayout(false);
|
|
this.splitContainer1.ResumeLayout(false);
|
|
this.groupBox1.ResumeLayout(false);
|
|
this.tabMain.ResumeLayout(false);
|
|
this.tabPage1.ResumeLayout(false);
|
|
this.groupBox12.ResumeLayout(false);
|
|
this.groupBox12.PerformLayout();
|
|
this.groupBox4.ResumeLayout(false);
|
|
this.groupBox4.PerformLayout();
|
|
this.groupBox3.ResumeLayout(false);
|
|
this.groupBox2.ResumeLayout(false);
|
|
this.tabShiftType.ResumeLayout(false);
|
|
this.tabPage9.ResumeLayout(false);
|
|
this.tabPage9.PerformLayout();
|
|
this.tabPage10.ResumeLayout(false);
|
|
this.tabPage10.PerformLayout();
|
|
this.tabPage11.ResumeLayout(false);
|
|
this.tabPage11.PerformLayout();
|
|
this.tabPage12.ResumeLayout(false);
|
|
this.tabPage12.PerformLayout();
|
|
this.tabPage2.ResumeLayout(false);
|
|
this.groupBox11.ResumeLayout(false);
|
|
this.groupBox11.PerformLayout();
|
|
this.groupBox10.ResumeLayout(false);
|
|
this.groupBox10.PerformLayout();
|
|
this.groupBox6.ResumeLayout(false);
|
|
this.groupBox6.PerformLayout();
|
|
this.groupBox5.ResumeLayout(false);
|
|
this.groupBox5.PerformLayout();
|
|
this.tabPage3.ResumeLayout(false);
|
|
this.panelEffect.ResumeLayout(false);
|
|
this.tabControl1.ResumeLayout(false);
|
|
this.tabPage7.ResumeLayout(false);
|
|
this.tabPage8.ResumeLayout(false);
|
|
this.panelLayer.ResumeLayout(false);
|
|
this.panelLayer.PerformLayout();
|
|
this.groupBox16.ResumeLayout(false);
|
|
this.groupBox16.PerformLayout();
|
|
this.tabPage4.ResumeLayout(false);
|
|
this.tabPage4.PerformLayout();
|
|
this.panelGradient.ResumeLayout(false);
|
|
this.panelGradient.PerformLayout();
|
|
this.groupBox7.ResumeLayout(false);
|
|
this.tabPage14.ResumeLayout(false);
|
|
this.tabPage14.PerformLayout();
|
|
this.panelBlur.ResumeLayout(false);
|
|
this.panelBlur.PerformLayout();
|
|
this.groupBlurAffect.ResumeLayout(false);
|
|
this.groupBox9.ResumeLayout(false);
|
|
this.groupBlurSub.ResumeLayout(false);
|
|
this.groupBox8.ResumeLayout(false);
|
|
this.tabPage16.ResumeLayout(false);
|
|
this.tabPage16.PerformLayout();
|
|
this.tabPage13.ResumeLayout(false);
|
|
this.tabPage15.ResumeLayout(false);
|
|
this.tabPage5.ResumeLayout(false);
|
|
this.groupBox19.ResumeLayout(false);
|
|
this.groupBox19.PerformLayout();
|
|
this.groupBox18.ResumeLayout(false);
|
|
this.groupBox17.ResumeLayout(false);
|
|
this.groupBox15.ResumeLayout(false);
|
|
this.groupBox14.ResumeLayout(false);
|
|
this.groupBox14.PerformLayout();
|
|
this.groupBox13.ResumeLayout(false);
|
|
this.groupBox13.PerformLayout();
|
|
this.tabPage17.ResumeLayout(false);
|
|
this.groupBox22.ResumeLayout(false);
|
|
this.groupBox22.PerformLayout();
|
|
this.groupBox21.ResumeLayout(false);
|
|
this.groupBox21.PerformLayout();
|
|
this.groupBox20.ResumeLayout(false);
|
|
this.groupBox20.PerformLayout();
|
|
this.ResumeLayout(false);
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
[STAThread]
|
|
|
|
static void Main(string[] args) {
|
|
Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
|
|
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
|
|
//Application.EnableVisualStyles();
|
|
Application.Run(new Form1(args));
|
|
|
|
}
|
|
|
|
static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e) {
|
|
DialogResult result = DialogResult.Ignore;
|
|
try {
|
|
result = MessageBox.Show(e.Exception.Message + " Abort operation?", "Windows Forms Error", MessageBoxButtons.YesNo);
|
|
} catch {
|
|
|
|
}
|
|
|
|
// Exits the program when the user clicks Abort.
|
|
if (result == DialogResult.No)
|
|
Application.Exit();
|
|
}
|
|
|
|
public Form1(string[] args) {
|
|
//
|
|
// Required for Windows Form Designer support
|
|
//
|
|
FormMain = this;
|
|
InitializeComponent();
|
|
Evaluate.FillOpsList();
|
|
listSSAg = Graphics.FromHwnd(listSSA.Handle);
|
|
lineColl = new List<Line>();
|
|
layerColl = new System.Collections.Generic.List<Layer>();
|
|
templateFilterColl = new System.Collections.Generic.List<Filter>();
|
|
undoStack = new Stack();
|
|
redoStack = new Stack();
|
|
//CurFile = String.Empty;
|
|
|
|
// Add the "raw code" filter as a default filter
|
|
Filter raw = new Filter("Raw code", "$Code$");
|
|
FilterOption rawfo = new FilterOption("Code", "");
|
|
raw.AddOption(rawfo);
|
|
templateFilterColl.Add(raw);
|
|
|
|
string path = "effects.exml";
|
|
if (File.Exists(path)) LoadEffectsFile(path);
|
|
enc = new System.Text.UnicodeEncoding();
|
|
Notebox.readNoteBoxes();
|
|
|
|
string arglower;
|
|
foreach (string arg in args) {
|
|
if (File.Exists(arg)) {
|
|
arglower = arg.ToLower(Util.cfi);
|
|
if (arglower.EndsWith(".xml"))
|
|
LoadProject(arg);
|
|
else if (arglower.EndsWith(".ass") || arglower.EndsWith(".ssa") || arglower.EndsWith(".assa"))
|
|
LoadFile(args[0], null);
|
|
}
|
|
}
|
|
listSSA.LabelEdit = false;
|
|
}
|
|
|
|
#region user-defined variables
|
|
//Note: Some function-specific variables are defined in their own section instead of here
|
|
Regex r = new Regex(@"(\\[kK][of]?)(\d+)([^\}]*)(\}?)([^\{]*)", RegexOptions.Compiled | RegexOptions.Singleline);
|
|
public static List<Layer> layerColl;
|
|
public static List<Filter> templateFilterColl;
|
|
public static List<Style> styleColl;
|
|
public static List<Line> lineColl;
|
|
private static Stack undoStack, redoStack;
|
|
private Layer CurLayer;
|
|
private string CurFile;
|
|
private Encoding enc;
|
|
public static int ResX, ResY;
|
|
public static byte sver;
|
|
public static Graphics listSSAg;
|
|
|
|
#endregion
|
|
|
|
private void Form1_Load(object sender, System.EventArgs e) {
|
|
EventContext();
|
|
ContextMenu listcm = new ContextMenu();
|
|
MenuItem mi;
|
|
for (int index = 0; index != menuItem2.MenuItems.Count; index+=1) {
|
|
mi = menuItem2.MenuItems[index];
|
|
listcm.MenuItems.Add(mi.Index, mi.CloneMenu());
|
|
}
|
|
listSSA.ContextMenu = listcm;
|
|
splitContainer1.SplitterDistance = splitContainer1.Height - (tabMain.Height + 16);
|
|
}
|
|
|
|
void Resize_Handler(object sender, EventArgs e) {
|
|
if (this.WindowState == FormWindowState.Normal) {
|
|
Control control = (Control)sender;
|
|
int newSplitterDistance = splitContainer1.Height - splitContainer1.SplitterDistance + 8;
|
|
splitContainer1.Size = this.Size;
|
|
splitContainer1.SplitterDistance = Math.Max(this.Height - newSplitterDistance, 64);
|
|
listSSA.Size = new System.Drawing.Size(splitContainer1.Panel1.Width - (groupBox1.Width + 16),
|
|
splitContainer1.Panel1.Height);
|
|
groupBox1.Left = splitContainer1.Panel1.Width - (groupBox1.Width + 8);
|
|
tabMain.Size = splitContainer1.Panel2.Size;
|
|
}
|
|
}
|
|
void splitterMoved(object sender, EventArgs e) {
|
|
tabMain.Size = splitContainer1.Panel2.Size;
|
|
}
|
|
void tabMain_Resize(object sender, EventArgs e) {
|
|
int tabHeight = tabMain.Height - (tabMain.ItemSize.Height + 60);
|
|
int tabWidth = tabMain.Width - 16;
|
|
lstErrors.Height = tabHeight;
|
|
lstFonts.Height = tabHeight-8;
|
|
|
|
//Noteboxes
|
|
groupBox21.Height = tabHeight - groupBox21.Top;
|
|
groupBox20.Width = groupBox21.Width = tabWidth - groupBox21.Left;
|
|
textNBStyles.Height = groupBox21.Height / 3;
|
|
textNBOut.Top = textNBStyles.Top + textNBStyles.Height + 4;
|
|
textNBOut.Height = groupBox21.Height - (textNBOut.Top + 4);
|
|
textNBStyles.Width = textNBOut.Width = groupBox21.Width - (textNBOut.Left << 1);
|
|
textNotebox1.Width = groupBox20.Width - (textNotebox1.Left + 8);
|
|
textNotebox2.Width = textNotebox1.Width;
|
|
|
|
panelGradient.Left = tabWidth - panelGradient.Width;
|
|
txtGradOut.Width = panelGradient.Left - (txtGradOut.Left + 8);
|
|
txtGradIn.Width = txtGradOut.Width;
|
|
txtGradBefore.Width = txtGradOut.Width - (cmdGradMoveBefore.Width + 8);
|
|
cmdGradMoveBefore.Left = txtGradBefore.Left + txtGradBefore.Width + 8;
|
|
|
|
panelBlur.Left = tabWidth - panelBlur.Width;
|
|
txtBlurOut.Width = panelBlur.Left - (txtBlurOut.Left + 8);
|
|
txtBlurIn.Width = txtBlurOut.Width;
|
|
txtBlurBefore.Width = txtBlurOut.Width - (cmdBlurMoveBefore.Width + 8);
|
|
cmdBlurMoveBefore.Left = txtBlurBefore.Left + txtBlurBefore.Width + 8;
|
|
|
|
//karaoke
|
|
panelEffect.Width = tabWidth - (panelEffect.Left + 4);
|
|
panelLayer.Width = panelEffect.Width;
|
|
tabControl1.Width = panelEffect.Width - 8;
|
|
lstEffectOptions.Width = panelEffect.Width - 32;
|
|
lstEffectConditions.Width = lstEffectOptions.Width;
|
|
lstLayerConditions.Width = panelEffect.Width - 8;
|
|
}
|
|
|
|
|
|
#region Splitter/Focus stuff
|
|
Control focused = null;
|
|
private Control getFocused(Control.ControlCollection controls) {
|
|
foreach (Control c in controls) {
|
|
if (c.Focused)
|
|
return c;
|
|
else if (c.ContainsFocus)
|
|
return getFocused(c.Controls);
|
|
}
|
|
return null;
|
|
}
|
|
void splitContainer1_MouseDown(object sender, MouseEventArgs e) {
|
|
focused = getFocused(this.Controls);
|
|
}
|
|
|
|
void splitContainer1_MouseUp(object sender, MouseEventArgs e) {
|
|
if (focused!=null) {
|
|
focused.Focus();
|
|
focused = null;
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Menu
|
|
private void menuOpen_Click(object sender, System.EventArgs e) {
|
|
openFileDialog1.Filter = "ASS,SSA Files|*.ass;*.ssa";
|
|
openFileDialog1.FileName = String.Empty;
|
|
if (openFileDialog1.ShowDialog() == DialogResult.OK) LoadFile(openFileDialog1.FileName, null);
|
|
}
|
|
private void menuOpenSJIS_Click(object sender, System.EventArgs e) {
|
|
openFileDialog1.Filter = "ASS,SSA Files|*.ass;*.ssa";
|
|
openFileDialog1.FileName = String.Empty;
|
|
//openFileDialog1.Filter
|
|
if (openFileDialog1.ShowDialog() == DialogResult.OK) LoadFile(openFileDialog1.FileName, Encoding.GetEncoding("Shift_JIS"));
|
|
}
|
|
private void menuOpenEUCJP_Click(object sender, EventArgs e) {
|
|
openFileDialog1.Filter = "ASS,SSA Files|*.ass;*.ssa";
|
|
openFileDialog1.FileName = String.Empty;
|
|
if (openFileDialog1.ShowDialog() == DialogResult.OK) LoadFile(openFileDialog1.FileName, Encoding.GetEncoding("euc-jp"));
|
|
}
|
|
private void menuLoadEffects_Click(object sender, System.EventArgs e) {
|
|
openFileDialog1.Filter = "XML Files (*.xml)|*.xml";
|
|
if (openFileDialog1.ShowDialog() == DialogResult.OK) LoadEffectsFile(openFileDialog1.FileName);
|
|
}
|
|
private void menuLoadProj_Click(object sender, System.EventArgs e) {
|
|
openFileDialog1.Filter = "XML files (*.xml)|*.xml";
|
|
if (openFileDialog1.ShowDialog() == DialogResult.OK) {
|
|
layerColl = LoadProject(openFileDialog1.FileName);
|
|
RedrawKaraEffectsTree();
|
|
if (layerColl.Count != 0) treeKaraoke.SelectedNode = treeKaraoke.Nodes[0];
|
|
}
|
|
}
|
|
private void menuSaveProj_Click(object sender, System.EventArgs e) {
|
|
SaveFileDialogWithEncoding ofd = new SaveFileDialogWithEncoding();
|
|
ofd.DefaultExt = "xml";
|
|
ofd.EncodingType = EncodingType.UTF8;
|
|
ofd.Filter = "XML files (*.xml)|*.xml|All files (*.*)|*.*";
|
|
if (ofd.ShowDialog((IntPtr)this.Handle, Screen.FromControl(this), "UTF-8") == DialogResult.OK) {
|
|
SaveProject(ofd.FileName);
|
|
}
|
|
}
|
|
private void menuFilter_Click(object sender, System.EventArgs e) {
|
|
if (CurLayer != null) {
|
|
Filter tf = GetTemplateFilterFromName(((MenuItem)sender).Text);
|
|
if (tf != null) {
|
|
CurLayer.AddFilter((Filter)tf.Clone());
|
|
TreeNode tn = new TreeNode(tf.Name);
|
|
tn.Checked = true;
|
|
int selected = treeKaraoke.SelectedNode.Level == 0 ? treeKaraoke.SelectedNode.Index : treeKaraoke.SelectedNode.Parent.Index;
|
|
treeKaraoke.Nodes[selected].Nodes.Add(tn);
|
|
treeKaraoke.SelectedNode = tn;
|
|
// = treeKaraoke.Nodes[selected].Nodes[CurLayer.Count - 1];
|
|
}
|
|
else MessageBox.Show("Filter not found in template class. Try reloading the program.");
|
|
}
|
|
else MessageBox.Show("Add or select a layer first.");
|
|
}
|
|
private void menuFont_Click(object sender, System.EventArgs e) {
|
|
fontDialog1.Font = listSSA.Font;
|
|
DialogResult dr = fontDialog1.ShowDialog(this);
|
|
if (dr == DialogResult.OK)
|
|
listSSA.Font = fontDialog1.Font;
|
|
}
|
|
private void menuSave_Click(object sender, System.EventArgs e) {
|
|
if (!CurFile.Equals(String.Empty)) SaveFile(CurFile);
|
|
else menuSaveAs.PerformClick();
|
|
}
|
|
private void menuSaveAs_Click(object sender, System.EventArgs e) {
|
|
SaveFileDialogWithEncoding ofd = new SaveFileDialogWithEncoding();
|
|
ofd.DefaultExt = "ass";
|
|
ofd.EncodingType = EncodingType.Unicode;
|
|
ofd.Filter = "SSA/ASS files (*.ass;*.ssa)|*.ass;*.ssa|All files (*.*)|*.*";
|
|
if (ofd.ShowDialog((IntPtr)this.Handle, Screen.FromControl(this), enc == null ? string.Empty : enc.ToString()) == DialogResult.OK) {
|
|
enc = SaveFileDialogWithEncoding.stringToEncodingType(ofd.EncodingType.ToString());
|
|
SaveFile(ofd.FileName);
|
|
|
|
}
|
|
}
|
|
|
|
private void menuShowEffectsEditor_Click(object sender, System.EventArgs e) {
|
|
formEffectsEditor editor = new formEffectsEditor(templateFilterColl);
|
|
editor.Show();
|
|
}
|
|
private void menuGoTo_Click(object sender, System.EventArgs e) {
|
|
InputBoxResult newvalue = (InputBox.Show("Enter line number (from 1)", "Input", GetFirstSelected().ToString(Util.cfi)));
|
|
int index;
|
|
if ((newvalue.OK == true) && (int.TryParse(newvalue.Text, out index))) {
|
|
if ((index >= 0) && (index < lineColl.Count)) {
|
|
for (int listindex = lineColl.Count; listindex != 0; --listindex)
|
|
listSSA.Items[listindex].Selected = false;
|
|
listSSA.Items[index].Selected = true;
|
|
}
|
|
else
|
|
MessageBox.Show("Invalid line.");
|
|
}
|
|
}
|
|
private void menuNewLineBeginning_Click(object sender, System.EventArgs e) {
|
|
NewLine(0);
|
|
}
|
|
private void menuNewLineEnd_Click(object sender, System.EventArgs e) {
|
|
NewLine((lineColl.Count == 0) ? 0 : (lineColl.Count - 1));
|
|
}
|
|
private void menuNewLineAbove_Click(object sender, System.EventArgs e) {
|
|
int index = GetFirstSelected();
|
|
if (index != -1)
|
|
NewLine(index);
|
|
else MessageBox.Show("Select an item first.");
|
|
}
|
|
private void menuNewLineBelow_Click(object sender, System.EventArgs e) {
|
|
int index = GetFirstSelected();
|
|
if (index != -1)
|
|
NewLine(index + 1);
|
|
else MessageBox.Show("Select an item first.");
|
|
}
|
|
private void menuMoveLineUp_Click(object sender, System.EventArgs e) {
|
|
if (lineColl != null) {
|
|
int index = GetFirstSelected();
|
|
if (index > 0) { // can't be -1 and can't be 0 (how can you move the first line up?)
|
|
Line swap = lineColl[index];
|
|
lineColl[index] = lineColl[index - 1];
|
|
lineColl[index - 1] = swap;
|
|
DrawListOnScreen();
|
|
}
|
|
else MessageBox.Show("Select an item that is not on the top first.");
|
|
}
|
|
}
|
|
private void menuMoveLineDown_Click(object sender, System.EventArgs e) {
|
|
if (lineColl != null) {
|
|
int index = GetFirstSelected();
|
|
if ((index != -1) && (index + 1 != lineColl.Count)) {
|
|
Line swap = lineColl[index];
|
|
lineColl[index] = lineColl[index + 1];
|
|
lineColl[index + 1] = swap;
|
|
DrawListOnScreen();
|
|
}
|
|
else MessageBox.Show("Select an item that is not on the bottom first.");
|
|
}
|
|
}
|
|
private void menuChangeLine_Click(object sender, System.EventArgs e) {
|
|
int index = GetFirstSelected();
|
|
if (index != -1) {
|
|
Line oldline = lineColl[index];
|
|
InputBoxResult newvalue = (InputBox.Show("Enter new text", "Input", oldline.ToString()));
|
|
if (newvalue.OK == true) {
|
|
Line newline = Line.ParseLine(newvalue.Text);
|
|
newline.enabled = oldline.enabled;
|
|
newline.selected = oldline.selected;
|
|
Style newstyle=null;
|
|
if (newline.lineType == LineType.style) {
|
|
newstyle = (Style)newline.line;
|
|
styleColl.Add(newstyle);
|
|
lstStyles.Items.Add(newstyle.name);
|
|
}
|
|
if (oldline.lineType == LineType.style && newline.lineType == LineType.style) {
|
|
for (int i = 0; i != lineColl.Count; i += 1) {
|
|
Line l = lineColl[i];
|
|
if (l.lineType==LineType.dialogue&&((DialogueLine)l.line).style==oldline.line)
|
|
((DialogueLine)l.line).style=newstyle;
|
|
}
|
|
ReparseErrors();
|
|
}
|
|
if (oldline.lineType == LineType.style) {
|
|
Style oldstyle = (Style)oldline.line;
|
|
lstStyles.Items.Remove(oldstyle.name);
|
|
styleColl.Remove(oldstyle);
|
|
}
|
|
|
|
LineCUndo lu = new LineCUndo();
|
|
lu.index = index;
|
|
lu.line = oldline;
|
|
undoStack.Push(lu);
|
|
menuUndo.Enabled = true;
|
|
lineColl[index] = newline;
|
|
DrawListOnScreen();
|
|
}
|
|
}
|
|
else MessageBox.Show("Select a line first.");
|
|
}
|
|
private void menuRemoveLine_Click(object sender, System.EventArgs e) {
|
|
if (lineColl != null && undoStack != null) {
|
|
listSSA.BeginUpdate();
|
|
List<LineUndo> lul = new List<LineUndo>();
|
|
LineUndo lu;
|
|
for (int index = lineColl.Count - 1; index != -1; index--) {
|
|
if (lineColl[index].selected) {
|
|
listSSA.VirtualListSize--;
|
|
lu = new LineUndo();
|
|
lu.index = index;
|
|
lu.line = lineColl[index];
|
|
lul.Add(lu);
|
|
lineColl.RemoveAt(index);
|
|
}
|
|
}
|
|
undoStack.Push(lul);
|
|
menuUndo.Enabled = true;
|
|
listSSA.EndUpdate();
|
|
}
|
|
}
|
|
private void menuExit_Click(object sender, System.EventArgs e) {
|
|
Application.Exit();
|
|
}
|
|
private void menuPrecisioncs_Click(object sender, EventArgs e) {
|
|
Util.PrecisionF = 10.0F;
|
|
Util.Precision = 2;
|
|
menuPrecisioncs.Checked = !(menuPrecisionms.Checked = false);
|
|
DrawListOnScreen();
|
|
}
|
|
private void menuPrecisionms_Click(object sender, EventArgs e) {
|
|
Util.PrecisionF = 1.0F;
|
|
Util.Precision = 3;
|
|
menuPrecisionms.Checked = !(menuPrecisioncs.Checked = false);
|
|
DrawListOnScreen();
|
|
}
|
|
private void menuSelectRange_Click(object sender, EventArgs e) {
|
|
if (lineColl.Count != 0) {
|
|
InputBoxResult firstline = InputBox.Show("Enter the first line number", "Input", string.Empty);
|
|
InputBoxResult lastline = InputBox.Show("Enter the last line number", "Input", string.Empty);
|
|
if ((firstline.OK == true) && (lastline.OK == true)) {
|
|
int first, last;
|
|
if ((int.TryParse(firstline.Text, out first)) && (int.TryParse(lastline.Text, out last))
|
|
&& (first > 0) && (first <= last) && (last <= lineColl.Count)) {
|
|
first--; last--;
|
|
for (int index = lineColl.Count; index != 0; --index)
|
|
listSSA.Items[index].Selected = (index >= first && index < last) ? true : false;
|
|
}
|
|
else MessageBox.Show("Enter valid numbers.");
|
|
}
|
|
else MessageBox.Show("You must enter both first and last line numbers.");
|
|
}
|
|
else MessageBox.Show("Load a file first.");
|
|
}
|
|
private void menuDeselectRange_Click(object sender, EventArgs e) {
|
|
if (lineColl.Count != 0) {
|
|
InputBoxResult firstline = InputBox.Show("Enter the first line number", "Input", string.Empty);
|
|
InputBoxResult lastline = InputBox.Show("Enter the last line number", "Input", string.Empty);
|
|
if ((firstline.OK == true) && (lastline.OK == true)) {
|
|
//if ((Evaluate.isNum(firstline.Text)) && (Evaluate.isNum(lastline.Text)) && (int.Parse(firstline.Text, Util.cfi) > 0) && (int.Parse(firstline.Text, Util.cfi) <= int.Parse(lastline.Text, Util.cfi)) && (int.Parse(lastline.Text, Util.cfi) <= listSSA.Items.Count))
|
|
// for (int index = listSSA.Items.Count;index!=0;--index)
|
|
// listSSA.Items[index].Selected = (index >= first && index < last)?true:false;
|
|
//else MessageBox.Show("Enter valid numbers.");
|
|
}
|
|
else MessageBox.Show("You must enter both first and last line numbers.");
|
|
}
|
|
else MessageBox.Show("Load a file first.");
|
|
}
|
|
|
|
private void menuUndo_Click(object sender, EventArgs e) {
|
|
UndoRedo(undoStack, redoStack);
|
|
}
|
|
private void menuRedo_Click(object sender, EventArgs e) {
|
|
UndoRedo(redoStack, undoStack);
|
|
}
|
|
private void menuClearUndoRedo_Click(object sender, EventArgs e) {
|
|
undoStack = new Stack();
|
|
redoStack = new Stack();
|
|
GC.Collect();
|
|
menuUndo.Enabled = menuRedo.Enabled = false;
|
|
}
|
|
#endregion
|
|
|
|
#region Karaoke effects
|
|
private void textLayerRepetitions_KeyPress(object sender, KeyPressEventArgs e) {
|
|
if (((!char.IsDigit(e.KeyChar)) || (e.KeyChar == '.')) && (e.KeyChar != 8) && (e.KeyChar != 177))
|
|
e.Handled = true;
|
|
}
|
|
private void textLayerRepetitions_Leave(object sender, EventArgs e) {
|
|
int reps;
|
|
if (string.IsNullOrEmpty(textLayerRepetitions.Text) || !int.TryParse(textLayerRepetitions.Text, out reps) || (reps < 1))
|
|
textLayerRepetitions.Text = CurLayer.Repetitions.ToString(Util.cfi);
|
|
else if (CurLayer != null)
|
|
CurLayer.Repetitions = reps;
|
|
}
|
|
private void chkSyllablePerLine_CheckedChanged(object sender, EventArgs e) {
|
|
if (CurLayer != null) CurLayer.SyllablePerLine = chkSyllablePerLine.Checked;
|
|
chkLayerPerSyllable.Enabled = !chkSyllablePerLine.Checked;
|
|
textLayerRepetitions.Enabled = !chkSyllablePerLine.Checked;
|
|
}
|
|
private void chkLayerPerSyllable_CheckedChanged(object sender, System.EventArgs e) {
|
|
if (CurLayer != null) CurLayer.PerSyllable = chkLayerPerSyllable.Checked;
|
|
textLayerRepetitions.Enabled = !chkLayerPerSyllable.Checked;
|
|
chkSyllablePerLine.Enabled = !chkLayerPerSyllable.Checked;
|
|
}
|
|
private void chkAddAnyway_CheckedChanged(object sender, System.EventArgs e) {
|
|
if (CurLayer != null) CurLayer.AddAll = chkAddAnyway.Checked;
|
|
}
|
|
private void chkAddOnce_CheckedChanged(object sender, System.EventArgs e) {
|
|
if (CurLayer != null) CurLayer.AddOnce = chkAddOnce.Checked;
|
|
}
|
|
|
|
private void chkKaraAddK_CheckedChanged(object sender, EventArgs e) {
|
|
CurLayer.AddK = chkKaraAddK.Checked;
|
|
}
|
|
private void chkKaraAddASSA_CheckedChanged(object sender, EventArgs e) {
|
|
CurLayer.AddASSA = chkKaraAddASSA.Checked;
|
|
}
|
|
private void chkKaraAddClosingBracket_CheckedChanged(object sender, EventArgs e) {
|
|
CurLayer.AddBracket = chkKaraAddClosingBracket.Checked;
|
|
}
|
|
private void chkKaraAddText_CheckedChanged(object sender, EventArgs e) {
|
|
CurLayer.AddText = chkKaraAddText.Checked;
|
|
}
|
|
|
|
private void cmdNewLayer_Click(object sender, System.EventArgs e) {
|
|
Layer nl = new Layer();
|
|
nl.Enabled = true;
|
|
nl.Name = "Layer " + (layerColl.Count).ToString(Util.nfi);
|
|
layerColl.Add(nl);
|
|
TreeNode tn = new TreeNode("Layer " + (layerColl.Count-1).ToString(Util.nfi));
|
|
tn.Checked = true;
|
|
treeKaraoke.SelectedNode = treeKaraoke.Nodes[treeKaraoke.Nodes.Add(tn)];
|
|
}
|
|
private void cmdKaraDel_Click(object sender, System.EventArgs e) {
|
|
if (treeKaraoke.SelectedNode != null) {
|
|
if (treeKaraoke.SelectedNode != null) {
|
|
if (treeKaraoke.SelectedNode.Level == 0) // Removing a layer
|
|
layerColl.RemoveAt(treeKaraoke.SelectedNode.Index);
|
|
else // Removing a filter
|
|
CurLayer.RemoveFilter(treeKaraoke.SelectedNode.Index);
|
|
}
|
|
treeKaraoke.SelectedNode.Remove();
|
|
}
|
|
}
|
|
private void cmdKaraDup_Click(object sender, System.EventArgs e) {
|
|
int level = treeKaraoke.SelectedNode.Level;
|
|
TreeNode tn;
|
|
if (level == 0) {
|
|
layerColl.Add((Layer)(layerColl[treeKaraoke.SelectedNode.Index]).Clone());
|
|
RedrawKaraEffectsTree();
|
|
}
|
|
else if (CurLayer != null) {
|
|
CurLayer.AddFilter((Filter)CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).Clone());
|
|
tn = treeKaraoke.SelectedNode.Parent.Nodes.Add(treeKaraoke.SelectedNode.Text);
|
|
tn.Checked = treeKaraoke.SelectedNode.Checked;
|
|
}
|
|
else MessageBox.Show("Select a layer first.");
|
|
}
|
|
private void cmdAddEffect_Click(object sender, System.EventArgs e) {
|
|
//Context menu is created in function "EventContext"
|
|
cmdAddEffect.ContextMenu.Show(cmdAddEffect, new System.Drawing.Point(cmdAddEffect.Width >> 1));
|
|
}
|
|
private void cmdAddEffectCondition_Click(object sender, System.EventArgs e) {
|
|
if (treeKaraoke.SelectedNode.Level == 1) {
|
|
ConditionDialogResult cdr = ConditionDialog.Show("Design a new effect condition.", "Input");
|
|
if (cdr.OK == true) {
|
|
string[] cond = new string[3];
|
|
ListViewItem lvi;
|
|
|
|
CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).AddCondition(cdr.ConditionOne, cdr.ConditionComp, cdr.ConditionTwo, true);
|
|
|
|
cond[0] = cdr.ConditionOne;
|
|
cond[1] = cdr.ConditionComp;
|
|
cond[2] = cdr.ConditionTwo;
|
|
lvi = new ListViewItem(cond);
|
|
lvi.Checked = true;
|
|
lstEffectConditions.Items.Add(lvi);
|
|
}
|
|
}
|
|
else MessageBox.Show("Add or select an existing effect first.");
|
|
}
|
|
private void cmdDelEffectCondition_Click(object sender, System.EventArgs e) {
|
|
if ((lstEffectConditions.SelectedItems.Count > 0) && (treeKaraoke.SelectedNode.Level == 1)) {
|
|
CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).RemoveCondition(lstEffectConditions.SelectedItems[0].Index);
|
|
lstEffectConditions.SelectedItems[0].Remove();
|
|
}
|
|
else MessageBox.Show("Add or select an existing effect first.");
|
|
}
|
|
private void cmdNewLayerCondition_Click(object sender, EventArgs e) {
|
|
if (treeKaraoke.SelectedNode != null && treeKaraoke.SelectedNode.Level == 0) {
|
|
ConditionDialogResult cdr = ConditionDialog.Show("Design a new layer condition.", "Input");
|
|
if (cdr.OK == true) {
|
|
string[] cond = new string[3];
|
|
ListViewItem lvi;
|
|
|
|
CurLayer.AddCondition(cdr.ConditionOne, cdr.ConditionComp, cdr.ConditionTwo, true);
|
|
|
|
cond[0] = cdr.ConditionOne;
|
|
cond[1] = cdr.ConditionComp;
|
|
cond[2] = cdr.ConditionTwo;
|
|
lvi = new ListViewItem(cond);
|
|
lvi.Checked = true;
|
|
lstLayerConditions.Items.Add(lvi);
|
|
}
|
|
}
|
|
else MessageBox.Show("Add or select an existing layer first.");
|
|
}
|
|
private void cmdDelLayerCondition_Click(object sender, System.EventArgs e) {
|
|
if ((treeKaraoke.SelectedNode.Level == 0) && (lstLayerConditions.SelectedItems.Count > 0)) {
|
|
CurLayer.RemoveCondition(lstLayerConditions.SelectedItems[0].Index);
|
|
lstLayerConditions.SelectedItems[0].Remove();
|
|
}
|
|
else MessageBox.Show("Add or select an existing layer and layer condition first.");
|
|
}
|
|
|
|
private void cmdDoEffects_Click(object sender, System.EventArgs e) {
|
|
double startTime = 0, endTime = 0;
|
|
string syllableText = string.Empty, sFiltCode;
|
|
int[,] times;
|
|
System.Text.StringBuilder sb, thisFiltCode, conditionOne;
|
|
MatchCollection mc;
|
|
Condition c;
|
|
List<Line> newList = new List<Line>();
|
|
Line mainline, line;
|
|
DialogueLine dl;
|
|
Match m;
|
|
Layer thislayer;
|
|
Filter thisfilter;
|
|
FilterOption thisoption;
|
|
int layerNumLPSTot, totKaraNum, karaIndex, thisKaraLen, thisKaraStart;
|
|
int filterIndex, optionIndex, thisKaraEnd, layerIndex, lineindex, lastindex;
|
|
int textstart, textlen;
|
|
bool conditionMet;
|
|
labelSelLine.Text = string.Empty;
|
|
|
|
|
|
for (lineindex = 0; lineindex != lineColl.Count; lineindex+=1) {
|
|
mainline = lineColl[lineindex];
|
|
|
|
if ((mainline.enabled == false) || (mainline.lineType != LineType.dialogue) || ((dl = (DialogueLine)mainline.line).style.enabled == false) || (r.IsMatch(((DialogueLine)mainline.line).text) == false)) {
|
|
newList.Add(mainline);
|
|
continue;
|
|
}
|
|
mc = r.Matches(dl.text);
|
|
|
|
startTime = dl.start.TotalSeconds;
|
|
endTime = dl.end.TotalSeconds;
|
|
|
|
totKaraNum = mc.Count;
|
|
times = new int[totKaraNum, 5];
|
|
for (karaIndex = 0; karaIndex != mc.Count; karaIndex+=1) {
|
|
m = mc[karaIndex];
|
|
if (karaIndex != 0) {
|
|
times[karaIndex, 0] = times[karaIndex - 1, 2]; // end time of last syllable is start time of this syllable
|
|
times[karaIndex, 3] = times[karaIndex - 1, 3] + times[karaIndex - 1, 4];
|
|
}
|
|
times[karaIndex, 1] = int.Parse(m.Groups[2].Value, Util.nfi) * 10;
|
|
times[karaIndex, 2] = times[karaIndex, 0] + times[karaIndex, 1]; // end time of this syllable is start time + length
|
|
times[karaIndex, 4] = m.Groups[5].Value.Length;
|
|
}
|
|
|
|
for (layerIndex = 0; layerIndex != layerColl.Count; layerIndex+=1) {
|
|
thislayer = layerColl[layerIndex];
|
|
if (thislayer.Enabled == false) continue;
|
|
|
|
layerNumLPSTot = (thislayer.PerSyllable) ? totKaraNum : thislayer.Repetitions;
|
|
|
|
// The following loop is for layer-per-syllable
|
|
for (int layerIndexInside = 0; layerIndexInside != layerNumLPSTot; layerIndexInside+=1) {
|
|
line = (Line)mainline.Clone();
|
|
dl = (DialogueLine)line.line;
|
|
|
|
conditionMet = true;
|
|
|
|
for (int layercondIndex = 0; layercondIndex != thislayer.ConditionCount; layercondIndex+=1) {
|
|
c = thislayer.GetCondition(layercondIndex);
|
|
if (c.ConditionEnabled == false) continue;
|
|
conditionOne = new StringBuilder(32);
|
|
conditionOne.Append(String.Format("({0}){1}({2})", c.ConditionOne, c.ConditionOp, c.ConditionTwo));
|
|
|
|
if (conditionOne.ToString().Contains("%")) {
|
|
conditionOne = conditionOne.Replace("%karanumtot%", totKaraNum.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernumtot%", layerColl.Count.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernum%", layerIndex.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernumlpstot%", layerNumLPSTot.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernumlps%", layerIndexInside.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%linenum%", layerIndex.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%linelen%", (endTime - startTime).ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%linestart%", startTime.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%lineend%", endTime.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%style%", dl.style.name);
|
|
conditionOne = conditionOne.Replace("%name%", dl.actor);
|
|
|
|
if (conditionOne.ToString().IndexOf("%") != -1) { // see if the % is STILL there
|
|
string c1 = conditionOne.ToString();
|
|
string cnew = String.Empty;
|
|
int lastindex1=0,krindex=0,krcindex=0;
|
|
while(true) {
|
|
krindex = Math.Min(c1.IndexOf("%karastart[", krcindex) + 10, Math.Min(c1.IndexOf("%karaend[", krcindex) + 8, c1.IndexOf("%karalength[", krcindex) + 11));
|
|
if (krindex==-1 || krindex<krcindex) break;
|
|
krcindex = c1.IndexOf("]", krindex);
|
|
if (krcindex==-1) break;
|
|
string r1 = c1.Substring(krindex, krcindex-krindex);
|
|
cnew = cnew + c1.Substring(lastindex1, krindex - lastindex1) + Evaluate.ScriptParse(r1);
|
|
lastindex1 = krcindex;
|
|
}
|
|
if (lastindex1 < c1.Length) cnew += c1.Substring(lastindex1, c1.Length - lastindex1);
|
|
conditionOne = new StringBuilder(cnew);
|
|
|
|
for (krindex = 0; krindex != totKaraNum; krindex+=1) {
|
|
conditionOne = conditionOne.Replace("%karastart[" + krindex.ToString(Util.cfi) + "]%", times[krindex, 0].ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karalength[" + krindex.ToString(Util.cfi) + "]%", times[krindex, 1].ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karaend[" + krindex.ToString(Util.cfi) + "]%", times[krindex, 2].ToString(Util.nfi));
|
|
}
|
|
}
|
|
}
|
|
|
|
conditionMet = Evaluate.Eval(Evaluate.ScriptParse(conditionOne.ToString())).Equals(true);
|
|
|
|
if (conditionMet == false) break;
|
|
}
|
|
|
|
if (conditionMet == false) {
|
|
if ((thislayer.AddAll == true) || ((thislayer.AddOnce == true) && (layerIndexInside == 1)))
|
|
newList.Add(line);
|
|
continue;
|
|
}
|
|
|
|
sb = new System.Text.StringBuilder(1024); // create a new stringbuilder
|
|
|
|
lastindex = 0;
|
|
for (karaIndex = 0; karaIndex != mc.Count; karaIndex+=1) {
|
|
m = mc[karaIndex];
|
|
if (m.Index > lastindex) sb.Append(dl.text.Substring(lastindex, m.Index - lastindex));
|
|
thisKaraStart = times[karaIndex, 0];
|
|
thisKaraLen = times[karaIndex, 1];
|
|
thisKaraEnd = times[karaIndex, 2];
|
|
textstart = times[karaIndex, 3];
|
|
textlen = times[karaIndex, 4];
|
|
|
|
for (filterIndex = 0; filterIndex != thislayer.Count; filterIndex+=1) {
|
|
thisfilter = thislayer.GetFilter(filterIndex);
|
|
if (thisfilter.Enabled == false) continue;
|
|
|
|
conditionMet = true;
|
|
|
|
//effect conditions
|
|
for (int effectcondIndex = 0; effectcondIndex != thisfilter.ConditionCount; effectcondIndex+=1) {
|
|
c = thisfilter.GetCondition(effectcondIndex);
|
|
if (c.ConditionEnabled == false) continue;
|
|
conditionOne = new StringBuilder(32);
|
|
|
|
conditionOne.Append(String.Format("({0}){1}({2})", c.ConditionOne, c.ConditionOp, c.ConditionTwo));
|
|
|
|
if (conditionOne.ToString().Contains("%")) {
|
|
conditionOne = conditionOne.Replace("%karalen%", thisKaraLen.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karastart%", thisKaraStart.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karamid%", (thisKaraStart + (thisKaraLen >> 1)).ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karaend%", thisKaraEnd.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karanum%", karaIndex.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karanumtot%", totKaraNum.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%linenum%", lineindex.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%linelen%", (endTime - startTime).ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%linestart%", startTime.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%lineend%", endTime.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernumtot%", layerColl.Count.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernum%", layerIndex.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernumlpstot%", layerNumLPSTot.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%layernumlps%", layerIndexInside.ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%style%", dl.style.name);
|
|
conditionOne = conditionOne.Replace("%name%", dl.actor);
|
|
conditionOne = conditionOne.Replace("%lastkarastart%", (times[Math.Max(0, karaIndex - 2), 0]).ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%nextkaraend%", (times[Math.Min(totKaraNum - 1, karaIndex + 1), 0]).ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%text%", String.IsNullOrEmpty(m.Groups[5].Value) ? string.Empty : m.Groups[5].Value);
|
|
|
|
if (conditionOne.ToString().IndexOf("%") != -1) { // see if the % is STILL there
|
|
string c1 = conditionOne.ToString();
|
|
string cnew = String.Empty;
|
|
int lastindex1 = 0, krindex = 0, krcindex = 0;
|
|
while (true) {
|
|
krindex = Math.Min(c1.IndexOf("%karastart[", krcindex) + 10, Math.Min(c1.IndexOf("%karaend[", krcindex) + 8, c1.IndexOf("%karalength[", krcindex) + 11));
|
|
if (krindex == -1 || krindex < krcindex) break;
|
|
krcindex = c1.IndexOf("]", krindex);
|
|
if (krcindex == -1) break;
|
|
string r1 = c1.Substring(krindex, krcindex - krindex);
|
|
cnew = cnew + c1.Substring(lastindex1, krindex - lastindex1) + Evaluate.ScriptParse(r1);
|
|
lastindex1 = krcindex;
|
|
}
|
|
if (lastindex1 < c1.Length) cnew += c1.Substring(lastindex1, c1.Length - lastindex1);
|
|
conditionOne = new StringBuilder(cnew);
|
|
|
|
for (krindex = 0; krindex != totKaraNum; krindex+=1) {
|
|
conditionOne = conditionOne.Replace("%karastart[" + krindex.ToString(Util.cfi) + "]%", times[krindex, 0].ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karalength[" + krindex.ToString(Util.cfi) + "]%", times[krindex, 1].ToString(Util.nfi));
|
|
conditionOne = conditionOne.Replace("%karaend[" + krindex.ToString(Util.cfi) + "]%", times[krindex, 2].ToString(Util.nfi));
|
|
}
|
|
}
|
|
}
|
|
|
|
conditionMet = Evaluate.Eval(Evaluate.ScriptParse(conditionOne.ToString())).Equals(true);
|
|
if (conditionMet == false) break;
|
|
}
|
|
|
|
if (conditionMet == false) continue;
|
|
|
|
thisFiltCode = new StringBuilder(128);
|
|
thisFiltCode.Append(thisfilter.Template.Code);
|
|
|
|
if (thisFiltCode.Equals(String.Empty)) break;
|
|
|
|
for (optionIndex = 0; optionIndex != thisfilter.NumOptions; optionIndex+=1) {
|
|
thisoption = thisfilter.GetOptionByIndex(optionIndex);
|
|
thisFiltCode = thisFiltCode.Replace("$" + thisoption.Name + "$", thisoption.Value);
|
|
}
|
|
sFiltCode = thisFiltCode.ToString();
|
|
if (sFiltCode.Contains("%")) {
|
|
//Variables
|
|
if (sFiltCode.Contains("%pos%")) {
|
|
thisFiltCode = thisFiltCode.Replace("%pos%", dl.GetRect(textstart, textlen).X.ToString(Util.nfi) + "," + dl.GetRect(textstart, textlen).Y.ToString(Util.nfi));
|
|
}
|
|
thisFiltCode = thisFiltCode.Replace("%karalen%", thisKaraLen.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%karastart%", thisKaraStart.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%karamid%", (thisKaraStart + (thisKaraLen >> 1)).ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%karaend%", thisKaraEnd.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%karanum%", karaIndex.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%karanumtot%", totKaraNum.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%linenum%", lineindex.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%linelen%", (endTime - startTime).ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%linestart%", startTime.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%lineend%", endTime.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%layernumtot%", layerColl.Count.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%layernum%", layerIndex.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%layernumlpstot%", layerNumLPSTot.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%layernumlps%", layerIndexInside.ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%style%", dl.style.name);
|
|
thisFiltCode = thisFiltCode.Replace("%name%", dl.actor);
|
|
thisFiltCode = thisFiltCode.Replace("%lastkarastart%", (times[Math.Max(0, karaIndex - 2), 0]).ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%nextkaraend%", (times[Math.Min(totKaraNum - 1, karaIndex + 1), 0]).ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%text%", String.IsNullOrEmpty(m.Groups[5].Value) ? string.Empty : m.Groups[5].Value);
|
|
|
|
if (sFiltCode.IndexOf("%") != -1) { // see if the % is STILL there
|
|
string tfc1 = thisFiltCode.ToString();
|
|
string tfcnew = String.Empty;
|
|
int lastindex1 = 0, krindex = 0, krcindex = 0;
|
|
while (true) {
|
|
krindex = Math.Min(tfc1.IndexOf("%karastart[", krcindex) + 10, Math.Min(tfc1.IndexOf("%karaend[", krcindex) + 8, tfc1.IndexOf("%karalength[", krcindex) + 11));
|
|
if (krindex == -1 || krindex < krcindex) break;
|
|
krcindex = tfc1.IndexOf("]", krindex);
|
|
if (krcindex == -1) break;
|
|
string r1 = tfc1.Substring(krindex, krcindex - krindex);
|
|
tfcnew = tfcnew + tfc1.Substring(lastindex1, krindex - lastindex1) + Evaluate.ScriptParse(r1);
|
|
lastindex1 = krcindex;
|
|
}
|
|
if (lastindex1 < tfc1.Length) tfcnew += tfc1.Substring(lastindex1, tfc1.Length - lastindex1);
|
|
thisFiltCode = new StringBuilder(tfcnew);
|
|
|
|
for (krindex = 0; krindex != totKaraNum; krindex+=1) {
|
|
thisFiltCode = thisFiltCode.Replace("%karastart[" + krindex.ToString(Util.nfi) + "]%", times[krindex, 0].ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%karalength[" + krindex.ToString(Util.nfi) + "]%", times[krindex, 1].ToString(Util.nfi));
|
|
thisFiltCode = thisFiltCode.Replace("%karaend[" + krindex.ToString(Util.nfi) + "]%", times[krindex, 2].ToString(Util.nfi));
|
|
}
|
|
}
|
|
}
|
|
|
|
sb.Append(Evaluate.ScriptParse(thisFiltCode.ToString()));
|
|
} // filterIndex
|
|
|
|
if (thislayer.AddK)
|
|
sb.Append(m.Groups[1].Value + m.Groups[2].Value);
|
|
if (thislayer.AddASSA)
|
|
sb.Append(m.Groups[3].Value);
|
|
if (thislayer.AddBracket)
|
|
sb.Append(m.Groups[4].Value);
|
|
if (thislayer.AddText && m.Groups.Count == 6)
|
|
sb.Append(m.Groups[5].Value);
|
|
|
|
if (thislayer.SyllablePerLine) {
|
|
//dl.start = dl.start.Add(TimeSpan.FromMilliseconds(thisKaraStart));
|
|
//dl.end = dl.start.Add(TimeSpan.FromMilliseconds(thisKaraLen));
|
|
dl.text = sb.ToString();
|
|
newList.Add(line);
|
|
line = (Line)mainline.Clone();
|
|
dl = (DialogueLine)line.line;
|
|
sb = new StringBuilder(768);
|
|
}
|
|
|
|
lastindex = m.Index + m.Length;
|
|
} // karaIndex
|
|
if (!thislayer.SyllablePerLine) {
|
|
if (dl.text.Length > lastindex) sb.Append(dl.text.Substring(lastindex, dl.text.Length - lastindex));
|
|
dl.text = sb.ToString();
|
|
newList.Add(line);
|
|
}
|
|
} // layerIndexInside
|
|
} // layerIndex
|
|
} // lineindex
|
|
SetLineColl(newList);
|
|
ExtractStyles();
|
|
}
|
|
|
|
private void lstEffectOptions_Click(object sender, System.EventArgs e) {
|
|
if ((lstEffectOptions.SelectedItems.Count > 0) && (treeKaraoke.SelectedNode.Level == 1)) {
|
|
InputBoxResult newvalue = (InputBox.Show("Enter a new value for " + lstEffectOptions.SelectedItems[0].Text, "Input", lstEffectOptions.SelectedItems[0].SubItems[1].Text));
|
|
if (newvalue.OK == true) {
|
|
CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).SetOptionValueByIndex(lstEffectOptions.SelectedItems[0].Index, newvalue.Text);
|
|
RedrawOptionsList();
|
|
}
|
|
}
|
|
else MessageBox.Show("Select an effect first.");
|
|
}
|
|
private void lstLayerConditions_ItemCheck(object sender, System.Windows.Forms.ItemCheckEventArgs e) {
|
|
//Index of checked item is e.Index
|
|
if (treeKaraoke.SelectedNode != null) {
|
|
Condition c = CurLayer.GetCondition(e.Index);
|
|
c.ConditionEnabled = (e.NewValue == CheckState.Checked);
|
|
}
|
|
}
|
|
private void lstEffectConditions_ItemCheck(object sender, System.Windows.Forms.ItemCheckEventArgs e) {
|
|
//Index of checked item is e.Index
|
|
if (treeKaraoke.SelectedNode.Level == 1) {
|
|
Condition c = CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).GetCondition(e.Index);
|
|
c.ConditionEnabled = (e.NewValue == CheckState.Checked);
|
|
}
|
|
else MessageBox.Show("Select an effect first.");
|
|
}
|
|
private void lstEffectConditions_SubItemEndEditing(object sender, ListViewES.LabelSubEditEndEventArgs e) {
|
|
if (!e.Cancel) {
|
|
Condition c = CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).GetCondition(e.Item.Index);
|
|
switch (e.SubIndex) {
|
|
case 0:
|
|
c.ConditionOne = e.Item.Text;
|
|
break;
|
|
case 1:
|
|
c.ConditionOp = e.Item.SubItems[1].Text;
|
|
|
|
break;
|
|
default:
|
|
c.ConditionTwo = e.Item.SubItems[2].Text;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
private void lstLayerConditions_SubItemEndEditing(object sender, ListViewES.LabelSubEditEndEventArgs e) {
|
|
if (!e.Cancel) {
|
|
Condition c = CurLayer.GetCondition(e.Item.Index);
|
|
switch (e.SubIndex) {
|
|
case 0:
|
|
c.ConditionOne = e.Item.Text;
|
|
break;
|
|
case 1:
|
|
c.ConditionOp = e.Item.SubItems[1].Text;
|
|
break;
|
|
default:
|
|
c.ConditionTwo = e.Item.SubItems[2].Text;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
private void lstLayerConditions_SubItemClicked(object sender, ListViewES.LabelSubEditEventArgs e) {
|
|
if (e.SubIndex != 1) lstLayerConditions.StartEditing(e.Item, e.SubIndex);
|
|
else lstLayerConditions.StartEditing(e.Item, e.SubIndex, new string[] { "=", "==", "!=", "!==", ">", ">=", "<", "<=" });
|
|
}
|
|
private void lstEffectConditions_SubItemClicked(object sender, ListViewES.LabelSubEditEventArgs e) {
|
|
if (e.SubIndex != 1) lstEffectConditions.StartEditing(e.Item, e.SubIndex);
|
|
else lstEffectConditions.StartEditing(e.Item, e.SubIndex, new string[] { "=", "==", "!=", "!==", ">", ">=", "<", "<=" });
|
|
}
|
|
|
|
private void treeKaraoke_AfterLabelEdit(object sender, NodeLabelEditEventArgs e) {
|
|
if (e.Label != null) {
|
|
if (treeKaraoke.SelectedNode.Level == 0) {
|
|
layerColl[e.Node.Index].Name = (e.Label.Length == 0) ? "Layer " + e.Node.Index.ToString(Util.cfi) : e.Label;
|
|
}
|
|
else {
|
|
Filter f = layerColl[e.Node.Parent.Index].GetFilter(e.Node.Index);
|
|
f.Name = (e.Label.Length == 0) ? f.Template.Name : e.Label;
|
|
}
|
|
}
|
|
}
|
|
private void treeKaraoke_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e) {
|
|
if (treeKaraoke.SelectedNode.Level == 0) {
|
|
CurLayer = (Layer)layerColl[e.Node.Index];
|
|
RedrawLayerConditions();
|
|
panelLayer.Visible = !(panelEffect.Visible = false);
|
|
}
|
|
else {
|
|
CurLayer = (Layer)layerColl[e.Node.Parent.Index];
|
|
RedrawOptionsList();
|
|
RedrawEffectConditions();
|
|
panelEffect.Visible = !(panelLayer.Visible = false);
|
|
}
|
|
}
|
|
private void treeKaraoke_ItemDrag(object sender, ItemDragEventArgs e) {
|
|
treeKaraoke.DoDragDrop(e.Item, DragDropEffects.Move);
|
|
}
|
|
private void treeKaraoke_DragDrop(object sender, DragEventArgs e) {
|
|
TreeNode tn_src = (TreeNode)e.Data.GetData(typeof(TreeNode));
|
|
Point p = treeKaraoke.PointToClient(new Point(e.X, e.Y));
|
|
TreeNode tn_dst = treeKaraoke.GetNodeAt(p.X, p.Y);
|
|
int level_src = tn_src.Level;
|
|
|
|
if (tn_dst != null) {
|
|
int level_dst = tn_dst.Level;
|
|
int level = (level_src << 1) + level_dst;
|
|
|
|
switch (level) {
|
|
case 0: // layer-layer
|
|
Layer l5s = (Layer)layerColl[tn_src.Index];
|
|
|
|
if (tn_src.Index < tn_dst.Index) {
|
|
layerColl.RemoveAt(tn_src.Index);
|
|
layerColl.Insert(tn_dst.Index, l5s);
|
|
}
|
|
else {
|
|
layerColl.Insert(tn_dst.Index, l5s);
|
|
layerColl.RemoveAt(tn_src.Index + 1);
|
|
}
|
|
break;
|
|
|
|
case 2: // effect-layer
|
|
if (tn_src.Parent != tn_dst) {
|
|
Layer l9s = (Layer)layerColl[tn_src.Parent.Index];
|
|
Layer l9d = (Layer)layerColl[tn_dst.Index];
|
|
Filter f9 = l9s.GetFilter(tn_src.Index);
|
|
l9d.AddFilter(f9);
|
|
l9s.RemoveFilter(tn_src.Index);
|
|
}
|
|
|
|
break;
|
|
|
|
case 3: //effect-effect
|
|
Layer l10s = (Layer)layerColl[tn_src.Parent.Index];
|
|
Filter f10 = l10s.GetFilter(tn_src.Index);
|
|
|
|
if (tn_src.Parent == tn_dst.Parent) {
|
|
if (tn_src.Index < tn_dst.Index) {
|
|
l10s.RemoveFilter(tn_src.Index);
|
|
l10s.InsertFilter(tn_dst.Index, f10);
|
|
}
|
|
else {
|
|
l10s.InsertFilter(tn_dst.Index, f10);
|
|
l10s.RemoveFilter(tn_src.Index + 1);
|
|
}
|
|
}
|
|
else {
|
|
Layer l10d = (Layer)layerColl[tn_dst.Parent.Index];
|
|
l10d.InsertFilter(tn_dst.Index, f10);
|
|
l10s.RemoveFilter(tn_src.Index);
|
|
}
|
|
|
|
break;
|
|
}
|
|
}
|
|
else { // Dragging to the end
|
|
if (level_src == 0) {
|
|
Layer lbs = (Layer)layerColl[tn_src.Index];
|
|
layerColl.RemoveAt(tn_src.Index);
|
|
layerColl.Insert(layerColl.Count, lbs);
|
|
}
|
|
else if (tn_src.Index + 1 != layerColl.Count) {
|
|
Layer lbs = (Layer)layerColl[tn_src.Parent.Index];
|
|
Layer lbd = (Layer)layerColl[layerColl.Count - 1];
|
|
Filter fb = lbs.GetFilter(tn_src.Index);
|
|
lbd.AddFilter(fb);
|
|
lbs.RemoveFilter(tn_src.Index);
|
|
}
|
|
}
|
|
RedrawKaraEffectsTree();
|
|
}
|
|
private void treeKaraoke_DragEnter(object sender, DragEventArgs e) {
|
|
e.Effect = DragDropEffects.Move;
|
|
}
|
|
private void treeKaraoke_AfterCheck(object sender, TreeViewEventArgs e) {
|
|
if (e.Node.Level == 0)
|
|
((Layer)layerColl[e.Node.Index]).Enabled = e.Node.Checked;
|
|
else
|
|
((Layer)layerColl[e.Node.Parent.Index]).GetFilter(e.Node.Index).Enabled = e.Node.Checked;
|
|
}
|
|
private void EventContext() {
|
|
ContextMenu effectcm = new ContextMenu();
|
|
MenuItem mi;
|
|
for (int index = 0; index != menuItem15.MenuItems.Count; index+=1) {
|
|
mi = menuItem15.MenuItems[index];
|
|
effectcm.MenuItems.Add(mi.Index, mi.CloneMenu());
|
|
}
|
|
cmdAddEffect.ContextMenu = effectcm;
|
|
}
|
|
private void RedrawLayerConditions() {
|
|
lstLayerConditions.Items.Clear();
|
|
if (treeKaraoke.SelectedNode != null) {
|
|
string[] cond;
|
|
ListViewItem lvi;
|
|
|
|
for (int index = 0; index != CurLayer.ConditionCount; index+=1) {
|
|
cond = new string[3];
|
|
cond[0] = CurLayer.GetCondition(index).ConditionOne;
|
|
cond[1] = CurLayer.GetCondition(index).ConditionOp;
|
|
cond[2] = CurLayer.GetCondition(index).ConditionTwo;
|
|
lvi = new ListViewItem(cond);
|
|
lvi.Checked = CurLayer.GetCondition(index).ConditionEnabled;
|
|
lstLayerConditions.Items.Add(lvi);
|
|
}
|
|
|
|
chkLayerPerSyllable.Checked = CurLayer.PerSyllable;
|
|
chkSyllablePerLine.Checked = CurLayer.SyllablePerLine;
|
|
chkAddAnyway.Checked = CurLayer.AddAll;
|
|
chkAddOnce.Checked = CurLayer.AddOnce;
|
|
chkKaraAddK.Checked = CurLayer.AddK;
|
|
chkKaraAddText.Checked = CurLayer.AddText;
|
|
chkKaraAddASSA.Checked = CurLayer.AddASSA;
|
|
chkKaraAddClosingBracket.Checked = CurLayer.AddBracket;
|
|
|
|
textLayerRepetitions.Enabled = !CurLayer.PerSyllable;
|
|
textLayerRepetitions.Text = CurLayer.Repetitions.ToString(Util.cfi);
|
|
}
|
|
}
|
|
private void RedrawEffectConditions() {
|
|
lstEffectConditions.Items.Clear();
|
|
if (treeKaraoke.SelectedNode.Level == 1) {
|
|
string[] cond;
|
|
Condition c;
|
|
ListViewItem lvi;
|
|
|
|
for (int index = 0; index != CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).ConditionCount; index+=1) {
|
|
c = CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).GetCondition(index);
|
|
cond = new string[3];
|
|
cond[0] = c.ConditionOne;
|
|
cond[1] = c.ConditionOp;
|
|
cond[2] = c.ConditionTwo;
|
|
lvi = new ListViewItem(cond);
|
|
lvi.Checked = c.ConditionEnabled;
|
|
lstEffectConditions.Items.Add(lvi);
|
|
}
|
|
}
|
|
}
|
|
private void RedrawKaraEffectsTree() {
|
|
TreeNode tnl, tnf;
|
|
Layer l;
|
|
Filter f;
|
|
int lindex, findex;
|
|
|
|
treeKaraoke.BeginUpdate();
|
|
treeKaraoke.Nodes.Clear();
|
|
for (lindex = 0; lindex != layerColl.Count; lindex+=1) {
|
|
l = layerColl[lindex];
|
|
tnl = new TreeNode(l.Name == null ? "Layer " + lindex.ToString(Util.cfi) : l.Name);
|
|
for (findex = 0; findex != l.Count; findex+=1) {
|
|
f = l.GetFilter(findex);
|
|
tnf = new TreeNode(f.Name == null ? f.Template.Name : f.Name);
|
|
tnf.Checked = f.Enabled;
|
|
tnl.Nodes.Add(tnf);
|
|
}
|
|
tnl.Checked = l.Enabled;
|
|
treeKaraoke.Nodes.Add(tnl);
|
|
}
|
|
treeKaraoke.ExpandAll();
|
|
treeKaraoke.EndUpdate();
|
|
}
|
|
private void RedrawOptionsList() {
|
|
if (treeKaraoke.SelectedNode.Level == 1) {
|
|
lstEffectOptions.Items.Clear();
|
|
string[] opt = new string[2];
|
|
ListViewItem lvi;
|
|
int treeindex = treeKaraoke.SelectedNode.Index;
|
|
bool foundOption = false;
|
|
|
|
Filter tc = CurLayer.GetFilter(treeindex);
|
|
|
|
Filter tf = tc.Template;
|
|
|
|
for (int index = 0; index != tf.NumOptions; index+=1) {
|
|
opt[0] = (tf.GetOptionByIndex(index)).Name;
|
|
|
|
for (int optionIndex = 0; optionIndex != CurLayer.GetFilter(treeKaraoke.SelectedNode.Index).NumOptions; optionIndex+=1) {
|
|
if ((tc.GetOptionByIndex(optionIndex)).Name == (tf.GetOptionByIndex(index)).Name) {
|
|
foundOption = true;
|
|
opt[1] = (tc.GetOptionByIndex(optionIndex)).Value;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (foundOption == false)
|
|
opt[1] = (tc.GetOptionByIndex(index)).Value;
|
|
|
|
lvi = new ListViewItem(opt);
|
|
lstEffectOptions.Items.Add(lvi);
|
|
}
|
|
}
|
|
}
|
|
private Filter GetTemplateFilterFromName(string name) {
|
|
return templateFilterColl.Find(delegate(Filter tf) { return String.Equals(tf.Name, name, StringComparison.Ordinal); });
|
|
}
|
|
#endregion
|
|
|
|
#region Gradient
|
|
private void cmdGradMoveBefore_Click(object sender, System.EventArgs e) {
|
|
txtGradBefore.Text = txtGradIn.SelectedText;
|
|
txtGradIn.SelectedText = String.Empty;
|
|
}
|
|
private void cmdGradListToInput_Click(object sender, System.EventArgs e) {
|
|
int index = GetFirstSelected();
|
|
if (index == -1)
|
|
MessageBox.Show("Select an item in the list first.");
|
|
else
|
|
txtGradIn.Text = lineColl[index].ToString();
|
|
}
|
|
private void cmdGradReplaceLine_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtGradOut, ListInsert.ReplaceLine);
|
|
}
|
|
private void cmdGradInsertBefore_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtGradOut, ListInsert.BeforeLine);
|
|
}
|
|
private void cmdGradInsertAfter_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtGradOut, ListInsert.AfterLine);
|
|
}
|
|
private void cmdGradDoGrad_Click(object sender, System.EventArgs e) {
|
|
Regex rcolor = new Regex(@"H?[0-9a-fA-F]{1,8}$");
|
|
double clines, expbase;
|
|
Point startpos,endpos,offset;
|
|
int mirrorint;
|
|
|
|
if (txtGradIn.TextLength == 0)
|
|
MessageBox.Show("Enter the text to be gradiented.");
|
|
else if (!double.TryParse(txtGradCLines.Text, System.Globalization.NumberStyles.Integer, Util.nfi, out clines))
|
|
MessageBox.Show("Enter the number of lines to generate.");
|
|
else if (txtGradStartBGR.Text == txtGradEndBGR.Text)
|
|
MessageBox.Show("Start BGR can't equal end BGR.");
|
|
else if (!Util.TryParseCoordinate(txtGradStartPos.Text,out startpos))
|
|
MessageBox.Show("Enter a valid start position.");
|
|
else if (!Util.TryParseCoordinate(txtGradEndPos.Text,out endpos))
|
|
MessageBox.Show("Enter a valid end position.");
|
|
else if (!Util.TryParseCoordinate(txtGradOffset.Text,out offset))
|
|
MessageBox.Show("Enter a valid end offset (0,0 for none).");
|
|
else if (!(double.TryParse(txtGradBase.Text, System.Globalization.NumberStyles.AllowDecimalPoint, Util.nfi, out expbase)) || (expbase < 1) || (expbase == 1 && radGradLog.Checked))
|
|
MessageBox.Show("Enter a valid base (greater than 1).");
|
|
else if ((!int.TryParse(txtGradMirror.Text, System.Globalization.NumberStyles.Integer, Util.nfi, out mirrorint)) || (mirrorint < 1) || (mirrorint > 100))
|
|
MessageBox.Show("Enter a valid number for mirroring (1-100). 100 disables mirroring. See the Readme for more info.");
|
|
else if ((txtGradStartBGR.TextLength == 0) || (!rcolor.IsMatch(txtGradStartBGR.Text)))
|
|
MessageBox.Show("Enter a valid start BGR.");
|
|
else if ((txtGradEndBGR.TextLength == 0) || (!rcolor.IsMatch(txtGradEndBGR.Text)))
|
|
MessageBox.Show("Enter a valid end BGR.");
|
|
|
|
else {
|
|
double curx, cury, cura, curr, curg, curb, groupx, groupy, ratio;
|
|
int clinesnow;
|
|
try {
|
|
double mirror = mirrorint / 100.0;
|
|
StringBuilder sb = new StringBuilder(4096);
|
|
|
|
int startx = startpos.X;
|
|
int starty = startpos.Y;
|
|
int endx = endpos.X;
|
|
int endy = endpos.Y;
|
|
int offx = offset.X;
|
|
int offy = offset.Y;
|
|
|
|
uint startbgr = 0, endbgr = 0;
|
|
|
|
startbgr = Util.ReadColor(txtGradStartBGR.Text);
|
|
endbgr = Util.ReadColor(txtGradEndBGR.Text);
|
|
|
|
byte starta = (byte)((startbgr >> 24) & 0xFF); // alpha comes first
|
|
byte startb = (byte)((startbgr >> 16) & 0xFF); //because the first 8 bits are B, they need to be shifted over 16 bits to get B alone
|
|
byte startg = (byte)((startbgr >> 8) & 0xFF); //because the second 8 bits are B, they need to be shifted over 8 bits to get G alone
|
|
byte startr = (byte)(startbgr & 0xFF); // and with 255 to get the BG out of there
|
|
byte enda = (byte)((endbgr >> 24) & 0xFF);
|
|
byte endb = (byte)((endbgr >> 16) & 0xFF); //because the first 8 bits are B, they need to be shifted over 16 bits to get B alone
|
|
byte endg = (byte)((endbgr >> 8) & 0xFF); //because the second 8 bits are B, they need to be shifted over 8 bits to get G alone
|
|
byte endr = (byte)(endbgr & 0xFF); // and with 255 to get the BG out of there
|
|
bool usealpha = (starta > 0) || (enda > 0);
|
|
bool evenlines = (clines % 2 == 0);
|
|
|
|
groupx = (double)(endx - startx) / (clines);
|
|
groupy = (double)(endy - starty) / (clines);
|
|
curx = startx;
|
|
cury = starty;
|
|
cura = (double)starta;
|
|
curr = (double)startr;
|
|
curg = (double)startg;
|
|
curb = (double)startb;
|
|
clinesnow = Convert.ToInt32(Math.Ceiling(clines * mirror), Util.nfi);
|
|
|
|
for (int mirrorindex = 0; mirrorindex != (mirror == 1 ? 1 : 2); mirrorindex+=1) {
|
|
for (int index = (mirrorindex == 0 || evenlines ? 0 : 1); index != clinesnow; index+=1) {
|
|
ratio = (double)index / (clinesnow - 1);
|
|
if (mirrorindex == 1) ratio = 1.0 - ratio;
|
|
|
|
if (radGradPoly.Checked) {
|
|
cura = Math.Pow(ratio, expbase) * (double)(enda - starta);
|
|
curr = Math.Pow(ratio, expbase) * (double)(endr - startr);
|
|
curg = Math.Pow(ratio, expbase) * (double)(endg - startg);
|
|
curb = Math.Pow(ratio, expbase) * (double)(endb - startb);
|
|
}
|
|
else if (radGradLog.Checked) {
|
|
cura = Math.Log(1 + ((expbase - 1) * ratio), expbase) * (double)(enda - starta);
|
|
curr = Math.Log(1 + ((expbase - 1) * ratio), expbase) * (double)(endr - startr);
|
|
curg = Math.Log(1 + ((expbase - 1) * ratio), expbase) * (double)(endg - startg);
|
|
curb = Math.Log(1 + ((expbase - 1) * ratio), expbase) * (double)(endb - startb);
|
|
}
|
|
else {
|
|
cura = Math.Pow(expbase, ratio) / expbase * (double)(enda - starta);
|
|
curr = Math.Pow(expbase, ratio) / expbase * (double)(endr - startr);
|
|
curg = Math.Pow(expbase, ratio) / expbase * (double)(endg - startg);
|
|
curb = Math.Pow(expbase, ratio) / expbase * (double)(endb - startb);
|
|
}
|
|
|
|
cura = (double)starta + cura;
|
|
curr = (double)startr + curr;
|
|
curg = (double)startg + curg;
|
|
curb = (double)startb + curb;
|
|
|
|
sb.Append(txtGradBefore.Text);
|
|
sb.Append(String.Format("{{\\clip({0},{1},{2},{3})",
|
|
(int)Math.Round(curx, 0), (int)Math.Round(cury, 0),
|
|
(int)Math.Round(curx + groupx, 0), (int)Math.Round(cury + groupy, 0)));
|
|
|
|
if (chkGrad1c.Checked) GradFormatter(sb, 1, usealpha, cura, curr, curg, curb);
|
|
if (chkGrad2c.Checked) GradFormatter(sb, 2, usealpha, cura, curr, curg, curb);
|
|
if (chkGrad3c.Checked) GradFormatter(sb, 3, usealpha, cura, curr, curg, curb);
|
|
if (chkGrad4c.Checked) GradFormatter(sb, 4, usealpha, cura, curr, curg, curb);
|
|
|
|
sb.AppendLine("}" + txtGradIn.Text);
|
|
|
|
curx += groupx;
|
|
cury += groupy;
|
|
}
|
|
if (mirror != 1.0) clinesnow = Convert.ToInt32(Math.Ceiling(clines * (1 - mirror)),Util.nfi);
|
|
}
|
|
|
|
|
|
txtGradOut.Text = sb.ToString().TrimEnd();
|
|
} catch { MessageBox.Show("An error occured. Check that your input parameters are correct."); }
|
|
|
|
}
|
|
}
|
|
private void GradFormatter(StringBuilder sb, int c, bool usealpha, double a, double r, double g, double b) {
|
|
sb.Append(String.Format("\\{0}c&H{4}{1:X2}{2:X2}{3:X2}&",
|
|
c, (int)Math.Round(b, 0), (int)Math.Round(g, 0), (int)Math.Round(r, 0),
|
|
(usealpha?Convert.ToString(Convert.ToInt32(Math.Round(a, 0), Util.nfi), 16):String.Empty)));
|
|
}
|
|
#endregion
|
|
|
|
#region Blur
|
|
private void chkBlur1a_CheckedChanged(object sender, System.EventArgs e) {
|
|
chkBlur1aSub.Enabled = !chkBlur1a.Checked;
|
|
|
|
}
|
|
private void chkBlur2a_CheckedChanged(object sender, System.EventArgs e) {
|
|
chkBlur2aSub.Enabled = !chkBlur2a.Checked;
|
|
}
|
|
private void chkBlur3a_CheckedChanged(object sender, System.EventArgs e) {
|
|
chkBlur3aSub.Enabled = !chkBlur3a.Checked;
|
|
}
|
|
private void chkBlur4a_CheckedChanged(object sender, System.EventArgs e) {
|
|
chkBlur4aSub.Enabled = !chkBlur4a.Checked;
|
|
}
|
|
private void radBlurHV_CheckedChanged(object sender, System.EventArgs e) {
|
|
if (radBlurHV.Checked) {
|
|
txtBlurLines.Enabled = false;
|
|
txtBlurPos.Enabled = true;
|
|
groupBlurSub.Enabled = true;
|
|
groupBlurAffect.Enabled = true;
|
|
label34.Text = "H. Blur Radius";
|
|
txtBlurRadV.Enabled = true;
|
|
}
|
|
}
|
|
private void radBlurGlow_CheckedChanged(object sender, System.EventArgs e) {
|
|
if (radBlurGlow.Checked) {
|
|
txtBlurLines.Enabled = true;
|
|
txtBlurPos.Enabled = false;
|
|
groupBlurSub.Enabled = false;
|
|
groupBlurAffect.Enabled = false;
|
|
label34.Text = "Blur Radius";
|
|
txtBlurRadV.Enabled = false;
|
|
}
|
|
}
|
|
|
|
private void cmdBlurMoveBefore_Click(object sender, System.EventArgs e) {
|
|
txtBlurBefore.Text = txtBlurIn.SelectedText;
|
|
txtBlurIn.SelectedText = String.Empty;
|
|
}
|
|
private void cmdBlurListToInput_Click(object sender, System.EventArgs e) {
|
|
int index = GetFirstSelected();
|
|
if (index == -1)
|
|
MessageBox.Show("Select an item in the list first.");
|
|
else
|
|
txtBlurIn.Text = lineColl[index].ToString();
|
|
}
|
|
private void cmdBlurInsertBefore_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtBlurOut, ListInsert.BeforeLine);
|
|
}
|
|
private void cmdBlurInsertAfter_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtBlurOut, ListInsert.AfterLine);
|
|
}
|
|
private void cmdBlurReplaceLine_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtBlurOut, ListInsert.ReplaceLine);
|
|
}
|
|
private void cmdDoBlur_Click(object sender, System.EventArgs e) {
|
|
double expbase;
|
|
int BlurLines, BlurRadH, BlurRadV=1;
|
|
|
|
if (txtBlurIn.Text.Contains("\\bord"))
|
|
MessageBox.Show("Input text must not have a border.");
|
|
else if (txtBlurIn.TextLength == 0)
|
|
MessageBox.Show("Enter an input line first.");
|
|
else if (!int.TryParse(txtBlurLines.Text, System.Globalization.NumberStyles.Integer, Util.nfi, out BlurLines))
|
|
MessageBox.Show("Enter a valid number of lines to blur.");
|
|
else if ((!int.TryParse(txtBlurRadH.Text, System.Globalization.NumberStyles.Integer, Util.nfi, out BlurRadH)) || (BlurRadH < 0)
|
|
|| ((radBlurHV.Checked) && ((!int.TryParse(txtBlurRadV.Text, System.Globalization.NumberStyles.Integer, Util.nfi, out BlurRadV)) || (BlurRadV < 0))))
|
|
MessageBox.Show("Enter a valid border.");
|
|
else if (!double.TryParse(txtBlurBase.Text, System.Globalization.NumberStyles.AllowDecimalPoint, Util.nfi, out expbase) || (expbase < 1))
|
|
MessageBox.Show("Enter a valid base (>= 1).");
|
|
|
|
else {
|
|
StringBuilder sb = new StringBuilder(4096);
|
|
double curblur, ratio;
|
|
uint BlurStart = 0, BlurEnd = 0, BlurDiff;
|
|
|
|
try {
|
|
BlurStart = Util.ReadColor(txtBlurStartAlpha.Text);
|
|
BlurEnd = Util.ReadColor(txtBlurEndAlpha.Text);
|
|
|
|
expbase = Math.Min(1, double.Parse(txtBlurBase.Text));
|
|
} catch {
|
|
MessageBox.Show("There was an error parsing one of your values.");
|
|
return;
|
|
}
|
|
|
|
BlurDiff = BlurEnd - BlurStart;
|
|
|
|
if ((BlurStart > 255) || (BlurEnd > 255))
|
|
MessageBox.Show("Blur must be from 0 to 255 (H0 to HFF)");
|
|
|
|
else if (expbase <= 1 && radBlurLog.Checked)
|
|
MessageBox.Show("Enter a valid base (greater than 1)");
|
|
|
|
else if (radBlurGlow.Checked) {
|
|
double currad;
|
|
curblur = BlurStart;
|
|
for (int blurindexhv = 1; blurindexhv <= BlurLines; blurindexhv+=1) {
|
|
currad = (blurindexhv * ((double)BlurRadH / BlurLines));
|
|
|
|
sb.Append(String.Format("{0}{{\\bord{1}\\3a&H{2:X6}&}}{3}", txtBlurBefore.Text,
|
|
(int)Math.Round(currad, 1), (int)Math.Round(curblur, 0), txtBlurIn.Text));
|
|
|
|
if (blurindexhv != BlurLines) sb.AppendLine();
|
|
|
|
ratio = (double)blurindexhv / (double)(BlurLines - 1);
|
|
|
|
if (radBlurPoly.Checked) curblur = BlurStart + Math.Pow(ratio, expbase) * (double)BlurDiff;
|
|
else if (radBlurLog.Checked) curblur = (double)BlurStart + Math.Log(1 + ((expbase - 1) * ratio), expbase) * ((double)BlurDiff);
|
|
else curblur = (double)BlurStart + Math.Pow(expbase, ratio) / expbase * (double)BlurDiff;
|
|
}
|
|
txtBlurOut.Text = sb.ToString();
|
|
}
|
|
|
|
else {
|
|
Point p;
|
|
|
|
if (txtBlurIn.Text.Contains("\\pos"))
|
|
MessageBox.Show("Input must not contain \\pos");
|
|
|
|
else if (Util.TryParseCoordinate(txtBlurPos.Text,out p)) {
|
|
double distance;
|
|
double maxdistance = Math.Sqrt(BlurRadH * BlurRadH + BlurRadV * BlurRadV);
|
|
|
|
for (int blurindexhvh = -1 * BlurRadH; blurindexhvh <= BlurRadH; blurindexhvh+=1) {
|
|
for (int blurindexhvv = -1 * BlurRadV; blurindexhvv <= BlurRadV; blurindexhvv+=1) {
|
|
distance = (double)Math.Sqrt((blurindexhvh * blurindexhvh) + (blurindexhvv * blurindexhvv));
|
|
|
|
if (radBlurPoly.Checked) curblur = (double)BlurStart + Math.Pow(distance / maxdistance, expbase) * (double)BlurDiff;
|
|
else if (radBlurLog.Checked) curblur = (double)BlurStart + Math.Log(1 + ((expbase - 1) * (distance / maxdistance)), expbase) * (double)BlurDiff;
|
|
else curblur = (double)BlurStart + Math.Pow(expbase, distance / maxdistance) / expbase * (double)BlurDiff;
|
|
|
|
sb.Append(String.Format("{0}{{\\pos({1},{2})\\bord1", txtBlurBefore.Text,
|
|
p.X + blurindexhvh, p.Y + blurindexhvv));
|
|
|
|
if (chkBlur1a.Checked) BlurFormatter(sb, 1, curblur);
|
|
else if ((distance != 0) && (chkBlur1aSub.Checked)) sb.Append("\\1a&HFF&");
|
|
if (chkBlur2a.Checked) BlurFormatter(sb, 2, curblur);
|
|
else if ((distance != 0) && (chkBlur2aSub.Checked)) sb.Append("\\2a&HFF&");
|
|
if (chkBlur3a.Checked) BlurFormatter(sb, 3, curblur);
|
|
else if ((distance != 0) && (chkBlur3aSub.Checked)) sb.Append("\\3a&HFF&");
|
|
if (chkBlur4a.Checked) BlurFormatter(sb, 4, curblur);
|
|
else if ((distance != 0) && (chkBlur4aSub.Checked)) sb.Append("\\4a&HFF&");
|
|
|
|
sb.AppendLine("}" + txtBlurIn.Text);
|
|
}
|
|
}
|
|
|
|
txtBlurOut.Text = sb.ToString().TrimEnd();
|
|
}
|
|
else
|
|
MessageBox.Show("Enter a valid position.");
|
|
}
|
|
}
|
|
}
|
|
private void BlurFormatter(StringBuilder sb, int anum, double a) {
|
|
|
|
sb.Append(String.Format("\\{0}&H{1:X2}&", anum, (int)Math.Round(a, 0)));
|
|
}
|
|
#endregion
|
|
|
|
#region Manual Transform
|
|
private List<TimeSpan> TransformTimes;
|
|
private void cmdTransformAddTime_Click(object sender, System.EventArgs e) {
|
|
double fr;
|
|
if (double.TryParse(cmbFR.Text,System.Globalization.NumberStyles.AllowDecimalPoint,Util.nfi,out fr)) {
|
|
try {
|
|
if (listTransformTimes.Items.Count == 0) TransformTimes = new List<TimeSpan>(4);
|
|
|
|
// how often to add a frame. just divide the framerate by it. default 1.
|
|
int precision;
|
|
if (!int.TryParse(txtTransformPrecision.Text,System.Globalization.NumberStyles.Integer,Util.nfi,out precision)) {
|
|
txtTransformPrecision.Text = "1";
|
|
precision = 1;
|
|
}
|
|
|
|
TimeSpan t = TimeSpan.Parse(maskedTextTransformTime.Text);
|
|
TimeSpan halfframe = TimeSpan.FromSeconds(0.5 / fr);
|
|
fr = fr / Convert.ToDouble(precision,Util.nfi);
|
|
t = TimeSpan.FromSeconds(Math.Round(t.TotalSeconds * fr, 0) / fr).Subtract(halfframe);
|
|
|
|
//maskedTextTransformTime.Text = (Util.Precision==2?"0":String.Empty) + Util.TimeSpanSSA(t, false);
|
|
|
|
int index = 0;
|
|
while ((index < TransformTimes.Count) && ((TransformTimes[index]).CompareTo(t) != 1)) index+=1;
|
|
|
|
listTransformTimes.Items.Insert(index, maskedTextTransformTime.Text);
|
|
|
|
TransformTimes.Insert(index, t);
|
|
index <<= 1;
|
|
if (TransformTimes.Count != 1) {
|
|
if (index == 0)
|
|
listTransformVars.Columns.Insert(1, "Acceleration", 100, HorizontalAlignment.Left);
|
|
else
|
|
listTransformVars.Columns.Insert(index, "Acceleration", 100, HorizontalAlignment.Left);
|
|
}
|
|
listTransformVars.Columns.Insert(index + 1, "Val at " + maskedTextTransformTime.Text, 128, HorizontalAlignment.Left);
|
|
listTransformVars.RecopyListItems();
|
|
|
|
} catch (Exception exc) {
|
|
MessageBox.Show(exc.Message);
|
|
}
|
|
}
|
|
else MessageBox.Show("Enter a valid framerate.");
|
|
}
|
|
private void cmdTransformDelTime_Click(object sender, System.EventArgs e) {
|
|
if (listTransformTimes.SelectedItems.Count == 1) {
|
|
try {
|
|
int index = listTransformTimes.SelectedIndex;
|
|
TransformTimes.RemoveAt(index);
|
|
listTransformTimes.Items.RemoveAt(index);
|
|
|
|
if (listTransformVars.Columns.Count > index) {
|
|
listTransformVars.Columns.RemoveAt((index << 1) + 1);
|
|
if (index != 0)
|
|
listTransformVars.Columns.RemoveAt(index << 1);
|
|
else if (TransformTimes.Count != 0)
|
|
listTransformVars.Columns.RemoveAt((index << 1) + 1);
|
|
}
|
|
listTransformVars.RecopyListItems();
|
|
} catch (Exception exc) {
|
|
MessageBox.Show(exc.Message);
|
|
}
|
|
}
|
|
else MessageBox.Show("Select a time first.");
|
|
|
|
}
|
|
private void cmdTransformNewVar_Click(object sender, System.EventArgs e) {
|
|
InputBoxResult newvalue = InputBox.Show("Enter the name of the variable:", "Input", String.Empty);
|
|
if (newvalue.OK == true) {
|
|
string[] news = new string[listTransformVars.Columns.Count];
|
|
news[0] = newvalue.Text;
|
|
for (int index = 1; index != news.Length; index+=1)
|
|
news[index] = String.Empty;
|
|
listTransformVars.Items.Add(new ListViewItem(news));
|
|
}
|
|
}
|
|
private void cmdTransformDelVar_Click(object sender, System.EventArgs e) {
|
|
if (listTransformVars.SelectedItems.Count == 1) {
|
|
listTransformVars.Items.RemoveAt(listTransformVars.SelectedItems[0].Index);
|
|
}
|
|
else MessageBox.Show("Select an item first.");
|
|
}
|
|
private void cmdTransformListToInput_Click(object sender, System.EventArgs e) {
|
|
int index = GetFirstSelected();
|
|
if (index == -1)
|
|
MessageBox.Show("Select an item in the list first.");
|
|
else
|
|
txtTransformCode.Text = lineColl[index].ToString();
|
|
}
|
|
private void cmdTransformInsertBefore_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtTransformOut, ListInsert.BeforeLine);
|
|
}
|
|
private void cmdTransformInsertAfter_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtTransformOut, ListInsert.AfterLine);
|
|
}
|
|
private void cmdTransformReplaceLine_Click(object sender, System.EventArgs e) {
|
|
TextToList(txtTransformOut, ListInsert.ReplaceLine);
|
|
}
|
|
private void cmdDoTransform_Click(object sender, System.EventArgs e) {
|
|
double fr, precision;
|
|
|
|
if (listTransformTimes.Items.Count < 2)
|
|
MessageBox.Show("Enter at least two times.");
|
|
else if (listTransformVars.Items.Count == 0)
|
|
MessageBox.Show("Enter at least one variable.");
|
|
else if (txtTransformCode.Text.Length == 0)
|
|
MessageBox.Show("Enter the transform code.");
|
|
else if (!double.TryParse(cmbFR.Text,System.Globalization.NumberStyles.AllowDecimalPoint,Util.nfi,out fr))
|
|
MessageBox.Show("Enter a valid framerate.");
|
|
else if (!double.TryParse(txtTransformPrecision.Text,System.Globalization.NumberStyles.Integer,Util.nfi,out precision))
|
|
MessageBox.Show("Enter a valid transform precision.");
|
|
else {
|
|
txtTransformOut.Text = ManualTransform.DoTransform(TransformTimes, ManualTransform.ListViewToMTV(listTransformVars),
|
|
txtTransformCode.Text, fr/precision);
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region List control
|
|
private void cmdSelAll_Click(object sender, System.EventArgs e) {
|
|
lineColl[1] = lineColl[1];
|
|
int index;
|
|
for (index = 0; index != lstStyles.Items.Count; index+=1)
|
|
lstStyles.SetItemChecked(index, true);
|
|
for (index = 0; index != styleColl.Count; index+=1)
|
|
styleColl[index].enabled = true;
|
|
}
|
|
private void cmdDeselAll_Click(object sender, System.EventArgs e) {
|
|
int index;
|
|
for (index = 0; index != lstStyles.Items.Count; index+=1)
|
|
lstStyles.SetItemChecked(index, false);
|
|
for (index = 0; index != styleColl.Count; index+=1)
|
|
styleColl[index].enabled = false;
|
|
}
|
|
private void cmdSSASelall_Click(object sender, System.EventArgs e) {
|
|
for (int index = 0; index != lineColl.Count; index+=1)
|
|
lineColl[index].enabled = true;
|
|
}
|
|
private void cmdSSADeselall_Click(object sender, System.EventArgs e) {
|
|
for (int index = 0; index != lineColl.Count; index+=1)
|
|
lineColl[index].enabled = false;
|
|
}
|
|
private void cmdSSAInvertSel_Click(object sender, System.EventArgs e) {
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
listSSA.Items[index].Checked = !listSSA.Items[index].Checked;
|
|
lineColl[index].enabled = !lineColl[index].enabled;
|
|
}
|
|
}
|
|
|
|
private void listSSA_DoubleClick(object sender, EventArgs e) {
|
|
menuChangeLine_Click(this, null);
|
|
}
|
|
private void DrawListOnScreen() {
|
|
listSSA.Invalidate();
|
|
listSSA.Update();
|
|
}
|
|
private void listSSA_SelectedIndexChanged(object sender, System.EventArgs e) {
|
|
labelSelLine.Text = (GetFirstSelected() + 1).ToString(Util.cfi);
|
|
}
|
|
private void listSSA_ItemCheck(object sender, ItemCheckEventArgs e) {
|
|
if (lineColl != null && e.Index < lineColl.Count)
|
|
lineColl[e.Index].enabled = e.NewValue == CheckState.Checked;
|
|
}
|
|
private void lstStyles_ItemCheck(object sender, ItemCheckEventArgs e) {
|
|
if (styleColl != null && e.Index < styleColl.Count)
|
|
styleColl[e.Index].enabled = e.NewValue == CheckState.Checked;
|
|
}
|
|
|
|
private void listSSA_DrawItem(object sender, DrawListViewItemEventArgs e) {
|
|
if ((e.ItemIndex >= listSSA.TopItem.Index) && (e.ItemIndex < listSSA.ItemsOnScreen + listSSA.TopItem.Index)) {
|
|
Rectangle bound = e.Bounds;
|
|
if (e.Item.Selected)
|
|
e.Graphics.FillRectangle(new SolidBrush(Color.FromKnownColor(KnownColor.Highlight)), 0, e.Item.Position.Y, bound.Width, bound.Height);
|
|
else if (e.Item.BackColor == Color.LightGreen) // For LineType.error
|
|
e.Graphics.FillRectangle(new SolidBrush(Color.LightGreen), 0, e.Item.Position.Y, bound.Width, bound.Height);
|
|
|
|
//else e.DrawBackground(); //clear it all on scroll instead
|
|
Point il = bound.Location;
|
|
Point p = new Point(il.X + 2, il.Y + 1);
|
|
int offset = p.X + p.X + 14;
|
|
Rectangle rc = new Rectangle(bound.X + offset, bound.Y + 1, bound.Width - offset, bound.Height - 1);
|
|
ControlPaint.DrawCheckBox(e.Graphics, new Rectangle(p, new Size(14, 14)), (e.Item.Checked ? ButtonState.Checked : ButtonState.Normal) | ButtonState.Flat);
|
|
e.Graphics.DrawString(e.Item.Text, listSSA.Font, new SolidBrush(e.Item.Selected ? Color.FromKnownColor(KnownColor.HighlightText) : listSSA.ForeColor), rc, StringFormat.GenericTypographic);
|
|
}
|
|
}
|
|
/*
|
|
private void listSSA_DrawItem(int index) {
|
|
ListViewItem lvi;
|
|
DrawListViewItemEventArgs dlvi;
|
|
RetrieveVirtualItemEventArgs rlvi;
|
|
rlvi = new RetrieveVirtualItemEventArgs(index);
|
|
listSSA_RetrieveVirtualItem(this, rlvi);
|
|
lvi = rlvi.Item;
|
|
dlvi = new DrawListViewItemEventArgs(listSSAg, lvi, lvi.Bounds, //listSSA.GetItemRect(index),
|
|
index, ListViewItemStates.Default);
|
|
|
|
listSSA_DrawItem(this, dlvi);
|
|
}
|
|
*/
|
|
private void listSSA_KeyPress(object sender, KeyPressEventArgs e) {
|
|
if (e.KeyChar == 32) {
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
if (lineColl[index].selected) lineColl[index].enabled = !lineColl[index].enabled;
|
|
}
|
|
DrawListOnScreen();
|
|
e.Handled = true;
|
|
}
|
|
}
|
|
private void listSSA_KeyUp(object sender, KeyEventArgs e) {
|
|
if (e.KeyCode == Keys.Delete) {
|
|
menuRemoveLine_Click(this, null);
|
|
e.Handled = true;
|
|
}
|
|
}
|
|
private void listSSA_OnScroll(object sender, ScrollEventArgs e) {
|
|
if (e.ScrollOrientation == ScrollOrientation.HorizontalScroll) {
|
|
Graphics.FromHwnd(listSSA.Handle).Clear(Color.FromKnownColor(KnownColor.Window));
|
|
DrawListOnScreen();
|
|
}
|
|
/*
|
|
listSSA.BeginUpdate();
|
|
|
|
DrawListOnScreen();
|
|
listSSA.EndUpdate();
|
|
*/
|
|
}
|
|
private void listSSA_MouseUp(object sender, MouseEventArgs e) {
|
|
if (e.X > 1 && e.X < 16) {
|
|
ListViewItem lvi = listSSA.GetItemAt(e.X, e.Y);
|
|
if (lvi != null) {
|
|
lineColl[lvi.Index].enabled = !lineColl[lvi.Index].enabled;
|
|
listSSA_DrawItem(this, new DrawListViewItemEventArgs(listSSAg, lvi, lvi.Bounds, lvi.Index, ListViewItemStates.Default));
|
|
}
|
|
}
|
|
}
|
|
private void listSSA_VirtualItemsSelectionRangeChanged(object sender, ListViewVirtualItemsSelectionRangeChangedEventArgs e) {
|
|
int end = (e.EndIndex == lineColl.Count) ? lineColl.Count : e.EndIndex + 1;
|
|
for (int index = 0; index != lineColl.Count; index+=1)
|
|
lineColl[index].selected = (index >= e.StartIndex && index <= end) ? e.IsSelected : !e.IsSelected;
|
|
}
|
|
private void listSSA_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e) {
|
|
lineColl[e.ItemIndex].selected = e.IsSelected;
|
|
labelSelLine.Text = e.ItemIndex.ToString(Util.cfi);
|
|
}
|
|
private void SetLineColl(List<Line> newList) {
|
|
undoStack.Push(lineColl);
|
|
menuUndo.Enabled = true;
|
|
listSSA.VirtualListSize = 0;
|
|
lineColl = newList;
|
|
listSSA.VirtualListSize = lineColl.Count;
|
|
ExtractStyles();
|
|
}
|
|
private int GetFirstSelected() {
|
|
return (listSSA.SelectedIndices.Count != 0) ? listSSA.SelectedIndices[0] : -1;
|
|
}
|
|
private ListViewItem GetListItem(int index) {
|
|
Line l = lineColl[index];
|
|
ListViewItem lvi = new ListViewItem();
|
|
string LineText = l.ToString();
|
|
|
|
//ListViewItem crashes if the text is exactly (not >=) 260 characters long.
|
|
if (LineText.Length == 260)
|
|
lvi.Text = LineText + " "; // make it not 260 characters; only affects the display of the line
|
|
else
|
|
lvi.Text = LineText;
|
|
|
|
lvi.Checked = l.enabled;
|
|
lvi.Selected = l.selected;
|
|
if (l.lineType == LineType.error) lvi.BackColor = Color.LightGreen;
|
|
return lvi;
|
|
}
|
|
private void listSSA_RetrieveVirtualItem(object sender, RetrieveVirtualItemEventArgs e) {
|
|
e.Item = GetListItem(e.ItemIndex);
|
|
}
|
|
|
|
private void ReparseErrors() {
|
|
for(int i=0;i!=lineColl.Count;i+=1)
|
|
if (lineColl[i].lineType==LineType.error)
|
|
lineColl[i] = Line.ParseLine(lineColl[i].ToString());
|
|
}
|
|
#endregion
|
|
|
|
#region Undo/Redo
|
|
private void UndoRedo(Stack source, Stack dest) {
|
|
if (source != null && source.Count != 0) {
|
|
listSSA.BeginUpdate();
|
|
object undo = source.Pop();
|
|
LineUndo lu;
|
|
if (undo is List<Line>) { // New list
|
|
dest.Push(lineColl);
|
|
lineColl = (List<Line>)undo;
|
|
}
|
|
else if (undo is List<int>) { // Added multiple lines
|
|
List<LineUndo> redolu = new List<LineUndo>();
|
|
List<int> undointlist = (List<int>)undo;
|
|
int rindex;
|
|
for (int index = 0; index != undointlist.Count; index+=1) {
|
|
lu = new LineUndo();
|
|
rindex = undointlist[index];
|
|
lu.index = rindex;
|
|
lu.line = lineColl[rindex];
|
|
redolu.Add(lu);
|
|
lineColl.RemoveAt(rindex);
|
|
}
|
|
dest.Push(redolu);
|
|
}
|
|
else if (undo is List<LineUndo>) { // Deleted multiple lines
|
|
List<int> redoint = new List<int>();
|
|
List<LineUndo> undolulist = (List<LineUndo>)undo;
|
|
for (int index = 0; index != undolulist.Count; index+=1) {
|
|
lu = (LineUndo)undolulist[index];
|
|
redoint.Add(lu.index);
|
|
lineColl.Insert(lu.index, lu.line);
|
|
}
|
|
dest.Push(redoint);
|
|
}
|
|
else if (undo is int) { // added one line
|
|
lu.index = (int)undo;
|
|
lu.line = lineColl[lu.index];
|
|
lineColl.RemoveAt(lu.index);
|
|
dest.Push(lu);
|
|
}
|
|
else if (undo is LineUndo) { // deleted one line
|
|
lu = (LineUndo)undo;
|
|
dest.Push(lu.index);
|
|
lineColl.Insert(lu.index, lu.line);
|
|
}
|
|
else if (undo is LineCUndo) { // Changed a line
|
|
LineCUndo luold = (LineCUndo)undo;
|
|
Line lold = lineColl[luold.index];
|
|
lineColl[luold.index] = luold.line;
|
|
luold.line = lold;
|
|
dest.Push(luold);
|
|
}
|
|
listSSA.VirtualListSize = lineColl.Count;
|
|
listSSA.EndUpdate();
|
|
menuUndo.Enabled = undoStack.Count != 0;
|
|
menuRedo.Enabled = redoStack.Count != 0;
|
|
}
|
|
ExtractStyles();
|
|
}
|
|
#endregion
|
|
|
|
|
|
|
|
private void cmdSearchReplace_Click(object sender, System.EventArgs e) {
|
|
for (int index = lineColl.Count - 1; index != -1; index--) {
|
|
Line thisline = lineColl[index];
|
|
lineColl[index] = Line.ParseLine(thisline.ToString().Replace(txtSearchFor.Text, txtSearchReplaceWith.Text));
|
|
}
|
|
DrawListOnScreen();
|
|
}
|
|
private void cmdLenBasedK_Click(object sender, System.EventArgs e) {
|
|
int thresh;
|
|
if (int.TryParse(txtLenBasedKThreshold.Text,System.Globalization.NumberStyles.Integer,Util.nfi,out thresh)) {
|
|
StringBuilder sb;
|
|
List<Line> newList = new List<Line>();
|
|
Line line;
|
|
DialogueLine dl;
|
|
Match m;
|
|
MatchCollection mc;
|
|
int lastIndex;
|
|
|
|
for (int index = lineColl.Count - 1; index != 0; index--) {
|
|
line = (Line)lineColl[index].Clone();
|
|
if ((lineColl[index].enabled == false) || (lineColl[index].lineType != LineType.dialogue) || ((dl = (DialogueLine)line.line).style.enabled == false) || (r.IsMatch(dl.text) == false)) {
|
|
newList.Add(line);
|
|
continue;
|
|
}
|
|
|
|
sb = new StringBuilder(2048);
|
|
|
|
lastIndex = 0;
|
|
|
|
mc = r.Matches(dl.text);
|
|
for (int mindex = 0; mindex != mc.Count; mindex+=1) {
|
|
m = mc[mindex];
|
|
sb.Append(dl.text.Substring(lastIndex, m.Index - lastIndex));
|
|
if (int.Parse(m.Groups[2].Value) < thresh)
|
|
sb.Append("\\k");
|
|
else
|
|
sb.Append("\\K");
|
|
|
|
lastIndex = m.Index + m.Groups[1].Length;
|
|
}
|
|
|
|
sb.Append(dl.text.Substring(lastIndex, dl.text.Length - lastIndex));
|
|
|
|
dl.text = sb.ToString();
|
|
newList.Add(line);
|
|
}
|
|
SetLineColl(newList);
|
|
}
|
|
else
|
|
MessageBox.Show("Enter a valid threshold.");
|
|
}
|
|
|
|
private void cmdShift_Click(object sender, System.EventArgs e) {
|
|
List<Line> newList = new List<Line>();
|
|
Line line;
|
|
DialogueLine dl;
|
|
TimeSpan shift;
|
|
|
|
try {
|
|
switch (tabShiftType.SelectedIndex) {
|
|
case 0:
|
|
shift = TimeSpan.Parse(maskedTextShiftTime.Text);
|
|
if (radTShiftBack.Checked) shift = shift.Negate();
|
|
break;
|
|
case 1:
|
|
shift = TimeSpan.FromSeconds(double.Parse(txtShiftFrames.Text, Util.cfi) / double.Parse(cmbFR.Text, Util.cfi));
|
|
if (radFShiftBackward.Checked) shift = shift.Negate();
|
|
break;
|
|
case 2:
|
|
shift = TimeSpan.Parse(maskedTextTDShiftNew.Text).Subtract(TimeSpan.Parse(maskedTextTDShiftOld.Text));
|
|
break;
|
|
default:
|
|
shift = TimeSpan.FromSeconds(((double.Parse(txtFDShiftNew.Text, Util.cfi) - double.Parse(txtFDShiftOld.Text, Util.cfi)) / double.Parse(cmbFR.Text, Util.cfi)));
|
|
break;
|
|
}
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
line = (Line)lineColl[index].Clone(); ;
|
|
|
|
if (line.enabled == false || line.lineType != LineType.dialogue) {
|
|
newList.Add(line);
|
|
continue;
|
|
}
|
|
|
|
dl = (DialogueLine)line.line;
|
|
|
|
if (chkShiftStart.Checked == true) dl.start = dl.start.Add(shift);
|
|
if (chkShiftEnd.Checked == true) dl.end = dl.end.Add(shift);
|
|
if (chkShiftNoNeg.Checked == true) {
|
|
if (dl.start.CompareTo(TimeSpan.Zero) == -1) dl.start = TimeSpan.Zero;
|
|
if (dl.end.CompareTo(TimeSpan.Zero) == -1) dl.end = TimeSpan.Zero;
|
|
}
|
|
newList.Add(line);
|
|
}
|
|
SetLineColl(newList);
|
|
} catch {
|
|
MessageBox.Show("An error occured. No times have been changed.");
|
|
}
|
|
}
|
|
|
|
private void cmdStrip_Click(object sender, System.EventArgs e) {
|
|
Regex strip = new Regex(@"(\{+)(\\[^\{\}\\]+)*(\}+)", RegexOptions.Singleline);
|
|
//will screw up for \t but it doesn't matter in this case
|
|
|
|
List<Line> newList = new List<Line>();
|
|
Line line;
|
|
MatchCollection mc;
|
|
Match m;
|
|
GroupCollection gc;
|
|
Group g;
|
|
DialogueLine dl;
|
|
StringBuilder sb;
|
|
int lastindex;
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
line = (Line)lineColl[index].Clone(); ;
|
|
if ((lineColl[index].enabled == false) || (lineColl[index].lineType != LineType.dialogue) || ((dl = (DialogueLine)line.line).style.enabled == false)) {
|
|
newList.Add(line);
|
|
continue;
|
|
}
|
|
|
|
sb = new StringBuilder(2048);
|
|
mc = strip.Matches(dl.text);
|
|
lastindex = 0;
|
|
for (int innerindex = 0; innerindex != mc.Count; innerindex+=1) {
|
|
m = mc[innerindex];
|
|
if (m.Index > lastindex)
|
|
sb.Append(dl.text.Substring(lastindex, m.Index - lastindex));
|
|
gc = m.Groups;
|
|
for (int groupindex = 2; groupindex != gc.Count - 1; groupindex+=1) {
|
|
g = gc[groupindex];
|
|
if (g.Value.Length > 2 && String.Equals(g.Value.Substring(0, 2), "\\k", StringComparison.OrdinalIgnoreCase))
|
|
sb.Append("{" + g.Value + "}");
|
|
}
|
|
lastindex = m.Index + m.Length;
|
|
}
|
|
if (lastindex != dl.text.Length) sb.Append(dl.text.Substring(lastindex, dl.text.Length - lastindex));
|
|
|
|
dl.text = sb.ToString();
|
|
newList.Add(line);
|
|
}
|
|
SetLineColl(newList);
|
|
}
|
|
private void cmdRemoveDups_Click(object sender, System.EventArgs e) {
|
|
if (lineColl != null && lineColl.Count > 1) {
|
|
List<Line> newList = new List<Line>();
|
|
newList.Add((Line)lineColl[0].Clone());
|
|
for (int index = 1; index != lineColl.Count; index+=1) {
|
|
if (!lineColl[index].Equals(lineColl[index - 1]))
|
|
newList.Add((Line)lineColl[index].Clone());
|
|
}
|
|
SetLineColl(newList);
|
|
}
|
|
}
|
|
|
|
private void cmdScale_Click(object sender, System.EventArgs e) {
|
|
double XNum, XDen, YNum, YDen;
|
|
bool XNumValid, XDenValid, YNumValid, YDenValid;
|
|
|
|
XNumValid = double.TryParse(txtScaleXNumerator.Text, System.Globalization.NumberStyles.AllowDecimalPoint, Util.nfi, out XNum);
|
|
XDenValid = double.TryParse(txtScaleXDenominator.Text, System.Globalization.NumberStyles.AllowDecimalPoint, Util.nfi, out XDen);
|
|
YNumValid = double.TryParse(txtScaleYNumerator.Text, System.Globalization.NumberStyles.AllowDecimalPoint, Util.nfi, out YNum);
|
|
YDenValid = double.TryParse(txtScaleYDenominator.Text, System.Globalization.NumberStyles.AllowDecimalPoint, Util.nfi, out YDen);
|
|
|
|
if ((XNumValid && XDenValid) && (!YNumValid || !YDenValid)) {
|
|
YNum = XNum;
|
|
YDen = XDen;
|
|
YNumValid = YDenValid = true;
|
|
}
|
|
else if ((YNumValid && YDenValid) && (!XNumValid || !XDenValid)) {
|
|
XNum = YNum;
|
|
XDen = YDen;
|
|
XNumValid = XDenValid = true;
|
|
}
|
|
|
|
if (XNumValid && XDenValid && YNumValid && YDenValid) {
|
|
double scalefactorx = XNum/XDen;
|
|
double scalefactory = YNum/YDen;
|
|
|
|
List<Line> newList = new List<Line>();
|
|
Line line;
|
|
Resscale rs = new Resscale(scalefactorx, scalefactory);
|
|
Style s;
|
|
DialogueLine dl;
|
|
|
|
if (chkScalePlayRes.Checked) {
|
|
ResX = Convert.ToInt32(Math.Round(ResX * scalefactorx, 0), Util.nfi);
|
|
ResY = Convert.ToInt32(Math.Round(ResY * scalefactory, 0), Util.nfi);
|
|
}
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
line = (Line)lineColl[index].Clone();
|
|
if (line.enabled == false) {
|
|
newList.Add(line);
|
|
continue;
|
|
}
|
|
else if (line.lineType == LineType.style && ((Style)line.line).enabled == true) {
|
|
s = (Style)line.line;
|
|
s = rs.ScaleStyle(s);
|
|
}
|
|
|
|
else if ((line.lineType == LineType.dialogue) && ((dl = (DialogueLine)line.line).style.enabled == true)) {
|
|
dl = rs.ScaleDialogue(dl);
|
|
}
|
|
newList.Add(line);
|
|
}
|
|
SetLineColl(newList);
|
|
}
|
|
}
|
|
|
|
private void cmdChangeLastKLen_Click(object sender, System.EventArgs e) {
|
|
DialogueLine dl;
|
|
List<Line> newList = new List<Line>();
|
|
Line line;
|
|
System.Text.StringBuilder sb;
|
|
MatchCollection mc;
|
|
int lineLen, totLen;
|
|
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
line = (Line)lineColl[index].Clone();
|
|
if ((lineColl[index].enabled == false) || (lineColl[index].lineType != LineType.dialogue) || ((dl = (DialogueLine)line.line).style.enabled == false) || (r.IsMatch(dl.text) == false)) {
|
|
newList.Add(line);
|
|
continue;
|
|
}
|
|
|
|
lineLen = (int)Math.Round((dl.end.Subtract(dl.start).TotalSeconds) * 100, 0);
|
|
sb = new StringBuilder(2048);
|
|
mc = r.Matches(dl.text);
|
|
totLen = 0;
|
|
foreach (Match m in mc) {
|
|
totLen += int.Parse(m.Groups[2].Value, Util.cfi);
|
|
}
|
|
|
|
sb.Append(dl.text.Substring(0, mc[mc.Count - 1].Groups[2].Index));
|
|
sb.Append(lineLen - (totLen - int.Parse(mc[mc.Count-1].Groups[2].Value,Util.nfi)));
|
|
sb.Append(dl.text.Substring(mc[mc.Count - 1].Groups[2].Index + mc[mc.Count - 1].Groups[2].Length, dl.text.Length - (mc[mc.Count - 1].Groups[2].Index + mc[mc.Count - 1].Groups[2].Length)));
|
|
dl.text = sb.ToString();
|
|
newList.Add(line);
|
|
} // lineindex
|
|
SetLineColl(newList);
|
|
}
|
|
private void cmdCheckErrors_Click(object sender, System.EventArgs e) {
|
|
lstErrors.Items.Clear();
|
|
Regex unclosedparen = new Regex(@"[\(^][^\)]*($|[\{\(\}])");
|
|
Regex unopenedparen = new Regex(@"[\)}{^][^\(]*\)");
|
|
Regex unclosedbracket = new Regex(@"\{[^\}$]*($|\{)");
|
|
Regex unopenedbracket = new Regex(@"[}^][^\{]*\}");
|
|
Regex badtrans = new Regex(@"\\t\(?[0-9,]*\)");
|
|
Regex lowercasehex = new Regex(@"\\[1-4]?[cCaA][ahlopr]&?h");
|
|
Regex unclosedampersand = new Regex(@"\\[1234]?[cCaA][ahlopr]*&[hH][0-9a-fA-F]*[}\\]");
|
|
Regex decimalwithoutleading = new Regex(@"[^0-9].\d");
|
|
|
|
string thisline;
|
|
int lineindex = 0; // This is purely for user display, so start from 1 (it's incremented at the start of the loop)
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
thisline = lineColl[index].ToString();
|
|
lineindex+=1;
|
|
if (unclosedparen.IsMatch(thisline))
|
|
lstErrors.Items.Add("Unclosed parenthesis at line " + lineindex);
|
|
if (unopenedparen.IsMatch(thisline + "\n"))
|
|
lstErrors.Items.Add("Unopened parenthesis at line " + lineindex);
|
|
if (unclosedbracket.IsMatch(thisline))
|
|
lstErrors.Items.Add("Unclosed bracket at line " + lineindex);
|
|
if (unopenedbracket.IsMatch(thisline))
|
|
lstErrors.Items.Add("Unopened bracket at line " + lineindex);
|
|
if (lowercasehex.IsMatch(thisline))
|
|
if (unclosedampersand.IsMatch(thisline))
|
|
lstErrors.Items.Add("Unclosed ampersand at line " + lineindex);
|
|
if (badtrans.IsMatch(thisline))
|
|
lstErrors.Items.Add("Malformed transformation at line " + lineindex);
|
|
if (decimalwithoutleading.IsMatch(thisline))
|
|
lstErrors.Items.Add("Decimal without leading integer at line " + lineindex);
|
|
}
|
|
}
|
|
|
|
#region Fonts
|
|
private void cmdFindFonts_Click(object sender, System.EventArgs e) {
|
|
lstFonts.Items.Clear();
|
|
|
|
List<string> fontList = new List<string>(16);
|
|
Regex rfont = new Regex(@"{[^}]*\\fn([^\\}]+)");
|
|
string[] lviadd;
|
|
string font;
|
|
|
|
foreach (Line line in lineColl) {
|
|
if (line.lineType == LineType.style) {
|
|
font = ((Style)line.line).fontName.TrimStart("@".ToCharArray());
|
|
if (!fontList.Contains(font)) fontList.Add(font);
|
|
}
|
|
else if (line.lineType == LineType.dialogue) {
|
|
foreach (Match m in rfont.Matches(((DialogueLine)line.line).text)) {
|
|
font = m.Groups[1].Value.TrimStart("@".ToCharArray());
|
|
if (!fontList.Contains(font)) fontList.Add(font);
|
|
}
|
|
}
|
|
}
|
|
|
|
foreach (FontFamily oneFontFamily in System.Drawing.FontFamily.Families) {
|
|
for (int fontindex = 0; fontindex != fontList.Count; fontindex+=1) {
|
|
font = fontList[fontindex];
|
|
if (String.Equals(oneFontFamily.Name, font, StringComparison.OrdinalIgnoreCase)) {
|
|
lviadd = new string[3];
|
|
lviadd[0] = font;
|
|
lviadd[1] = "Found";
|
|
|
|
lstFonts.Items.Add(new ListViewItem(lviadd));
|
|
fontList.RemoveAt(fontindex--);
|
|
}
|
|
}
|
|
}
|
|
|
|
foreach (string unfoundFont in fontList) {
|
|
lviadd = new string[3];
|
|
lviadd[0] = unfoundFont;
|
|
lviadd[1] = "Not Found";
|
|
lstFonts.Items.Add(new ListViewItem(lviadd));
|
|
}
|
|
}
|
|
private void cmdFontSearchFolder_Click(object sender, System.EventArgs e) {
|
|
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) {
|
|
int index = 0;
|
|
bool stopnow = false;
|
|
|
|
System.Drawing.Text.PrivateFontCollection pfc;
|
|
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(folderBrowserDialog1.SelectedPath);
|
|
System.IO.FileInfo[] FileArray = dir.GetFiles("*.ttf");
|
|
for (int outerindex = 0; outerindex != 2; outerindex+=1) {
|
|
foreach (System.IO.FileInfo f in FileArray) {
|
|
try {
|
|
stopnow = true;
|
|
index+=1;
|
|
labelFontNum.Text = index.ToString(Util.cfi);
|
|
Application.DoEvents();
|
|
pfc = new System.Drawing.Text.PrivateFontCollection();
|
|
pfc.AddFontFile(f.FullName);
|
|
|
|
if (pfc.Families.Length != 0) {
|
|
foreach (ListViewItem lvi in lstFonts.Items) {
|
|
stopnow = false;
|
|
try {
|
|
string familyName = lvi.Text.TrimStart("@".ToCharArray());
|
|
|
|
foreach (System.Drawing.FontFamily pFamily in pfc.Families) {
|
|
if (String.Equals(pFamily.Name, familyName, StringComparison.OrdinalIgnoreCase)) {
|
|
lvi.SubItems[1].Text = "Found In Folder";
|
|
lvi.SubItems[2].Text = f.FullName;
|
|
}
|
|
}
|
|
} catch { }
|
|
}
|
|
}
|
|
pfc.Dispose();
|
|
} catch {
|
|
stopnow = false;
|
|
MessageBox.Show("Couldn't add font " + f.FullName);
|
|
}
|
|
if (stopnow) break;
|
|
}
|
|
FileArray = dir.GetFiles("*.ttc");
|
|
}
|
|
|
|
System.GC.Collect();
|
|
}
|
|
labelFontNum.Text = "done";
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
private void lstErrors_DoubleClick(object sender, System.EventArgs e) {
|
|
string line = lstErrors.SelectedItem.ToString();
|
|
int splitIndex = line.LastIndexOf(' ');
|
|
string stringIndex = line.Substring(splitIndex);
|
|
int index;
|
|
if (int.TryParse(stringIndex, System.Globalization.NumberStyles.Integer, Util.nfi, out index)) {
|
|
if (index <= lineColl.Count) {
|
|
index--; // We called it line 1, but it's really lineColl[0]
|
|
for (int listindex = 0; listindex != lineColl.Count; listindex+=1)
|
|
listSSA.Items[listindex].Selected = false;
|
|
listSSA.Items[index].Selected = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
#region File Access
|
|
private void LoadFile(string theFile, Encoding encoding) {
|
|
string read;
|
|
listSSA.VirtualListSize = 0;
|
|
styleColl = new List<Style>();
|
|
lineColl = new List<Line>();
|
|
undoStack = new Stack();
|
|
redoStack = new Stack();
|
|
menuUndo.Enabled = false;
|
|
menuRedo.Enabled = false;
|
|
byte[] benc = new byte[2];
|
|
int sjischars = 0, eucchars = 0;
|
|
|
|
CurFile = theFile;
|
|
StreamReader fs;
|
|
if (encoding != null) fs = new StreamReader(theFile, encoding);
|
|
else fs = new StreamReader(theFile, true);
|
|
|
|
fs.BaseStream.Read(benc, 0, 2);
|
|
|
|
if (benc[0] == 255 && benc[1] == 254)
|
|
enc = Encoding.Unicode;
|
|
else if (benc[0] == 255 && benc[1] == 255)
|
|
enc = Encoding.BigEndianUnicode;
|
|
else if (encoding == null) {
|
|
enc = fs.CurrentEncoding;
|
|
|
|
// Begin encoding detection
|
|
fs.BaseStream.Position = 0;
|
|
byte[] bread = new byte[131072];
|
|
Stream bs = fs.BaseStream;
|
|
int remaining = Convert.ToInt32(bs.Length,Util.nfi), readbytes;
|
|
while (remaining != 0) {
|
|
readbytes = bs.Read(bread, 0, Math.Min(remaining, 131072));
|
|
remaining -= readbytes;
|
|
sjischars += DetectEncoding.DetectSJIS(bread);
|
|
eucchars += DetectEncoding.DetectEUCJP(bread);
|
|
}
|
|
if ((bs.Length < 4096 && (sjischars > 100 || eucchars > 100))
|
|
|| (bs.Length < 8192 && (sjischars > 300 || eucchars > 300))
|
|
|| sjischars > 600 || eucchars > 600) {
|
|
if (sjischars > eucchars) {
|
|
if (MessageBox.Show(sjischars.ToString(Util.cfi) + " characters were detected as likely being Shift-JIS.\r\nWould you like to load the file using Shift-JIS?", "Encoding", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
|
encoding = Encoding.GetEncoding("Shift_JIS");
|
|
}
|
|
else {
|
|
if (MessageBox.Show(sjischars.ToString(Util.cfi) + " characters were detected as likely being EUC-JP.\r\nWould you like to load the file using EUC-JP?", "Encoding", MessageBoxButtons.YesNo) == DialogResult.Yes)
|
|
encoding = Encoding.GetEncoding("euc-jp");
|
|
}
|
|
if (encoding != null) fs = new StreamReader(theFile, encoding);
|
|
}
|
|
bread = null;
|
|
}
|
|
else enc = encoding;
|
|
|
|
fs.BaseStream.Position = 0;
|
|
while ((read = fs.ReadLine()) != null)
|
|
lineColl.Add(Line.ParseLine(read));
|
|
|
|
if (ResX == 0 && ResY != 0) ResX = (int)((double)ResY * (4.0 / 3));
|
|
else if (ResY == 0 && ResX != 0) ResY = (int)((double)ResX * (3.0 / 4));
|
|
|
|
fs.Close();
|
|
System.GC.Collect();
|
|
ExtractStyles();
|
|
}
|
|
private void cmdReloadFile_Click(object sender, System.EventArgs e) {
|
|
if ((CurFile != null) && (File.Exists(CurFile))) LoadFile(CurFile, enc);
|
|
}
|
|
private void SaveFile(string FileName) {
|
|
try {
|
|
FileStream file = new FileStream(FileName, FileMode.Create, FileAccess.Write);
|
|
|
|
if (file.CanWrite == true) {
|
|
StreamWriter sw = new StreamWriter(file, enc);
|
|
for (int index = 0; index != lineColl.Count; index+=1)
|
|
sw.WriteLine(lineColl[index].ToString());
|
|
sw.Close();
|
|
}
|
|
else MessageBox.Show("You don't have permission to write/create file " + FileName);
|
|
|
|
file.Close();
|
|
} catch {
|
|
MessageBox.Show("Error while trying to save file.");
|
|
}
|
|
}
|
|
|
|
private void LoadEffectsFile(string filename) {
|
|
if (File.Exists(filename)) {
|
|
try {
|
|
XmlDocument xDocM = new XmlDocument();
|
|
xDocM.Load(filename);
|
|
XmlNode xDoc = xDocM.SelectSingleNode("ESSA");
|
|
|
|
XmlNodeList effects = xDoc.SelectNodes("Effect");
|
|
Filter thisFilter;
|
|
int index = 0;
|
|
|
|
foreach (XmlNode enode in effects) {
|
|
if (enode.Attributes["Name"] == null) {
|
|
MessageBox.Show("Encountered unnamed effect. Skipping.");
|
|
continue;
|
|
}
|
|
|
|
thisFilter = new Filter(enode.Attributes["Name"].Value);
|
|
|
|
if (enode.Attributes["Code"] != null)
|
|
thisFilter.Code = enode.Attributes["Code"].Value;
|
|
|
|
//add default options
|
|
XmlNodeList options = enode.SelectNodes("Option");
|
|
foreach (XmlNode onode in options) {
|
|
if (onode.Attributes["Name"] == null) continue;
|
|
thisFilter.AddOption(onode.Attributes["Name"].Value, onode.InnerText);
|
|
}
|
|
|
|
//add default conditions
|
|
XmlNodeList econditions = enode.SelectNodes("Condition");
|
|
foreach (XmlNode ecnode in econditions) {
|
|
if ((ecnode.Attributes["ConditionOne"] == null) || (ecnode.Attributes["ConditionTwo"] == null) ||
|
|
(ecnode.Attributes["ConditionOperation"] == null)) { continue; }
|
|
Condition thisCondition = new Condition();
|
|
thisCondition.ConditionOne = ecnode.Attributes["ConditionOne"].Value;
|
|
thisCondition.ConditionTwo = ecnode.Attributes["ConditionTwo"].Value;
|
|
thisCondition.ConditionOp = ecnode.Attributes["ConditionOperation"].Value;
|
|
thisCondition.ConditionEnabled = (ecnode.Attributes["Enabled"] != null) ?
|
|
(String.Equals(ecnode.Attributes["Enabled"].Value, "true", StringComparison.OrdinalIgnoreCase)) : true;
|
|
thisFilter.AddCondition(thisCondition);
|
|
}
|
|
|
|
templateFilterColl.Add(thisFilter);
|
|
menuItem15.MenuItems.Add(thisFilter.ToString(), new EventHandler(this.menuFilter_Click));
|
|
index+=1;
|
|
}
|
|
//templateFilterColl.Sort();
|
|
EventContext();
|
|
} catch (XmlException xmle) {
|
|
MessageBox.Show(xmle.Message);
|
|
} catch (Exception e) {
|
|
MessageBox.Show(e.Message);
|
|
}
|
|
}
|
|
}
|
|
public static void SaveEffectsFile(string filename, System.Collections.Generic.List<Filter> templatefilterColl) {
|
|
XmlTextWriter tw = new XmlTextWriter(filename, null);
|
|
tw.Formatting = Formatting.Indented;
|
|
tw.WriteStartDocument();
|
|
tw.WriteStartElement("ESSA");
|
|
|
|
foreach (Filter thisfilter in templatefilterColl) {
|
|
|
|
tw.WriteAttributeString("Name", thisfilter.ToString());
|
|
tw.WriteAttributeString("Code", thisfilter.Code);
|
|
|
|
foreach (FilterOption fo in thisfilter) {
|
|
tw.WriteStartElement("Option");
|
|
tw.WriteAttributeString("Name", fo.Name);
|
|
tw.WriteString(fo.Value);
|
|
tw.WriteEndElement();
|
|
}
|
|
|
|
tw.WriteEndElement();
|
|
}
|
|
|
|
tw.WriteEndElement();
|
|
tw.WriteEndDocument();
|
|
tw.Flush();
|
|
tw.Close();
|
|
}
|
|
|
|
private List<Layer> LoadProject(string filename) {
|
|
//Returns a List of Layers which represents the layers of the project (layerColl/lColl)
|
|
if (File.Exists(filename)) {
|
|
try {
|
|
XmlDocument xDocM = new XmlDocument();
|
|
xDocM.Load(filename);
|
|
XmlNode xDoc = xDocM.SelectSingleNode("PSSA");
|
|
|
|
XmlNodeList filelist = xDoc.SelectNodes("Files");
|
|
foreach (XmlNode filenode in filelist) {
|
|
XmlNodeList ssalist = filenode.SelectNodes("SSA");
|
|
foreach (XmlNode ssanode in ssalist)
|
|
if (File.Exists(ssanode.InnerText)) LoadFile(ssanode.InnerText, null);
|
|
|
|
XmlNodeList effectfilelist = filenode.SelectNodes("EffectFile");
|
|
foreach (XmlNode effectfilenode in effectfilelist)
|
|
if (File.Exists(effectfilenode.InnerText)) LoadEffectsFile(effectfilenode.InnerText);
|
|
|
|
}
|
|
|
|
XmlNodeList layers = xDoc.SelectNodes("Layer");
|
|
System.Collections.Generic.List<Layer> lColl = new System.Collections.Generic.List<Layer>();
|
|
Layer thisLayer;
|
|
Filter thisFilter, templateFilter;
|
|
Condition thisCondition;
|
|
int repetitions;
|
|
|
|
foreach (XmlNode lnode in layers) {
|
|
thisLayer = new Layer();
|
|
|
|
thisLayer.Enabled = (lnode.Attributes["Enabled"] != null) ?
|
|
(String.Compare(lnode.Attributes["Enabled"].Value, "true", true) == 0) : true;
|
|
thisLayer.PerSyllable = (lnode.Attributes["PerSyllable"] != null) ?
|
|
(String.Compare(lnode.Attributes["PerSyllable"].Value, "true", true) == 0) : false;
|
|
thisLayer.SyllablePerLine = !(thisLayer.PerSyllable) && (lnode.Attributes["SyllablePerLine"] != null) ?
|
|
(String.Compare(lnode.Attributes["SyllablePerLine"].Value, "true", true) == 0) : false;
|
|
thisLayer.AddAll = (lnode.Attributes["AddAll"] != null) ?
|
|
(String.Compare(lnode.Attributes["AddAll"].Value, "true", true) == 0) : false;
|
|
thisLayer.AddOnce = (lnode.Attributes["AddOnce"] != null) ?
|
|
(String.Compare(lnode.Attributes["AddOnce"].Value, "true", true) == 0) : false;
|
|
thisLayer.AddText = (lnode.Attributes["DontAddText"] != null) ?
|
|
(String.Compare(lnode.Attributes["DontAddText"].Value, "false", true) == 0) : true;
|
|
thisLayer.AddK = (lnode.Attributes["RemoveK"] != null) ?
|
|
(String.Compare(lnode.Attributes["RemoveK"].Value, "false", true) == 0) : true;
|
|
thisLayer.AddASSA = (lnode.Attributes["AddASSA"] != null) ?
|
|
(String.Compare(lnode.Attributes["AddASSA"].Value, "true", true) == 0) : true;
|
|
thisLayer.AddBracket = (lnode.Attributes["AddClosingBracket"] != null) ?
|
|
(String.Compare(lnode.Attributes["AddClosingBracket"].Value, "true", true) == 0) : true;
|
|
thisLayer.Name = (lnode.Attributes["Name"] != null) ?
|
|
lnode.Attributes["Name"].Value : "Layer " + layerColl.Count.ToString(Util.nfi);
|
|
|
|
if ((lnode.Attributes["Repetitions"] != null) &&
|
|
(int.TryParse(lnode.Attributes["Repetitions"].Value,System.Globalization.NumberStyles.Integer,Util.nfi,out repetitions))) {
|
|
try {
|
|
if (repetitions > 0) thisLayer.Repetitions = repetitions;
|
|
} catch { }
|
|
} // Repetitions is 1 by default, so we only need to set if it's different
|
|
|
|
XmlNodeList effects = lnode.SelectNodes("Effect");
|
|
|
|
foreach (XmlNode enode in effects) {
|
|
if (enode.Attributes["Name"] == null) {
|
|
MessageBox.Show("Encountered unnamed effect. Skipping.");
|
|
continue;
|
|
}
|
|
|
|
templateFilter = GetTemplateFilterFromName(enode.Attributes["Name"].Value);
|
|
|
|
if (templateFilter == null) {
|
|
MessageBox.Show("Could not find effect " + enode.Attributes["Name"].Value + ", skipping effect");
|
|
continue;
|
|
}
|
|
|
|
thisFilter = (Filter)templateFilter.Clone();
|
|
|
|
thisFilter.Enabled = (enode.Attributes["Enabled"] != null) ?
|
|
(String.Compare(enode.Attributes["Enabled"].Value, "true", true) == 0) : true;
|
|
|
|
if (enode.Attributes["InstanceName"] != null)
|
|
thisFilter.Name = enode.Attributes["InstanceName"].Value;
|
|
|
|
//override default options where present
|
|
XmlNodeList options = enode.SelectNodes("Option");
|
|
foreach (XmlNode onode in options) {
|
|
if (onode.Attributes["Name"] == null) continue;
|
|
thisFilter.SetOptionValueByName(onode.Attributes["Name"].Value, onode.InnerText);
|
|
}
|
|
|
|
XmlNodeList econditions = enode.SelectNodes("Condition");
|
|
foreach (XmlNode ecnode in econditions) {
|
|
if ((ecnode.Attributes["ConditionOne"] == null) || (ecnode.Attributes["ConditionTwo"] == null) ||
|
|
(ecnode.Attributes["ConditionOperation"] == null)) { continue; }
|
|
|
|
thisCondition = new Condition();
|
|
thisCondition.ConditionOne = ecnode.Attributes["ConditionOne"].Value;
|
|
thisCondition.ConditionTwo = ecnode.Attributes["ConditionTwo"].Value;
|
|
thisCondition.ConditionOp = ecnode.Attributes["ConditionOperation"].Value;
|
|
thisCondition.ConditionEnabled = (ecnode.Attributes["Enabled"] != null) ?
|
|
(String.Compare(ecnode.Attributes["Enabled"].Value, "true", true) == 0) : true;
|
|
|
|
thisFilter.AddCondition(thisCondition);
|
|
}
|
|
|
|
thisLayer.AddFilter(thisFilter);
|
|
}
|
|
|
|
XmlNodeList lconditions = lnode.SelectNodes("Condition");
|
|
foreach (XmlNode lcnode in lconditions) {
|
|
if ((lcnode.Attributes["ConditionOne"] == null) || (lcnode.Attributes["ConditionTwo"] == null) ||
|
|
(lcnode.Attributes["ConditionOperation"] == null)) { continue; }
|
|
thisCondition = new Condition();
|
|
thisCondition.ConditionOne = lcnode.Attributes["ConditionOne"].Value;
|
|
thisCondition.ConditionTwo = lcnode.Attributes["ConditionTwo"].Value;
|
|
thisCondition.ConditionOp = lcnode.Attributes["ConditionOperation"].Value;
|
|
thisCondition.ConditionEnabled = (lcnode.Attributes["Enabled"] != null) ?
|
|
(String.Compare(lcnode.Attributes["Enabled"].Value, "true", true) == 0) : true;
|
|
thisLayer.AddCondition(thisCondition);
|
|
}
|
|
lColl.Add(thisLayer);
|
|
}
|
|
|
|
EventContext();
|
|
return lColl;
|
|
} catch (Exception e) {
|
|
MessageBox.Show(e.Message);
|
|
return new System.Collections.Generic.List<Layer>();
|
|
}
|
|
}
|
|
|
|
return new System.Collections.Generic.List<Layer>();
|
|
}
|
|
private void SaveProject(string filename) {
|
|
XmlTextWriter tw = new XmlTextWriter(filename, null);
|
|
tw.Formatting = Formatting.Indented;
|
|
tw.WriteStartDocument();
|
|
tw.WriteStartElement("PSSA");
|
|
tw.WriteAttributeString("Version", "4");
|
|
tw.WriteStartElement("Files");
|
|
if (File.Exists(CurFile)) tw.WriteElementString("SSA", CurFile);
|
|
tw.WriteEndElement();
|
|
|
|
foreach (Layer thislayer in layerColl) {
|
|
tw.WriteStartElement("Layer");
|
|
tw.WriteAttributeString("Name", thislayer.Name);
|
|
tw.WriteAttributeString("Enabled", thislayer.Enabled.ToString(Util.cfi));
|
|
tw.WriteAttributeString("PerSyllable", thislayer.PerSyllable.ToString(Util.cfi));
|
|
tw.WriteAttributeString("SyllablePerLine", thislayer.SyllablePerLine.ToString(Util.cfi));
|
|
tw.WriteAttributeString("RemoveK", (!thislayer.AddK).ToString(Util.cfi));
|
|
tw.WriteAttributeString("AddAll", thislayer.AddAll.ToString(Util.cfi));
|
|
tw.WriteAttributeString("AddOnce", thislayer.AddOnce.ToString(Util.cfi));
|
|
tw.WriteAttributeString("DontAddText", (!thislayer.AddText).ToString(Util.cfi));
|
|
tw.WriteAttributeString("AddText", thislayer.AddText.ToString(Util.cfi));
|
|
tw.WriteAttributeString("AddK", thislayer.AddK.ToString(Util.cfi));
|
|
tw.WriteAttributeString("AddASSA", thislayer.AddASSA.ToString(Util.cfi));
|
|
tw.WriteAttributeString("AddClosingBracket", thislayer.AddBracket.ToString(Util.cfi));
|
|
|
|
tw.WriteAttributeString("Repetitions", thislayer.Repetitions.ToString(Util.cfi));
|
|
|
|
foreach (Filter thisfilter in thislayer) {
|
|
tw.WriteStartElement("Effect");
|
|
tw.WriteAttributeString("Name", thisfilter.Template.Name);
|
|
tw.WriteAttributeString("InstanceName", thisfilter.Name);
|
|
tw.WriteAttributeString("Enabled", thisfilter.Enabled.ToString(Util.cfi));
|
|
|
|
foreach (FilterOption fo in thisfilter) {
|
|
tw.WriteStartElement("Option");
|
|
tw.WriteAttributeString("Name", fo.Name);
|
|
tw.WriteString(fo.Value);
|
|
tw.WriteEndElement();
|
|
}
|
|
|
|
for (int fcindex = 0; fcindex != thisfilter.ConditionCount; fcindex+=1) {
|
|
tw.WriteStartElement("Condition");
|
|
tw.WriteAttributeString("ConditionOne", thisfilter.GetCondition(fcindex).ConditionOne);
|
|
tw.WriteAttributeString("ConditionTwo", thisfilter.GetCondition(fcindex).ConditionTwo);
|
|
tw.WriteAttributeString("ConditionOperation", thisfilter.GetCondition(fcindex).ConditionOp);
|
|
tw.WriteAttributeString("Enabled", thisfilter.GetCondition(fcindex).ConditionEnabled.ToString(Util.cfi));
|
|
tw.WriteEndElement();
|
|
}
|
|
|
|
tw.WriteEndElement();
|
|
|
|
}
|
|
for (int flindex = 0; flindex != thislayer.ConditionCount; flindex+=1) {
|
|
tw.WriteStartElement("Condition");
|
|
tw.WriteAttributeString("ConditionOne", thislayer.GetCondition(flindex).ConditionOne);
|
|
tw.WriteAttributeString("ConditionTwo", thislayer.GetCondition(flindex).ConditionTwo);
|
|
tw.WriteAttributeString("ConditionOperation", thislayer.GetCondition(flindex).ConditionOp);
|
|
tw.WriteAttributeString("Enabled", thislayer.GetCondition(flindex).ConditionEnabled.ToString(Util.cfi));
|
|
tw.WriteEndElement();
|
|
}
|
|
|
|
tw.WriteEndElement();
|
|
}
|
|
|
|
tw.WriteEndElement();
|
|
tw.WriteEndDocument();
|
|
tw.Flush();
|
|
tw.Close();
|
|
}
|
|
#endregion
|
|
|
|
#region Generic form functions
|
|
public void ExtractStyles() {
|
|
Line line;
|
|
Style s;
|
|
labelSelLine.Text = string.Empty;
|
|
styleColl.Clear();
|
|
|
|
lstStyles.BeginUpdate();
|
|
listSSA.BeginUpdate();
|
|
cmbRegroupDest.BeginUpdate();
|
|
cmbRegroupSource.BeginUpdate();
|
|
|
|
lstStyles.Items.Clear();
|
|
cmbRegroupDest.Items.Clear();
|
|
cmbRegroupSource.Items.Clear();
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
line = lineColl[index];
|
|
if (line.lineType == LineType.style) {
|
|
s = (Style)line.line;
|
|
cmbRegroupDest.Items.Add(s.name);
|
|
cmbRegroupSource.Items.Add(s.name);
|
|
lstStyles.Items.Add(s.name, s.enabled);
|
|
styleColl.Add(s);
|
|
}
|
|
}
|
|
listSSA.VirtualListSize = lineColl.Count;
|
|
listSSA.Columns[0].Width = -2;
|
|
lstStyles.EndUpdate();
|
|
cmbRegroupDest.EndUpdate();
|
|
cmbRegroupSource.EndUpdate();
|
|
listSSA.EndUpdate();
|
|
}
|
|
private void NewLine(int index) {
|
|
if (lineColl != null) {
|
|
InputBoxResult newvalue = (InputBox.Show("Enter new text", "Input", String.Empty));
|
|
if (newvalue.OK == true) {
|
|
Line newline = Line.ParseLine(newvalue.Text);
|
|
lineColl.Insert(index, newline);
|
|
undoStack.Push(index);
|
|
if (newline.lineType == LineType.style) {
|
|
Style s = (Style)newline.line;
|
|
styleColl.Add(s);
|
|
lstStyles.Items.Add(s.name);
|
|
}
|
|
menuUndo.Enabled = true;
|
|
DrawListOnScreen(); // refresh
|
|
}
|
|
}
|
|
else MessageBox.Show("Select an item that is not on the top first.");
|
|
}
|
|
private void TextToList(TextBox tb, ListInsert type) {
|
|
int index = GetFirstSelected();
|
|
if (index == -1)
|
|
MessageBox.Show("Select an item in the list first.");
|
|
else {
|
|
int indexIns;
|
|
|
|
switch (type) {
|
|
case ListInsert.AfterLine:
|
|
indexIns = index + 1;
|
|
break;
|
|
|
|
case ListInsert.BeforeLine:
|
|
indexIns = index;
|
|
break;
|
|
|
|
default:
|
|
lineColl.RemoveAt(index);
|
|
indexIns = index;
|
|
break;
|
|
}
|
|
for (int lIndex = tb.Lines.Length - 1; lIndex != -1; lIndex--) {
|
|
string thisline = (string)tb.Lines.GetValue(lIndex);
|
|
if (!String.IsNullOrEmpty(thisline))
|
|
lineColl.Insert(indexIns, Line.ParseLine(thisline));
|
|
}
|
|
listSSA.VirtualListSize = lineColl.Count;
|
|
DrawListOnScreen(); //update list on screen
|
|
}
|
|
}
|
|
enum ListInsert {
|
|
BeforeLine,
|
|
AfterLine,
|
|
ReplaceLine
|
|
}
|
|
#endregion
|
|
|
|
|
|
|
|
private void cmdLead_Click(object sender, EventArgs e) {
|
|
TimeSpan leadin, leadout;
|
|
leadin = (chkLeadIn.Checked) ? TimeSpan.Parse(txtLeadIn.Text) : TimeSpan.Zero;
|
|
leadout = (chkLeadOut.Checked) ? TimeSpan.Parse(txtLeadIn.Text) : TimeSpan.Zero;
|
|
Regex rlead = new Regex(@"(\\[(t)(move)]\()([\d\-,]+)", RegexOptions.IgnoreCase | RegexOptions.Singleline | RegexOptions.Compiled);
|
|
GroupCollection gc;
|
|
List<Line> newList = new List<Line>();
|
|
Line line;
|
|
DialogueLine dl;
|
|
Match m;
|
|
MatchCollection mc;
|
|
string leadink = "{\\k" + ((int)Math.Round(leadin.TotalMilliseconds / 10.0, 0)).ToString(Util.cfi) + "}";
|
|
string[] split;
|
|
StringBuilder sb;
|
|
int lastindex;
|
|
bool containsK;
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
line = (Line)lineColl[index].Clone();
|
|
if ((lineColl[index].enabled == false) || (lineColl[index].lineType != LineType.dialogue) || ((dl = (DialogueLine)line.line).style.enabled == false) || (r.IsMatch(dl.text) == false)) {
|
|
newList.Add(line);
|
|
continue;
|
|
}
|
|
|
|
containsK = dl.text.ToLowerInvariant().Contains("\\k");
|
|
|
|
sb = new StringBuilder(1024);
|
|
|
|
if (chkLeadIn.Checked)
|
|
dl.start = dl.start.Subtract(leadin);
|
|
if (chkLeadOut.Checked)
|
|
dl.end = dl.end.Add(leadout);
|
|
|
|
if (chkLeadIn.Checked && containsK && chkLeadKaraEmptyK.Checked)
|
|
sb.Append(leadink);
|
|
|
|
lastindex = 0;
|
|
mc = rlead.Matches(dl.text);
|
|
for (int mindex = 0; mindex != mc.Count; mindex+=1) {
|
|
m = mc[mindex];
|
|
if (m.Index > lastindex)
|
|
sb.Append(dl.text.Substring(lastindex, m.Index - lastindex));
|
|
|
|
gc = m.Groups;
|
|
sb.Append(gc[1]);
|
|
|
|
switch (gc[1].Value) {
|
|
case "\\move(":
|
|
split = gc[2].Value.Split(",".ToCharArray());
|
|
for (int tokindex = 0; tokindex != split.Length; tokindex+=1) {
|
|
if (tokindex != 1) sb.Append(",");
|
|
if (tokindex < 5)
|
|
sb.Append(split[tokindex]);
|
|
else //5 and 6 are times
|
|
sb.Append((int.Parse(split[tokindex]) + leadin.TotalMilliseconds).ToString(Util.cfi));
|
|
}
|
|
break;
|
|
|
|
case "\\t(":
|
|
split = gc[2].Value.Split(",".ToCharArray());
|
|
sb.Append(String.Format("{0},{1},",
|
|
(int.Parse(split[0]) + leadin.TotalMilliseconds),
|
|
(int.Parse(split[1]) + leadin.TotalMilliseconds)));
|
|
for (int tokindex = 3; tokindex != split.Length; tokindex+=1)
|
|
sb.Append(split[tokindex] + ",");
|
|
|
|
break;
|
|
|
|
default:
|
|
sb.Append(gc[2]);
|
|
break;
|
|
|
|
}
|
|
lastindex = m.Index + m.Length;
|
|
|
|
}
|
|
if (dl.text.Length > lastindex)
|
|
sb.Append(dl.text.Substring(lastindex, dl.text.Length - lastindex));
|
|
|
|
dl.text = sb.ToString();
|
|
newList.Add(line);
|
|
}
|
|
SetLineColl(newList);
|
|
}
|
|
|
|
#region Kanji timing
|
|
private ushort[] RegroupSourceLengths;
|
|
private int RegroupSourceSelected, RegroupSourceOffset;
|
|
private void cmdRegroupLink_Click(object sender, EventArgs e) {
|
|
if (txtRegroupSource.SelectionLength == 0)
|
|
MessageBox.Show("Select text from the source textbox.");
|
|
else if (txtRegroupDest.SelectionStart != 0 || txtRegroupSource.SelectionStart != 0)
|
|
MessageBox.Show("Both selections must start from the left.");
|
|
else {
|
|
string[] lvs = new string[2];
|
|
ListViewItem lvi;
|
|
lvs[0] = txtRegroupSource.SelectedText;
|
|
lvs[1] = txtRegroupDest.SelectedText;
|
|
lvi = new ListViewItem(lvs);
|
|
lvi.Tag = RegroupSourceSelected;
|
|
listRegroupPairs.Items.Add(lvi);
|
|
txtRegroupSource.Text = txtRegroupSource.Text.Substring(txtRegroupSource.SelectionLength, txtRegroupSource.TextLength - txtRegroupSource.SelectionLength);
|
|
txtRegroupDest.Text = txtRegroupDest.Text.Substring(txtRegroupDest.SelectionLength, txtRegroupDest.TextLength - txtRegroupDest.SelectionLength);
|
|
RegroupSourceOffset += RegroupSourceSelected;
|
|
if (txtRegroupSource.TextLength != 0) {
|
|
RegroupSourceSelected = 1;
|
|
RegroupSetSourceSelected();
|
|
}
|
|
}
|
|
if (txtRegroupDest.SelectionStart != 0 || txtRegroupDest.SelectionLength == 0)
|
|
RegroupSetDestSelected();
|
|
}
|
|
private void txtRegroupDest_KeyDown(object sender, KeyEventArgs e) {
|
|
if (e.KeyData.Equals(Keys.Left)) {
|
|
if (txtRegroupDest.SelectionLength != 0) txtRegroupDest.SelectionLength -= 1;
|
|
e.Handled = true;
|
|
}
|
|
else if (e.KeyData.Equals(Keys.Right)) {
|
|
if (txtRegroupDest.SelectionStart != 0) txtRegroupDest.SelectionStart = 0;
|
|
if (txtRegroupDest.TextLength > txtRegroupDest.SelectionLength) txtRegroupDest.SelectionLength += 1;
|
|
e.Handled = true;
|
|
}
|
|
else if (e.KeyData.Equals(Keys.Down)) {
|
|
if (txtRegroupSource.SelectionLength != 0) {
|
|
RegroupSourceSelected -= 1;
|
|
RegroupSetSourceSelected();
|
|
}
|
|
e.Handled = true;
|
|
}
|
|
else if (e.KeyData.Equals(Keys.Up)) {
|
|
if (txtRegroupSource.SelectionStart != 0) txtRegroupSource.SelectionStart = 0;
|
|
if (txtRegroupSource.TextLength > txtRegroupSource.SelectionLength) {
|
|
RegroupSourceSelected += 1;
|
|
RegroupSetSourceSelected();
|
|
}
|
|
e.Handled = true;
|
|
}
|
|
else if (e.KeyData.Equals(Keys.Enter)) {
|
|
if ((txtRegroupDest.TextLength == 0) && (txtRegroupSource.TextLength == 0) && (listRegroupPairs.Items.Count != 0))
|
|
cmdRegroupAcceptLine_Click(null, null);
|
|
else cmdRegroupLink_Click(null, null);
|
|
|
|
e.Handled = true;
|
|
}
|
|
else if (e.KeyData.Equals(Keys.Back)) {
|
|
cmdRegroupUnlinkLast_Click(null, null);
|
|
e.Handled = true;
|
|
}
|
|
}
|
|
private void txtRegroupDest_KeyPress(object sender, KeyPressEventArgs e) {
|
|
if (e.KeyChar == 8) e.Handled = true;
|
|
}
|
|
private void cmdRegroupUnlinkLast_Click(object sender, EventArgs e) {
|
|
if (listRegroupPairs.Items.Count != 0) {
|
|
ListViewItem lvi = listRegroupPairs.Items[listRegroupPairs.Items.Count - 1];
|
|
txtRegroupSource.Text = lvi.SubItems[0].Text + txtRegroupSource.Text;
|
|
txtRegroupDest.Text = lvi.SubItems[1].Text + txtRegroupDest.Text;
|
|
RegroupSourceOffset -= (int)lvi.Tag;
|
|
lvi.Remove();
|
|
RegroupSourceSelected = 1;
|
|
RegroupSetSourceSelected();
|
|
RegroupSetDestSelected();
|
|
}
|
|
}
|
|
private void cmdRegroupSkipSourceLine_Click(object sender, EventArgs e) {
|
|
int lineindex;
|
|
int index = int.Parse(lblRegroupSourceIndex.Text);
|
|
index+=1;
|
|
lblRegroupSourceIndex.Text = index.ToString(Util.cfi);
|
|
lineindex = ListIndexFromStyleandIndex(cmbRegroupSource.Text, index);
|
|
if (lineindex != -1) {
|
|
RegroupSourceSelected = 0;
|
|
txtRegroupSource.Text = ((DialogueLine)lineColl[lineindex].line).JustText;
|
|
RegroupSetSyllableLengths(lineindex);
|
|
}
|
|
if (txtRegroupSource.TextLength != 0) {
|
|
RegroupSourceOffset = 0;
|
|
RegroupSourceSelected = 1;
|
|
RegroupSetSourceSelected();
|
|
txtRegroupDest.Focus();
|
|
}
|
|
}
|
|
private void cmdRegroupSkipDestLine_Click(object sender, EventArgs e) {
|
|
int lineindex;
|
|
int index = int.Parse(lblRegroupDestIndex.Text);
|
|
index+=1;
|
|
lblRegroupDestIndex.Text = index.ToString(Util.cfi);
|
|
lineindex = ListIndexFromStyleandIndex(cmbRegroupDest.Text, index);
|
|
if (lineindex != -1) txtRegroupDest.Text = ((DialogueLine)lineColl[lineindex].line).JustText;
|
|
RegroupSetDestSelected();
|
|
}
|
|
private void cmdRegroupAcceptLine_Click(object sender, EventArgs e) {
|
|
if ((txtRegroupDest.TextLength != 0) || (txtRegroupSource.TextLength != 0) || (listRegroupPairs.Items.Count == 0))
|
|
MessageBox.Show("Group the text completely first.");
|
|
else try {
|
|
StringBuilder sb = new StringBuilder(1024);
|
|
Line line;
|
|
DialogueLine dl;
|
|
|
|
GroupCollection gc;
|
|
int srcindex, destindex, karalen, lastindex, listindex = 0, stextlen = 0;
|
|
bool setstextlen = true;
|
|
|
|
srcindex = ListIndexFromStyleandIndex(cmbRegroupSource.Text, int.Parse(lblRegroupSourceIndex.Text));
|
|
destindex = ListIndexFromStyleandIndex(cmbRegroupDest.Text, int.Parse(lblRegroupDestIndex.Text));
|
|
|
|
if (srcindex != -1 && destindex != -1) {
|
|
lastindex = 0;
|
|
karalen = 0;
|
|
line = (Line)lineColl[srcindex].Clone();
|
|
dl = (DialogueLine)line.line;
|
|
foreach (Match m in r.Matches(dl.text)) {
|
|
gc = m.Groups;
|
|
karalen += int.Parse(gc[2].Value);
|
|
if (m.Index > lastindex)
|
|
sb.Append(dl.text.Substring(lastindex, m.Index - lastindex));
|
|
lastindex = m.Index + m.Length;
|
|
if (setstextlen) stextlen = (gc[5].Value.Length == 0) ? 0 : listRegroupPairs.Items[listindex].Text.Length;
|
|
stextlen -= gc[5].Value.Length;
|
|
|
|
|
|
if (stextlen == 0) {
|
|
sb.Append(gc[1].Value + karalen.ToString(Util.cfi) + "}");
|
|
karalen = 0;
|
|
if (gc[5].Value.Length != 0) {
|
|
sb.Append(listRegroupPairs.Items[listindex].SubItems[1].Text);
|
|
listindex+=1;
|
|
}
|
|
setstextlen = true;
|
|
}
|
|
|
|
else {
|
|
lastindex+=1;
|
|
setstextlen = false;
|
|
}
|
|
}
|
|
if (dl.text.Length > lastindex)
|
|
sb.Append(dl.text.Substring(lastindex, dl.text.Length - lastindex));
|
|
|
|
dl.style = ((DialogueLine)lineColl[destindex].line).style;
|
|
dl.text = sb.ToString();
|
|
lineColl[destindex] = line;
|
|
ExtractStyles();
|
|
|
|
listRegroupPairs.Items.Clear();
|
|
cmdRegroupSkipDestLine_Click(null, null);
|
|
cmdRegroupSkipSourceLine_Click(null, null);
|
|
}
|
|
} catch { MessageBox.Show("An error occured. Make sure no lines changed since you started."); }
|
|
}
|
|
|
|
private void cmdRegroupStart_Click(object sender, EventArgs e) {
|
|
lblRegroupDestIndex.Text = "0";
|
|
lblRegroupSourceIndex.Text = "0";
|
|
txtRegroupDest.SelectionStart = 0;
|
|
txtRegroupDest.SelectionLength = 0;
|
|
txtRegroupSource.SelectionStart = 0;
|
|
txtRegroupSource.SelectionLength = 0;
|
|
cmdRegroupSkipSourceLine_Click(null, null);
|
|
cmdRegroupSkipDestLine_Click(null, null);
|
|
}
|
|
|
|
private void cmdRegroupGoBack_Click(object sender, EventArgs e) {
|
|
int index = int.Parse(lblRegroupSourceIndex.Text);
|
|
index -= 2;
|
|
if (index >= 0) lblRegroupSourceIndex.Text = index.ToString(Util.cfi);
|
|
index = int.Parse(lblRegroupDestIndex.Text);
|
|
index -= 2;
|
|
if (index >= 0) lblRegroupDestIndex.Text = index.ToString(Util.cfi);
|
|
cmdRegroupSkipSourceLine_Click(null, null);
|
|
cmdRegroupSkipDestLine_Click(null, null);
|
|
}
|
|
private int ListIndexFromStyleandIndex(string StyleName, int Occurance) {
|
|
Line line;
|
|
int occindex = 0;
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
line = lineColl[index];
|
|
if (line.lineType == LineType.dialogue && ((DialogueLine)line.line).style.Equals(StyleName)) {
|
|
if (++occindex == Occurance) return index;
|
|
}
|
|
}
|
|
return -1;
|
|
}
|
|
private void RegroupSetSyllableLengths(int index) {
|
|
if (index <= lineColl.Count) {
|
|
MatchCollection mc;
|
|
Match m;
|
|
Line thisline = lineColl[index];
|
|
|
|
if (thisline.lineType == LineType.dialogue) {
|
|
string linetext = ((DialogueLine)thisline.line).text;
|
|
|
|
mc = r.Matches(linetext);
|
|
if (mc.Count == 0) {
|
|
MessageBox.Show("Kanji timing: Current source line has no \\k times");
|
|
return;
|
|
}
|
|
RegroupSourceLengths = new ushort[mc.Count];
|
|
for (int mindex = 0; mindex != mc.Count; mindex+=1) {
|
|
m = mc[mindex];
|
|
RegroupSourceLengths[mindex] = (ushort)m.Groups[5].Value.Length;
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
private void RegroupSetSourceSelected() {
|
|
if (RegroupSourceLengths != null && RegroupSourceLengths.Length != 0) {
|
|
int sellen = 0;
|
|
if (RegroupSourceSelected < RegroupSourceLengths.Length && RegroupSourceLengths[RegroupSourceSelected + RegroupSourceOffset - 1] == 0)
|
|
RegroupSourceSelected+=1;
|
|
|
|
for (int index = 0; index != RegroupSourceSelected; index+=1)
|
|
sellen += RegroupSourceLengths[index + RegroupSourceOffset];
|
|
txtRegroupSource.SelectionStart = 0;
|
|
txtRegroupSource.SelectionLength = sellen;
|
|
}
|
|
}
|
|
private void RegroupSetDestSelected() {
|
|
if (txtRegroupDest.TextLength != 0) {
|
|
txtRegroupDest.SelectionStart = 0;
|
|
if (txtRegroupSource.SelectionLength != 0 && txtRegroupDest.Text.StartsWith(txtRegroupSource.SelectedText))
|
|
txtRegroupDest.SelectionLength = txtRegroupSource.SelectionLength;
|
|
else if (txtRegroupSource.SelectionLength != 0 && txtRegroupSource.SelectedText.EndsWith(" ") &&
|
|
txtRegroupDest.TextLength > 1 && String.CompareOrdinal(txtRegroupDest.Text.Substring(1, 1), " ") == 0)
|
|
txtRegroupDest.SelectionLength = 2;
|
|
else
|
|
txtRegroupDest.SelectionLength = 1;
|
|
txtRegroupDest.Focus();
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region Noteboxes
|
|
private void cmbNBStyle_SelectedIndexChanged(object sender, EventArgs e) {
|
|
if (cmbNBStyle.SelectedIndex < Notebox.noteBoxColl.Count)
|
|
textNBDesc.Text = (Notebox.noteBoxColl[cmbNBStyle.SelectedIndex]).description;
|
|
}
|
|
private void cmdNoteBox_Click(object sender, EventArgs e) {
|
|
Notebox.DoNotebox(textNotebox1.Text, textNotebox2.Text, cmbNBStyle.SelectedIndex);
|
|
}
|
|
private void cmdNBInsertBefore_Click(object sender, EventArgs e) {
|
|
TextToList(textNBOut, ListInsert.BeforeLine);
|
|
ExtractStyles();
|
|
}
|
|
private void cmdNBInsertAfter_Click(object sender, EventArgs e) {
|
|
TextToList(textNBOut, ListInsert.AfterLine);
|
|
ExtractStyles();
|
|
}
|
|
private void cmdNBReplaceLine_Click(object sender, EventArgs e) {
|
|
TextToList(textNBOut, ListInsert.ReplaceLine);
|
|
ExtractStyles();
|
|
}
|
|
private void cmdNBReparse_Click(object sender, EventArgs e) {
|
|
Notebox.readNoteBoxes();
|
|
}
|
|
private void cmdNBCopyStyles_Click(object sender, EventArgs e) {
|
|
Notebox.CopyStyles();
|
|
}
|
|
private void cmdNBGetTimes_Click(object sender, EventArgs e) {
|
|
int index = GetFirstSelected();
|
|
if (index != -1) {
|
|
Line l = lineColl[index];
|
|
if (l.lineType == LineType.dialogue) {
|
|
DialogueLine dl = (DialogueLine)l.line;
|
|
maskedTextNBStart.Text = Util.TimeSpanSSA(dl.start, false, 2);
|
|
maskedTextNBEnd.Text = Util.TimeSpanSSA(dl.end, true, 2);
|
|
}
|
|
else MessageBox.Show("Please select a dialogue line.");
|
|
}
|
|
else MessageBox.Show("Please select a line.");
|
|
}
|
|
#endregion
|
|
|
|
#region Timecodes
|
|
private void cmdTimecodesBrowse_Click(object sender, EventArgs e) {
|
|
openFileDialog1.Filter = "Text Files (*.txt)|*.txt|All Files (*)|*";
|
|
openFileDialog1.FileName = String.Empty;
|
|
if (openFileDialog1.ShowDialog() == DialogResult.OK)
|
|
textTimecodeFile.Text = openFileDialog1.FileName;
|
|
|
|
}
|
|
|
|
private void cmdTimecodesApply_Click(object sender, EventArgs e) {
|
|
if (File.Exists(textTimecodeFile.Text)) {
|
|
TimeCodes tc = new TimeCodes(textTimecodeFile.Text, double.Parse(cmbFR.Text));
|
|
Line l;
|
|
DialogueLine dl;
|
|
List<Line> newList = new List<Line>();
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
l = lineColl[index];
|
|
if (l.lineType == LineType.dialogue) {
|
|
l = (Line)l.Clone();
|
|
dl = (DialogueLine)l.line;
|
|
dl.start = tc.GetTime(dl.start);
|
|
dl.end = tc.GetTime(dl.end);
|
|
}
|
|
newList.Add(l);
|
|
}
|
|
|
|
undoStack.Push(lineColl);
|
|
SetLineColl(newList);
|
|
}
|
|
else
|
|
MessageBox.Show("Timecode file does not exist.");
|
|
}
|
|
|
|
private void cmdTimecodesDeapply_Click(object sender, EventArgs e) {
|
|
if (File.Exists(textTimecodeFile.Text)) {
|
|
TimeCodes tc = new TimeCodes(textTimecodeFile.Text, double.Parse(cmbFR.Text));
|
|
Line l;
|
|
DialogueLine dl;
|
|
List<Line> newList = new List<Line>();
|
|
|
|
for (int index = 0; index != lineColl.Count; index+=1) {
|
|
l = lineColl[index];
|
|
if (l.lineType == LineType.dialogue) {
|
|
l = (Line)l.Clone();
|
|
dl = (DialogueLine)l.line;
|
|
dl.start = tc.GetTimeInverse(dl.start);
|
|
dl.end = tc.GetTimeInverse(dl.end);
|
|
}
|
|
newList.Add(l);
|
|
}
|
|
|
|
undoStack.Push(lineColl);
|
|
SetLineColl(newList);
|
|
}
|
|
else
|
|
MessageBox.Show("Timecode file does not exist.");
|
|
}
|
|
#endregion
|
|
|
|
}
|
|
} |