From 01f7850964701d8fb1a456bdb01b3782c413c06e Mon Sep 17 00:00:00 2001 From: John Date: Fri, 11 Mar 2016 15:33:25 +0000 Subject: [PATCH] Added a button for importing text from a word document Allows you to select/open a word document and will put word text on clipboard To remember the last word document opened --- .../Properties/Settings.Designer.cs | 16 +- .../Properties/Settings.settings | 3 + PROMS/Volian.Controls.Library/Settings.cs | 28 ++ .../Volian.Controls.Library/StepTabRibbon.cs | 10 + .../StepTabRibbon.designer.cs | Bin 519884 -> 524040 bytes .../StepTabRibbon.resx | 466 +++++++++--------- .../frmImportWordContents.Designer.cs | 248 ++++++++++ .../frmImportWordContents.cs | 129 +++++ .../frmImportWordContents.resx | 123 +++++ 9 files changed, 788 insertions(+), 235 deletions(-) create mode 100644 PROMS/Volian.Controls.Library/Settings.cs create mode 100644 PROMS/Volian.Controls.Library/frmImportWordContents.Designer.cs create mode 100644 PROMS/Volian.Controls.Library/frmImportWordContents.cs create mode 100644 PROMS/Volian.Controls.Library/frmImportWordContents.resx diff --git a/PROMS/Volian.Controls.Library/Properties/Settings.Designer.cs b/PROMS/Volian.Controls.Library/Properties/Settings.Designer.cs index 83b11684..d255752f 100644 --- a/PROMS/Volian.Controls.Library/Properties/Settings.Designer.cs +++ b/PROMS/Volian.Controls.Library/Properties/Settings.Designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.4200 +// Runtime Version:4.0.30319.34209 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -12,7 +12,7 @@ namespace Volian.Controls.Library.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")] internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); @@ -77,5 +77,17 @@ namespace Volian.Controls.Library.Properties { this["ReplaceTextList"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ImportWordFilePath { + get { + return ((string)(this["ImportWordFilePath"])); + } + set { + this["ImportWordFilePath"] = value; + } + } } } diff --git a/PROMS/Volian.Controls.Library/Properties/Settings.settings b/PROMS/Volian.Controls.Library/Properties/Settings.settings index 625fe6a8..9f93a2c9 100644 --- a/PROMS/Volian.Controls.Library/Properties/Settings.settings +++ b/PROMS/Volian.Controls.Library/Properties/Settings.settings @@ -17,5 +17,8 @@ + + + \ No newline at end of file diff --git a/PROMS/Volian.Controls.Library/Settings.cs b/PROMS/Volian.Controls.Library/Settings.cs new file mode 100644 index 00000000..23811ad5 --- /dev/null +++ b/PROMS/Volian.Controls.Library/Settings.cs @@ -0,0 +1,28 @@ +namespace Volian.Controls.Library.Properties { + + + // This class allows you to handle specific events on the settings class: + // The SettingChanging event is raised before a setting's value is changed. + // The PropertyChanged event is raised after a setting's value is changed. + // The SettingsLoaded event is raised after the setting values are loaded. + // The SettingsSaving event is raised before the setting values are saved. + internal sealed partial class Settings { + + public Settings() { + // // To add event handlers for saving and changing settings, uncomment the lines below: + // + // this.SettingChanging += this.SettingChangingEventHandler; + // + // this.SettingsSaving += this.SettingsSavingEventHandler; + // + } + + private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) { + // Add code to handle the SettingChangingEvent event here. + } + + private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) { + // Add code to handle the SettingsSaving event here. + } + } +} diff --git a/PROMS/Volian.Controls.Library/StepTabRibbon.cs b/PROMS/Volian.Controls.Library/StepTabRibbon.cs index 2fb5d425..57e76afc 100644 --- a/PROMS/Volian.Controls.Library/StepTabRibbon.cs +++ b/PROMS/Volian.Controls.Library/StepTabRibbon.cs @@ -715,6 +715,9 @@ namespace Volian.Controls.Library rbnBorderlistBox.SetupFontAndSize(6); // 6 Point Font // added per Harry to hide refresh buttons btnRefObjRefresh.Visible = btnTranRefresh.Visible = false; + // hide the import from Word file if not running in Debug mode + if (!VlnSettings.DebugMode) + rbnImpWrd.Visible = false; } void _RibbonControl_SizeChanged(object sender, EventArgs e) @@ -3275,6 +3278,13 @@ namespace Volian.Controls.Library (this.Parent as StepTabPanel).MyDisplayTabControl.ItemsChangeIds.Remove(_MyEditItem.MyStepRTB.MyItemInfo.MyProcedure.ItemID); (this.Parent as StepTabPanel).MyDisplayTabControl.ItemsChangeIds.Add(_MyEditItem.MyStepRTB.MyItemInfo.MyProcedure.ItemID, txtBxChgId.Text); } + + // open the Import Word Text dialog + private void rbnImpWrd_ItemClick(object sender, EventArgs e) + { + frmImportWordContents fiwc = new frmImportWordContents(); + fiwc.Show(); + } } public class StepTabRibbonEventArgs : EventArgs { diff --git a/PROMS/Volian.Controls.Library/StepTabRibbon.designer.cs b/PROMS/Volian.Controls.Library/StepTabRibbon.designer.cs index 6b5b2cfc68158f5f2d58d7730385fdfcd3ef2282..20ddedaf184d22b23a89bb0bf3ee74d781e4a556 100644 GIT binary patch delta 947 zcmZ8gT}YEr7=F(=-`VG;$z-VHv^hk*skLPxi-_4Dj1U_V^FpebVKb-B>|$O-9|cAf zrC;ks2vQOXAv6@f3du!uH}HoIy6L8iE(S)@ofp*^jcsQahr|1v@4U}>p7;5Z-yHY< zIF_s%y7jEd?1u=9LJ-FEK)6$1^0!Dxhd#RB_0qb*_1mdI-M3kxUrP7s*3>Xw&}f;W zMJg6E5{pX30FKu4<2YN(Ek?42&vWBlJx}%WHt>QMqYs$_-M4rn{@9^b{2t>^@s5)z z<|A+r8o>kJNo|4~+Jx!LD!T1NDIbQsx_Fh^n$=sLN1z`)(?r`>^pSu*O_QAx$a$T; zk*-yJr4b1Th1pFBh{lQEoNtUTy6K#Bt_7G=0?2D}w}f^J$$8!mZP1RMkF>eSw*XPA z(YnS=YEBIPy-1z%bv?9qns`xLr>zpvZWFm`>xOZN!4O=7P6)xUSOXZ~)JBGI>qE)Q zq8Vn#?Z>PReF>@*7=yGnSB&7)jLG(_nVc+=to6{eT-wpsLY~*=U4b#^2bY-8xOhhd z$pPMlv+GQ$E}9Tr&YyRDCdUdMh;bg0bWIJC_Yx5BvbZA`?Ho}gD^!qmi^zwB{2>tl z8pX;RA<=co!9#w3cioe2BX3jUqIm6T?In(f8!-&v0E~42h_Fmz05VA-= e?p{$28|OS~W(|`wYEN-akz~}cB&7ML`syFk*9j*8 delta 206 zcmeD9Cx7Oy{04#ZlQ-N^*sOKo0n4PfJd@vDO`5);l96M2i3_{L-qhzPY$uLT6zVl^I@ALv=R<3DPj6&0yTA5thH#ISC z-_*q9qBs4*E+($_l#NV4%)C8iBg?6@>1=D5#I|=xu=cS|*OOqin!Z4em2bP49P5=B zZW9Ir215oN1_cJg>4k}m($o2>S&slkO&E;9qUP=Qt68_-uVy>CZTkWT_E&qR=lo-z F0|17WP)+~< diff --git a/PROMS/Volian.Controls.Library/StepTabRibbon.resx b/PROMS/Volian.Controls.Library/StepTabRibbon.resx index 15c505ad..2c80be53 100644 --- a/PROMS/Volian.Controls.Library/StepTabRibbon.resx +++ b/PROMS/Volian.Controls.Library/StepTabRibbon.resx @@ -118,239 +118,6 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 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 - SUVORK5CYII= - - - - 17, 17 - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAScQAA - EnEB89x6jgAAA9ZJREFUOE9lj39M1HUYxz/HHZO7g+N+ClKgEFFMBkYBQy2tA85D7xfHoTDAhEErRH4L - FUQTyCHggXggO0DAA+SQCpEfR5C7BGM5jKGcASa2URqWzJOMG8K772zrn57t2fPPe6/n9SafS7eRBpWI - jCbYB9TIXRvbozkL7WrnZb2Sf093QFRaEO7NPKcQkk61E9ErBKROJiIl+zxIjtiH5IW9SshnUk9yRuH6 - Sl8cc+68mofheHtcjmWiPdoZ2gOuoEK6eoWQQwFcKIDL/wBUiOjkokKDhoM2FRNGFQ0daiYaVAJUydxQ - IvVY1ysF5i6N42STkj95Ti6sL5F4eP4HaJY50ltk7KazUg4aU3ejO0cM/SFPUFboiHFGM2V16RAbV+Ic - cJF60qjgo1iyzZQX5i3ID/cipCGSQ9dFsHTlESJYespgWzDjT8sobnaWofMgD4YoB3RH2aEnmo7zSjaq - IkUoFLvh+LvuWZ9IvAkxxdOJQcFIbkkJ2Vg2V8M2bwJWFjDXWwG9hIHTKi8Yju6mrLaidj8X1ZHOqFJ6 - oFyzY7RCE+JIxo8Q0nuQ7j5ULLtjHTkB63gd1u4OYbo1D1/sYuCroig8uzOAxe+NmB+qx/zAWSxOdGGq - W/uHLn7PdnIqYisp2etB9InvnHxozILV9Cn+vl6DnztzoJW7w3IhG8/n+7H2cAobj+exsXwXWLbgwVX9 - WnuKOIJw4+wIL4ZBD9jHTtdlim2/tqVh+cujeGBMw8DHSjz6Oh/Wa9WwTnfjr1nTi7VZerDQe3LFkLw3 - kHBjCYubalcRZGSvaow81JapMFKRie9aSnGp9SPMtSXi2XAhHl8tx5NxHQWrwfqPdfih4Zi5KXEnh/AT - aMmBnS8hdul1xD4SoWBWBsvsfSxZV5A9mo7MI8H4rTUZK1eoen25WDHl42bzcZs6NEH+pmcyIS5ZLOOO - iUC8PfMG3rv9GqQLPvh2YwD9w7/AT21AWGo/SrMzMFgaDbM2CWMdlfggt/c5ja+9QEixKxF+uOmE20U/ - eF0Lhe/1YPhN+WHngAT+kZchK1pFSguQ0fgE35hvYPanGQxN23C4EdiTswjm5spWIkggQn46q5BX5jYi - rPWadGl6+ZZDkvh33+j7kFUBykpATt22CbyY2hFAXApITwFbQgefEsH7NCJIYRBeLNnkfIzN5xY5uDHe - Umpc/GfX/ZOAkAwgKBsILwYGbwEJp4HtKYBvzCqcvLru/QtItSe8w3aEm+tEuPmuhOZYQGgsbRrLvW+M - 73djaXPQ7aei4BlrwH6LdUvQtJXjMzZnL2xrJ8ziXf8A4LIVTkOEfSkAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAScQAA - EnEB89x6jgAAAKtJREFUOE+9kNERAiEMRGnBSqCsa8nxwyIsyRru1zUbZ28giObD8WbekYTNEigAJuzj - byBqxFyw0mM/A7eC++WE61aclcmYMLVGwlh8MhkTS3lqFDL/n8E74arue0dgYRb1eJ+a+fJCDxnh9eIV - Xz9bWms+Zq3VYc2FXSOJVzkMKFydnjLoJ2DMmoxTBhT+ZAKuRO+QNqBQE/QNkaUBN9lMwTcmA5lkUQ+A - 8gQTFT/xg5mZXAAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAScQAA - EnEB89x6jgAAAk5JREFUOE9j+P//P0UYqyA+nJU1Q6m7O/3S7NmZ/2trE9qwKsKFy8q6pZqba04/fmwN - 5Ar/7+xk2IJVITZcXd0m095efPDlS8X/P36s+b90qcfb9HQGd6yK0XFGxgwZoM27nz83+P/rF9P/mTPV - vsyfH98AkkNRWFJSKlZY2CtfWNgvC8IFBRNksrOnqjY1pR14/FgGaPPO/4sWuX+vrlZPWrXKQwTFgJqa - Ov22tq79HR1lN7q6Kq51dJQAccXV9vayW0+fav3/+5fh/7Rpaq+bmtJLTp92EILpAxPl5RVKXV1zLj97 - duP/58+q/z984Pz/9avA/48fuYB85f8/f+79P2dO8t9NmzwyYBpRDOjtnfXg0aNjQGYQEG/5v369wf9n - z2b937DB+v+nTxv+L1sW+DovzyT9+HEnuM0wDCamTs0E2ugBxBv/v30b9//u3T3AgIr/f+HCTqDtIf/7 - +hhepKQIGaBrBmEwsWDB5P9Pn+797+sb+F9VleH/lCl+/+/d2/R/xYrg/+/ebfg/a5bBq+xsBkt0zSAM - JpYurf5/7ZrRf0lJfqBfd/3X1RX9f+mS2//373cCXRUMDDyed3l5DKDUg92AGTNmfvzyZfPrI0fk/lta - mv6XklL8f+bMaqBUJDDeN/yfMEHhXmoqHgMaGjpD9+y5vvX//wNPdu/mfnf+/Oa3//+nA/FCIE58v359 - 7pING+LF0TWDMJxRVVXivmTJsgebN6d+3bCh7euyZRFfly5t+7pgQfCHlSu74169WsuIrBGGMQRIw/8Z - AJjLwCba8vPzAAAAAElFTkSuQmCC - - - - - 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 - sWuK1nmhAAAAAElFTkSuQmCC - - - - - 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 - JgAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAK9gAA - CvYBwq9wAwAAAoRJREFUOE+dkN1P0mEYhvkLOmirrXXQ3FrNttIysLnqQK3m1BbTxWygiZmEH5MZmpG0 - ciGRUxya6awopmVhml9IajBxMExTC8SyKYPsOzV1pAu84/39NluTDuzgPnrf63qe52YAWFf6pIKYpqxk - kPQUpocG/PSvNN+5EEnAqfJcjOTTkoAfA4XA3S1F0HYNYPRaHgUrmUz60WFWwWaqwLChDNZnCpjaZbDo - FbD2KDBkuIGxFxXQa/Mw4yzFm/4syGRFkB9g+lEwVgUrPjt83ufwLuvxy9OG5QUtfs7Ww+1QQdeQTsEO - Ax+ttTHYvHEDbspPo7rkHJ8SkOk+ryUg3KHmrIGHDGJUXOEiOTbCRQlGjeXwLhmwvPgES3MP4Pmmhsuu - RFtd/BrYbsrBa7MEhZlsIqA7GOwu9U/thGfmPha/1GL+gwq3bmtg0cnhenl+FR4zCTE9IoK5U4AMThSS - joXTAovuuh9+hIWPVfjhLsOss4QSrKz40KhiU7DNKIBrMBvvzGfRce8E4g+HIiEyjBb0tcqw+PkuHtcX - oFzOhygjDjkiMdiJHH/NDAx2pWHSIsC4MRWv9KegrTqCKFYwYg+G0IJe7VXMT9dgZrIY3yek+DpeiE82 - Md4P52LKKsTbvjTYurmkdcgKuMhOiUHiURYloQRdDy9jzl35F+wcyMREfzrsvTwMd5yEtek4BZMzosOD - UZwThoiQ7bSgTXPJf7cS/e1pMDanoKcxCTpNAp7WxVHrNpQdgrqERU0mcKWEhRrpbuzduY0WtKgvQpy6 - DyJeGISc/TjDZoIXy6JaJkWRW8m6ZG2pYA+qJbugyt+B4KAttGA9ErI2mUzgoK2b/gj+L2D8BrrbuL5j - y8u4AAAAAElFTkSuQmCC - - - - - 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 @@ -683,6 +450,9 @@ 9kWBSJuCuX9alNti8QCg2VymyS/TsYX/CgDuFyf/5MBm5HpaAAAAAElFTkSuQmCC + + 17, 17 + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 @@ -855,6 +625,236 @@ s/onTA5iQP3z9+LZl7/IWq5/omM2742B9bx7MAUgbJBz6oVe+N7P2i6r36s7Lf2p6jT/G0wOTMgHHTmh aLz6tq75/E+a1nN+aDgt/AtTAMKGSQd+G3tv+GHkveKHjuui9zoO8x7C5OCKyMVYBYnH/xkA0xCX+LGq wvUAAAAASUVORK5CYII= + + + + + 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 + SUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAScQAA + EnEB89x6jgAAA9ZJREFUOE9lj39M1HUYxz/HHZO7g+N+ClKgEFFMBkYBQy2tA85D7xfHoTDAhEErRH4L + FUQTyCHggXggO0DAA+SQCpEfR5C7BGM5jKGcASa2URqWzJOMG8K772zrn57t2fPPe6/n9SafS7eRBpWI + jCbYB9TIXRvbozkL7WrnZb2Sf093QFRaEO7NPKcQkk61E9ErBKROJiIl+zxIjtiH5IW9SshnUk9yRuH6 + Sl8cc+68mofheHtcjmWiPdoZ2gOuoEK6eoWQQwFcKIDL/wBUiOjkokKDhoM2FRNGFQ0daiYaVAJUydxQ + IvVY1ysF5i6N42STkj95Ti6sL5F4eP4HaJY50ltk7KazUg4aU3ejO0cM/SFPUFboiHFGM2V16RAbV+Ic + cJF60qjgo1iyzZQX5i3ID/cipCGSQ9dFsHTlESJYespgWzDjT8sobnaWofMgD4YoB3RH2aEnmo7zSjaq + IkUoFLvh+LvuWZ9IvAkxxdOJQcFIbkkJ2Vg2V8M2bwJWFjDXWwG9hIHTKi8Yju6mrLaidj8X1ZHOqFJ6 + oFyzY7RCE+JIxo8Q0nuQ7j5ULLtjHTkB63gd1u4OYbo1D1/sYuCroig8uzOAxe+NmB+qx/zAWSxOdGGq + W/uHLn7PdnIqYisp2etB9InvnHxozILV9Cn+vl6DnztzoJW7w3IhG8/n+7H2cAobj+exsXwXWLbgwVX9 + WnuKOIJw4+wIL4ZBD9jHTtdlim2/tqVh+cujeGBMw8DHSjz6Oh/Wa9WwTnfjr1nTi7VZerDQe3LFkLw3 + kHBjCYubalcRZGSvaow81JapMFKRie9aSnGp9SPMtSXi2XAhHl8tx5NxHQWrwfqPdfih4Zi5KXEnh/AT + aMmBnS8hdul1xD4SoWBWBsvsfSxZV5A9mo7MI8H4rTUZK1eoen25WDHl42bzcZs6NEH+pmcyIS5ZLOOO + iUC8PfMG3rv9GqQLPvh2YwD9w7/AT21AWGo/SrMzMFgaDbM2CWMdlfggt/c5ja+9QEixKxF+uOmE20U/ + eF0Lhe/1YPhN+WHngAT+kZchK1pFSguQ0fgE35hvYPanGQxN23C4EdiTswjm5spWIkggQn46q5BX5jYi + rPWadGl6+ZZDkvh33+j7kFUBykpATt22CbyY2hFAXApITwFbQgefEsH7NCJIYRBeLNnkfIzN5xY5uDHe + Umpc/GfX/ZOAkAwgKBsILwYGbwEJp4HtKYBvzCqcvLru/QtItSe8w3aEm+tEuPmuhOZYQGgsbRrLvW+M + 73djaXPQ7aei4BlrwH6LdUvQtJXjMzZnL2xrJ8ziXf8A4LIVTkOEfSkAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAScQAA + EnEB89x6jgAAAKtJREFUOE+9kNERAiEMRGnBSqCsa8nxwyIsyRru1zUbZ28giObD8WbekYTNEigAJuzj + byBqxFyw0mM/A7eC++WE61aclcmYMLVGwlh8MhkTS3lqFDL/n8E74arue0dgYRb1eJ+a+fJCDxnh9eIV + Xz9bWms+Zq3VYc2FXSOJVzkMKFydnjLoJ2DMmoxTBhT+ZAKuRO+QNqBQE/QNkaUBN9lMwTcmA5lkUQ+A + 8gQTFT/xg5mZXAAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAScQAA + EnEB89x6jgAAAk5JREFUOE9j+P//P0UYqyA+nJU1Q6m7O/3S7NmZ/2trE9qwKsKFy8q6pZqba04/fmwN + 5Ar/7+xk2IJVITZcXd0m095efPDlS8X/P36s+b90qcfb9HQGd6yK0XFGxgwZoM27nz83+P/rF9P/mTPV + vsyfH98AkkNRWFJSKlZY2CtfWNgvC8IFBRNksrOnqjY1pR14/FgGaPPO/4sWuX+vrlZPWrXKQwTFgJqa + Ov22tq79HR1lN7q6Kq51dJQAccXV9vayW0+fav3/+5fh/7Rpaq+bmtJLTp92EILpAxPl5RVKXV1zLj97 + duP/58+q/z984Pz/9avA/48fuYB85f8/f+79P2dO8t9NmzwyYBpRDOjtnfXg0aNjQGYQEG/5v369wf9n + z2b937DB+v+nTxv+L1sW+DovzyT9+HEnuM0wDCamTs0E2ugBxBv/v30b9//u3T3AgIr/f+HCTqDtIf/7 + +hhepKQIGaBrBmEwsWDB5P9Pn+797+sb+F9VleH/lCl+/+/d2/R/xYrg/+/ebfg/a5bBq+xsBkt0zSAM + JpYurf5/7ZrRf0lJfqBfd/3X1RX9f+mS2//373cCXRUMDDyed3l5DKDUg92AGTNmfvzyZfPrI0fk/lta + mv6XklL8f+bMaqBUJDDeN/yfMEHhXmoqHgMaGjpD9+y5vvX//wNPdu/mfnf+/Oa3//+nA/FCIE58v359 + 7pING+LF0TWDMJxRVVXivmTJsgebN6d+3bCh7euyZRFfly5t+7pgQfCHlSu74169WsuIrBGGMQRIw/8Z + AJjLwCba8vPzAAAAAElFTkSuQmCC + + + + + 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 + sWuK1nmhAAAAAElFTkSuQmCC + + + + + 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 + JgAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAAK9gAA + CvYBwq9wAwAAAoRJREFUOE+dkN1P0mEYhvkLOmirrXXQ3FrNttIysLnqQK3m1BbTxWygiZmEH5MZmpG0 + ciGRUxya6awopmVhml9IajBxMExTC8SyKYPsOzV1pAu84/39NluTDuzgPnrf63qe52YAWFf6pIKYpqxk + kPQUpocG/PSvNN+5EEnAqfJcjOTTkoAfA4XA3S1F0HYNYPRaHgUrmUz60WFWwWaqwLChDNZnCpjaZbDo + FbD2KDBkuIGxFxXQa/Mw4yzFm/4syGRFkB9g+lEwVgUrPjt83ufwLuvxy9OG5QUtfs7Ww+1QQdeQTsEO + Ax+ttTHYvHEDbspPo7rkHJ8SkOk+ryUg3KHmrIGHDGJUXOEiOTbCRQlGjeXwLhmwvPgES3MP4Pmmhsuu + RFtd/BrYbsrBa7MEhZlsIqA7GOwu9U/thGfmPha/1GL+gwq3bmtg0cnhenl+FR4zCTE9IoK5U4AMThSS + joXTAovuuh9+hIWPVfjhLsOss4QSrKz40KhiU7DNKIBrMBvvzGfRce8E4g+HIiEyjBb0tcqw+PkuHtcX + oFzOhygjDjkiMdiJHH/NDAx2pWHSIsC4MRWv9KegrTqCKFYwYg+G0IJe7VXMT9dgZrIY3yek+DpeiE82 + Md4P52LKKsTbvjTYurmkdcgKuMhOiUHiURYloQRdDy9jzl35F+wcyMREfzrsvTwMd5yEtek4BZMzosOD + UZwThoiQ7bSgTXPJf7cS/e1pMDanoKcxCTpNAp7WxVHrNpQdgrqERU0mcKWEhRrpbuzduY0WtKgvQpy6 + DyJeGISc/TjDZoIXy6JaJkWRW8m6ZG2pYA+qJbugyt+B4KAttGA9ErI2mUzgoK2b/gj+L2D8BrrbuL5j + y8u4AAAAAElFTkSuQmCC + + + + + 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 diff --git a/PROMS/Volian.Controls.Library/frmImportWordContents.Designer.cs b/PROMS/Volian.Controls.Library/frmImportWordContents.Designer.cs new file mode 100644 index 00000000..d1788283 --- /dev/null +++ b/PROMS/Volian.Controls.Library/frmImportWordContents.Designer.cs @@ -0,0 +1,248 @@ +namespace Volian.Controls.Library +{ + partial class frmImportWordContents + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.txbWordFile = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.labelX1 = new DevComponents.DotNetBar.LabelX(); + this.btnBrowse = new DevComponents.DotNetBar.ButtonX(); + this.labelX2 = new DevComponents.DotNetBar.LabelX(); + this.txvStyle = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.txbLevel = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.labelX3 = new DevComponents.DotNetBar.LabelX(); + this.txbWrdText = new DevComponents.DotNetBar.Controls.TextBoxX(); + this.btnOpen = new DevComponents.DotNetBar.ButtonX(); + this.btnPage = new DevComponents.DotNetBar.ButtonX(); + this.btnPrev = new DevComponents.DotNetBar.ButtonX(); + this.btnNext = new DevComponents.DotNetBar.ButtonX(); + this.ofd = new System.Windows.Forms.OpenFileDialog(); + this.SuspendLayout(); + // + // txbWordFile + // + // + // + // + this.txbWordFile.Border.Class = "TextBoxBorder"; + this.txbWordFile.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.txbWordFile.Location = new System.Drawing.Point(3, 29); + this.txbWordFile.Name = "txbWordFile"; + this.txbWordFile.PreventEnterBeep = true; + this.txbWordFile.Size = new System.Drawing.Size(452, 20); + this.txbWordFile.TabIndex = 0; + this.txbWordFile.TextChanged += new System.EventHandler(this.txbWordFile_TextChanged); + // + // labelX1 + // + // + // + // + this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX1.Location = new System.Drawing.Point(2, 0); + this.labelX1.Name = "labelX1"; + this.labelX1.Size = new System.Drawing.Size(75, 23); + this.labelX1.TabIndex = 1; + this.labelX1.Text = "Word File:"; + // + // btnBrowse + // + this.btnBrowse.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.btnBrowse.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.btnBrowse.Location = new System.Drawing.Point(470, 12); + this.btnBrowse.Name = "btnBrowse"; + this.btnBrowse.Size = new System.Drawing.Size(75, 23); + this.btnBrowse.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnBrowse.TabIndex = 2; + this.btnBrowse.Text = "Browse"; + this.btnBrowse.Click += new System.EventHandler(this.btnBrowse_Click); + // + // labelX2 + // + // + // + // + this.labelX2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX2.Location = new System.Drawing.Point(13, 58); + this.labelX2.Name = "labelX2"; + this.labelX2.Size = new System.Drawing.Size(35, 23); + this.labelX2.TabIndex = 3; + this.labelX2.Text = "Style:"; + // + // txvStyle + // + this.txvStyle.BackColor = System.Drawing.SystemColors.Control; + // + // + // + this.txvStyle.Border.Class = "TextBoxBorder"; + this.txvStyle.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.txvStyle.Location = new System.Drawing.Point(54, 58); + this.txvStyle.Name = "txvStyle"; + this.txvStyle.PreventEnterBeep = true; + this.txvStyle.ReadOnly = true; + this.txvStyle.Size = new System.Drawing.Size(201, 20); + this.txvStyle.TabIndex = 4; + // + // txbLevel + // + // + // + // + this.txbLevel.Border.Class = "TextBoxBorder"; + this.txbLevel.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.txbLevel.Location = new System.Drawing.Point(353, 58); + this.txbLevel.Name = "txbLevel"; + this.txbLevel.PreventEnterBeep = true; + this.txbLevel.ReadOnly = true; + this.txbLevel.Size = new System.Drawing.Size(36, 20); + this.txbLevel.TabIndex = 6; + // + // labelX3 + // + // + // + // + this.labelX3.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.labelX3.Location = new System.Drawing.Point(312, 58); + this.labelX3.Name = "labelX3"; + this.labelX3.Size = new System.Drawing.Size(35, 23); + this.labelX3.TabIndex = 5; + this.labelX3.Text = "Level:"; + // + // txbWrdText + // + this.txbWrdText.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + // + // + // + this.txbWrdText.Border.Class = "TextBoxBorder"; + this.txbWrdText.Border.CornerType = DevComponents.DotNetBar.eCornerType.Square; + this.txbWrdText.Location = new System.Drawing.Point(13, 87); + this.txbWrdText.Multiline = true; + this.txbWrdText.Name = "txbWrdText"; + this.txbWrdText.PreventEnterBeep = true; + this.txbWrdText.Size = new System.Drawing.Size(442, 84); + this.txbWrdText.TabIndex = 7; + // + // btnOpen + // + this.btnOpen.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.btnOpen.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.btnOpen.Location = new System.Drawing.Point(470, 41); + this.btnOpen.Name = "btnOpen"; + this.btnOpen.Size = new System.Drawing.Size(75, 23); + this.btnOpen.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnOpen.TabIndex = 8; + this.btnOpen.Text = "Open"; + this.btnOpen.Click += new System.EventHandler(this.btnOpen_Click); + // + // btnPage + // + this.btnPage.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.btnPage.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.btnPage.Location = new System.Drawing.Point(470, 87); + this.btnPage.Name = "btnPage"; + this.btnPage.Size = new System.Drawing.Size(75, 23); + this.btnPage.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnPage.TabIndex = 9; + this.btnPage.Text = "Page"; + this.btnPage.Click += new System.EventHandler(this.btnPage_Click); + // + // btnPrev + // + this.btnPrev.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.btnPrev.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.btnPrev.Location = new System.Drawing.Point(470, 116); + this.btnPrev.Name = "btnPrev"; + this.btnPrev.Size = new System.Drawing.Size(75, 23); + this.btnPrev.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnPrev.TabIndex = 10; + this.btnPrev.Text = "Previous"; + this.btnPrev.Click += new System.EventHandler(this.btnPrev_Click); + // + // btnNext + // + this.btnNext.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; + this.btnNext.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; + this.btnNext.Location = new System.Drawing.Point(470, 145); + this.btnNext.Name = "btnNext"; + this.btnNext.Size = new System.Drawing.Size(75, 23); + this.btnNext.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; + this.btnNext.TabIndex = 11; + this.btnNext.Text = "Next"; + this.btnNext.Click += new System.EventHandler(this.btnNext_Click); + // + // ofd + // + this.ofd.Filter = "Docx Files|*.docx|Doc Files|*.doc|All Files|*.*"; + this.ofd.FileOk += new System.ComponentModel.CancelEventHandler(this.ofd_FileOk); + // + // frmImportWordContents + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(557, 183); + this.Controls.Add(this.btnNext); + this.Controls.Add(this.btnPrev); + this.Controls.Add(this.btnPage); + this.Controls.Add(this.btnOpen); + this.Controls.Add(this.txbWrdText); + this.Controls.Add(this.txbLevel); + this.Controls.Add(this.labelX3); + this.Controls.Add(this.txvStyle); + this.Controls.Add(this.labelX2); + this.Controls.Add(this.btnBrowse); + this.Controls.Add(this.labelX1); + this.Controls.Add(this.txbWordFile); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "frmImportWordContents"; + this.ShowIcon = false; + this.Text = "Import Word Contents"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.frmImportWordContents_FormClosing); + this.ResumeLayout(false); + + } + + #endregion + + private DevComponents.DotNetBar.Controls.TextBoxX txbWordFile; + private DevComponents.DotNetBar.LabelX labelX1; + private DevComponents.DotNetBar.ButtonX btnBrowse; + private DevComponents.DotNetBar.LabelX labelX2; + private DevComponents.DotNetBar.Controls.TextBoxX txvStyle; + private DevComponents.DotNetBar.Controls.TextBoxX txbLevel; + private DevComponents.DotNetBar.LabelX labelX3; + private DevComponents.DotNetBar.Controls.TextBoxX txbWrdText; + private DevComponents.DotNetBar.ButtonX btnOpen; + private DevComponents.DotNetBar.ButtonX btnPage; + private DevComponents.DotNetBar.ButtonX btnPrev; + private DevComponents.DotNetBar.ButtonX btnNext; + private System.Windows.Forms.OpenFileDialog ofd; + } +} \ No newline at end of file diff --git a/PROMS/Volian.Controls.Library/frmImportWordContents.cs b/PROMS/Volian.Controls.Library/frmImportWordContents.cs new file mode 100644 index 00000000..8eb5ba97 --- /dev/null +++ b/PROMS/Volian.Controls.Library/frmImportWordContents.cs @@ -0,0 +1,129 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using System.IO; +using LBWordLibrary; + +namespace Volian.Controls.Library +{ + public partial class frmImportWordContents : Form + { + LBApplicationClass _WordApp; + bool _initializing = false; + public frmImportWordContents() + { + _initializing = true; + InitializeComponent(); + txbWordFile.Text = Properties.Settings.Default.ImportWordFilePath; + disableButtons(); + _initializing = false; + btnOpen.Enabled = (txbWordFile.Text.Length > 0); + } + private void disableButtons() + { + btnOpen.Enabled = false; + btnNext.Enabled = false; + btnPage.Enabled = false; + btnPrev.Enabled = false; + } + private void ofd_FileOk(object sender, CancelEventArgs e) + { + _initializing = true; + txbWordFile.Text = ofd.FileName; + _initializing = false; + //btnOpen.Enabled = true; + } + + private void btnBrowse_Click(object sender, EventArgs e) + { + // if we have a word doc open, then close it and reset WordApp + if (_WordApp != null) + { + try + { + _WordApp.Quit(false); + } + catch + { + // will error if user already closed Word + } + _WordApp = null; + disableButtons(); + } + if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + btnOpen_Click(sender, e); + // btnOpen.PerformClick(); // does not work if button is disabled + } + + } + + private void btnOpen_Click(object sender, EventArgs e) + { + if (!File.Exists(txbWordFile.Text)) + { + MessageBox.Show(string.Format("{0}", txbWordFile.Text), "File Does Not Exist", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); + disableButtons(); + return; + } + _WordApp = new LBApplicationClass(); + _WordApp.Documents.Open(txbWordFile.Text); + _WordApp.Visible = true; + btnNext.Enabled = true; + btnPage.Enabled = true; + btnPrev.Enabled = true; + Properties.Settings.Default.ImportWordFilePath = txbWordFile.Text; + Properties.Settings.Default.Save(); + } + + private void btnPage_Click(object sender, EventArgs e) + { + _WordApp.Selection.MoveDown(LBWdUnits.wdScreen, 1, 0); + } + + private void btnPrev_Click(object sender, EventArgs e) + { + _WordApp.Selection.MoveUp(LBWdUnits.wdParagraph, 1, 0); + _WordApp.Selection.MoveUp(LBWdUnits.wdParagraph, 1, 1); + txbWrdText.Text = _WordApp.Selection.Text; + txvStyle.Text = _WordApp.Selection.Style.NameLocal; + txbLevel.Text = _WordApp.Selection.Style.ListLevelNumber.ToString(); + //_WordApp.Selection.Copy(); + Clipboard.SetText(txbWrdText.Text); + } + + private void btnNext_Click(object sender, EventArgs e) + { + _WordApp.Selection.MoveDown(LBWdUnits.wdParagraph, 1, 0); + _WordApp.Selection.MoveDown(LBWdUnits.wdParagraph, 1, 1); + txbWrdText.Text = _WordApp.Selection.Text; + txvStyle.Text = _WordApp.Selection.Style.NameLocal; + txbLevel.Text = _WordApp.Selection.Style.ListLevelNumber.ToString(); + //_WordApp.Selection.Copy(); + Clipboard.SetText(txbWrdText.Text); + + } + + private void txbWordFile_TextChanged(object sender, EventArgs e) + { + btnOpen.Enabled = !_initializing; + } + + private void frmImportWordContents_FormClosing(object sender, FormClosingEventArgs e) + { + try + { + if (_WordApp != null) + _WordApp.Quit(false); + } + catch + { + // incase user manually closed word + } + } + } +} diff --git a/PROMS/Volian.Controls.Library/frmImportWordContents.resx b/PROMS/Volian.Controls.Library/frmImportWordContents.resx new file mode 100644 index 00000000..52277861 --- /dev/null +++ b/PROMS/Volian.Controls.Library/frmImportWordContents.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file