Skip to content

Commit

Permalink
Added access keys to right click menus, keyboard shortcut (Ctrl + Shi…
Browse files Browse the repository at this point in the history
…ft + N) for adding a new object to the dictionary. "Select All" added to right click menu for object dictionary list items
  • Loading branch information
Bartimaeus- committed Oct 21, 2019
1 parent a153f42 commit 68c75c5
Show file tree
Hide file tree
Showing 2 changed files with 92 additions and 13 deletions.
21 changes: 16 additions & 5 deletions EDSTest/DeviceODView.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

84 changes: 76 additions & 8 deletions EDSTest/DeviceODView.cs
Original file line number Diff line number Diff line change
Expand Up @@ -576,7 +576,7 @@ private void list_mouseclick(ListView listview, MouseEventArgs e)
if (checkdirty())
return;

deleteObjectToolStripMenuItem.Text = listview.SelectedItems.Count > 1 ? "Delete Objects" : "Delete Object";
deleteObjectToolStripMenuItem.Text = listview.SelectedItems.Count > 1 ? "&Delete Objects" : "&Delete Object";

ListViewItem lvi = listview.SelectedItems[0];

Expand Down Expand Up @@ -612,7 +612,7 @@ private void list_mouseclick(ListView listview, MouseEventArgs e)

string objString = listview.SelectedItems.Count > 1 ? "Objects" : "Object";

string objEnableString = od.Disabled ? "Enable" : "Disable";
string objEnableString = od.Disabled ? "&Enable" : "Disabl&e";
disableObjectToolStripMenuItem.Text = string.Format("{0} {1}", objEnableString, objString);
contextMenuStrip1.Show(Cursor.Position);
}
Expand Down Expand Up @@ -862,9 +862,8 @@ public void populateindexlists()

}

private void addNewObjectToolStripMenuItem_Click(object sender, EventArgs e)
private void addNewObjectFromDialog()
{

NewIndex ni = new NewIndex(eds);

if (ni.ShowDialog() == DialogResult.OK)
Expand All @@ -890,7 +889,7 @@ private void addNewObjectToolStripMenuItem_Click(object sender, EventArgs e)
sod.objecttype = ObjectType.VAR;
sod.parent = od;
sod.StorageLocation = "RAM";
sod.defaultvalue = String.Format("{0}",ni.nosubindexes);
sod.defaultvalue = String.Format("{0}", ni.nosubindexes);
sod.accesstype = EDSsharp.AccessType.ro;
sod.datatype = DataType.UNSIGNED8;

Expand Down Expand Up @@ -927,7 +926,11 @@ private void addNewObjectToolStripMenuItem_Click(object sender, EventArgs e)

populateindexlists();
}
}

private void addNewObjectToolStripMenuItem_Click(object sender, EventArgs e)
{
addNewObjectFromDialog();
}

private void disableSelectedObjects(ListView objectList)
Expand Down Expand Up @@ -1134,7 +1137,7 @@ private void disableObjectToolStripMenuItem_Click(object sender, EventArgs e)
disableSelectedObjects(selectedList);
}

private void addSubItemToolStripMenuItem_Click(object sender, EventArgs e)
private void addNewSubItemFromDialog()
{
if (selecteditemsub.Tag != null)
{
Expand Down Expand Up @@ -1192,6 +1195,11 @@ private void addSubItemToolStripMenuItem_Click(object sender, EventArgs e)
}
}

private void addSubItemToolStripMenuItem_Click(object sender, EventArgs e)
{
addNewSubItemFromDialog();
}

private void removeSubItemToolStripMenuItem_Click(object sender, EventArgs e)
{
//deleteSelectedIndexes(selectedList, true);
Expand Down Expand Up @@ -1409,17 +1417,64 @@ private void listView_KeyDown_Handler(ListView selectedList, KeyEventArgs e)
selectAllItemsInList(selectedList);
}
break;
default:
break;
}
}

//specialized KeyDown event handler for the object dictionary lists.
//Usage: call this function before the general list KeyDown handler. If this function returns true, the keydown event was handled and the generic one should not be called (this allows default behavior to be overridden)
private bool listView_Objects_KeyDown_Handler(ListView selectedList, KeyEventArgs e)
{
bool keyDownHandled = false;
switch (e.KeyCode)
{
case (Keys.N):
if (e.Modifiers == (Keys.Control | Keys.Shift))
{
keyDownHandled = true;
addNewObjectFromDialog();
}
break;
default:
break;
}
return keyDownHandled;
}

private bool listView_Subindexes_KeyDown_Handler(ListView selectedList, KeyEventArgs e)
{
bool keyDownHandled = false;
switch (e.KeyCode)
{
case (Keys.N):
if (e.Modifiers == (Keys.Control | Keys.Shift))
{
keyDownHandled = true;
addNewSubItemFromDialog();
}
break;
default:
break;
}
return keyDownHandled;
}

private void listView_manufacture_objects_KeyDown(object sender, KeyEventArgs e)
{
listView_KeyDown_Handler(listView_manufacture_objects, e);
if(listView_Objects_KeyDown_Handler(listView_manufacture_objects, e) == false)
{
listView_KeyDown_Handler(listView_manufacture_objects, e);
}

}

private void listView_optional_objects_KeyDown(object sender, KeyEventArgs e)
{
listView_KeyDown_Handler(listView_optional_objects, e);
if (listView_Objects_KeyDown_Handler(listView_optional_objects, e) == false)
{
listView_KeyDown_Handler(listView_optional_objects, e);
}
}

private void listView_mandatory_objects_KeyDown(object sender, KeyEventArgs e)
Expand All @@ -1429,6 +1484,19 @@ private void listView_mandatory_objects_KeyDown(object sender, KeyEventArgs e)
listView_KeyDown_Handler(listView_mandatory_objects, e);
}
}

private void listViewDetails_KeyDown(object sender, KeyEventArgs e)
{
if (listView_Subindexes_KeyDown_Handler(listView_optional_objects, e) == false)
{
listView_KeyDown_Handler(listView_optional_objects, e);
}
}

private void selectAllToolStripMenuItem_Click(object sender, EventArgs e)
{
selectAllItemsInList(selectedList);
}
}

public static class ControlExtensions
Expand Down

0 comments on commit 68c75c5

Please sign in to comment.