diff --git a/ChanSort.Api/Controller/Editor.cs b/ChanSort.Api/Controller/Editor.cs
index 6b82b51..e9d57e0 100644
--- a/ChanSort.Api/Controller/Editor.cs
+++ b/ChanSort.Api/Controller/Editor.cs
@@ -93,7 +93,7 @@ namespace ChanSort.Api
return;
int delta = (up ? - 1 : +1);
- foreach (var channel in channels)
+ foreach (var channel in (up ? channels : channels.Reverse()))
{
int newProgramNr = channel.NewProgramNr + delta;
ChannelInfo channelAtNewProgramNr = this.ChannelList.Channels.FirstOrDefault(ch => ch.NewProgramNr == newProgramNr);
diff --git a/ChanSort.Loader.LG/Properties/licenses.licx b/ChanSort.Loader.LG/Properties/licenses.licx
index ff18d72..1694bc1 100644
--- a/ChanSort.Loader.LG/Properties/licenses.licx
+++ b/ChanSort.Loader.LG/Properties/licenses.licx
@@ -1 +1,3 @@
+DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/ChanSort.Loader.LG/TvSettingsForm.Designer.cs b/ChanSort.Loader.LG/TvSettingsForm.Designer.cs
index 59c7c86..6ade42c 100644
--- a/ChanSort.Loader.LG/TvSettingsForm.Designer.cs
+++ b/ChanSort.Loader.LG/TvSettingsForm.Designer.cs
@@ -64,32 +64,49 @@
//
// grpOption
//
+ resources.ApplyResources(this.grpOption, "grpOption");
this.grpOption.Controls.Add(this.cbHbbTv);
this.grpOption.Controls.Add(this.cbCustomCountry);
this.grpOption.Controls.Add(this.comboBoxEdit1);
this.grpOption.Controls.Add(this.labelControl1);
- resources.ApplyResources(this.grpOption, "grpOption");
this.grpOption.Name = "grpOption";
//
// cbHbbTv
//
resources.ApplyResources(this.cbHbbTv, "cbHbbTv");
this.cbHbbTv.Name = "cbHbbTv";
+ this.cbHbbTv.Properties.AccessibleDescription = resources.GetString("cbHbbTv.Properties.AccessibleDescription");
+ this.cbHbbTv.Properties.AccessibleName = resources.GetString("cbHbbTv.Properties.AccessibleName");
+ this.cbHbbTv.Properties.AutoHeight = ((bool)(resources.GetObject("cbHbbTv.Properties.AutoHeight")));
this.cbHbbTv.Properties.Caption = resources.GetString("cbHbbTv.Properties.Caption");
+ this.cbHbbTv.Properties.DisplayValueChecked = resources.GetString("cbHbbTv.Properties.DisplayValueChecked");
+ this.cbHbbTv.Properties.DisplayValueGrayed = resources.GetString("cbHbbTv.Properties.DisplayValueGrayed");
+ this.cbHbbTv.Properties.DisplayValueUnchecked = resources.GetString("cbHbbTv.Properties.DisplayValueUnchecked");
//
// cbCustomCountry
//
resources.ApplyResources(this.cbCustomCountry, "cbCustomCountry");
this.cbCustomCountry.Name = "cbCustomCountry";
+ this.cbCustomCountry.Properties.AccessibleDescription = resources.GetString("cbCustomCountry.Properties.AccessibleDescription");
+ this.cbCustomCountry.Properties.AccessibleName = resources.GetString("cbCustomCountry.Properties.AccessibleName");
+ this.cbCustomCountry.Properties.AutoHeight = ((bool)(resources.GetObject("cbCustomCountry.Properties.AutoHeight")));
this.cbCustomCountry.Properties.Caption = resources.GetString("cbCustomCountry.Properties.Caption");
+ this.cbCustomCountry.Properties.DisplayValueChecked = resources.GetString("cbCustomCountry.Properties.DisplayValueChecked");
+ this.cbCustomCountry.Properties.DisplayValueGrayed = resources.GetString("cbCustomCountry.Properties.DisplayValueGrayed");
+ this.cbCustomCountry.Properties.DisplayValueUnchecked = resources.GetString("cbCustomCountry.Properties.DisplayValueUnchecked");
this.cbCustomCountry.CheckedChanged += new System.EventHandler(this.cbCustomCountry_CheckedChanged);
//
// comboBoxEdit1
//
resources.ApplyResources(this.comboBoxEdit1, "comboBoxEdit1");
this.comboBoxEdit1.Name = "comboBoxEdit1";
+ this.comboBoxEdit1.Properties.AccessibleDescription = resources.GetString("comboBoxEdit1.Properties.AccessibleDescription");
+ this.comboBoxEdit1.Properties.AccessibleName = resources.GetString("comboBoxEdit1.Properties.AccessibleName");
+ this.comboBoxEdit1.Properties.AutoHeight = ((bool)(resources.GetObject("comboBoxEdit1.Properties.AutoHeight")));
this.comboBoxEdit1.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(((DevExpress.XtraEditors.Controls.ButtonPredefines)(resources.GetObject("comboBoxEdit1.Properties.Buttons"))))});
+ this.comboBoxEdit1.Properties.NullValuePrompt = resources.GetString("comboBoxEdit1.Properties.NullValuePrompt");
+ this.comboBoxEdit1.Properties.NullValuePromptShowForEmptyValue = ((bool)(resources.GetObject("comboBoxEdit1.Properties.NullValuePromptShowForEmptyValue")));
this.comboBoxEdit1.Properties.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
//
// labelControl1
@@ -112,11 +129,11 @@
//
// grpHotelMode
//
+ resources.ApplyResources(this.grpHotelMode, "grpHotelMode");
this.grpHotelMode.Controls.Add(this.labelControl3);
this.grpHotelMode.Controls.Add(this.labelControl2);
this.grpHotelMode.Controls.Add(this.cbDtvUpdate);
this.grpHotelMode.Controls.Add(this.cbHotelMode);
- resources.ApplyResources(this.grpHotelMode, "grpHotelMode");
this.grpHotelMode.Name = "grpHotelMode";
//
// labelControl3
@@ -133,30 +150,48 @@
//
resources.ApplyResources(this.cbDtvUpdate, "cbDtvUpdate");
this.cbDtvUpdate.Name = "cbDtvUpdate";
+ this.cbDtvUpdate.Properties.AccessibleDescription = resources.GetString("cbDtvUpdate.Properties.AccessibleDescription");
+ this.cbDtvUpdate.Properties.AccessibleName = resources.GetString("cbDtvUpdate.Properties.AccessibleName");
+ this.cbDtvUpdate.Properties.AutoHeight = ((bool)(resources.GetObject("cbDtvUpdate.Properties.AutoHeight")));
this.cbDtvUpdate.Properties.Caption = resources.GetString("cbDtvUpdate.Properties.Caption");
+ this.cbDtvUpdate.Properties.DisplayValueChecked = resources.GetString("cbDtvUpdate.Properties.DisplayValueChecked");
+ this.cbDtvUpdate.Properties.DisplayValueGrayed = resources.GetString("cbDtvUpdate.Properties.DisplayValueGrayed");
+ this.cbDtvUpdate.Properties.DisplayValueUnchecked = resources.GetString("cbDtvUpdate.Properties.DisplayValueUnchecked");
//
// cbHotelMode
//
resources.ApplyResources(this.cbHotelMode, "cbHotelMode");
this.cbHotelMode.Name = "cbHotelMode";
+ this.cbHotelMode.Properties.AccessibleDescription = resources.GetString("cbHotelMode.Properties.AccessibleDescription");
+ this.cbHotelMode.Properties.AccessibleName = resources.GetString("cbHotelMode.Properties.AccessibleName");
+ this.cbHotelMode.Properties.AutoHeight = ((bool)(resources.GetObject("cbHotelMode.Properties.AutoHeight")));
this.cbHotelMode.Properties.Caption = resources.GetString("cbHotelMode.Properties.Caption");
+ this.cbHotelMode.Properties.DisplayValueChecked = resources.GetString("cbHotelMode.Properties.DisplayValueChecked");
+ this.cbHotelMode.Properties.DisplayValueGrayed = resources.GetString("cbHotelMode.Properties.DisplayValueGrayed");
+ this.cbHotelMode.Properties.DisplayValueUnchecked = resources.GetString("cbHotelMode.Properties.DisplayValueUnchecked");
//
// cbAutoChannelUpdate
//
resources.ApplyResources(this.cbAutoChannelUpdate, "cbAutoChannelUpdate");
this.cbAutoChannelUpdate.Name = "cbAutoChannelUpdate";
+ this.cbAutoChannelUpdate.Properties.AccessibleDescription = resources.GetString("cbAutoChannelUpdate.Properties.AccessibleDescription");
+ this.cbAutoChannelUpdate.Properties.AccessibleName = resources.GetString("cbAutoChannelUpdate.Properties.AccessibleName");
+ this.cbAutoChannelUpdate.Properties.AutoHeight = ((bool)(resources.GetObject("cbAutoChannelUpdate.Properties.AutoHeight")));
this.cbAutoChannelUpdate.Properties.Caption = resources.GetString("cbAutoChannelUpdate.Properties.Caption");
+ this.cbAutoChannelUpdate.Properties.DisplayValueChecked = resources.GetString("cbAutoChannelUpdate.Properties.DisplayValueChecked");
+ this.cbAutoChannelUpdate.Properties.DisplayValueGrayed = resources.GetString("cbAutoChannelUpdate.Properties.DisplayValueGrayed");
+ this.cbAutoChannelUpdate.Properties.DisplayValueUnchecked = resources.GetString("cbAutoChannelUpdate.Properties.DisplayValueUnchecked");
//
// grpSetup
//
- this.grpSetup.Controls.Add(this.cbAutoChannelUpdate);
resources.ApplyResources(this.grpSetup, "grpSetup");
+ this.grpSetup.Controls.Add(this.cbAutoChannelUpdate);
this.grpSetup.Name = "grpSetup";
//
// grpInformation
//
- this.grpInformation.Controls.Add(this.labelControl4);
resources.ApplyResources(this.grpInformation, "grpInformation");
+ this.grpInformation.Controls.Add(this.labelControl4);
this.grpInformation.Name = "grpInformation";
//
// labelControl4
@@ -167,15 +202,22 @@
// lblHotelMenuAutoDetect
//
resources.ApplyResources(this.lblHotelMenuAutoDetect, "lblHotelMenuAutoDetect");
- this.lblHotelMenuAutoDetect.Appearance.ForeColor = ((System.Drawing.Color)(resources.GetObject("labelControl5.Appearance.ForeColor")));
+ this.lblHotelMenuAutoDetect.Appearance.DisabledImage = ((System.Drawing.Image)(resources.GetObject("lblHotelMenuAutoDetect.Appearance.DisabledImage")));
+ this.lblHotelMenuAutoDetect.Appearance.ForeColor = ((System.Drawing.Color)(resources.GetObject("lblHotelMenuAutoDetect.Appearance.ForeColor")));
+ this.lblHotelMenuAutoDetect.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("lblHotelMenuAutoDetect.Appearance.GradientMode")));
+ this.lblHotelMenuAutoDetect.Appearance.HoverImage = ((System.Drawing.Image)(resources.GetObject("lblHotelMenuAutoDetect.Appearance.HoverImage")));
+ this.lblHotelMenuAutoDetect.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("lblHotelMenuAutoDetect.Appearance.Image")));
+ this.lblHotelMenuAutoDetect.Appearance.PressedImage = ((System.Drawing.Image)(resources.GetObject("lblHotelMenuAutoDetect.Appearance.PressedImage")));
this.lblHotelMenuAutoDetect.Name = "lblHotelMenuAutoDetect";
this.lblHotelMenuAutoDetect.Click += new System.EventHandler(this.lblHotelMenuAutoDetect_Click);
//
// TvSettingsForm
//
this.AcceptButton = this.btnOk;
- this.Appearance.Options.UseBackColor = true;
resources.ApplyResources(this, "$this");
+ this.Appearance.GradientMode = ((System.Drawing.Drawing2D.LinearGradientMode)(resources.GetObject("TvSettingsForm.Appearance.GradientMode")));
+ this.Appearance.Image = ((System.Drawing.Image)(resources.GetObject("TvSettingsForm.Appearance.Image")));
+ this.Appearance.Options.UseBackColor = true;
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.btnCancel;
this.Controls.Add(this.lblHotelMenuAutoDetect);
diff --git a/ChanSort.Loader.LG/TvSettingsForm.de.resx b/ChanSort.Loader.LG/TvSettingsForm.de.resx
index d0a9b38..c0a2826 100644
--- a/ChanSort.Loader.LG/TvSettingsForm.de.resx
+++ b/ChanSort.Loader.LG/TvSettingsForm.de.resx
@@ -117,65 +117,12 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
-
-
-
-
-
- True
-
HbbTV aktivieren (funktioniert nur mit den Ländereinstellungen DEU, FRA, NED und ESP)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
Eigene Werte erlauben (auf eigene Gefahr!)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
-
-
-
-
- False
-
27, 13
@@ -183,14 +130,14 @@
Land:
-
- OPTION Menü
-
Abbrechen
+
+ Hotel Modus
+
- HINWEIS: Bei aktivem Hotel-Modus kann man in der EPG nicht zum gewählten Sender wechseln und die Funktion "Werkseinstellungen" ist gesperrt.
+ HINWEIS: Bei aktivem Hotel-Modus kann man im EPG nicht zum gewählten Sender wechseln und die Funktion "Werkseinstellungen" ist gesperrt.
341, 13
@@ -198,127 +145,21 @@
Die folgenden Einstellungen funktionieren nur bei aktivem Hotel-Modus:
-
-
-
-
-
-
-
- True
-
D-TV Senderliste automatisch aktualisieren (empfohlen: AUS)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
Hotel Modus aktivieren (empfohlen: EIN)
-
-
-
-
-
-
-
-
-
-
- Hotel Modus
-
-
-
-
-
-
-
-
- True
-
Senderliste automatisch aktualisieren (empfohlen: AUS)
-
-
-
-
-
-
-
-
-
-
- EINST. Menü
+
+ EINST. Menu
Das Dateiformat Ihres TV-Modells wird nicht vollständig unterstützt. Deshalb sind viele Einstellungen in diesem Dialog gesperrt.
-
-
-
-
-
-
-
- True
-
-
-
- Default
-
-
- False
-
-
-
-
-
- True
-
-
- None
-
-
- _
-
-
- True
-
-
- True
-
-
- False
-
-
-
-
-
- False
-
-
- Horizontal
-
-
-
-
TV Einstellungen
diff --git a/ChanSort.Loader.LG/TvSettingsForm.resx b/ChanSort.Loader.LG/TvSettingsForm.resx
index b6e45b5..1327f19 100644
--- a/ChanSort.Loader.LG/TvSettingsForm.resx
+++ b/ChanSort.Loader.LG/TvSettingsForm.resx
@@ -117,412 +117,192 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- Top, Left, Right
+
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- 12, 64
-
-
- Enable HbbTV (only works with country settings DEU, FRA, NED and ESP)
-
-
- 456, 19
-
-
-
- 3
-
-
- cbHbbTv
-
-
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpOption
-
-
- 0
-
-
- Top, Left, Right
-
-
- 150, 30
-
-
- allow custom value (at your own risk!)
-
-
- 320, 19
-
-
- 2
-
-
- cbCustomCountry
-
-
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpOption
-
-
- 1
-
-
- 72, 29
-
-
-
- Combo
-
72, 20
-
- 1
-
-
- comboBoxEdit1
-
-
- DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpOption
-
-
- 2
-
-
- 12, 32
-
-
- 43, 13
-
-
- 0
-
-
- Country:
-
-
- labelControl1
-
-
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpOption
-
-
- 3
-
-
- Top
-
-
- 0, 142
-
-
- 480, 106
-
-
- 0
-
-
- OPTION Menu
-
-
- grpOption
-
-
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
$this
-
- 4
-
-
- Bottom, Right
-
-
- 310, 413
-
-
- 75, 23
-
-
- 1
-
-
- Ok
-
-
- btnOk
-
-
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- $this
-
-
- 3
-
-
- Bottom, Right
-
-
- 395, 413
-
-
- 75, 23
-
-
- 2
-
-
- Cancel
-
-
- btnCancel
-
-
- DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- $this
-
-
- 2
+
+ OPTION Menu
-
+
Vertical
-
- 12, 26
-
-
- 458, 26
-
-
- 7
-
-
- NOTE: When Hotel Mode is active, you can no longer activate a channel from inside the EPG and the "Factory Reset" function becomes disabled.
-
-
- labelControl3
-
-
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpHotelMode
-
-
- 0
-
-
- 41, 93
-
-
- 315, 13
-
-
- 6
-
-
- The settings below are only effective when Hotel Mode is enabled
-
-
- labelControl2
-
-
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpHotelMode
-
-
- 1
-
-
- Top, Left, Right
-
-
- 39, 112
-
-
- Automatic D-TV channel update (recommended: OFF)
-
-
- 431, 19
-
-
- 5
-
-
- cbDtvUpdate
-
-
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpHotelMode
-
-
- 2
-
-
- Top, Left, Right
-
-
- 10, 58
-
-
- Enable Hotel Mode (recommended: ON)
-
-
- 456, 19
-
-
- 4
-
-
- cbHotelMode
-
-
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpHotelMode
-
-
- 3
-
-
- Top
+
+
0, 248
-
- 480, 151
+
+ 480, 71
-
- 3
-
-
- Hotel Mode
-
-
- grpHotelMode
-
-
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- $this
-
-
- 1
-
-
- Top, Left, Right
-
-
- 12, 35
+
+
Automatic Channel Update (recommended: OFF)
-
- 456, 19
-
-
- 3
-
-
- cbAutoChannelUpdate
-
-
- DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- grpSetup
-
-
- 0
-
-
- Top
-
-
- 0, 71
-
-
- 480, 71
-
-
- 5
-
-
- SETUP Menu
-
-
- grpSetup
-
-
- DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
-
- $this
-
-
- 5
-
-
- Vertical
-
-
- 11, 29
-
-
- 458, 26
-
-
- 8
+
+
+ True
Your TV model's TLL file format is not fully supported. Therefore many features in this dialog are disabled.
+
+
+
+
+
+ 310, 413
+
+
+ 117, 13
+
+
+ lblHotelMenuAutoDetect
+
+
+ 1
+
+
+
+
+
+ labelControl3
+
+
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ 2
+
+
+ $this
+
+
+ 431, 19
+
+
+
+
+
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ TV Settings
+
+
+ 3
+
labelControl4
-
+
+ 480, 106
+
+
+ Information
+
+
+ NOTE: When Hotel Mode is active, you can no longer activate a channel from inside the EPG and the "Factory Reset" function becomes disabled.
+
+
+ True
+
+
+ 6
+
+
+ grpOption
+
+
+ 6, 13
+
+
+ 3
+
+
DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
+
+ grpSetup
+
+
+ $this
+
+
+ True
+
+
+ $this
+
+
+ cbCustomCountry
+
+
+ Top, Left, Right
+
+
+ cbHbbTv
+
+
+ grpHotelMode
+
+
+ The settings below are only effective when Hotel Mode is enabled
+
+
+ DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
grpInformation
-
+
+ 11, 29
+
+
+ Ok
+
+
+ Top, Left, Right
+
+
+
+
+
+
+
+
+ 315, 13
+
+
0
-
- Top
+
+
-
- 0, 0
+
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ $this
+
+
+ 39, 112
+
+
+ DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+
480, 71
@@ -530,70 +310,416 @@
6
-
- Information
+
+ allow custom value (at your own risk!)
-
- grpInformation
+
+
DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- $this
+
+ Top
-
- 6
+
+ Hotel Mode
-
- Bottom, Left
+
+ btnCancel
-
+
+ 12, 32
+
+
LightGray
-
- 11, 422
+
+ Horizontal
-
- 117, 13
-
-
- 7
+
+ 3
Auto-Detect Hotel-Menu
-
- lblHotelMenuAutoDetect
+
+ TvSettingsForm
-
- DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ grpHotelMode
-
- $this
+
+ grpHotelMode
-
- 0
+
+ Top
-
- True
-
-
- 6, 13
+
+
-
- 480, 448
+
+
+
+
+ grpInformation
+
+
+ comboBoxEdit1
+
+
+ 2
+
+
+ btnOk
+
+
+ 480, 151
+
+
+ Top, Left, Right
+
+
+
+
+
+ 2
+
+
+ cbDtvUpdate
+
+
+ Bottom, Right
CenterParent
-
- TV Settings
+
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-
- TvSettingsForm
+
+ 72, 29
+
+
+
+
+
+ 456, 19
+
+
+ Automatic D-TV channel update (recommended: OFF)
+
+
+ SETUP Menu
+
+
+ 11, 422
+
+
+ 0
+
+
+ Top, Left, Right
+
+
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ 7
+
+
+ 0
+
+
+ 0
+
+
+
+
+
+ 1
+
+
+ Horizontal
+
+
+ 1
+
+
+ labelControl1
+
+
+ 2
+
+
+ grpOption
+
+
+ grpHotelMode
+
+
+ Top, Left, Right
+
+
+ 0
+
+
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ grpOption
+
+
+ grpHotelMode
+
+
+ 0, 142
+
+
+
+
+
+ 75, 23
+
+
+ True
+
+
+ 12, 35
+
+
+
+
+
+ 0
+
+
+ cbAutoChannelUpdate
+
+
+ Bottom, Left
+
+
+ 3
+
+
+
+
+
+ Cancel
+
+
+ Bottom, Right
+
+
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ 0
+
+
+ 5
+
+
+ cbHotelMode
+
+
+ 1
+
+
+
+
+
+ 458, 26
DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ Enable Hotel Mode (recommended: ON)
+
+
+ 5
+
+
+ 75, 23
+
+
+ Top
+
+
+ Country:
+
+
+
+
+
+
+
+
+ Enable HbbTV (only works with country settings DEU, FRA, NED and ESP)
+
+
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ 41, 93
+
+
+ 4
+
+
+ grpSetup
+
+
+ 8
+
+
+
+
+
+ 10, 58
+
+
+
+
+
+ 3
+
+
+ 1
+
+
+ DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ Vertical
+
+
+ 6
+
+
+ 458, 26
+
+
+ DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+ 12, 64
+
+
+ 7
+
+
+ True
+
+
+
+
+
+ grpOption
+
+
+ 0, 71
+
+
+
+
+
+ Top
+
+
+ True
+
+
+ 320, 19
+
+
+ 480, 448
+
+
+ 2
+
+
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+
+
+
+ 150, 30
+
+
+ 43, 13
+
+
+ $this
+
+
+
+ Combo
+
+
+ 456, 19
+
+
+ 0, 0
+
+
+ False
+
+
+ $this
+
+
+ 456, 19
+
+
+ DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+
+
+
+
+
+
+
+
+
+
+ 12, 26
+
+
+ 3
+
+
+
+
+
+ grpOption
+
+
+
+
+
+ 5
+
+
+ 395, 413
+
+
+
+
+
+ labelControl2
+
+
+ 4
+
+
+
+
+
+ True
+
\ No newline at end of file
diff --git a/ChanSort/MainForm.Designer.cs b/ChanSort/MainForm.Designer.cs
index 5d326a2..c1a1284 100644
--- a/ChanSort/MainForm.Designer.cs
+++ b/ChanSort/MainForm.Designer.cs
@@ -43,6 +43,7 @@
this.repositoryItemCheckedComboBoxEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemCheckedComboBoxEdit();
this.colUid1 = new DevExpress.XtraGrid.Columns.GridColumn();
this.colOutLock = new DevExpress.XtraGrid.Columns.GridColumn();
+ this.repositoryItemTextEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemTextEdit();
this.lblHotkeyLeft = new DevExpress.XtraEditors.LabelControl();
this.pnlEditControls = new DevExpress.XtraEditors.PanelControl();
this.btnToggleLock = new DevExpress.XtraEditors.SimpleButton();
@@ -169,6 +170,7 @@
((System.ComponentModel.ISupportInitialize)(this.dsChannels)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gviewLeft)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemCheckedComboBoxEdit1)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.repositoryItemTextEdit1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pnlEditControls)).BeginInit();
this.pnlEditControls.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.grpInputList)).BeginInit();
@@ -213,15 +215,20 @@
//
// gridLeft
//
+ this.gridLeft.AllowDrop = true;
this.gridLeft.DataSource = this.dsChannels;
resources.ApplyResources(this.gridLeft, "gridLeft");
this.gridLeft.MainView = this.gviewLeft;
this.gridLeft.Name = "gridLeft";
this.gridLeft.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
- this.repositoryItemCheckedComboBoxEdit1});
+ this.repositoryItemCheckedComboBoxEdit1,
+ this.repositoryItemTextEdit1});
this.gridLeft.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gviewLeft});
this.gridLeft.ProcessGridKey += new System.Windows.Forms.KeyEventHandler(this.gridLeft_ProcessGridKey);
+ this.gridLeft.DragDrop += new System.Windows.Forms.DragEventHandler(this.gridLeft_DragDrop);
+ this.gridLeft.DragOver += new System.Windows.Forms.DragEventHandler(this.gridLeft_DragOver);
+ this.gridLeft.GiveFeedback += new System.Windows.Forms.GiveFeedbackEventHandler(this.grid_GiveFeedback);
//
// dsChannels
//
@@ -229,8 +236,12 @@
//
// gviewLeft
//
+ this.gviewLeft.Appearance.FocusedRow.Font = ((System.Drawing.Font)(resources.GetObject("gviewLeft.Appearance.FocusedRow.Font")));
+ this.gviewLeft.Appearance.FocusedRow.Options.UseFont = true;
this.gviewLeft.Appearance.HeaderPanel.Options.UseTextOptions = true;
this.gviewLeft.Appearance.HeaderPanel.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
+ this.gviewLeft.Appearance.HideSelectionRow.Font = ((System.Drawing.Font)(resources.GetObject("gviewLeft.Appearance.HideSelectionRow.Font")));
+ this.gviewLeft.Appearance.HideSelectionRow.Options.UseFont = true;
this.gviewLeft.ColumnPanelRowHeight = 35;
this.gviewLeft.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colIndex1,
@@ -244,6 +255,7 @@
this.gviewLeft.Name = "gviewLeft";
this.gviewLeft.OptionsBehavior.EditorShowMode = DevExpress.Utils.EditorShowMode.MouseDown;
this.gviewLeft.OptionsCustomization.AllowGroup = false;
+ this.gviewLeft.OptionsCustomization.AllowQuickHideColumns = false;
this.gviewLeft.OptionsLayout.LayoutVersion = "2";
this.gviewLeft.OptionsSelection.MultiSelect = true;
this.gviewLeft.OptionsView.ColumnAutoWidth = false;
@@ -258,12 +270,15 @@
this.gviewLeft.SelectionChanged += new DevExpress.Data.SelectionChangedEventHandler(this.gviewLeft_SelectionChanged);
this.gviewLeft.ShowingEditor += new System.ComponentModel.CancelEventHandler(this.gview_ShowingEditor);
this.gviewLeft.ShownEditor += new System.EventHandler(this.gview_ShownEditor);
+ this.gviewLeft.EndSorting += new System.EventHandler(this.gviewLeft_EndSorting);
this.gviewLeft.FocusedRowChanged += new DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventHandler(this.gviewLeft_FocusedRowChanged);
this.gviewLeft.CellValueChanged += new DevExpress.XtraGrid.Views.Base.CellValueChangedEventHandler(this.gviewLeft_CellValueChanged);
this.gviewLeft.CustomColumnDisplayText += new DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventHandler(this.gviewLeft_CustomColumnDisplayText);
this.gviewLeft.LayoutUpgrade += new DevExpress.Utils.LayoutUpgadeEventHandler(this.gviewLeft_LayoutUpgrade);
+ this.gviewLeft.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.gview_KeyPress);
this.gviewLeft.MouseDown += new System.Windows.Forms.MouseEventHandler(this.gview_MouseDown);
this.gviewLeft.MouseUp += new System.Windows.Forms.MouseEventHandler(this.gview_MouseUp);
+ this.gviewLeft.MouseMove += new System.Windows.Forms.MouseEventHandler(this.gview_MouseMove);
this.gviewLeft.ValidatingEditor += new DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventHandler(this.gviewLeft_ValidatingEditor);
//
// colIndex1
@@ -282,6 +297,8 @@
// colOutSlot
//
resources.ApplyResources(this.colOutSlot, "colOutSlot");
+ this.colOutSlot.DisplayFormat.FormatString = "d";
+ this.colOutSlot.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
this.colOutSlot.FieldName = "NewProgramNr";
this.colOutSlot.Name = "colOutSlot";
this.colOutSlot.OptionsFilter.AllowAutoFilter = false;
@@ -331,6 +348,16 @@
this.colOutLock.FieldName = "Lock";
this.colOutLock.Name = "colOutLock";
//
+ // repositoryItemTextEdit1
+ //
+ resources.ApplyResources(this.repositoryItemTextEdit1, "repositoryItemTextEdit1");
+ this.repositoryItemTextEdit1.DisplayFormat.FormatString = "d";
+ this.repositoryItemTextEdit1.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
+ this.repositoryItemTextEdit1.EditFormat.FormatString = "d";
+ this.repositoryItemTextEdit1.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
+ this.repositoryItemTextEdit1.Mask.MaskType = ((DevExpress.XtraEditors.Mask.MaskType)(resources.GetObject("repositoryItemTextEdit1.Mask.MaskType")));
+ this.repositoryItemTextEdit1.Name = "repositoryItemTextEdit1";
+ //
// lblHotkeyLeft
//
resources.ApplyResources(this.lblHotkeyLeft, "lblHotkeyLeft");
@@ -449,6 +476,7 @@
//
// gridRight
//
+ this.gridRight.AllowDrop = true;
this.gridRight.DataSource = this.dsChannels;
resources.ApplyResources(this.gridRight, "gridRight");
this.gridRight.MainView = this.gviewRight;
@@ -458,11 +486,16 @@
this.gridRight.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gviewRight});
this.gridRight.ProcessGridKey += new System.Windows.Forms.KeyEventHandler(this.gridRight_ProcessGridKey);
+ this.gridRight.GiveFeedback += new System.Windows.Forms.GiveFeedbackEventHandler(this.grid_GiveFeedback);
//
// gviewRight
//
+ this.gviewRight.Appearance.FocusedRow.Font = ((System.Drawing.Font)(resources.GetObject("gviewRight.Appearance.FocusedRow.Font")));
+ this.gviewRight.Appearance.FocusedRow.Options.UseFont = true;
this.gviewRight.Appearance.HeaderPanel.Options.UseTextOptions = true;
this.gviewRight.Appearance.HeaderPanel.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
+ this.gviewRight.Appearance.HideSelectionRow.Font = ((System.Drawing.Font)(resources.GetObject("gviewRight.Appearance.HideSelectionRow.Font")));
+ this.gviewRight.Appearance.HideSelectionRow.Options.UseFont = true;
this.gviewRight.ColumnPanelRowHeight = 35;
this.gviewRight.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colIndex,
@@ -514,8 +547,10 @@
this.gviewRight.CellValueChanged += new DevExpress.XtraGrid.Views.Base.CellValueChangedEventHandler(this.gviewRight_CellValueChanged);
this.gviewRight.CustomColumnDisplayText += new DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventHandler(this.gviewRight_CustomColumnDisplayText);
this.gviewRight.LayoutUpgrade += new DevExpress.Utils.LayoutUpgadeEventHandler(this.gviewRight_LayoutUpgrade);
+ this.gviewRight.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.gview_KeyPress);
this.gviewRight.MouseDown += new System.Windows.Forms.MouseEventHandler(this.gview_MouseDown);
this.gviewRight.MouseUp += new System.Windows.Forms.MouseEventHandler(this.gview_MouseUp);
+ this.gviewRight.MouseMove += new System.Windows.Forms.MouseEventHandler(this.gview_MouseMove);
this.gviewRight.ValidatingEditor += new DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventHandler(this.gviewRight_ValidatingEditor);
//
// colIndex
@@ -528,6 +563,8 @@
// colSlotOld
//
resources.ApplyResources(this.colSlotOld, "colSlotOld");
+ this.colSlotOld.DisplayFormat.FormatString = "d";
+ this.colSlotOld.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
this.colSlotOld.FieldName = "OldProgramNr";
this.colSlotOld.Name = "colSlotOld";
this.colSlotOld.OptionsColumn.AllowEdit = false;
@@ -536,6 +573,8 @@
// colSlotNew
//
resources.ApplyResources(this.colSlotNew, "colSlotNew");
+ this.colSlotNew.DisplayFormat.FormatString = "d";
+ this.colSlotNew.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
this.colSlotNew.FieldName = "NewProgramNr";
this.colSlotNew.Name = "colSlotNew";
//
@@ -837,11 +876,14 @@
this.miSaveReferenceFile,
this.miRecentFiles,
this.miExcelExport});
+ this.barManager1.MainMenu = this.bar1;
this.barManager1.MaxItemId = 60;
+ this.barManager1.ShowFullMenus = true;
//
// bar1
//
this.bar1.BarName = "Tools";
+ this.bar1.CanDockStyle = DevExpress.XtraBars.BarCanDockStyle.Top;
this.bar1.DockCol = 0;
this.bar1.DockRow = 0;
this.bar1.DockStyle = DevExpress.XtraBars.BarDockStyle.Top;
@@ -864,6 +906,12 @@
new DevExpress.XtraBars.LinkPersistInfo(this.barSubItem1),
new DevExpress.XtraBars.LinkPersistInfo(this.mnuHelp, true),
new DevExpress.XtraBars.LinkPersistInfo(this.miAbout)});
+ this.bar1.OptionsBar.AllowQuickCustomization = false;
+ this.bar1.OptionsBar.DisableClose = true;
+ this.bar1.OptionsBar.DisableCustomization = true;
+ this.bar1.OptionsBar.DrawDragBorder = false;
+ this.bar1.OptionsBar.MultiLine = true;
+ this.bar1.OptionsBar.UseWholeRow = true;
resources.ApplyResources(this.bar1, "bar1");
//
// miFile
@@ -1505,6 +1553,7 @@
((System.ComponentModel.ISupportInitialize)(this.dsChannels)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gviewLeft)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemCheckedComboBoxEdit1)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.repositoryItemTextEdit1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pnlEditControls)).EndInit();
this.pnlEditControls.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.grpInputList)).EndInit();
@@ -1664,6 +1713,7 @@
private DevExpress.XtraBars.BarButtonItem miSaveReferenceFile;
private DevExpress.XtraBars.BarListItem miRecentFiles;
private DevExpress.XtraBars.BarButtonItem miExcelExport;
+ private DevExpress.XtraEditors.Repository.RepositoryItemTextEdit repositoryItemTextEdit1;
private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1;
}
}
diff --git a/ChanSort/MainForm.cs b/ChanSort/MainForm.cs
index cdb4d32..ee0e5db 100644
--- a/ChanSort/MainForm.cs
+++ b/ChanSort/MainForm.cs
@@ -24,7 +24,7 @@ namespace ChanSort.Ui
{
public partial class MainForm : XtraForm
{
- public const string AppVersion = "v2013-06-22";
+ public const string AppVersion = "v2013-06-23";
private const int MaxMruEntries = 5;
@@ -37,6 +37,22 @@ namespace ChanSort.Ui
}
#endregion
+ #region class DragDropInfo
+ private class DragDropInfo
+ {
+ public readonly GridView SourceView;
+ public readonly int SourceProgramNumber;
+ public EditMode EditMode;
+ public int DropRowHandle = -1;
+
+ public DragDropInfo(GridView source, int sourceProgramNumber)
+ {
+ this.SourceView = source;
+ this.SourceProgramNumber = sourceProgramNumber;
+ }
+ }
+ #endregion
+
private readonly IList plugins;
private string currentTvFile;
private string currentCsvFile;
@@ -53,6 +69,8 @@ namespace ChanSort.Ui
private EditMode curEditMode = EditMode.InsertAfter;
private bool dontOpenEditor;
private readonly List mruFiles = new List();
+ private DevExpress.XtraGrid.Views.Grid.ViewInfo.GridHitInfo downHit;
+ private DragDropInfo dragDropInfo;
#region ctor()
public MainForm()
@@ -502,7 +520,16 @@ namespace ChanSort.Ui
#endregion
-
+ #region IsLeftGridSortedByNewProgNr
+ private bool IsLeftGridSortedByNewProgNr
+ {
+ get
+ {
+ return this.gviewLeft.SortedColumns.Count >= 1 &&
+ this.gviewLeft.SortedColumns[0].FieldName == this.colOutSlot.FieldName;
+ }
+ }
+ #endregion
#region ShowChannelList()
private void ShowChannelList(ChannelList channelList)
@@ -743,6 +770,7 @@ namespace ChanSort.Ui
private void MoveChannels(bool up)
{
+ if (!this.IsLeftGridSortedByNewProgNr) return;
var selectedChannels = this.GetSelectedChannels(this.gviewLeft);
if (selectedChannels.Count == 0) return;
@@ -1214,10 +1242,11 @@ namespace ChanSort.Ui
this.miMoveDown.Visibility = visLeft;
this.miAddChannel.Visibility = visRight;
+ bool isLeftGridSortedByNewProgNr = this.IsLeftGridSortedByNewProgNr;
var sel = this.gviewLeft.GetSelectedRows();
var channel = sel.Length == 0 ? null : (ChannelInfo) this.gviewRight.GetRow(sel[0]);
- this.miMoveUp.Enabled = this.btnUp.Enabled = mayEdit && channel != null && channel.NewProgramNr > this.currentChannelList.FirstProgramNumber;
- this.miMoveDown.Enabled = this.btnDown.Enabled = mayEdit;
+ this.miMoveUp.Enabled = this.btnUp.Enabled = mayEdit && isLeftGridSortedByNewProgNr && channel != null && channel.NewProgramNr > this.currentChannelList.FirstProgramNumber;
+ this.miMoveDown.Enabled = this.btnDown.Enabled = mayEdit && isLeftGridSortedByNewProgNr;
this.miTvSettings.Enabled = this.currentTvSerializer != null;
this.miCleanupChannels.Visibility = this.currentTvSerializer != null &&
@@ -1653,27 +1682,27 @@ namespace ChanSort.Ui
private void gview_MouseDown(object sender, MouseEventArgs e)
{
GridView view = (GridView)sender;
- var hit = view.CalcHitInfo(e.Location);
- if (!view.IsDataRow(hit.RowHandle))
+ this.downHit = view.CalcHitInfo(e.Location);
+ if (!view.IsDataRow(downHit.RowHandle))
return;
if (e.Button == MouseButtons.Left)
{
if (ModifierKeys == Keys.None)
{
- if (hit.RowHandle != view.FocusedRowHandle)
- SelectFocusedRow(view, hit.RowHandle);
+ if (downHit.RowHandle != view.FocusedRowHandle)
+ SelectFocusedRow(view, downHit.RowHandle);
this.timerEditDelay.Start();
}
else
{
- if (ModifierKeys == Keys.Control && !view.IsRowSelected(hit.RowHandle))
- this.BeginInvoke((Action) (() => view.SelectRow(hit.RowHandle)));
+ if (ModifierKeys == Keys.Control && !view.IsRowSelected(downHit.RowHandle))
+ this.BeginInvoke((Action) (() => view.SelectRow(downHit.RowHandle)));
}
}
else if (e.Button == MouseButtons.Right)
{
- if (!view.IsRowSelected(hit.RowHandle))
- SelectFocusedRow(view, hit.RowHandle);
+ if (!view.IsRowSelected(downHit.RowHandle))
+ SelectFocusedRow(view, downHit.RowHandle);
}
this.dontOpenEditor = true;
@@ -1690,7 +1719,11 @@ namespace ChanSort.Ui
this.timerEditDelay.Stop();
this.dontOpenEditor = false;
if (this.lastFocusedGrid != null)
- this.lastFocusedGrid.ShowEditor();
+ {
+ var hit = this.lastFocusedGrid.CalcHitInfo(this.lastFocusedGrid.GridControl.PointToClient(MousePosition));
+ if (hit.Column == this.lastFocusedGrid.FocusedColumn && hit.RowHandle == this.lastFocusedGrid.FocusedRowHandle)
+ this.lastFocusedGrid.ShowEditor();
+ }
}
private void gview_ShowingEditor(object sender, System.ComponentModel.CancelEventArgs e)
@@ -1701,125 +1734,157 @@ namespace ChanSort.Ui
}
#endregion
- #region gviewLeft_LayoutUpgrade, gviewRight_LayoutUpgrade
- private void gviewLeft_LayoutUpgrade(object sender, LayoutUpgadeEventArgs e)
+ #region gview_ShownEditor, gview_KeyPress
+
+ private void gview_ShownEditor(object sender, EventArgs e)
{
- this.gviewLeft.ClearGrouping();
- this.gviewLeft.OptionsCustomization.AllowGroup = false;
+ GridView view = (GridView)sender;
+ TextEdit edit = view.ActiveEditor as TextEdit;
+ if (edit == null) return;
+ edit.Properties.MaxLength = view.FocusedColumn.FieldName == "Name" ? this.currentChannelList.MaxChannelNameLength : 0;
}
- private void gviewRight_LayoutUpgrade(object sender, LayoutUpgadeEventArgs e)
+ private void gview_KeyPress(object sender, KeyPressEventArgs e)
{
- this.gviewRight.ClearGrouping();
- this.gviewRight.OptionsCustomization.AllowGroup = false;
- }
- #endregion
-
- #region gviewRight_FocusedRowChanged
- private void gviewRight_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e)
- {
- this.gviewRight.SelectRow(e.FocusedRowHandle);
- }
- #endregion
-
- #region gviewRight_CustomColumnDisplayText
- private void gviewRight_CustomColumnDisplayText(object sender, CustomColumnDisplayTextEventArgs e)
- {
- if (e.Column == this.colSlotNew)
- {
- if (!(e.Value is int)) return;
- if ((int) e.Value == -1)
- e.DisplayText = string.Empty;
- }
- else if (e.Column == this.colFavorites)
- {
- if (!(e.Value is Favorites)) return;
- if ((Favorites) e.Value == 0)
- e.DisplayText = string.Empty;
- }
- }
- #endregion
-
- #region gviewRight_RowCellStyle
- private void gviewRight_RowCellStyle(object sender, RowCellStyleEventArgs e)
- {
- ChannelInfo channel = (ChannelInfo)this.gviewRight.GetRow(e.RowHandle);
- if (channel == null) return;
- if (channel.OldProgramNr == -1)
- {
- e.Appearance.ForeColor = Color.Red;
- e.Appearance.Options.UseForeColor = true;
- }
- else if (channel.NewProgramNr != -1)
- {
- e.Appearance.ForeColor = Color.Gray;
- e.Appearance.Options.UseForeColor = true;
- }
- }
- #endregion
-
- #region gviewRight_RowClick
- private void gviewRight_RowClick(object sender, RowClickEventArgs e)
- {
- if (e.Clicks == 2 && e.Button == MouseButtons.Left && this.gviewRight.IsDataRow(e.RowHandle))
- TryExecute(this.AddChannels);
- }
- #endregion
-
- #region gridRight_ProcessGridKey
- private void gridRight_ProcessGridKey(object sender, KeyEventArgs e)
- {
- if (this.gviewRight.ActiveEditor != null)
- return;
- if (e.KeyCode == Keys.Enter && this.currentChannelList !=null && !this.currentChannelList.ReadOnly)
- {
- TryExecute(this.AddChannels);
+ var view = (GridView)sender;
+ if (view.FocusedColumn.DisplayFormat.FormatType == FormatType.Numeric && (e.KeyChar < '0' || e.KeyChar > '9'))
e.Handled = true;
- }
}
-
#endregion
- #region gviewRight_ValidatingEditor
- private void gviewRight_ValidatingEditor(object sender, BaseContainerValidateEditorEventArgs e)
+ #region gview_MouseMove
+ private void gview_MouseMove(object sender, MouseEventArgs e)
{
try
{
- if (gviewRight.FocusedRowHandle == GridControl.AutoFilterRowHandle)
+ var view = (GridView)sender;
+ if (this.downHit == null || e.Button != MouseButtons.Left || view.ActiveEditor != null || ModifierKeys != Keys.None)
return;
- if (this.gviewRight.FocusedColumn == this.colSlotNew && e.Value is string)
- e.Valid = this.SetSlotNumber((string)e.Value);
- else if (this.gviewRight.FocusedColumn == this.colFavorites && e.Value is string)
- e.Value = ChannelInfo.ParseFavString((string)e.Value);
- else if (gviewRight.FocusedColumn == this.colName)
+ // drag/drop only allowed when left grid is sorted by NewSlotNr
+ if (!this.IsLeftGridSortedByNewProgNr)
+ return;
+ if (Math.Abs(e.Y - downHit.HitPoint.Y) < SystemInformation.DragSize.Height &&
+ Math.Abs(e.X - downHit.HitPoint.X) < SystemInformation.DragSize.Width)
+ return;
+
+ // start drag operation
+ var channel = (ChannelInfo)view.GetRow(downHit.RowHandle);
+ this.dragDropInfo = new DragDropInfo(view, channel.NewProgramNr);
+ view.GridControl.DoDragDrop(this.dragDropInfo, DragDropEffects.Move);
+ this.downHit = null;
+ }
+ catch (Exception ex) { HandleException(ex); }
+ }
+ #endregion
+
+ #region grid_GiveFeedback
+ private void grid_GiveFeedback(object sender, GiveFeedbackEventArgs e)
+ {
+ // this event is called on the source of the drag operation
+ e.UseDefaultCursors = false;
+ if (e.Effect == DragDropEffects.Move)
+ {
+ if (this.dragDropInfo.EditMode == EditMode.InsertBefore)
+ Cursor.Current = Cursors.PanNE;
+ else if (this.dragDropInfo.EditMode == EditMode.InsertAfter)
+ Cursor.Current = Cursors.PanSE;
+ else
+ Cursor.Current = Cursors.HSplit;
+ }
+ else if (sender == this.gridRight)
+ Cursor.Current = Cursors.PanWest;
+ else
+ Cursor.Current = Cursors.No;
+ }
+ #endregion
+
+ #region gridLeft_DragOver
+ private void gridLeft_DragOver(object sender, DragEventArgs e)
+ {
+ // this event is called on the current target of the drag operation
+ var point = this.gridLeft.PointToClient(MousePosition);
+ var hit = this.gviewLeft.CalcHitInfo(point);
+ if (hit.RowHandle >= 0)
+ {
+ var vi = (DevExpress.XtraGrid.Views.Grid.ViewInfo.GridViewInfo)this.gviewLeft.GetViewInfo();
+ var rowInfo = vi.GetGridRowInfo(hit.RowHandle);
+ ChannelInfo dropChannel = (ChannelInfo)this.gviewLeft.GetRow(hit.RowHandle);
+ bool moveUp = this.dragDropInfo.SourceProgramNumber < 0 || dropChannel.NewProgramNr <= this.dragDropInfo.SourceProgramNumber;
+ if (moveUp && point.Y < rowInfo.Bounds.Top + rowInfo.Bounds.Height / 2)
+ this.dragDropInfo.EditMode = EditMode.InsertBefore;
+ else if (!moveUp && point.Y > rowInfo.Bounds.Top + rowInfo.Bounds.Height / 2)
+ this.dragDropInfo.EditMode = EditMode.InsertAfter;
+ else if (this.dragDropInfo.SourceView == this.gviewLeft)
+ this.dragDropInfo.EditMode = EditMode.Swap;
+ else if (moveUp)
+ this.dragDropInfo.EditMode = EditMode.InsertAfter;
+ else
+ this.dragDropInfo.EditMode = EditMode.InsertBefore;
+
+ this.dragDropInfo.DropRowHandle = hit.RowHandle;
+ e.Effect = DragDropEffects.Move;
+ return;
+ }
+
+ e.Effect = DragDropEffects.None;
+ this.dragDropInfo.DropRowHandle = GridControl.InvalidRowHandle;
+ }
+ #endregion
+
+ #region gridLeft_DragDrop
+ private void gridLeft_DragDrop(object sender, DragEventArgs e)
+ {
+ try
+ {
+ if (this.dragDropInfo.DropRowHandle < 0) return;
+ this.curEditMode = this.dragDropInfo.EditMode;
+ var dropChannel = (ChannelInfo)this.gviewLeft.GetRow(this.dragDropInfo.DropRowHandle);
+
+ var selectedChannels = this.GetSelectedChannels(this.dragDropInfo.SourceView);
+ int newProgNr;
+ if (this.dragDropInfo.EditMode != EditMode.InsertAfter || !this.cbCloseGap.Checked)
+ newProgNr = dropChannel.NewProgramNr;
+ else
{
- var ci = this.gviewRight.GetFocusedRow() as ChannelInfo;
- this.VerifyChannelNameModified(ci, e.Value as string);
- //this.BeginInvoke((Action) (() => RefreshGrid(this.gviewLeft)));
+ int numberOfChannelsToMoveDown = 0;
+ foreach (var channel in selectedChannels)
+ {
+ if (channel.NewProgramNr <= dropChannel.NewProgramNr)
+ ++numberOfChannelsToMoveDown;
+ }
+ newProgNr = dropChannel.NewProgramNr + 1 - numberOfChannelsToMoveDown;
}
- dataRoot.NeedsSaving = true;
- } catch(Exception ex) { HandleException(ex); }
+
+ this.editor.SetSlotNumber(selectedChannels, newProgNr, this.dragDropInfo.EditMode == EditMode.Swap, this.cbCloseGap.Checked);
+ this.RefreshGrid(this.gviewLeft, this.gviewRight);
+ }
+ catch (Exception ex)
+ {
+ HandleException(ex);
+ }
}
#endregion
- #region gviewRight_CellValueChanged
- private void gviewRight_CellValueChanged(object sender, CellValueChangedEventArgs e)
+ #region gridLeft_ProcessGridKey
+ private void gridLeft_ProcessGridKey(object sender, KeyEventArgs e)
{
- TryExecute(() => RefreshGrid(this.gviewLeft));
+ if (this.currentChannelList != null && this.currentChannelList.ReadOnly)
+ return;
+ if (gviewLeft.ActiveEditor != null)
+ return;
+ if (e.KeyCode == Keys.Delete)
+ TryExecute(() => this.RemoveChannels(this.gviewLeft, this.cbCloseGap.Checked));
+ else if (e.KeyCode == Keys.Add)
+ TryExecute(() => this.MoveChannels(false));
+ else if (e.KeyCode == Keys.Subtract)
+ TryExecute(() => this.MoveChannels(true));
+ else
+ return;
+ e.Handled = true;
+ e.SuppressKeyPress = true;
}
#endregion
- #region gviewRight_PopupMenuShowing
- private void gviewRight_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
- {
- this.lastFocusedGrid = this.gviewRight;
- this.UpdateMenu();
- if (e.MenuType == GridMenuType.Row)
- this.mnuContext.ShowPopup(this.gridRight.PointToScreen(e.Point));
- }
- #endregion
-
-
#region gviewLeft_FocusedRowChanged
private void gviewLeft_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e)
@@ -1880,11 +1945,11 @@ namespace ChanSort.Ui
if (this.gviewLeft.FocusedColumn == this.colOutSlot && e.Value is string)
e.Valid = this.SetSlotNumber((string)e.Value);
else if (this.gviewLeft.FocusedColumn == this.colOutFav && e.Value is string)
- e.Value = ChannelInfo.ParseFavString((string) e.Value);
+ e.Value = ChannelInfo.ParseFavString((string)e.Value);
else if (gviewLeft.FocusedColumn == this.colOutName)
{
this.VerifyChannelNameModified(this.gviewLeft.GetFocusedRow() as ChannelInfo, e.Value as string);
- this.BeginInvoke((Action) (() => RefreshGrid(this.gviewLeft)));
+ this.BeginInvoke((Action)(() => RefreshGrid(this.gviewLeft)));
}
dataRoot.NeedsSaving = true;
}
@@ -1915,31 +1980,138 @@ namespace ChanSort.Ui
{
if (e.Clicks == 2 && e.Button == MouseButtons.Left && this.gviewLeft.IsDataRow(e.RowHandle))
{
- ChannelInfo channel = (ChannelInfo) this.gviewLeft.GetRow(e.RowHandle);
+ ChannelInfo channel = (ChannelInfo)this.gviewLeft.GetRow(e.RowHandle);
this.NavigateToChannel(channel, this.gviewRight);
}
}
#endregion
- #region gridLeft_ProcessGridKey
- private void gridLeft_ProcessGridKey(object sender, KeyEventArgs e)
+ #region gviewLeft_EndSorting
+ private void gviewLeft_EndSorting(object sender, EventArgs e)
{
- if (this.currentChannelList != null && this.currentChannelList.ReadOnly)
- return;
- if (gviewLeft.ActiveEditor != null)
- return;
- if (e.KeyCode == Keys.Delete)
- TryExecute(() => this.RemoveChannels(this.gviewLeft, this.cbCloseGap.Checked));
- else if (e.KeyCode == Keys.Add)
- TryExecute(() => this.MoveChannels(false));
- else if (e.KeyCode == Keys.Subtract)
- TryExecute(() => this.MoveChannels(true));
- else
- return;
- e.Handled = true;
+ TryExecute(this.UpdateMenu);
}
#endregion
+ #region gviewLeft_LayoutUpgrade, gviewRight_LayoutUpgrade
+ private void gviewLeft_LayoutUpgrade(object sender, LayoutUpgadeEventArgs e)
+ {
+ this.gviewLeft.ClearGrouping();
+ this.gviewLeft.OptionsCustomization.AllowGroup = false;
+ }
+
+ private void gviewRight_LayoutUpgrade(object sender, LayoutUpgadeEventArgs e)
+ {
+ this.gviewRight.ClearGrouping();
+ this.gviewRight.OptionsCustomization.AllowGroup = false;
+ }
+ #endregion
+
+ #region gridRight_ProcessGridKey
+ private void gridRight_ProcessGridKey(object sender, KeyEventArgs e)
+ {
+ if (this.gviewRight.ActiveEditor != null)
+ return;
+ if (e.KeyCode == Keys.Enter && this.currentChannelList != null && !this.currentChannelList.ReadOnly)
+ {
+ TryExecute(this.AddChannels);
+ e.Handled = true;
+ }
+ }
+
+ #endregion
+
+ #region gviewRight_FocusedRowChanged
+ private void gviewRight_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e)
+ {
+ this.gviewRight.SelectRow(e.FocusedRowHandle);
+ }
+ #endregion
+
+ #region gviewRight_CustomColumnDisplayText
+ private void gviewRight_CustomColumnDisplayText(object sender, CustomColumnDisplayTextEventArgs e)
+ {
+ if (e.Column == this.colSlotNew)
+ {
+ if (!(e.Value is int)) return;
+ if ((int) e.Value == -1)
+ e.DisplayText = string.Empty;
+ }
+ else if (e.Column == this.colFavorites)
+ {
+ if (!(e.Value is Favorites)) return;
+ if ((Favorites) e.Value == 0)
+ e.DisplayText = string.Empty;
+ }
+ }
+ #endregion
+
+ #region gviewRight_RowCellStyle
+ private void gviewRight_RowCellStyle(object sender, RowCellStyleEventArgs e)
+ {
+ ChannelInfo channel = (ChannelInfo)this.gviewRight.GetRow(e.RowHandle);
+ if (channel == null) return;
+ if (channel.OldProgramNr == -1)
+ {
+ e.Appearance.ForeColor = Color.Red;
+ e.Appearance.Options.UseForeColor = true;
+ }
+ else if (channel.NewProgramNr != -1)
+ {
+ e.Appearance.ForeColor = Color.Gray;
+ e.Appearance.Options.UseForeColor = true;
+ }
+ }
+ #endregion
+
+ #region gviewRight_RowClick
+ private void gviewRight_RowClick(object sender, RowClickEventArgs e)
+ {
+ if (e.Clicks == 2 && e.Button == MouseButtons.Left && this.gviewRight.IsDataRow(e.RowHandle))
+ TryExecute(this.AddChannels);
+ }
+ #endregion
+
+ #region gviewRight_ValidatingEditor
+ private void gviewRight_ValidatingEditor(object sender, BaseContainerValidateEditorEventArgs e)
+ {
+ try
+ {
+ if (gviewRight.FocusedRowHandle == GridControl.AutoFilterRowHandle)
+ return;
+ if (this.gviewRight.FocusedColumn == this.colSlotNew && e.Value is string)
+ e.Valid = this.SetSlotNumber((string)e.Value);
+ else if (this.gviewRight.FocusedColumn == this.colFavorites && e.Value is string)
+ e.Value = ChannelInfo.ParseFavString((string)e.Value);
+ else if (gviewRight.FocusedColumn == this.colName)
+ {
+ var ci = this.gviewRight.GetFocusedRow() as ChannelInfo;
+ this.VerifyChannelNameModified(ci, e.Value as string);
+ //this.BeginInvoke((Action) (() => RefreshGrid(this.gviewLeft)));
+ }
+ dataRoot.NeedsSaving = true;
+ } catch(Exception ex) { HandleException(ex); }
+ }
+ #endregion
+
+ #region gviewRight_CellValueChanged
+ private void gviewRight_CellValueChanged(object sender, CellValueChangedEventArgs e)
+ {
+ TryExecute(() => RefreshGrid(this.gviewLeft));
+ }
+ #endregion
+
+ #region gviewRight_PopupMenuShowing
+ private void gviewRight_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
+ {
+ this.lastFocusedGrid = this.gviewRight;
+ this.UpdateMenu();
+ if (e.MenuType == GridMenuType.Row)
+ this.mnuContext.ShowPopup(this.gridRight.PointToScreen(e.Point));
+ }
+ #endregion
+
+
#region rbInsertMode_CheckedChanged
private void rbInsertMode_CheckedChanged(object sender, EventArgs e)
{
@@ -2121,13 +2293,5 @@ namespace ChanSort.Ui
}
#endregion
- private void gview_ShownEditor(object sender, EventArgs e)
- {
- GridView view = (GridView) sender;
- TextEdit edit = view.ActiveEditor as TextEdit;
- if (edit == null) return;
- edit.Properties.MaxLength = view.FocusedColumn.FieldName == "Name" ? this.currentChannelList.MaxChannelNameLength : 0;
- }
-
}
}
diff --git a/ChanSort/MainForm.de.resx b/ChanSort/MainForm.de.resx
index e8c7b33..1d66f4b 100644
--- a/ChanSort/MainForm.de.resx
+++ b/ChanSort/MainForm.de.resx
@@ -117,50 +117,6 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
-
-
-
-
-
-
- Default
-
-
- Top, Left
-
-
-
-
-
- Tile
-
-
- Inherit
-
-
-
- Center
-
-
-
-
-
-
- None
-
-
-
-
-
-
- Horizontal
-
-
-
-
Neue Pr#
@@ -173,34 +129,13 @@
Favoriten
-
- Default
-
-
-
- False
-
-
- True
-
-
- _
-
-
- True
-
-
- True
-
-
- False
-
Ge- sperrt
Kindersicherung
+
333, 17
@@ -288,6 +223,12 @@
Geräte&einstellungen...
+
+ Senderliste bereinigen
+
+
+ Senderdatensätze neu organisieren und Duplikate entfernen
+
&Einstellungen
@@ -353,126 +294,24 @@
WIeWYGkVXQEL
-
- Horizontal
-
-
-
-
-
- Horizontal
-
-
-
-
-
- Horizontal
-
-
-
-
-
- Horizontal
-
-
-
-
Nach oben
Nach unten
-
-
-
-
-
-
-
- Horizontal
-
-
-
-
-
- True
-
tauschen
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
dahinter
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
davor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
Lücken beim Verschieben/Entfernen von Sendern schließen
-
-
-
-
-
-
-
-
-
Wenn aktiv, werden folgende Programmnummer automatisch vorgerückt
@@ -482,18 +321,6 @@
Einfügemodus:
-
-
-
-
-
-
-
- Horizontal
-
-
-
-
Keine Datei geladen
@@ -503,54 +330,12 @@
Programplatz für Einfügen und Festlegen
-
-
-
-
-
-
-
- True
-
-
- Default
-
-
- False
-
-
- True
-
-
- _
-
-
- True
-
-
- True
-
-
- False
-
-
-
-
-
- False
-
ChanSort {0} - Senderlisten-Editor für Samsung, LG und Toshiba TVs
Kindersicherung
-
- Horizontal
-
-
-
-
Filter entfernen
@@ -566,45 +351,6 @@
Sortierte Sender (.csv)
-
-
-
-
-
-
-
- Default
-
-
- Top, Left
-
-
-
-
-
- Tile
-
-
- Inherit
-
-
- Center
-
-
-
-
-
- None
-
-
-
-
-
- Horizontal
-
-
-
-
Alte Pr#
@@ -626,27 +372,6 @@
Favoriten
-
- Default
-
-
- False
-
-
- True
-
-
- _
-
-
- True
-
-
- True
-
-
- False
-
Ge- sperrt
@@ -701,12 +426,6 @@
Aller derzeit nicht sortierten Sender ans Ende der Liste anhängen
-
- Horizontal
-
-
-
-
Filter entfernen
diff --git a/ChanSort/MainForm.resx b/ChanSort/MainForm.resx
index cdae680..b766b63 100644
--- a/ChanSort/MainForm.resx
+++ b/ChanSort/MainForm.resx
@@ -123,7 +123,7 @@
- 0, 88
+ 0, 81
361, 17
@@ -134,6 +134,12 @@
2, 54
+
+ Tahoma, 8.25pt, style=Bold
+
+
+ Tahoma, 8.25pt, style=Bold
+
Pr. index
@@ -221,8 +227,14 @@
35
+
+ False
+
+
+ Numeric
+
- 382, 438
+ 382, 445
1
@@ -243,7 +255,7 @@
Bottom
- 2, 492
+ 2, 499
2, 2, 2, 2
@@ -470,7 +482,7 @@
0, 0
- 1474, 31
+ 1474, 24
barDockControlTop
@@ -509,10 +521,10 @@
Left
- 0, 31
+ 0, 24
- 0, 568
+ 0, 575
barDockControlLeft
@@ -530,10 +542,10 @@
Right
- 1474, 31
+ 1474, 24
- 0, 568
+ 0, 575
barDockControlRight
@@ -687,7 +699,7 @@
Top, Right
- 1296, 8
+ 1296, 4
Transparent
@@ -816,7 +828,7 @@
Top
- 0, 31
+ 0, 24
1474, 57
@@ -905,6 +917,12 @@
DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
+ repositoryItemTextEdit1
+
+
+ DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
globalImageCollection1
@@ -1404,7 +1422,7 @@
DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
- 05/26/2013 22:01:32
+ 06/23/2013 14:48:34
16, 16
@@ -1719,7 +1737,7 @@
0, 0
- 386, 511
+ 386, 518
0
@@ -1748,6 +1766,12 @@
2, 54
+
+ Tahoma, 8.25pt, style=Bold
+
+
+ Tahoma, 8.25pt, style=Bold
+
Pr. index
@@ -2049,7 +2073,7 @@
Signal source
- 1079, 438
+ 1079, 445
1
@@ -2070,7 +2094,7 @@
Bottom
- 2, 492
+ 2, 499
2, 2, 2, 2
@@ -2238,7 +2262,7 @@
0, 0
- 1083, 511
+ 1083, 518
0
@@ -2262,7 +2286,7 @@
Panel2
- 1474, 511
+ 1474, 518
5
diff --git a/ChanSort/Properties/licenses.licx b/ChanSort/Properties/licenses.licx
index c04a81a..e0298cf 100644
--- a/ChanSort/Properties/licenses.licx
+++ b/ChanSort/Properties/licenses.licx
@@ -1,7 +1,8 @@
-DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraSplashScreen.SplashScreenManager, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraEditors.ButtonEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
-DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+DevExpress.XtraEditors.LabelControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/makeDistribZip.cmd b/makeDistribZip.cmd
index 59bab7d..9b3525d 100644
--- a/makeDistribZip.cmd
+++ b/makeDistribZip.cmd
@@ -1,5 +1,7 @@
@echo off
-set target=%cd%\..\Program
+c:\cygwin\bin\date "+%%Y-%%m-%%d">%TEMP%\date.txt
+set /p curdate=<%temp%\date.txt
+set target=%cd%\..\ChanSort_%curdate%
set DXversion=12.2
mkdir "%target%" 2>nul
del /s /q "%target%\*"
@@ -17,10 +19,9 @@ for %%f in (Utils Data XtraEditors XtraBars XtraGrid XtraLayout) do call :copyDl
cd ..
del Website\ChanSort.zip 2>nul
copy Source\readme.txt %target%
-cd %target%
-c:\cygwin\bin\date "+%%Y-%%m-%%d">%TEMP%\date.txt
-set /p curdate=<%temp%\date.txt
-"c:\program files (x86)\7-Zip\7z.exe" a -tzip ChanSort_%curdate%.zip *
+cd %target%\..
+"c:\program files\7-Zip\7z.exe" a -tzip ChanSort_%curdate%.zip ChanSort_%curdate%
+rem c:\cygwin\bin\gzip --name -r -9 ChanSort_%curdate%.zip ChanSort%curdate%
pause
diff --git a/readme.txt b/readme.txt
index 603d8c0..c87edf7 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,11 +1,13 @@
-Version v2013-06-22 ======================================================
+Version v2013-06-23 ======================================================
Changes:
-- Showing separate DVB-C and DVB-T lists for LG TVs (LA series can have
- both lists while prior models only had one)
-- FIX: Lists for LG's LD,LE,LX,PK (except 950), PT, LW4500, LW5400 models
- are now physically reordered
-- Empty lists are no longer displayed
+- Drag&Drop inside left list and from right to left list
+ (only available when the left list is sorted by "New Pr#")
+- Simplified menu/tool bar
+- FIX: Moving multiple channels down now works correctly
+- FIX: +/- keys no longer open the cell-editor after moving a channel
+- Editor for "New Pr#" no longer opens when pressing non-numeric keys
+- Move up/down is now disabled when left list is not sorted by "New Pr#"
The complete change log can be found at the end of this document
@@ -103,6 +105,15 @@ OTHER DEALINGS IN THE SOFTWARE.
Change log ================================================================
+2013-06-23
+- Drag&Drop inside left list and from right to left list
+ (only available when the left list is sorted by "New Pr#")
+- Simplified menu/tool bar
+- FIX: Moving multiple channels down now works correctly
+- FIX: +/- keys no longer open the cell-editor after moving a channel
+- Editor for "New Pr#" no longer opens when pressing non-numeric keys
+- Move up/down is now disabled when left list is not sorted by "New Pr#"
+
2013-06-22
- Showing separate DVB-C and DVB-T lists for LG TVs (LA series can have
both lists while prior models only had one)