From 5de0ab8795f3d9e159aed669c4b9e034681ff762 Mon Sep 17 00:00:00 2001 From: hbeham Date: Sat, 23 Nov 2013 15:09:20 +0100 Subject: [PATCH] - printing support for channel/fav lists - fixed: modified Panasonic channel names are now saved - fixed: ClassCastException when saving Panasonic and Toshiba channel lists containing proxy-channels from a reference list --- ChanSort.Loader.Panasonic/DbChannel.cs | 3 +- ChanSort.Loader.Panasonic/Serializer.cs | 5 +- ChanSort.Loader.Toshiba/DbSerializer.cs | 5 +- ChanSort/ChanSort.csproj | 32 ++ ChanSort/GlobalImageCollection.cs | 1 + ChanSort/GlobalImageCollection.resx | 63 +-- ChanSort/MainForm.Designer.cs | 46 ++- ChanSort/MainForm.cs | 19 +- ChanSort/MainForm.de.resx | 3 + ChanSort/MainForm.resx | 77 ++-- .../Printing/ChannelListReport.Designer.cs | 165 ++++++++ ChanSort/Printing/ChannelListReport.cs | 62 +++ ChanSort/Printing/ChannelListReport.resx | 123 ++++++ .../Printing/ReportOptionsDialog.Designer.cs | 137 +++++++ ChanSort/Printing/ReportOptionsDialog.cs | 42 ++ ChanSort/Printing/ReportOptionsDialog.de.resx | 142 +++++++ ChanSort/Printing/ReportOptionsDialog.resx | 361 ++++++++++++++++++ ChanSort/Printing/ReportStyles.repss | 55 +++ .../ChanSort.Api.ChannelList.datasource | 10 + ChanSort/Properties/Settings.Designer.cs | 36 ++ ChanSort/Properties/Settings.settings | 9 + ChanSort/Properties/licenses.licx | 1 + ChanSort/app.config | 9 + Images/imagelist/0034.png | Bin 0 -> 514 bytes makeDistribZip.cmd | 2 +- readme.txt | 11 +- 26 files changed, 1331 insertions(+), 88 deletions(-) create mode 100644 ChanSort/Printing/ChannelListReport.Designer.cs create mode 100644 ChanSort/Printing/ChannelListReport.cs create mode 100644 ChanSort/Printing/ChannelListReport.resx create mode 100644 ChanSort/Printing/ReportOptionsDialog.Designer.cs create mode 100644 ChanSort/Printing/ReportOptionsDialog.cs create mode 100644 ChanSort/Printing/ReportOptionsDialog.de.resx create mode 100644 ChanSort/Printing/ReportOptionsDialog.resx create mode 100644 ChanSort/Printing/ReportStyles.repss create mode 100644 ChanSort/Properties/DataSources/ChanSort.Api.ChannelList.datasource create mode 100644 Images/imagelist/0034.png diff --git a/ChanSort.Loader.Panasonic/DbChannel.cs b/ChanSort.Loader.Panasonic/DbChannel.cs index c673cc3..a07276d 100644 --- a/ChanSort.Loader.Panasonic/DbChannel.cs +++ b/ChanSort.Loader.Panasonic/DbChannel.cs @@ -237,7 +237,8 @@ namespace ChanSort.Loader.Panasonic #region UpdateRawData() public override void UpdateRawData() { - + if (this.IsNameModified) + this.RawName = Encoding.UTF8.GetBytes(this.Name); } #endregion diff --git a/ChanSort.Loader.Panasonic/Serializer.cs b/ChanSort.Loader.Panasonic/Serializer.cs index c1552f1..1d5b416 100644 --- a/ChanSort.Loader.Panasonic/Serializer.cs +++ b/ChanSort.Loader.Panasonic/Serializer.cs @@ -594,8 +594,11 @@ order by s.ntype,major_channel cmd.Parameters.Add(new SQLiteParameter("@lock", DbType.Int32)); cmd.Parameters.Add(new SQLiteParameter("@skip", DbType.Int32)); cmd.Prepare(); - foreach (DbChannel channel in channelList.Channels) + foreach (ChannelInfo channelInfo in channelList.Channels) { + var channel = channelInfo as DbChannel; + if (channel == null) // skip reference list proxy channels + continue; if (channel.NewProgramNr < 0 || channel.OldProgramNr < 0) continue; channel.UpdateRawData(); diff --git a/ChanSort.Loader.Toshiba/DbSerializer.cs b/ChanSort.Loader.Toshiba/DbSerializer.cs index c2af920..9e9ac55 100644 --- a/ChanSort.Loader.Toshiba/DbSerializer.cs +++ b/ChanSort.Loader.Toshiba/DbSerializer.cs @@ -321,8 +321,11 @@ namespace ChanSort.Loader.Toshiba cmd.Parameters.Add(new SQLiteParameter("@nr", DbType.Int32)); cmd.Parameters.Add(new SQLiteParameter("@Bits", DbType.Int32)); cmd.Prepare(); - foreach (DbChannel channel in channelList.Channels) + foreach (ChannelInfo channelInfo in channelList.Channels) { + var channel = channelInfo as DbChannel; + if (channel == null) // ignore reference list proxy channels + continue; channel.UpdateRawData(); cmd.Parameters["@id"].Value = channel.RecordIndex; cmd.Parameters["@nr"].Value = channel.NewProgramNr; diff --git a/ChanSort/ChanSort.csproj b/ChanSort/ChanSort.csproj index cdcc250..663ede1 100644 --- a/ChanSort/ChanSort.csproj +++ b/ChanSort/ChanSort.csproj @@ -58,18 +58,25 @@ app.ico + False + + False + + False + False + False @@ -79,6 +86,8 @@ False + + @@ -95,6 +104,12 @@ ActionBox.cs + + Component + + + ChannelListReport.cs + Component @@ -110,6 +125,12 @@ MainForm.cs + + Form + + + ReportOptionsDialog.cs + @@ -188,6 +209,16 @@ MainForm.cs Designer + + ChannelListReport.cs + + + ReportOptionsDialog.cs + Designer + + + ReportOptionsDialog.cs + ResXFileCodeGenerator Resources.pt.Designer.cs @@ -221,6 +252,7 @@ + SettingsSingleFileGenerator diff --git a/ChanSort/GlobalImageCollection.cs b/ChanSort/GlobalImageCollection.cs index bbaefcc..a29f5ea 100644 --- a/ChanSort/GlobalImageCollection.cs +++ b/ChanSort/GlobalImageCollection.cs @@ -87,6 +87,7 @@ namespace ChanSort.Ui this.sharedImageCollection1.ImageSource.Images.SetKeyName(31, "0031.png"); this.sharedImageCollection1.ImageSource.Images.SetKeyName(32, "0032.png"); this.sharedImageCollection1.ImageSource.Images.SetKeyName(33, "0033.png"); + this.sharedImageCollection1.ImageSource.Images.SetKeyName(34, "0034.png"); this.sharedImageCollection1.ParentControl = null; ((System.ComponentModel.ISupportInitialize)(this.sharedImageCollection1.ImageSource)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.sharedImageCollection1)).EndInit(); diff --git a/ChanSort/GlobalImageCollection.resx b/ChanSort/GlobalImageCollection.resx index cb0bc7d..49f22f0 100644 --- a/ChanSort/GlobalImageCollection.resx +++ b/ChanSort/GlobalImageCollection.resx @@ -112,24 +112,24 @@ 2.0 - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + 17, 17 - AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYxMi4yLCBWZXJzaW9uPTEyLjIu - OC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT + AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYxMy4xLCBWZXJzaW9uPTEzLjEu + Ni4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT eXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRv a2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAAChEZXZFeHByZXNzLlV0aWxzLkltYWdlQ29sbGVjdGlvblN0 cmVhbWVyAgAAAAlJbWFnZVNpemUERGF0YQQHE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAAgIAAAAF/P// /xNTeXN0ZW0uRHJhd2luZy5TaXplAgAAAAV3aWR0aAZoZWlnaHQAAAgIAwAAABAAAAAQAAAACQUAAAAP - BQAAAG5kAAACDgMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8 + BQAAAHRmAAACDgMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8 YQUAAAAJcEhZcwAACukAAArpAf11ztMAAAAqdEVYdENyZWF0aW9uIFRpbWUATWkgMSBNcnogMjAwNiAx NToxMDo1MSArMDEwMP/NqUUAAAAHdElNRQfWAwEODCaDia/cAAACZ0lEQVQ4T82S7UsTUBSH75eCCAx6 oTAqg7BMRKjoQ6S9Oa1I10gzU8PUZmYpKEamy8gCX8iS2YxqiRmREMrUltEoLdSMps458wXUEiW0UToN @@ -157,7 +157,7 @@ RQS/BkC5oQmuwUovLGqC+QB8q4NpET4ehMlkpu5uiQqk4djv8mujtPwqVVp6mSYtvtgnLTxPl+afGaW5 JwZp9vEe6ctQkjTzcJc0/SBOmroXK43dEX5E8H9agvAXG8CZjO1x3DgAAAAASUVORK5CYILrAQAAiVBO Rw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUA - AAAJcEhZcwAADsIAAA7CARUoSoAAAAAZdEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjenhJ3MAAAB + AAAJcEhZcwAADsAAAA7AAWrWiQkAAAAZdEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjenhJ3MAAAB W0lEQVQ4T2MYJkBuuut/wTl2cKw0wfb/JUFdvPi4oM5/qHYGBoG5dv+ZlpiDscpCw//pc9X+n/GR/X9T Qun/I0ZlrPgqkyKqAcxAzVHz1P4v6JX+P6lP4f+ZMJn/h+vE/5+wUCDOAJ2FBv9Pbxb+f9lD8//l7Lj/ 1xPi/t+Mk/+/ZarM/xsimC7BMCB5odr/tUuk/59zt/y///Kz/2dvPf9/1Uvh/+4iuf/nneQJG5A0X+1/ @@ -173,7 +173,7 @@ lM7D+wlWpGvb1qd0Bu+pBM5ngitsMkdbl3s6Dx+GXXaDtMcXkFN30OsSVuWQXQml5OMmRjkk2M49NpXd tZIWdcIsTzAixzQUGEmc7o/fOo0iAyU7SNHRwTTouxpdc0VTX3C9VDhXJaqyQFHkyPMTCtKB/sVk2Rfb PgN+qr6LOwAAAABJRU5ErkJggq0CAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAAB - c1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAN1QAADdUBPdZY8QAAABp0RVh0U29mdHdh + c1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAN0wAADdMBvdUcagAAABp0RVh0U29mdHdh cmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAACHElEQVQ4T5WS7WtScRTH96c0etW/EVS0Nnph5lw2h65g 0NPY2GiEs5jN3EKLvSgqKKLHmdrD1ihmToVL86lrgaAhRrVEX7jrvbvTXfXbvcfy9mIJXvjC+X3POZ97 OL9f194+x8qenllYrdaOpPTIvb4uOWhcfRxHIBDoSHPPWAXSUACYX2TR6XfT+4WmIMDc809kSjUJv/Ib @@ -185,7 +185,7 @@ Np8aph0Eg0G43W74/X7ye2SAybHaBHT3XnPt0ziFY9PNCcrlMmo1+boEXl5eAalUCgzDIBwOtyY4MfMO WstSEyA/KgVyRzloB/5/hX+l6R+gRkXdR+y23xS47hoGAHdAAAAAAElFTkSuQmCCnwIAAIlQTkcNChoK AAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAAFzUkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBI - WXMAAA7CAAAOwgEVKEqAAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAAIOSURB + WXMAAA7AAAAOwAFq1okJAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEAAAIOSURB VDhPYyAWuBcfTGBkZmWCckkDWiHL+F2rrv90zt+TCBXCDxxTNwkF157LdS+/uNy5/OI258pLe+0rbv13 rb7+1iRilgxUGXYQUHEi0L3sylvL/Gv/TXKv/TfKvf7fMP/Gf6PCm/9NSm7/ty05twGoDLtX/EqP+1rl Xv6jl3r+n2bcsQdaicev6mZc/GRYeOu/Sdnd/+ZV9//b1j/471B8KBqqBQHMY9cKWGScfq4dsWWukn2V @@ -289,7 +289,7 @@ XI/ObI4pQ8ipmQcxou8p0PY4dpq9mS+te6LQNM3M5ucTOMpl3VJbWf3bDZ01BKAH8kj5IQ7sufMWj2Ze th3Lun8A+Glao9oDUeMAMdzbD06bzY9uX6kBvitOmzf8Tef2f62u+wlSbAABOMbXPAAAAABJRU5ErkJg guECAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAABc1JHQgCuzhzpAAAABGdBTUEA - ALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUu + ALGPC/xhBQAAAAlwSFlzAAAOwAAADsABataJCQAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUu MTAw9HKhAAACUElEQVQ4T2MAgW9nT0p93LzO6PXKFWxgAQLgXnw8y7OkWOOTNlbKDG82rkh40Vzy7WVT 0f/XfY33juWnuUHVYYC7sdF8bzobG+8UpD9aZG44252LQ5HhYHFW99PavL9vp7b/fzep5f+HlpL/t+ID +x0kpVih+sDgaWZ8+Juq7BeHo4OvJwkJWQOFGCEyQNDp4WpztjD9xLu28v9viuL/vwyw/H/PRv1Ai7Ym @@ -323,7 +323,7 @@ lmWphgWfnzjP8wbn3FcuZyOYpqmajeAX1loiz5MANnl5EjUdNo7jSPDQBfPAE2P+VEtcRcICzK3PWQRo lHMp9jisBGtdmiShhySK/Fj4AkMFvtw45kLNC1C1ZN4XbjXzgDMVDQAAAABJRU5ErkJggtQCAACJUE5H DQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAHolAACA - gwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAACxIAAAsSAdLdfvwAAAJKSURBVDhP + gwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAACxAAAAsQAa0jvXUAAAJKSURBVDhP pZLZS5RRGMb9c7qIkLyobIGUCEkpyoVMHLXUJK1cUiyT3JoLM2ydSjMb13QIyRl3G0az3DNnXEMiMcgm NcZcapzv13e+YPRT8KIungPn4X1+531fjgfwX9pijA5Yoj9PWpm09vKhp52u1pc0GoqpLckP3FwrpLrY +syxUyP9LM9N4HKMIC30INlbmRsr41nhVYryU45urBdSXcaHuliy25geaeJWZhx5qRqyk84w053LbF8m @@ -349,7 +349,7 @@ ZWnt4S/StSoXdQveQk+OvkR1/eRVkCRrujST4erU1V1CXWgoK1k12IPQrmtK5qrUgpitNGVXytk+g+5+ V7WDtkexq3Nv68u1NriVyXXf6lzFrjL/TMVKU1U+l+Pc+Yw7w13gglwH1wmeu8J1c11cLz1d5oZKGSOk ImPaVjIQpSwVM+TVKt6ZEwvn22Kf2gGmMl2WeOsbGtYzCVlhrs/cIe7/OsBfuHAN38RzqtcAAAAJcEhZ - cwAACxAAAAsQAa0jvXUAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAqFJREFU + cwAACw4AAAsOAUC+4UEAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAqFJREFU OE+Fk11IU2Ecxt9SKMXtTDQ/c6bT/MJMZ6sIDZVahlqSlZRJqVF0UzQNoYvoym66CIS6sYtuhD4gmqbo 1Nz82OY0aFPR0yJ1upFO3G5sUD6979lhLiR64Afv+f+f33nPzSH/SneSNKRPzsX1yaVxH+lZHP8/hhQu f7biWOfirWqPq6UeruY6LDRVembPFHaynVjbGe1+CfmsSmldaSz/tX73HNZvq+EOgs2WG9S/ppTJrfTr @@ -388,7 +388,7 @@ CyIUDCEUEsgmp06fOeZ5VytQVqt12uv1GmY6nUZPtAe+HT74dgpkk1Onz1xTU9ME7+oFMlspsnlgYACF QgGlUqkOcur0zeMtPNpYwKHYKv9tweVyVRmugZw6fTNnzOaC2jgFfgHDNZBT/2cAqD/IY64ckIcp9AAA AABJRU5ErkJgguQCAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAABc1JHQgCuzhzp - AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAALEQAACxEBf2RfkQAAAAd0SU1FB9QHGA8zCwoTrHwAAAAa + AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAALDwAACw8BkvkDpQAAAAd0SU1FB9QHGA8zCwoTrHwAAAAa dEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAkBJREFUOE+Vkd1PUmEcx/sDuuiie70o oa0/wAsuu2Cri2rqyLbGDWu5tl70gpIUtma6WmPOwo1CNgJfkDGaMoYHRHHJSxCCgASBeIADAQIDiYnu 18PD6YJhLT7b2fNyft/P83buD3q9ma03rFtNm9v1LZsLCMuXgpGwfEDz3XTJ31nWrApXjBbYdHrA4Q2C @@ -413,7 +413,7 @@ PrCd+PmCzPHigCObPaStrFQqUKlUNPlXCfA95wKtVot+KpXq7esEbm8lbG3ZodPp0N+vZJs3y7Yy8f8C HKenv7G9/ZU2LhTyPefeC1l4AsBS/TNWxmGEAAAAAElFTkSuQmCC+QIAAIlQTkcNChoKAAAADUlIRFIA AAAQAAAAEAgGAAAAH/P/YQAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VG - AAAACXBIWXMAAAsRAAALEQF/ZF+RAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEA + AAAACXBIWXMAAAsPAAALDwGS+QOlAAAAGnRFWHRTb2Z0d2FyZQBQYWludC5ORVQgdjMuNS4xMDD0cqEA AAJZSURBVDhPlZDfS1NhGMePdJHURWheSJkTM0bgXRh4EZXdBfkHGCFEhQhboESpVGBaCKUskX6QCZGw cmNquRRLp6ZbSVbitCXjrHnmdrazs1/ueHbO7Ns5Z+ciCSs/8OV9n+/zfd4XHmI7MAyTH41Gy9Vye8Si sbMbG8JPTqAhCuKkz+crUVv/hmUjp4R0Er1fjsAwsxt2byvS6XTK7/cfVSNb43a7i0VRTJgWKmGw56HT @@ -433,7 +433,7 @@ IAYZ4ArEXUCMCuZEZDtPcvf9X6evtgoqhAyMgRikGYadgBgVTI0uetBlovmi1VxHHMSf4uioDZZAgC1A DNJ8DMxDBjPCs3v77e3+dxhppIL4kzxtRbuMNZaCJREA5gpU26e4+2p3GGt+KddR+lqrpza72VBtRaWu yqtqXZW5UCXIoBpKUwMwMAAA1uqHbWt/5s0AAAAASUVORK5CYIKhAQAAiVBORw0KGgoAAAANSUhEUgAA - ABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABp0RVh0 + ABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOvwAADr8BOAVTJAAAABp0RVh0 U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAABHUlEQVQ4T42TTWoCQRCFn4OELHMCEVxn4ypg ILjKwo0gBOLGBBRMVi5n6UU8hxBG5kgeQV91Vc10M+PEBx9T3VX17D8RdMKeXLAiIJ9E5lJprqET8qRZ mBGZK7BDiadQ12FwwYI8k7UVfRCZV5NMCy3XUF2oXyn6tlgo0dNCyzXkhY4ULaNxQQM1uWmgB9hmUOCL @@ -456,8 +456,8 @@ Oy31ccJ5aV8IsqBzDXQo75fjgh4UdtDi8LRlAp0FTbmgT6crkOUCOv1PgcwCVyogWIFAB6ZM0Ca4jTsF btKrwcmCBFPtLPju4M1aGCCgGNNCei/9/hu+YRNuqIJEG9NABY1DdFkQ0/4Z/YQldGUCqdLXuWK6bsMc lpiYxvcozGGJDt0Ci/G8D+awZCyBOSzZhqvqBaJoHlM3D3YsAAAAAElFTkSuQmCC+QMAAIlQTkcNChoK - AAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsEAAA7BAbiR - a+0AAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAA3VJREFUOE9tk2tQlGUYhr8l + AAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADr8AAA6/ATgF + UyQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAA3VJREFUOE9tk2tQlGUYhr8l cYvTorKhlkIDeSC1chwqZgpHJVNsBEnaxeUYK4IoLBTpsiwhKB5AMkkDgiFgcQFRIgkYmKEiSER+UDOQ P4ihLXU4xMAM54Grj88ZzZl+3O+/63re93nnFoDH+XN44LfyjjKMtSeJKo8guPhDDpeGY7yhp7q9CstD C7Ozs1b/ZaRjfn7equuPLjIaUjjTnMq5ljQymg2kNiahr08gviaayLIQUir0dN/r/npmZkb2lKCz7w5p @@ -504,7 +504,7 @@ hEJ+DxR7GhRzEhTla45wx/lDIxFVW/pW2IrDZUlRT2f484oJGILcflN6OCgtzBx2z5+TbMc42ntZ+v/F 7vCF65x7fuvLTGf7y9pAj8XlSD8IEe4C0f5Y1tljru6OLcs+lr0sriynLBFuNrax+QM2YLHCx6xDMQAA AABJRU5ErkJggtcBAACJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAABc1JHQgCuzhzp - AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAAAd0SU1FB9YDGg4REtpJ5+sAAAAa + AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwAAADsABataJCQAAAAd0SU1FB9YDGg4REtpJ5+sAAAAa dEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAATNJREFUOE9jGDxg1uzpFxoaGv4Tg3v7 u1ZDtSEASIJYAFIL1YYAMAM+fHiPF4NAfyQTDMdAtaMacPz4MawYJAfS+O7Vsf/n1xaC2VDtxLkApOH9 6+P/L63J+r+wOfQPTgOw2Y6seUl7OJgPxMZQ7fhdAFL89tnR/+dXZf5f0ByGqRkEcLkArPnpkf8n5qf8 @@ -526,8 +526,8 @@ LJadnZ0ulUprursfTIbDMTwZ9kPX/AYnC4Y4NNNdOLwDcsilhlr6jomckEgkZzMzM+sUiqIX4+PTWxsb v3EUuqMdOeRSc9Cy4yKZIlIRWVpamio9Pb0lIyOjR2TggB66ox05Irn7DTv+F7O1FnE4EodQAAAAAElF TkSuQmCCggIAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjnz7UZMA - AAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAAlwSFlzAAALEgAACxIB - 0t1+/AAAAfhJREFUOE9j+P//P0UYqyAMT97yLWby5q875u3++mj5wa9HVh78OmXVoa9SyGpQNCDjvg1f + AAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAAlwSFlzAAALEAAACxAB + rSO9dQAAAfhJREFUOE9j+P//P0UYqyAMT97yLWby5q875u3++mj5wa9HVh78OmXVoa9SyGpQNCDjvg1f dwDxn+51X583rvjyuH7Jlztzd359DDTgE7IhcA3dq179X3biqwGYve7rsv6N336nTnr3xqXgxG/r1O1/ zBO2fHevuPtx5vavb4AG3EQxACjA2bjk5f95B75erV/xtWHCpm9/4nqe/3MtOP7fLmP3L9PYNcdd8rc+ tIxf/ies493PpQe+3kcxAISLZz7/nzXr8//COV/+R/Z8fGGVvOWvReKGH6axK/NB8gG121UMIxa/cC2/ @@ -537,7 +537,7 @@ 7LsY0vHhX1jd+VxkcRRF2HBc33slh/wLMf4tH/75VV75phUwmxFZHkUxNuxR/djZv+XTL4+Siz+No1Z5 ocujcLDhqN7Pkc4l1xpNY9aJYpPHECAVYxUkHv9nAABuDMymQbYDjAAAAABJRU5ErkJgguQBAACJUE5H DQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAABc1JHQgCuzhzpAAAABGdBTUEAALGPC/xhBQAA - AAlwSFlzAAAOwgAADsIBFShKgAAAAXlJREFUOE9tk62WgzAQRnkM7EpkZW1lJDI2EonERiKRWCQSWdtH + AAlwSFlzAAAOwAAADsABataJCQAAAXlJREFUOE9tk62WgzAQRnkM7EpkZW1lJDI2EonERiKRWCQSWdtH WImtRCKzc4cOC+zC+U7anHx3fjJk3TOmdmpSHGtVM1SpHkKqe5+qzqfQlilEp/Lxkcpmk6vvqgzz9D2q hu9e1b+6Xd3UpmsQC3QCrPIen3WVnYOWdTmJLBUADYCaPhA18RpA3qP5vbx/MwBA2jzVGHb5vtwj+1ie BIAePapbyiAB4LDrnGbTPKVGkZf/GKqpUuAtiqHKzgBqoVk8QB7dQ4G1mMLok5PO++FsRtzQBhASgL1e @@ -545,7 +545,7 @@ O8YLQCaMWdgjl8VJQOiHZYLpBGA8uUrLwOo0EfEKBVC2d/mdp4y5NgCGI2ReZj38nzaANBEAs2CmP+br +pFrb6lwkgHjCADZV2hfIqJWE1ERZtYdYOK+beXaTDTLRN2mwuXpB1xrvLKUCyhwAAAAAElFTkSuQmCC LwMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAARzQklUCAgICHwIZIgAAAABc1JH - QgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAN1gAADdYBkG95nAAAABl0RVh0U29mdHdhcmUA + QgCuzhzpAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAN1AAADdQB75G6FQAAABl0RVh0U29mdHdhcmUA d3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAKPSURBVDhPjZJdSJNRGMd3KUEEIV510eomg267CQKDEqeitGyb bWqbVlJWpkwaoWaumRnzQrCyWMvUyOW3psXm3EYj970ujBnLvtbYgrlN5nTTf+97FnuRinzhB+d5zvP8 zsM5L2t/Yfv0Xo4Cz1isbdO/byc0hw+i6KjgLYtq3rzdb0coO3tbaE8egF0qhaW4GKqsHaAF6Bh0wUqZ @@ -557,18 +557,27 @@ pQSBQIA0R6NRLC0tkfzxumHUPzAzgurOOXCbpsmm2+1GuVgMfuMQiWOxGMLhMBYXF4mczuVKR3Gly8gI JO06FN2YIpt0YYVEkhaEQiF4PB4YjUbo9XqSy2sYQ7VyjhHwmqeoCV6RTb/fj7oGKVlLqirJHRgMBmg0 Guh0OpLnUAJxuzYlYBfc6czmKldONaUmiEQiSCap51qJUpcXwMLCAsxmM0wmU3qCM62vUdI4mRJQPxUt - 6aGDklLmCf8Fl19KGmnY+W3yX9/ipk1dfF4cAAAAAElFTkSuQmCCCw== + 6aGDklLmCf8Fl19KGmnY+W3yX9/ipk1dfF4cAAAAAElFTkSuQmCCAgIAAIlQTkcNChoKAAAADUlIRFIA + AAAQAAAAEAgGAAAAH/P/YQAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsEAAA7BAbiRa+0AAAAadEVY + dFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAX5JREFUOE+tUi1vwzAQDRzeH9hvGOzIpI4F + TWUrDSwsDGxgpJKwhQYaBoYGGhqaBhoa3t67OM22btOk7Umnpva9j7sk+3eISDZN4dEMTn6q1H4NkM/W + TdC5Bu7E9FbyopQY41OirEAPnK02hxBltE6rx5npR6Hw/lBpJcpHOD+Jh8tnxCjiPNwhRHfn/TlRViDS + qTWjEhj1vXs/utW9qKRue2m6fk0BwgvJg/UqsIDOE0ZhqtYM6l7WHZ5HfVZyCOGZlx2Wwwv+Nt0gVWPk + WLVSHGvZoTnfHzVBA3ee5/skUKOZTt+BV7znUpmGCSh6SUAnzsgFdUjC2XhW1q0cykab6byk4Bn/b3eH + WaBEM5f2FXQHU5QbybSyLpvdIXSfF2mE1uC1XH84SIvl4VtwQcnYuQowyQbuFwHn/ImLYQiSwBG8crE+ + Sm+jdGNQ4lLb5N605lUFsJy7GmMMdtL5f1MUAG5VgIDIgy5JFzUvi05cFONu8jnyUkydqH9Flr0BvJQ8 + djETgHkAAAAASUVORK5CYIIL - + - 06/29/2013 12:09:44 + 11/23/2013 12:38:03 - + 16, 16 - + False \ No newline at end of file diff --git a/ChanSort/MainForm.Designer.cs b/ChanSort/MainForm.Designer.cs index d001073..5d53010 100644 --- a/ChanSort/MainForm.Designer.cs +++ b/ChanSort/MainForm.Designer.cs @@ -43,6 +43,8 @@ this.repositoryItemCheckedComboBoxEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit(); this.colUid1 = new DevExpress.XtraGrid.Columns.GridColumn(); this.colOutLock = new DevExpress.XtraGrid.Columns.GridColumn(); + this.colOutSkip = new DevExpress.XtraGrid.Columns.GridColumn(); + this.colOutHide = new DevExpress.XtraGrid.Columns.GridColumn(); this.repositoryItemTextEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemTextEdit(); this.lblHotkeyLeft = new DevExpress.XtraEditors.LabelControl(); this.pnlEditControls = new DevExpress.XtraEditors.PanelControl(); @@ -109,6 +111,7 @@ this.miAddFromRefList = new DevExpress.XtraBars.BarButtonItem(); this.miSaveReferenceFile = new DevExpress.XtraBars.BarButtonItem(); this.miExcelExport = new DevExpress.XtraBars.BarButtonItem(); + this.miPrint = new DevExpress.XtraBars.BarButtonItem(); this.miQuit = new DevExpress.XtraBars.BarButtonItem(); this.miRecentFiles = new DevExpress.XtraBars.BarListItem(); this.miEdit = new DevExpress.XtraBars.BarSubItem(); @@ -167,8 +170,6 @@ this.grpSubList = new DevExpress.XtraEditors.GroupControl(); this.tabSubList = new DevExpress.XtraTab.XtraTabControl(); this.pageProgNr = new DevExpress.XtraTab.XtraTabPage(); - this.colOutSkip = new DevExpress.XtraGrid.Columns.GridColumn(); - this.colOutHide = new DevExpress.XtraGrid.Columns.GridColumn(); ((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).BeginInit(); this.splitContainerControl1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.grpOutputList)).BeginInit(); @@ -363,6 +364,18 @@ this.colOutLock.FieldName = "Lock"; this.colOutLock.Name = "colOutLock"; // + // colOutSkip + // + resources.ApplyResources(this.colOutSkip, "colOutSkip"); + this.colOutSkip.FieldName = "Skip"; + this.colOutSkip.Name = "colOutSkip"; + // + // colOutHide + // + resources.ApplyResources(this.colOutHide, "colOutHide"); + this.colOutHide.FieldName = "Hidden"; + this.colOutHide.Name = "colOutHide"; + // // repositoryItemTextEdit1 // resources.ApplyResources(this.repositoryItemTextEdit1, "repositoryItemTextEdit1"); @@ -894,9 +907,10 @@ this.miRecentFiles, this.miExcelExport, this.miPortuguese, - this.miAddFromRefList}); + this.miAddFromRefList, + this.miPrint}); this.barManager1.MainMenu = this.bar1; - this.barManager1.MaxItemId = 62; + this.barManager1.MaxItemId = 63; this.barManager1.ShowFullMenus = true; // // bar1 @@ -914,6 +928,7 @@ new DevExpress.XtraBars.LinkPersistInfo(this.miSave, true), new DevExpress.XtraBars.LinkPersistInfo(this.miSaveAs), new DevExpress.XtraBars.LinkPersistInfo(this.miSaveReferenceFile), + new DevExpress.XtraBars.LinkPersistInfo(this.miPrint, true), new DevExpress.XtraBars.LinkPersistInfo(this.miEdit, true), new DevExpress.XtraBars.LinkPersistInfo(this.mnuFavSet), new DevExpress.XtraBars.LinkPersistInfo(this.miLockOn), @@ -949,6 +964,7 @@ new DevExpress.XtraBars.LinkPersistInfo(this.miAddFromRefList), new DevExpress.XtraBars.LinkPersistInfo(this.miSaveReferenceFile), new DevExpress.XtraBars.LinkPersistInfo(this.miExcelExport), + new DevExpress.XtraBars.LinkPersistInfo(this.miPrint), new DevExpress.XtraBars.LinkPersistInfo(this.miQuit, true), new DevExpress.XtraBars.LinkPersistInfo(this.miRecentFiles, true)}); this.miFile.Name = "miFile"; @@ -1054,6 +1070,15 @@ this.miExcelExport.Name = "miExcelExport"; this.miExcelExport.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miExcelExport_ItemClick); // + // miPrint + // + resources.ApplyResources(this.miPrint, "miPrint"); + this.miPrint.Id = 62; + this.miPrint.ImageIndex = 34; + this.miPrint.ItemShortcut = new DevExpress.XtraBars.BarShortcut((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.P)); + this.miPrint.Name = "miPrint"; + this.miPrint.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.miPrint_ItemClick); + // // miQuit // resources.ApplyResources(this.miQuit, "miQuit"); @@ -1593,18 +1618,6 @@ this.pageProgNr.Name = "pageProgNr"; resources.ApplyResources(this.pageProgNr, "pageProgNr"); // - // colOutSkip - // - resources.ApplyResources(this.colOutSkip, "colOutSkip"); - this.colOutSkip.FieldName = "Skip"; - this.colOutSkip.Name = "colOutSkip"; - // - // colOutHide - // - resources.ApplyResources(this.colOutHide, "colOutHide"); - this.colOutHide.FieldName = "Hidden"; - this.colOutHide.Name = "colOutHide"; - // // MainForm // resources.ApplyResources(this, "$this"); @@ -1800,6 +1813,7 @@ private DevExpress.XtraBars.BarButtonItem miAddFromRefList; private DevExpress.XtraGrid.Columns.GridColumn colOutSkip; private DevExpress.XtraGrid.Columns.GridColumn colOutHide; + private DevExpress.XtraBars.BarButtonItem miPrint; private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1; } } diff --git a/ChanSort/MainForm.cs b/ChanSort/MainForm.cs index f9b2678..5c6f1e8 100644 --- a/ChanSort/MainForm.cs +++ b/ChanSort/MainForm.cs @@ -25,7 +25,7 @@ namespace ChanSort.Ui { public partial class MainForm : XtraForm { - public const string AppVersion = "v2013-11-20.2"; + public const string AppVersion = "v2013-11-23"; private const int MaxMruEntries = 10; @@ -1282,6 +1282,7 @@ namespace ChanSort.Ui this.miOpenReferenceFile.Enabled = fileLoaded; this.miSaveReferenceFile.Enabled = fileLoaded; this.miExcelExport.Enabled = fileLoaded; + this.miPrint.Enabled = fileLoaded; this.miAddChannel.Enabled = isRight; @@ -1498,6 +1499,14 @@ namespace ChanSort.Ui } #endregion + #region Print() + private void Print() + { + using (var dlg = new Printing.ReportOptionsDialog(this.currentChannelList, this.subListIndex)) + dlg.ShowDialog(this); + } + #endregion + // UI events #region MainForm_Load @@ -1562,6 +1571,11 @@ namespace ChanSort.Ui TryExecute(this.ExportExcelList); } + private void miPrint_ItemClick(object sender, ItemClickEventArgs e) + { + this.TryExecute(this.Print); + } + private void miQuit_ItemClick(object sender, ItemClickEventArgs e) { this.Close(); @@ -1749,12 +1763,14 @@ namespace ChanSort.Ui } #endregion + #region gview_CustomUnboundColumnData private void gview_CustomUnboundColumnData(object sender, CustomColumnDataEventArgs e) { var channel = (ChannelInfo) e.Row; if (e.Column.FieldName == "Position") e.Value = channel.GetPosition(this.subListIndex); } + #endregion #region gview_MouseDown, gview_MouseUp, timerEditDelay_Tick, gview_ShowingEditor @@ -2385,5 +2401,6 @@ namespace ChanSort.Ui #endregion + } } diff --git a/ChanSort/MainForm.de.resx b/ChanSort/MainForm.de.resx index e126609..d096deb 100644 --- a/ChanSort/MainForm.de.resx +++ b/ChanSort/MainForm.de.resx @@ -438,4 +438,7 @@ Ver- steckt + + &Drucken... + \ No newline at end of file diff --git a/ChanSort/MainForm.resx b/ChanSort/MainForm.resx index 83fceff..86a58f0 100644 --- a/ChanSort/MainForm.resx +++ b/ChanSort/MainForm.resx @@ -123,7 +123,7 @@ - 0, 108 + 0, 110 361, 17 @@ -258,7 +258,7 @@ Numeric - 449, 418 + 449, 416 1 @@ -279,7 +279,7 @@ Bottom - 2, 472 + 2, 470 2, 2, 2, 2 @@ -324,7 +324,7 @@ 0, 5 - 1463, 0 + 1464, 0 Pr# @@ -363,7 +363,7 @@ Top - 0, 81 + 0, 83 1474, 27 @@ -428,6 +428,9 @@ Export Excel list... + + &Print... + &Quit @@ -584,7 +587,7 @@ 0, 0 - 1474, 24 + 1474, 26 barDockControlTop @@ -623,10 +626,10 @@ Left - 0, 24 + 0, 26 - 0, 575 + 0, 573 barDockControlLeft @@ -644,10 +647,10 @@ Right - 1474, 24 + 1474, 26 - 0, 575 + 0, 573 barDockControlRight @@ -675,7 +678,7 @@ Default - 47, 19 + 46, 19 10 @@ -702,7 +705,7 @@ after - 46, 19 + 45, 19 9 @@ -726,7 +729,7 @@ before - 54, 19 + 53, 19 8 @@ -831,7 +834,7 @@ 0, 33 - 1284, 0 + 1285, 0 No channel lists @@ -930,7 +933,7 @@ Top - 0, 24 + 0, 26 1474, 57 @@ -1019,6 +1022,18 @@ DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + colOutSkip + + + DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + colOutHide + + + DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + repositoryItemTextEdit1 @@ -1289,6 +1304,12 @@ DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + miPrint + + + DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + miQuit @@ -1529,18 +1550,6 @@ System.Windows.Forms.Timer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - colOutSkip - - - DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - - - colOutHide - - - DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - MainForm @@ -1548,7 +1557,7 @@ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - 10/07/2013 15:04:39 + 11/23/2013 14:39:54 16, 16 @@ -1866,7 +1875,7 @@ 0, 0 - 453, 491 + 453, 489 0 @@ -2202,7 +2211,7 @@ Signal source - 1012, 418 + 1013, 416 1 @@ -2223,7 +2232,7 @@ Bottom - 2, 472 + 2, 470 2, 2, 2, 2 @@ -2367,7 +2376,7 @@ 2, 21 - 1012, 33 + 1013, 33 0 @@ -2391,7 +2400,7 @@ 0, 0 - 1016, 491 + 1017, 489 0 @@ -2415,7 +2424,7 @@ Panel2 - 1474, 491 + 1474, 489 5 diff --git a/ChanSort/Printing/ChannelListReport.Designer.cs b/ChanSort/Printing/ChannelListReport.Designer.cs new file mode 100644 index 0000000..7bf61e9 --- /dev/null +++ b/ChanSort/Printing/ChannelListReport.Designer.cs @@ -0,0 +1,165 @@ +namespace ChanSort.Ui +{ + partial class ChannelListReport + { + /// + /// 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 Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + this.bandListDetail = new DevExpress.XtraReports.UI.DetailBand(); + this.txtHeading = new DevExpress.XtraReports.UI.XRLabel(); + this.TopMargin = new DevExpress.XtraReports.UI.TopMarginBand(); + this.BottomMargin = new DevExpress.XtraReports.UI.BottomMarginBand(); + this.repChannels = new DevExpress.XtraReports.UI.DetailReportBand(); + this.bandChannelDetail = new DevExpress.XtraReports.UI.DetailBand(); + this.txtNumber = new DevExpress.XtraReports.UI.XRLabel(); + this.txtChannelName = new DevExpress.XtraReports.UI.XRLabel(); + this.bindingSource1 = new System.Windows.Forms.BindingSource(this.components); + ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this)).BeginInit(); + // + // bandListDetail + // + this.bandListDetail.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.txtHeading}); + this.bandListDetail.Dpi = 254F; + this.bandListDetail.HeightF = 40F; + this.bandListDetail.Name = "bandListDetail"; + this.bandListDetail.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 254F); + this.bandListDetail.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft; + // + // txtHeading + // + this.txtHeading.Dpi = 254F; + this.txtHeading.Font = new System.Drawing.Font("Times New Roman", 10F); + this.txtHeading.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.txtHeading.Name = "txtHeading"; + this.txtHeading.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 5, 0, 0, 254F); + this.txtHeading.SizeF = new System.Drawing.SizeF(1801F, 40F); + this.txtHeading.StylePriority.UseFont = false; + this.txtHeading.Text = "Heading"; + // + // TopMargin + // + this.TopMargin.Dpi = 254F; + this.TopMargin.HeightF = 83.1875F; + this.TopMargin.Name = "TopMargin"; + this.TopMargin.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 254F); + this.TopMargin.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft; + // + // BottomMargin + // + this.BottomMargin.Dpi = 254F; + this.BottomMargin.Font = new System.Drawing.Font("Arial", 9.75F); + this.BottomMargin.HeightF = 119.0625F; + this.BottomMargin.Name = "BottomMargin"; + this.BottomMargin.Padding = new DevExpress.XtraPrinting.PaddingInfo(0, 0, 0, 0, 254F); + this.BottomMargin.StylePriority.UseFont = false; + this.BottomMargin.TextAlignment = DevExpress.XtraPrinting.TextAlignment.TopLeft; + // + // repChannels + // + this.repChannels.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] { + this.bandChannelDetail}); + this.repChannels.DataMember = "Channels"; + this.repChannels.DataSource = this.bindingSource1; + this.repChannels.Dpi = 254F; + this.repChannels.Level = 0; + this.repChannels.Name = "repChannels"; + // + // bandChannelDetail + // + this.bandChannelDetail.Controls.AddRange(new DevExpress.XtraReports.UI.XRControl[] { + this.txtNumber, + this.txtChannelName}); + this.bandChannelDetail.Dpi = 254F; + this.bandChannelDetail.HeightF = 35F; + this.bandChannelDetail.MultiColumn.ColumnCount = 3; + this.bandChannelDetail.MultiColumn.ColumnSpacing = 50F; + this.bandChannelDetail.MultiColumn.Mode = DevExpress.XtraReports.UI.MultiColumnMode.UseColumnCount; + this.bandChannelDetail.Name = "bandChannelDetail"; + this.bandChannelDetail.BeforePrint += new System.Drawing.Printing.PrintEventHandler(this.bandChannelDetail_BeforePrint); + // + // txtNumber + // + this.txtNumber.Dpi = 254F; + this.txtNumber.Font = new System.Drawing.Font("Times New Roman", 8F); + this.txtNumber.LocationFloat = new DevExpress.Utils.PointFloat(0F, 0F); + this.txtNumber.Name = "txtNumber"; + this.txtNumber.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 5, 0, 0, 254F); + this.txtNumber.SizeF = new System.Drawing.SizeF(111.125F, 35F); + this.txtNumber.StylePriority.UseFont = false; + this.txtNumber.Text = "0000"; + // + // txtChannelName + // + this.txtChannelName.Dpi = 254F; + this.txtChannelName.Font = new System.Drawing.Font("Times New Roman", 8F); + this.txtChannelName.LocationFloat = new DevExpress.Utils.PointFloat(111.125F, 0F); + this.txtChannelName.Name = "txtChannelName"; + this.txtChannelName.Padding = new DevExpress.XtraPrinting.PaddingInfo(5, 5, 0, 0, 254F); + this.txtChannelName.SizeF = new System.Drawing.SizeF(468.3125F, 35F); + this.txtChannelName.StylePriority.UseFont = false; + this.txtChannelName.Text = "Empty channel list"; + // + // bindingSource1 + // + this.bindingSource1.DataSource = typeof(ChanSort.Api.ChannelList); + // + // ChannelListReport + // + this.Bands.AddRange(new DevExpress.XtraReports.UI.Band[] { + this.bandListDetail, + this.TopMargin, + this.BottomMargin, + this.repChannels}); + this.DataSource = this.bindingSource1; + this.Dpi = 254F; + this.Margins = new System.Drawing.Printing.Margins(148, 111, 83, 119); + this.PageHeight = 2970; + this.PageWidth = 2100; + this.PaperKind = System.Drawing.Printing.PaperKind.A4; + this.ReportUnit = DevExpress.XtraReports.UI.ReportUnit.TenthsOfAMillimeter; + this.SnapGridSize = 25F; + this.Version = "13.1"; + ((System.ComponentModel.ISupportInitialize)(this.bindingSource1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this)).EndInit(); + + } + + #endregion + + private DevExpress.XtraReports.UI.DetailBand bandListDetail; + private DevExpress.XtraReports.UI.TopMarginBand TopMargin; + private DevExpress.XtraReports.UI.BottomMarginBand BottomMargin; + private DevExpress.XtraReports.UI.XRLabel txtHeading; + private DevExpress.XtraReports.UI.DetailReportBand repChannels; + private DevExpress.XtraReports.UI.DetailBand bandChannelDetail; + private DevExpress.XtraReports.UI.XRLabel txtNumber; + private DevExpress.XtraReports.UI.XRLabel txtChannelName; + private System.Windows.Forms.BindingSource bindingSource1; + } +} diff --git a/ChanSort/Printing/ChannelListReport.cs b/ChanSort/Printing/ChannelListReport.cs new file mode 100644 index 0000000..5e8f82e --- /dev/null +++ b/ChanSort/Printing/ChannelListReport.cs @@ -0,0 +1,62 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Linq; +using ChanSort.Api; +using DevExpress.XtraReports.UI; + +namespace ChanSort.Ui +{ + public partial class ChannelListReport : XtraReport + { + private readonly int subListIndex; + private readonly bool orderByName; + + public ChannelListReport(ChannelList list, int subListIndex, bool orderByName, Font font) + { + this.subListIndex = subListIndex; + this.orderByName = orderByName; + + InitializeComponent(); + this.DataSource = GenerateDataSource(list); + + this.txtHeading.Text = list.ShortCaption + (subListIndex <= 0 ? "" : " - Fav " + (char)('A' + subListIndex)); + + this.txtHeading.Font = new Font(font.Name, font.Size+4, FontStyle.Bold); + this.txtNumber.Font = font; + this.txtChannelName.Font = font; + } + + private List GenerateDataSource(ChannelList list) + { + ChannelList sortedList = new ChannelList(list.SignalSource, list.Caption); + foreach (var channel in list.Channels.OrderBy(this.SortCriteria)) + { + int pos = channel.GetPosition(this.subListIndex); + if (orderByName && (channel.Name == "" || channel.Name == ".")) + continue; + if (pos >= 0) + sortedList.Channels.Add(channel); + } + + List lists = new List(); + lists.Add(sortedList); + return lists; + } + + private IComparable SortCriteria(ChannelInfo a) + { + return this.orderByName ? (IComparable) a.Name : a.GetPosition(this.subListIndex); + } + + private void bandChannelDetail_BeforePrint(object sender, System.Drawing.Printing.PrintEventArgs e) + { + var channel = (ChannelInfo) this.repChannels.GetCurrentRow(); + if (channel == null) // happens if there are no data records + return; + + this.txtNumber.Text = channel.GetPosition(this.subListIndex).ToString(); + this.txtChannelName.Text = channel.Name; + } + } +} diff --git a/ChanSort/Printing/ChannelListReport.resx b/ChanSort/Printing/ChannelListReport.resx new file mode 100644 index 0000000..76cdda2 --- /dev/null +++ b/ChanSort/Printing/ChannelListReport.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/ChanSort/Printing/ReportOptionsDialog.Designer.cs b/ChanSort/Printing/ReportOptionsDialog.Designer.cs new file mode 100644 index 0000000..8d0dfb9 --- /dev/null +++ b/ChanSort/Printing/ReportOptionsDialog.Designer.cs @@ -0,0 +1,137 @@ +namespace ChanSort.Ui.Printing +{ + partial class ReportOptionsDialog + { + /// + /// 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() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ReportOptionsDialog)); + this.labelControl1 = new DevExpress.XtraEditors.LabelControl(); + this.rbSortByNumber = new DevExpress.XtraEditors.CheckEdit(); + this.rbSortByName = new DevExpress.XtraEditors.CheckEdit(); + this.labelControl2 = new DevExpress.XtraEditors.LabelControl(); + this.fontEdit1 = new DevExpress.XtraEditors.FontEdit(); + this.btnPreview = new DevExpress.XtraEditors.SimpleButton(); + this.btnCancel = new DevExpress.XtraEditors.SimpleButton(); + this.spinFontSize = new DevExpress.XtraEditors.SpinEdit(); + ((System.ComponentModel.ISupportInitialize)(this.rbSortByNumber.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.rbSortByName.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.fontEdit1.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.spinFontSize.Properties)).BeginInit(); + this.SuspendLayout(); + // + // labelControl1 + // + resources.ApplyResources(this.labelControl1, "labelControl1"); + this.labelControl1.Name = "labelControl1"; + // + // rbSortByNumber + // + resources.ApplyResources(this.rbSortByNumber, "rbSortByNumber"); + this.rbSortByNumber.Name = "rbSortByNumber"; + this.rbSortByNumber.Properties.Caption = resources.GetString("rbSortByNumber.Properties.Caption"); + this.rbSortByNumber.Properties.CheckStyle = DevExpress.XtraEditors.Controls.CheckStyles.Radio; + this.rbSortByNumber.Properties.RadioGroupIndex = 1; + // + // rbSortByName + // + resources.ApplyResources(this.rbSortByName, "rbSortByName"); + this.rbSortByName.Name = "rbSortByName"; + this.rbSortByName.Properties.Caption = resources.GetString("rbSortByName.Properties.Caption"); + this.rbSortByName.Properties.CheckStyle = DevExpress.XtraEditors.Controls.CheckStyles.Radio; + this.rbSortByName.Properties.RadioGroupIndex = 1; + this.rbSortByName.TabStop = false; + // + // labelControl2 + // + resources.ApplyResources(this.labelControl2, "labelControl2"); + this.labelControl2.Name = "labelControl2"; + // + // fontEdit1 + // + resources.ApplyResources(this.fontEdit1, "fontEdit1"); + this.fontEdit1.Name = "fontEdit1"; + this.fontEdit1.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("fontEdit1.Properties.Buttons"))))}); + // + // btnPreview + // + resources.ApplyResources(this.btnPreview, "btnPreview"); + this.btnPreview.Name = "btnPreview"; + this.btnPreview.Click += new System.EventHandler(this.btnPreview_Click); + // + // btnCancel + // + resources.ApplyResources(this.btnCancel, "btnCancel"); + this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.btnCancel.Name = "btnCancel"; + // + // spinFontSize + // + resources.ApplyResources(this.spinFontSize, "spinFontSize"); + this.spinFontSize.Name = "spinFontSize"; + this.spinFontSize.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("spinFontSize.Properties.Buttons"))))}); + this.spinFontSize.Properties.DisplayFormat.FormatString = "0.#"; + this.spinFontSize.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric; + this.spinFontSize.Properties.Mask.ShowPlaceHolders = ((bool)(resources.GetObject("spinFontSize.Properties.Mask.ShowPlaceHolders"))); + // + // ReportOptionsDialog + // + resources.ApplyResources(this, "$this"); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.spinFontSize); + this.Controls.Add(this.btnCancel); + this.Controls.Add(this.btnPreview); + this.Controls.Add(this.fontEdit1); + this.Controls.Add(this.labelControl2); + this.Controls.Add(this.rbSortByName); + this.Controls.Add(this.rbSortByNumber); + this.Controls.Add(this.labelControl1); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "ReportOptionsDialog"; + ((System.ComponentModel.ISupportInitialize)(this.rbSortByNumber.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.rbSortByName.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.fontEdit1.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.spinFontSize.Properties)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private DevExpress.XtraEditors.LabelControl labelControl1; + private DevExpress.XtraEditors.CheckEdit rbSortByNumber; + private DevExpress.XtraEditors.CheckEdit rbSortByName; + private DevExpress.XtraEditors.LabelControl labelControl2; + private DevExpress.XtraEditors.FontEdit fontEdit1; + private DevExpress.XtraEditors.SimpleButton btnPreview; + private DevExpress.XtraEditors.SimpleButton btnCancel; + private DevExpress.XtraEditors.SpinEdit spinFontSize; + } +} \ No newline at end of file diff --git a/ChanSort/Printing/ReportOptionsDialog.cs b/ChanSort/Printing/ReportOptionsDialog.cs new file mode 100644 index 0000000..51af713 --- /dev/null +++ b/ChanSort/Printing/ReportOptionsDialog.cs @@ -0,0 +1,42 @@ +using System; +using System.Drawing; +using ChanSort.Api; +using DevExpress.LookAndFeel; +using DevExpress.XtraEditors; +using DevExpress.XtraReports.UI; + +namespace ChanSort.Ui.Printing +{ + public partial class ReportOptionsDialog : XtraForm + { + private readonly ChannelList channelList; + private readonly int subListIndex; + + public ReportOptionsDialog(ChannelList channelList, int subListIndex) + { + InitializeComponent(); + this.channelList = channelList; + this.subListIndex = subListIndex; + if (Properties.Settings.Default.PrintSortByName) + this.rbSortByName.Checked = true; + this.fontEdit1.EditValue = Properties.Settings.Default.PrintFontName; + this.spinFontSize.Value = Properties.Settings.Default.PrintFontSize; + } + + private void btnPreview_Click(object sender, EventArgs e) + { + Properties.Settings.Default.PrintFontName = (string)this.fontEdit1.EditValue; + Properties.Settings.Default.PrintFontSize = this.spinFontSize.Value; + Properties.Settings.Default.PrintSortByName = this.rbSortByNumber.Checked; + Properties.Settings.Default.Save(); + + using (var font = new Font(this.fontEdit1.Text, (float)this.spinFontSize.Value)) + using (var report = new ChannelListReport(this.channelList, this.subListIndex, this.rbSortByName.Checked, font)) + using (ReportPrintTool printTool = new ReportPrintTool(report)) + { + printTool.ShowPreviewDialog(); + printTool.ShowPreview(UserLookAndFeel.Default); + } + } + } +} \ No newline at end of file diff --git a/ChanSort/Printing/ReportOptionsDialog.de.resx b/ChanSort/Printing/ReportOptionsDialog.de.resx new file mode 100644 index 0000000..f04b5a3 --- /dev/null +++ b/ChanSort/Printing/ReportOptionsDialog.de.resx @@ -0,0 +1,142 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 74, 13 + + + Sortieren nach: + + + Nummer + + + Schriftart: + + + Vorschau... + + + Abbrechen + + + Druckoptionen + + \ No newline at end of file diff --git a/ChanSort/Printing/ReportOptionsDialog.resx b/ChanSort/Printing/ReportOptionsDialog.resx new file mode 100644 index 0000000..3fb4eb2 --- /dev/null +++ b/ChanSort/Printing/ReportOptionsDialog.resx @@ -0,0 +1,361 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + 22, 24 + + + 39, 13 + + + + 0 + + + Sort by: + + + labelControl1 + + + DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 7 + + + True + + + 104, 21 + + + Number + + + 75, 19 + + + 1 + + + rbSortByNumber + + + DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 6 + + + 185, 21 + + + Name + + + 75, 19 + + + 2 + + + rbSortByName + + + DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 5 + + + 22, 55 + + + 26, 13 + + + 3 + + + Font: + + + labelControl2 + + + DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 4 + + + + Top, Left, Right + + + Tahoma + + + 106, 52 + + + + Combo + + + 154, 20 + + + 4 + + + fontEdit1 + + + DevExpress.XtraEditors.FontEdit, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 3 + + + Bottom, Right + + + 165, 95 + + + 75, 23 + + + 5 + + + Preview... + + + btnPreview + + + DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 2 + + + Bottom, Right + + + 246, 95 + + + 75, 23 + + + 6 + + + Cancel + + + btnCancel + + + DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 1 + + + Top, Right + + + 12 + + + 266, 52 + + + Combo + + + False + + + 55, 20 + + + 7 + + + spinFontSize + + + DevExpress.XtraEditors.SpinEdit, DevExpress.XtraEditors.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + + $this + + + 0 + + + True + + + 6, 13 + + + 343, 137 + + + CenterParent + + + Print options + + + ReportOptionsDialog + + + DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a + + \ No newline at end of file diff --git a/ChanSort/Printing/ReportStyles.repss b/ChanSort/Printing/ReportStyles.repss new file mode 100644 index 0000000..36a511f --- /dev/null +++ b/ChanSort/Printing/ReportStyles.repss @@ -0,0 +1,55 @@ +/// +/// DevExpress.XtraReports.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +/// C:\Windows\Microsoft.Net\assembly\GAC_MSIL\DevExpress.XtraReports.v13.1\v4.0_13.1.6.0__b88d1754d700e49a\DevExpress.XtraReports.v13.1.dll +/// DevExpress.XtraReports.UI.XtraReport +/// en-US +/// 13.1 +/// +/// +/// zsrvvgEAAACRAAAAbFN5c3RlbS5SZXNvdXJjZXMuUmVzb3VyY2VSZWFkZXIsIG1zY29ybGliLCBWZXJzaW9uPTQuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjc3YTVjNTYxOTM0ZTA4OSNTeXN0ZW0uUmVzb3VyY2VzLlJ1bnRpbWVSZXNvdXJjZVNldAIAAAAAAAAAAAAAAFBBRFBBRFC0AAAA +/// +/// +namespace XtraReportSerialization { + + public class XtraReport : DevExpress.XtraReports.UI.XtraReport { + private DevExpress.XtraReports.UI.XRControlStyle Heading; + private DevExpress.XtraReports.UI.XRControlStyle Normal; + private System.Resources.ResourceManager _resources; + private string _resourceString; + public XtraReport() { + this._resourceString = DevExpress.XtraReports.Serialization.XRResourceManager.GetResourceFor("XtraReportSerialization.XtraReport"); + this.InitializeComponent(); + } + private System.Resources.ResourceManager resources { + get { + if (_resources == null) { + this._resources = new DevExpress.XtraReports.Serialization.XRResourceManager(this._resourceString); + } + return this._resources; + } + } + private void InitializeComponent() { + this.Heading = new DevExpress.XtraReports.UI.XRControlStyle(); + this.Normal = new DevExpress.XtraReports.UI.XRControlStyle(); + ((System.ComponentModel.ISupportInitialize)(this)).BeginInit(); + // + // Heading + // + this.Heading.Font = new System.Drawing.Font("Tahoma", 16F, System.Drawing.FontStyle.Bold); + this.Heading.Name = "Heading"; + // + // Normal + // + this.Normal.Font = new System.Drawing.Font("Tahoma", 12F); + this.Normal.Name = "Normal"; + // + // XtraReport + // + this.Name = "XtraReport"; + this.PageHeight = 1100; + this.PageWidth = 850; + this.Version = "13.1"; + ((System.ComponentModel.ISupportInitialize)(this)).EndInit(); + } + } +} diff --git a/ChanSort/Properties/DataSources/ChanSort.Api.ChannelList.datasource b/ChanSort/Properties/DataSources/ChanSort.Api.ChannelList.datasource new file mode 100644 index 0000000..a110586 --- /dev/null +++ b/ChanSort/Properties/DataSources/ChanSort.Api.ChannelList.datasource @@ -0,0 +1,10 @@ + + + + ChanSort.Api.ChannelList, ChanSort.Api, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ChanSort/Properties/Settings.Designer.cs b/ChanSort/Properties/Settings.Designer.cs index 52cbea4..93e9e8d 100644 --- a/ChanSort/Properties/Settings.Designer.cs +++ b/ChanSort/Properties/Settings.Designer.cs @@ -430,5 +430,41 @@ namespace ChanSort.Ui.Properties { this["MruFile9"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Tahoma")] + public string PrintFontName { + get { + return ((string)(this["PrintFontName"])); + } + set { + this["PrintFontName"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("12")] + public decimal PrintFontSize { + get { + return ((decimal)(this["PrintFontSize"])); + } + set { + this["PrintFontSize"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool PrintSortByName { + get { + return ((bool)(this["PrintSortByName"])); + } + set { + this["PrintSortByName"] = value; + } + } } } diff --git a/ChanSort/Properties/Settings.settings b/ChanSort/Properties/Settings.settings index 4df4df4..d2a0384 100644 --- a/ChanSort/Properties/Settings.settings +++ b/ChanSort/Properties/Settings.settings @@ -104,5 +104,14 @@ + + Tahoma + + + 12 + + + False + \ No newline at end of file diff --git a/ChanSort/Properties/licenses.licx b/ChanSort/Properties/licenses.licx index fc3bf72..b0af693 100644 --- a/ChanSort/Properties/licenses.licx +++ b/ChanSort/Properties/licenses.licx @@ -1,2 +1,3 @@ DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraReports.UI.XtraReport, DevExpress.XtraReports.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v13.1, Version=13.1.6.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/ChanSort/app.config b/ChanSort/app.config index 110caee..a3d3919 100644 --- a/ChanSort/app.config +++ b/ChanSort/app.config @@ -110,6 +110,15 @@ + + Tahoma + + + 12 + + + False + diff --git a/Images/imagelist/0034.png b/Images/imagelist/0034.png new file mode 100644 index 0000000000000000000000000000000000000000..83c5eb597d470e2cf7d519673fb374fe247f08f2 GIT binary patch literal 514 zcmV+d0{#7oP)N2bPDNB8 zb~7$DE-^4L^m3s900DkUL_t(IPpwidZ^JMU4IJJd*l!r@$fS-1O=T+$EG!IcV5E|; zg$5c1h6WlMng$vg-rl=7&9-jSr0q$kruMy$yCnN}h)6a~;n56EeyY@d4Uo^)P0+ap z?!@#~@}iU&<5QxnKo6X)Hir;pv`(wXndwKN@cvL~CCW!QKZ%FSXT&JtJlr8fcjx^% zQC1+*sWqb#81=n-Kf2YusHARtX}W$*0m2K(gY_z~fX)*}VXD>)>R#3zo=1IFatPs> zmmQYF3;s6UAXQ`JShZ3dYuTYW-ybzW19zV1`y^1KnNHt%yrke6|8IAPS)fESm-ZEO2UCg~s z<>6a!LCM&;3NXnA?iT^){E3TU2$H}NymGNVN^hfdV^HE!+vMJ~=2Zo-oVyxh40h7_ ze^V3yZdHJQ$b&9P7d0=7PFxh@Zt^+uQcRtwe?^wP0lbtvb}n+a07*qoM6N<$ Ef>@Qnul xcopy /siy debug\de "%target%\de" xcopy /siy debug\pt "%target%\pt" copy readme.txt "%target%" -for %%f in (Utils Data XtraEditors XtraBars XtraGrid XtraLayout) do call :copyDll %%f +for %%f in (Utils Data Printing XtraPrinting XtraReports XtraEditors XtraBars XtraGrid XtraLayout XtraTreeList) do call :copyDll %%f cd .. del Website\ChanSort.zip 2>nul diff --git a/readme.txt b/readme.txt index 41d1749..c969fc7 100644 --- a/readme.txt +++ b/readme.txt @@ -1,11 +1,10 @@ -Version v2013-11-20.2 ===================================================== +Version v2013-11-23 ======================================================= Changes: -- Fix for v2013-11-20: Errormessage at program start -- Fix for v2013-11-20: Panasonic channel names were set incorrectly -- Panasonic: Handling of special characters in channel names -- Toshiba: channels didn't change their order for zapping in .zip/chmgt.db - channel lists (thanks to Kurt W. for the hint) +- Channel lists can now be printed +- Fix: Error when saving Toshiba and Panasonic channel list which contained + red proxy entries for missing channels after applying a reference list +- Fix: Modified Panasonic channel names were not written to the file The complete change log can be found at the end of this document