- support for individually sorted favorite lists (Panasonic, Samsung E+F)

- FIX: "insert after" when dropping a channel from right list
This commit is contained in:
hbeham
2013-07-02 23:55:02 +02:00
parent dc2ce9fa65
commit 3bb80ed6bb
13 changed files with 404 additions and 117 deletions

View File

@@ -163,6 +163,9 @@
this.pageEmpty = new DevExpress.XtraTab.XtraTabPage();
this.mnuContext = new DevExpress.XtraBars.PopupMenu(this.components);
this.timerEditDelay = new System.Windows.Forms.Timer(this.components);
this.grpSubList = new DevExpress.XtraEditors.GroupControl();
this.tabSubList = new DevExpress.XtraTab.XtraTabControl();
this.pageProgNr = new DevExpress.XtraTab.XtraTabPage();
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).BeginInit();
this.splitContainerControl1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.grpOutputList)).BeginInit();
@@ -193,6 +196,10 @@
((System.ComponentModel.ISupportInitialize)(this.tabChannelList)).BeginInit();
this.tabChannelList.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.mnuContext)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.grpSubList)).BeginInit();
this.grpSubList.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.tabSubList)).BeginInit();
this.tabSubList.SuspendLayout();
this.SuspendLayout();
//
// splitContainerControl1
@@ -274,6 +281,7 @@
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.CustomUnboundColumnData += new DevExpress.XtraGrid.Views.Base.CustomColumnDataEventHandler(this.gview_CustomUnboundColumnData);
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);
@@ -300,10 +308,11 @@
resources.ApplyResources(this.colOutSlot, "colOutSlot");
this.colOutSlot.DisplayFormat.FormatString = "d";
this.colOutSlot.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
this.colOutSlot.FieldName = "NewProgramNr";
this.colOutSlot.FieldName = "Position";
this.colOutSlot.Name = "colOutSlot";
this.colOutSlot.OptionsFilter.AllowAutoFilter = false;
this.colOutSlot.OptionsFilter.AllowFilterModeChanging = DevExpress.Utils.DefaultBoolean.False;
this.colOutSlot.UnboundType = DevExpress.Data.UnboundColumnType.Integer;
//
// colOutName
//
@@ -546,6 +555,7 @@
this.gviewRight.ShownEditor += new System.EventHandler(this.gview_ShownEditor);
this.gviewRight.FocusedRowChanged += new DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventHandler(this.gviewRight_FocusedRowChanged);
this.gviewRight.CellValueChanged += new DevExpress.XtraGrid.Views.Base.CellValueChangedEventHandler(this.gviewRight_CellValueChanged);
this.gviewRight.CustomUnboundColumnData += new DevExpress.XtraGrid.Views.Base.CustomColumnDataEventHandler(this.gview_CustomUnboundColumnData);
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);
@@ -576,8 +586,9 @@
resources.ApplyResources(this.colSlotNew, "colSlotNew");
this.colSlotNew.DisplayFormat.FormatString = "d";
this.colSlotNew.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric;
this.colSlotNew.FieldName = "NewProgramNr";
this.colSlotNew.FieldName = "Position";
this.colSlotNew.Name = "colSlotNew";
this.colSlotNew.UnboundType = DevExpress.Data.UnboundColumnType.Integer;
//
// colName
//
@@ -1547,11 +1558,33 @@
this.timerEditDelay.Interval = 500;
this.timerEditDelay.Tick += new System.EventHandler(this.timerEditDelay_Tick);
//
// grpSubList
//
this.grpSubList.Controls.Add(this.tabSubList);
resources.ApplyResources(this.grpSubList, "grpSubList");
this.grpSubList.Name = "grpSubList";
this.grpSubList.ShowCaption = false;
//
// tabSubList
//
resources.ApplyResources(this.tabSubList, "tabSubList");
this.tabSubList.Name = "tabSubList";
this.tabSubList.SelectedTabPage = this.pageProgNr;
this.tabSubList.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] {
this.pageProgNr});
this.tabSubList.SelectedPageChanged += new DevExpress.XtraTab.TabPageChangedEventHandler(this.tabSubList_SelectedPageChanged);
//
// pageProgNr
//
this.pageProgNr.Name = "pageProgNr";
resources.ApplyResources(this.pageProgNr, "pageProgNr");
//
// MainForm
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.splitContainerControl1);
this.Controls.Add(this.grpSubList);
this.Controls.Add(this.grpTopPanel);
this.Controls.Add(this.barDockControlLeft);
this.Controls.Add(this.barDockControlRight);
@@ -1593,6 +1626,10 @@
((System.ComponentModel.ISupportInitialize)(this.tabChannelList)).EndInit();
this.tabChannelList.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.mnuContext)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.grpSubList)).EndInit();
this.grpSubList.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.tabSubList)).EndInit();
this.tabSubList.ResumeLayout(false);
this.ResumeLayout(false);
}
@@ -1731,6 +1768,9 @@
private DevExpress.XtraBars.BarButtonItem miExcelExport;
private DevExpress.XtraEditors.Repository.RepositoryItemTextEdit repositoryItemTextEdit1;
private DevExpress.XtraBars.BarButtonItem miPortuguese;
private DevExpress.XtraEditors.GroupControl grpSubList;
private DevExpress.XtraTab.XtraTabControl tabSubList;
private DevExpress.XtraTab.XtraTabPage pageProgNr;
private DevExpress.XtraSplashScreen.SplashScreenManager splashScreenManager1;
}
}

View File

@@ -24,7 +24,7 @@ namespace ChanSort.Ui
{
public partial class MainForm : XtraForm
{
public const string AppVersion = "v2013-06-29.3";
public const string AppVersion = "v2013-07-03";
private const int MaxMruEntries = 5;
@@ -41,14 +41,14 @@ namespace ChanSort.Ui
private class DragDropInfo
{
public readonly GridView SourceView;
public readonly int SourceProgramNumber;
public readonly int SourcePosition;
public EditMode EditMode;
public int DropRowHandle = -1;
public DragDropInfo(GridView source, int sourceProgramNumber)
public DragDropInfo(GridView source, int sourcePosition)
{
this.SourceView = source;
this.SourceProgramNumber = sourceProgramNumber;
this.SourcePosition = sourcePosition;
}
}
#endregion
@@ -65,6 +65,7 @@ namespace ChanSort.Ui
private Encoding defaultEncoding = Encoding.Default;
private readonly List<string> isoEncodings = new List<string>();
private ChannelList currentChannelList;
private int subListIndex;
private GridView lastFocusedGrid;
private EditMode curEditMode = EditMode.InsertAfter;
private bool dontOpenEditor;
@@ -310,6 +311,7 @@ namespace ChanSort.Ui
this.repositoryItemCheckedComboBoxEdit2.Items.Clear();
byte mask = 0x01;
string regex = "[";
int favCount = 0;
for (int bit=0; bit<8; bit++, mask<<=1)
{
if (((int) favorites & mask) != 0)
@@ -322,11 +324,28 @@ namespace ChanSort.Ui
string str = c.ToString();
this.miFavSet.Strings.Add(str);
this.miFavUnset.Strings.Add(str);
++favCount;
}
}
regex += "]*";
this.repositoryItemCheckedComboBoxEdit1.Mask.EditMask = regex;
this.repositoryItemCheckedComboBoxEdit2.Mask.EditMask = regex;
while (this.tabSubList.TabPages.Count > favCount + 1)
this.tabSubList.TabPages.RemoveAt(this.tabSubList.TabPages.Count-1);
while (this.tabSubList.TabPages.Count < favCount + 1)
{
var page = this.tabSubList.TabPages.Add();
page.Text = "Fav " + (char)('A' + this.tabSubList.TabPages.Count - 2);
}
if (!this.dataRoot.SortedFavorites || this.subListIndex >= favCount)
{
this.tabSubList.SelectedTabPageIndex = 0;
this.subListIndex = 0;
}
this.grpSubList.Visible = this.dataRoot.SortedFavorites;
this.colOutFav.OptionsColumn.AllowEdit = !this.dataRoot.SortedFavorites;
this.colFavorites.OptionsColumn.AllowEdit = !this.dataRoot.SortedFavorites;
}
#endregion
@@ -788,7 +807,7 @@ namespace ChanSort.Ui
{
this.gviewLeft.EndDataUpdate();
}
this.UpdateInsertSlotTextBox();
this.UpdateInsertSlotNumber();
}
#endregion
@@ -843,11 +862,11 @@ namespace ChanSort.Ui
this.gviewLeft.BeginDataUpdate();
int maxNr = this.currentChannelList.InsertProgramNumber;
foreach (var channel in this.currentChannelList.Channels)
maxNr = Math.Max(maxNr, channel.NewProgramNr);
maxNr = Math.Max(maxNr, channel.GetPosition(this.subListIndex));
foreach (var channel in this.currentChannelList.Channels)
{
if (channel.NewProgramNr == -1 && !channel.IsDeleted)
channel.NewProgramNr = maxNr++;
if (channel.GetPosition(this.subListIndex) == -1 && !channel.IsDeleted)
channel.SetPosition(this.subListIndex, maxNr++);
}
this.gviewRight.EndDataUpdate();
this.gviewLeft.EndDataUpdate();
@@ -915,6 +934,7 @@ namespace ChanSort.Ui
this.miShowWarningsAfterLoad.Checked = Settings.Default.ShowWarningsAfterLoading;
this.cbCloseGap.Checked = Settings.Default.CloseGaps;
this.ClearLeftFilter();
this.ClearRightFilter();
for (int i = MaxMruEntries-1; i >= 0; i--)
{
@@ -1000,6 +1020,26 @@ namespace ChanSort.Ui
#endregion
#region UpdateInsertSlotNumber()
private void UpdateInsertSlotNumber()
{
var channel = (ChannelInfo)this.gviewLeft.GetFocusedRow();
int programNr;
if (channel == null)
programNr = this.currentChannelList == null ? 1 : this.currentChannelList.FirstProgramNumber;
else
{
programNr = channel.GetPosition(this.subListIndex);
if (this.rbInsertAfter.Checked)
++programNr;
}
if (this.currentChannelList != null)
this.currentChannelList.InsertProgramNumber = programNr;
this.UpdateInsertSlotTextBox();
this.gviewLeft.SelectRow(this.gviewLeft.FocusedRowHandle);
}
#endregion
#region UpdateInsertSlotTextBox()
private void UpdateInsertSlotTextBox()
{
@@ -1054,7 +1094,7 @@ namespace ChanSort.Ui
{
this.gviewLeft.BeginSort();
this.gviewLeft.ClearColumnsFilter();
this.colOutSlot.FilterInfo = new ColumnFilterInfo("[NewProgramNr]<>-1");
this.colOutSlot.FilterInfo = new ColumnFilterInfo("[Position]<>-1");
this.gviewLeft.EndSort();
}
@@ -1136,20 +1176,13 @@ namespace ChanSort.Ui
{
if (string.IsNullOrEmpty(fav)) return;
char ch = Char.ToUpper(fav[0]);
if (ch<'A' || ch>'D') return;
if (ch<'A' || ch>'E' || this.subListIndex == ch-'A'+1) return;
var list = this.GetSelectedChannels(this.lastFocusedGrid);
if (list.Count == 0) return;
this.gviewRight.BeginDataUpdate();
this.gviewLeft.BeginDataUpdate();
Favorites mask = (Favorites)(1 << (ch - 'A'));
foreach(var channel in list)
{
if (set)
channel.Favorites |= mask;
else
channel.Favorites &= ~mask;
}
this.editor.SetFavorites(list, (Favorites) (1 << (ch - 'A')), set);
this.gviewRight.EndDataUpdate();
this.gviewLeft.EndDataUpdate();
}
@@ -1220,11 +1253,11 @@ namespace ChanSort.Ui
this.btnRemoveLeft.Enabled = mayEdit;
this.btnRemoveRight.Enabled = mayEdit;
this.btnRenum.Enabled = mayEdit;
this.btnToggleFavA.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.A) != 0;
this.btnToggleFavB.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.B) != 0;
this.btnToggleFavC.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.C) != 0;
this.btnToggleFavD.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.D) != 0;
this.btnToggleFavE.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.E) != 0;
this.btnToggleFavA.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.A) != 0 && this.subListIndex != 1;
this.btnToggleFavB.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.B) != 0 && this.subListIndex != 2;
this.btnToggleFavC.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.C) != 0 && this.subListIndex != 3;
this.btnToggleFavD.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.D) != 0 && this.subListIndex != 4;
this.btnToggleFavE.Enabled = mayEdit && (this.dataRoot.SupportedFavorites & Favorites.E) != 0 && this.subListIndex != 5;
this.btnToggleLock.Enabled = mayEdit;
this.miReload.Enabled = fileLoaded;
@@ -1250,7 +1283,8 @@ namespace ChanSort.Ui
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 && isLeftGridSortedByNewProgNr && channel != null && channel.NewProgramNr > this.currentChannelList.FirstProgramNumber;
this.miMoveUp.Enabled = this.btnUp.Enabled = mayEdit && isLeftGridSortedByNewProgNr && channel != null
&& channel.GetPosition(this.subListIndex) > this.currentChannelList.FirstProgramNumber;
this.miMoveDown.Enabled = this.btnDown.Enabled = mayEdit && isLeftGridSortedByNewProgNr;
this.miTvSettings.Enabled = this.currentTvSerializer != null;
@@ -1679,6 +1713,29 @@ namespace ChanSort.Ui
}
#endregion
#region tabSubList_SelectedPageChanged
private void tabSubList_SelectedPageChanged(object sender, TabPageChangedEventArgs e)
{
this.subListIndex = this.tabSubList.SelectedTabPageIndex;
this.editor.SubListIndex = this.subListIndex;
this.gviewLeft.BeginSort();
this.gviewLeft.EndSort();
this.gviewRight.BeginSort();
if (this.subListIndex > 0)
this.colSlotNew.FilterInfo = new ColumnFilterInfo("[NewProgramNr]<>-1");
else
this.colSlotNew.ClearFilter();
this.gviewRight.EndSort();
}
#endregion
private void gview_CustomUnboundColumnData(object sender, CustomColumnDataEventArgs e)
{
var channel = (ChannelInfo) e.Row;
if (e.Column.FieldName == "Position")
e.Value = channel.GetPosition(this.subListIndex);
}
#region gview_MouseDown, gview_MouseUp, timerEditDelay_Tick, gview_ShowingEditor
// these 4 event handler in combination override the default row-selection and editor-opening
@@ -1777,7 +1834,7 @@ namespace ChanSort.Ui
// start drag operation
var channel = (ChannelInfo)view.GetRow(downHit.RowHandle);
this.dragDropInfo = new DragDropInfo(view, channel.NewProgramNr);
this.dragDropInfo = new DragDropInfo(view, channel.GetPosition(this.subListIndex));
view.GridControl.DoDragDrop(this.dragDropInfo, DragDropEffects.Move);
this.downHit = null;
}
@@ -1817,7 +1874,7 @@ namespace ChanSort.Ui
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;
bool moveUp = this.dragDropInfo.SourcePosition < 0 || dropChannel.GetPosition(this.subListIndex) <= this.dragDropInfo.SourcePosition;
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)
@@ -1850,17 +1907,19 @@ namespace ChanSort.Ui
var selectedChannels = this.GetSelectedChannels(this.dragDropInfo.SourceView);
int newProgNr;
int dropPos = dropChannel.GetPosition(this.subListIndex);
if (this.dragDropInfo.EditMode != EditMode.InsertAfter || !this.cbCloseGap.Checked)
newProgNr = dropChannel.NewProgramNr;
newProgNr = dropPos;
else
{
int numberOfChannelsToMoveDown = 0;
foreach (var channel in selectedChannels)
{
if (channel.NewProgramNr <= dropChannel.NewProgramNr)
int curPos = channel.GetPosition(this.subListIndex);
if (curPos != -1 && curPos <= dropPos)
++numberOfChannelsToMoveDown;
}
newProgNr = dropChannel.NewProgramNr + 1 - numberOfChannelsToMoveDown;
newProgNr = dropPos + 1 - numberOfChannelsToMoveDown;
}
this.editor.SetSlotNumber(selectedChannels, newProgNr, this.dragDropInfo.EditMode == EditMode.Swap, this.cbCloseGap.Checked);
@@ -1897,16 +1956,7 @@ namespace ChanSort.Ui
private void gviewLeft_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e)
{
var channel = (ChannelInfo)this.gviewLeft.GetRow(e.FocusedRowHandle);
if (channel == null)
return;
int programNr = channel.NewProgramNr;
if (this.rbInsertAfter.Checked)
++programNr;
if (this.currentChannelList != null)
this.currentChannelList.InsertProgramNumber = programNr;
this.UpdateInsertSlotTextBox();
this.gviewLeft.SelectRow(e.FocusedRowHandle);
TryExecute(UpdateInsertSlotNumber);
}
#endregion
@@ -2064,7 +2114,7 @@ namespace ChanSort.Ui
e.Appearance.ForeColor = Color.Red;
e.Appearance.Options.UseForeColor = true;
}
else if (channel.NewProgramNr != -1)
else if (channel.GetPosition(this.subListIndex) != -1)
{
e.Appearance.ForeColor = Color.Gray;
e.Appearance.Options.UseForeColor = true;
@@ -2300,5 +2350,6 @@ namespace ChanSort.Ui
this.SetActiveGrid(this.gviewRight);
}
#endregion
}
}

View File

@@ -328,7 +328,7 @@
<value>Programplatz für Einfügen und Festlegen</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>ChanSort {0} - Senderlisten-Editor für Samsung, LG und Toshiba TVs</value>
<value>ChanSort {0} - Senderlisten-Editor für Samsung, LG, Panasonic und Toshiba TVs</value>
</data>
<data name="btnToggleLock.ToolTip" xml:space="preserve">
<value>Kindersicherung</value>

View File

@@ -123,7 +123,7 @@
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="splitContainerControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 81</value>
<value>0, 108</value>
</data>
<metadata name="dsChannels.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>361, 17</value>
@@ -234,7 +234,7 @@
<value>Numeric</value>
</data>
<data name="gridLeft.Size" type="System.Drawing.Size, System.Drawing">
<value>382, 445</value>
<value>382, 418</value>
</data>
<data name="gridLeft.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -255,7 +255,7 @@
<value>Bottom</value>
</data>
<data name="lblHotkeyLeft.Location" type="System.Drawing.Point, System.Drawing">
<value>2, 499</value>
<value>2, 472</value>
</data>
<data name="lblHotkeyLeft.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>2, 2, 2, 2</value>
@@ -293,6 +293,78 @@
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1474, 599</value>
</data>
<data name="tabSubList.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left, Right</value>
</data>
<data name="tabSubList.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 5</value>
</data>
<data name="pageProgNr.Size" type="System.Drawing.Size, System.Drawing">
<value>1463, 0</value>
</data>
<data name="pageProgNr.Text" xml:space="preserve">
<value>Pr#</value>
</data>
<data name="&gt;&gt;pageProgNr.Name" xml:space="preserve">
<value>pageProgNr</value>
</data>
<data name="&gt;&gt;pageProgNr.Type" xml:space="preserve">
<value>DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;pageProgNr.Parent" xml:space="preserve">
<value>tabSubList</value>
</data>
<data name="&gt;&gt;pageProgNr.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="tabSubList.Size" type="System.Drawing.Size, System.Drawing">
<value>1469, 22</value>
</data>
<data name="tabSubList.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="&gt;&gt;tabSubList.Name" xml:space="preserve">
<value>tabSubList</value>
</data>
<data name="&gt;&gt;tabSubList.Type" xml:space="preserve">
<value>DevExpress.XtraTab.XtraTabControl, DevExpress.XtraEditors.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;tabSubList.Parent" xml:space="preserve">
<value>grpSubList</value>
</data>
<data name="&gt;&gt;tabSubList.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="grpSubList.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="grpSubList.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 81</value>
</data>
<data name="grpSubList.Size" type="System.Drawing.Size, System.Drawing">
<value>1474, 27</value>
</data>
<data name="grpSubList.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
</data>
<data name="grpSubList.Text" xml:space="preserve">
<value>Sub List</value>
</data>
<data name="grpSubList.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;grpSubList.Name" xml:space="preserve">
<value>grpSubList</value>
</data>
<data name="&gt;&gt;grpSubList.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;grpSubList.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;grpSubList.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="rbInsertSwap.Location" type="System.Drawing.Point, System.Drawing">
<value>256, 6</value>
</data>
@@ -497,7 +569,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;barDockControlTop.ZOrder" xml:space="preserve">
<value>5</value>
<value>6</value>
</data>
<data name="barDockControlBottom.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Bottom</value>
@@ -518,7 +590,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;barDockControlBottom.ZOrder" xml:space="preserve">
<value>4</value>
<value>5</value>
</data>
<data name="barDockControlLeft.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Left</value>
@@ -539,7 +611,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;barDockControlLeft.ZOrder" xml:space="preserve">
<value>2</value>
<value>3</value>
</data>
<data name="barDockControlRight.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Right</value>
@@ -560,7 +632,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;barDockControlRight.ZOrder" xml:space="preserve">
<value>3</value>
<value>4</value>
</data>
<data name="miMoveUp.Caption" xml:space="preserve">
<value>Move up</value>
@@ -726,13 +798,13 @@
<value>5</value>
</data>
<data name="tabChannelList.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Bottom, Left</value>
<value>Bottom, Left, Right</value>
</data>
<data name="tabChannelList.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 33</value>
</data>
<data name="pageEmpty.Size" type="System.Drawing.Size, System.Drawing">
<value>632, 0</value>
<value>1284, 0</value>
</data>
<data name="pageEmpty.Text" xml:space="preserve">
<value>No channel lists</value>
@@ -750,7 +822,7 @@
<value>0</value>
</data>
<data name="tabChannelList.Size" type="System.Drawing.Size, System.Drawing">
<value>638, 22</value>
<value>1290, 22</value>
</data>
<data name="tabChannelList.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
@@ -852,7 +924,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;grpTopPanel.ZOrder" xml:space="preserve">
<value>1</value>
<value>2</value>
</data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
<value>CenterScreen</value>
@@ -1431,7 +1503,7 @@
<value>DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="SharedImageCollection.Timestamp" type="System.DateTime, mscorlib">
<value>06/29/2013 12:47:45</value>
<value>07/02/2013 20:57:05</value>
</data>
<data name="SharedImageCollection.ImageSize" type="System.Drawing.Size, System.Drawing">
<value>16, 16</value>
@@ -1749,7 +1821,7 @@
<value>0, 0</value>
</data>
<data name="grpOutputList.Size" type="System.Drawing.Size, System.Drawing">
<value>386, 518</value>
<value>386, 491</value>
</data>
<data name="grpOutputList.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -2085,7 +2157,7 @@
<value>Signal source</value>
</data>
<data name="gridRight.Size" type="System.Drawing.Size, System.Drawing">
<value>1079, 445</value>
<value>1079, 418</value>
</data>
<data name="gridRight.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -2106,7 +2178,7 @@
<value>Bottom</value>
</data>
<data name="lblHotkeyRight.Location" type="System.Drawing.Point, System.Drawing">
<value>2, 499</value>
<value>2, 472</value>
</data>
<data name="lblHotkeyRight.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>2, 2, 2, 2</value>
@@ -2274,7 +2346,7 @@
<value>0, 0</value>
</data>
<data name="grpInputList.Size" type="System.Drawing.Size, System.Drawing">
<value>1083, 518</value>
<value>1083, 491</value>
</data>
<data name="grpInputList.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -2298,7 +2370,7 @@
<value>Panel2</value>
</data>
<data name="splitContainerControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>1474, 518</value>
<value>1474, 491</value>
</data>
<data name="splitContainerControl1.TabIndex" type="System.Int32, mscorlib">
<value>5</value>