|
@@ -754,31 +754,31 @@ namespace InABox.DynamicGrid
|
|
|
{
|
|
|
var reloadColumns = false;
|
|
|
|
|
|
- ColumnsMenu.Visibility = Options.Contains(DynamicGridOption.SelectColumns) ? Visibility.Visible : Visibility.Hidden;
|
|
|
- Help.Visibility = Options.Contains(DynamicGridOption.ShowHelp) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ ColumnsMenu.Visibility = HasOption(DynamicGridOption.SelectColumns) ? Visibility.Visible : Visibility.Hidden;
|
|
|
+ Help.Visibility = HasOption(DynamicGridOption.ShowHelp) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
|
|
|
- Add.Visibility = Options.Contains(DynamicGridOption.AddRows) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
- Edit.Visibility = Options.Contains(DynamicGridOption.EditRows) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ Add.Visibility = HasOption(DynamicGridOption.AddRows) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ Edit.Visibility = HasOption(DynamicGridOption.EditRows) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
|
|
|
- EditSpacer.Visibility = Options.Contains(DynamicGridOption.AddRows) || Options.Contains(DynamicGridOption.EditRows)
|
|
|
+ EditSpacer.Visibility = HasOption(DynamicGridOption.AddRows) || HasOption(DynamicGridOption.EditRows)
|
|
|
? Visibility.Visible
|
|
|
: Visibility.Collapsed;
|
|
|
|
|
|
- Print.Visibility = Options.Contains(DynamicGridOption.Print) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
- PrintSpacer.Visibility = Options.Contains(DynamicGridOption.Print) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ Print.Visibility = HasOption(DynamicGridOption.Print) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ PrintSpacer.Visibility = HasOption(DynamicGridOption.Print) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
|
|
|
Cut.Visibility = IsSequenced ? Visibility.Visible : Visibility.Collapsed;
|
|
|
Copy.Visibility = IsSequenced ? Visibility.Visible : Visibility.Collapsed;
|
|
|
Paste.Visibility = IsSequenced ? Visibility.Visible : Visibility.Collapsed;
|
|
|
ClipboardSpacer.Visibility = IsSequenced ? Visibility.Visible : Visibility.Collapsed;
|
|
|
|
|
|
- Export.Visibility = Options.Contains(DynamicGridOption.ExportData) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
- Import.Visibility = Options.Contains(DynamicGridOption.ImportData) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
- ExportSpacer.Visibility = Options.Contains(DynamicGridOption.ExportData) || Options.Contains(DynamicGridOption.ImportData)
|
|
|
+ Export.Visibility = HasOption(DynamicGridOption.ExportData) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ Import.Visibility = HasOption(DynamicGridOption.ImportData) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ ExportSpacer.Visibility = HasOption(DynamicGridOption.ExportData) || HasOption(DynamicGridOption.ImportData)
|
|
|
? Visibility.Visible
|
|
|
: Visibility.Collapsed;
|
|
|
|
|
|
- var allowEditing = Options.Contains(DynamicGridOption.DirectEdit);
|
|
|
+ var allowEditing = HasOption(DynamicGridOption.DirectEdit);
|
|
|
if (DataGrid.AllowEditing != allowEditing)
|
|
|
{
|
|
|
DataGrid.NavigationMode = allowEditing ? NavigationMode.Cell : NavigationMode.Row;
|
|
@@ -786,13 +786,13 @@ namespace InABox.DynamicGrid
|
|
|
reloadColumns = true;
|
|
|
}
|
|
|
|
|
|
- Count.Visibility = Options.Contains(DynamicGridOption.RecordCount) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ Count.Visibility = HasOption(DynamicGridOption.RecordCount) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
|
|
|
- Delete.Visibility = Options.Contains(DynamicGridOption.DeleteRows) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
- DataGrid.AllowFiltering = Options.Contains(DynamicGridOption.FilterRows);
|
|
|
- DataGrid.FilterRowPosition = Options.Contains(DynamicGridOption.FilterRows) ? FilterRowPosition.FixedTop : FilterRowPosition.None;
|
|
|
+ Delete.Visibility = HasOption(DynamicGridOption.DeleteRows) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ DataGrid.AllowFiltering = HasOption(DynamicGridOption.FilterRows);
|
|
|
+ DataGrid.FilterRowPosition = HasOption(DynamicGridOption.FilterRows) ? FilterRowPosition.FixedTop : FilterRowPosition.None;
|
|
|
|
|
|
- if (Options.Contains(DynamicGridOption.DragSource))
|
|
|
+ if (HasOption(DynamicGridOption.DragSource))
|
|
|
{
|
|
|
if (!DataGrid.AllowDraggingRows)
|
|
|
{
|
|
@@ -809,13 +809,13 @@ namespace InABox.DynamicGrid
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- DataGrid.AllowDrop = Options.Contains(DynamicGridOption.DragTarget);
|
|
|
+ DataGrid.AllowDrop = HasOption(DynamicGridOption.DragTarget);
|
|
|
|
|
|
- DataGrid.SelectionMode = Options.Contains(DynamicGridOption.MultiSelect) ? GridSelectionMode.Extended : GridSelectionMode.Single;
|
|
|
+ DataGrid.SelectionMode = HasOption(DynamicGridOption.MultiSelect) ? GridSelectionMode.Extended : GridSelectionMode.Single;
|
|
|
if (up != null)
|
|
|
- up.Position = Options.Contains(DynamicGridOption.EditRows) ? DynamicActionColumnPosition.Start : DynamicActionColumnPosition.Hidden;
|
|
|
+ up.Position = HasOption(DynamicGridOption.EditRows) ? DynamicActionColumnPosition.Start : DynamicActionColumnPosition.Hidden;
|
|
|
if (down != null)
|
|
|
- down.Position = Options.Contains(DynamicGridOption.EditRows) ? DynamicActionColumnPosition.Start : DynamicActionColumnPosition.Hidden;
|
|
|
+ down.Position = HasOption(DynamicGridOption.EditRows) ? DynamicActionColumnPosition.Start : DynamicActionColumnPosition.Hidden;
|
|
|
|
|
|
if (DuplicateBtn != null)
|
|
|
DuplicateBtn.Visibility = Visibility.Collapsed;
|
|
@@ -855,7 +855,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private void DataGrid_CurrentCellActivated(object? sender, CurrentCellActivatedEventArgs e)
|
|
|
{
|
|
|
- if (!Options.Contains(DynamicGridOption.DirectEdit))
|
|
|
+ if (!HasOption(DynamicGridOption.DirectEdit))
|
|
|
return;
|
|
|
if ((DataGrid.SelectionController.CurrentCellManager.CurrentCell?.IsEditing != true) && e.ActivationTrigger == ActivationTrigger.Keyboard)
|
|
|
DataGrid.SelectionController.CurrentCellManager.BeginEdit();
|
|
@@ -924,7 +924,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private CoreRow? GetRowFromIndex(int rowIndex)
|
|
|
{
|
|
|
- var row = rowIndex - (Options.Contains(DynamicGridOption.FilterRows) ? 2 : 1);
|
|
|
+ var row = rowIndex - (HasOption(DynamicGridOption.FilterRows) ? 2 : 1);
|
|
|
if (row < 0 || DataGridItems is null)
|
|
|
return null;
|
|
|
row = DataGridItems.Rows.IndexOf((DataGrid.View.Records[row].Data as DataRowView)!.Row);
|
|
@@ -992,7 +992,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private void DataGrid_CurrentCellBeginEdit(object? sender, CurrentCellBeginEditEventArgs e)
|
|
|
{
|
|
|
- var headerrows = Options.Contains(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
+ var headerrows = HasOption(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
if (e.RowColumnIndex.RowIndex < headerrows || DataGridItems is null)
|
|
|
return;
|
|
|
|
|
@@ -1022,7 +1022,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private void DataGrid_CurrentCellValueChanged(object? sender, CurrentCellValueChangedEventArgs e)
|
|
|
{
|
|
|
- var headerrows = Options.Contains(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
+ var headerrows = HasOption(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
if (e.RowColumnIndex.RowIndex < headerrows)
|
|
|
return;
|
|
|
if (e.Column is GridCheckBoxColumn)
|
|
@@ -1037,7 +1037,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private void DataGrid_CurrentCellDropDownSelectionChanged(object? sender, CurrentCellDropDownSelectionChangedEventArgs e)
|
|
|
{
|
|
|
- var headerrows = Options.Contains(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
+ var headerrows = HasOption(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
if (e.RowColumnIndex.RowIndex < headerrows)
|
|
|
return;
|
|
|
inplaceeditor ??= LoadItem(Data.Rows[e.RowColumnIndex.RowIndex - headerrows]);
|
|
@@ -1062,7 +1062,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private void DataGrid_CurrentCellEndEdit(object? sender, CurrentCellEndEditEventArgs e)
|
|
|
{
|
|
|
- var headerrows = Options.Contains(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
+ var headerrows = HasOption(DynamicGridOption.FilterRows) ? 2 : 1;
|
|
|
if (e.RowColumnIndex.RowIndex < headerrows)
|
|
|
return;
|
|
|
if (inplaceeditor is not null && bChanged)
|
|
@@ -1081,7 +1081,7 @@ namespace InABox.DynamicGrid
|
|
|
return;
|
|
|
var table = DataGridItems;
|
|
|
|
|
|
- var iRow = SelectedRows.First().Index; //e.RowColumnIndex.RowIndex - (Options.Contains(DynamicGridOptions.FilterRows) ? 2 : 1);
|
|
|
+ var iRow = SelectedRows.First().Index; //e.RowColumnIndex.RowIndex - (HasOption(DynamicGridOptions.FilterRows) ? 2 : 1);
|
|
|
if (table is null || iRow > table.Rows.Count)
|
|
|
return;
|
|
|
var row = table.Rows[iRow];
|
|
@@ -1223,8 +1223,8 @@ namespace InABox.DynamicGrid
|
|
|
foreach (var row in rows.Where(x => x.Index > -1))
|
|
|
{
|
|
|
//DataTable table = (DataTable)DataGrid.ItemsSource;
|
|
|
- if (bFirst || Options.Contains(DynamicGridOption.MultiSelect))
|
|
|
- DataGrid.SelectedItems.Add(DataGrid.GetRecordAtRowIndex(row.Index + (Options.Contains(DynamicGridOption.FilterRows) ? 2 : 1)));
|
|
|
+ if (bFirst || HasOption(DynamicGridOption.MultiSelect))
|
|
|
+ DataGrid.SelectedItems.Add(DataGrid.GetRecordAtRowIndex(row.Index + (HasOption(DynamicGridOption.FilterRows) ? 2 : 1)));
|
|
|
bFirst = false;
|
|
|
}
|
|
|
}
|
|
@@ -1326,7 +1326,7 @@ namespace InABox.DynamicGrid
|
|
|
if ((columnindex < 0) || (columnindex >= ColumnList.Count))
|
|
|
return;
|
|
|
var column = ColumnList[columnindex] as DynamicActionColumn;
|
|
|
- var rowindex = rowcolumnindex.RowIndex - (Options.Contains(DynamicGridOption.FilterRows) ? 2 : 1);
|
|
|
+ var rowindex = rowcolumnindex.RowIndex - (HasOption(DynamicGridOption.FilterRows) ? 2 : 1);
|
|
|
if (rowindex < 0)
|
|
|
return;
|
|
|
var row = Data.Rows[rowindex];
|
|
@@ -1393,7 +1393,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
protected virtual void DoDoubleClick(object sender)
|
|
|
{
|
|
|
- if (Options.Contains(DynamicGridOption.DirectEdit))
|
|
|
+ if (HasOption(DynamicGridOption.DirectEdit))
|
|
|
return;
|
|
|
|
|
|
SelectItems(SelectedRows);
|
|
@@ -1401,7 +1401,7 @@ namespace InABox.DynamicGrid
|
|
|
OnDoubleClick?.Invoke(sender, args);
|
|
|
if (args.Handled)
|
|
|
return;
|
|
|
- if (Options.Contains(DynamicGridOption.EditRows))
|
|
|
+ if (HasOption(DynamicGridOption.EditRows))
|
|
|
DoEdit();
|
|
|
}
|
|
|
|
|
@@ -1432,7 +1432,7 @@ namespace InABox.DynamicGrid
|
|
|
{
|
|
|
var result = new DynamicGridColumns();
|
|
|
|
|
|
- var cols = Options.Contains(DynamicGridOption.DirectEdit)
|
|
|
+ var cols = HasOption(DynamicGridOption.DirectEdit)
|
|
|
? new Columns<T>().Default(ColumnType.IncludeForeignKeys, ColumnType.ExcludeID)
|
|
|
: new Columns<T>().Default(ColumnType.IncludeLinked, ColumnType.ExcludeID);
|
|
|
result.AddRange(MasterColumns.Where(x => cols.Items.Any(c => c.Property.Equals(x.ColumnName)))
|
|
@@ -1834,7 +1834,7 @@ namespace InABox.DynamicGrid
|
|
|
}
|
|
|
else if (prop.PropertyType == typeof(bool))
|
|
|
{
|
|
|
- if (Options.Contains(DynamicGridOption.DirectEdit))
|
|
|
+ if (HasOption(DynamicGridOption.DirectEdit))
|
|
|
{
|
|
|
var checkcol = new GridCheckBoxColumn
|
|
|
{
|
|
@@ -1916,7 +1916,7 @@ namespace InABox.DynamicGrid
|
|
|
() =>
|
|
|
{
|
|
|
var result = new DockPanel();
|
|
|
- if (Options.Contains(DynamicGridOption.DirectEdit))
|
|
|
+ if (HasOption(DynamicGridOption.DirectEdit))
|
|
|
{
|
|
|
var button = new Button();
|
|
|
button.Content = "..";
|
|
@@ -2007,7 +2007,7 @@ namespace InABox.DynamicGrid
|
|
|
newcol = textcol;
|
|
|
if (prop.PropertyType == typeof(string[]))
|
|
|
newcol.DisplayBinding = new Binding { Path = new PropertyPath(scolname), Converter = new StringArrayConverter() };
|
|
|
- textcol.AllowEditing = Options.Contains(DynamicGridOption.DirectEdit);
|
|
|
+ textcol.AllowEditing = HasOption(DynamicGridOption.DirectEdit);
|
|
|
textcol.UpdateTrigger = UpdateSourceTrigger.PropertyChanged;
|
|
|
}
|
|
|
|
|
@@ -2046,7 +2046,7 @@ namespace InABox.DynamicGrid
|
|
|
newcol.HeaderStyle = headstyle;
|
|
|
|
|
|
var cellstyle = new Style();
|
|
|
- if (Options.Contains(DynamicGridOption.DirectEdit))
|
|
|
+ if (HasOption(DynamicGridOption.DirectEdit))
|
|
|
{
|
|
|
if (prop.Editor is null || !prop.Editor.Editable.IsDirectEditable())
|
|
|
{
|
|
@@ -2417,7 +2417,7 @@ namespace InABox.DynamicGrid
|
|
|
if (!result.Columns.Contains(colname))
|
|
|
{
|
|
|
result.Columns.Add(colname, column.DataType);
|
|
|
- if (!Options.Contains(DynamicGridOption.DirectEdit))
|
|
|
+ if (!HasOption(DynamicGridOption.DirectEdit))
|
|
|
defaults.Add(column.DataType.GetDefault());
|
|
|
}
|
|
|
}
|
|
@@ -2456,7 +2456,7 @@ namespace InABox.DynamicGrid
|
|
|
{
|
|
|
var count = DataGrid.View != null ? DataGrid.View.Records.Count : Data.Rows.Count;
|
|
|
Count.Content = string.Format("{0} Records", count);
|
|
|
- //Count.Visibility = _Options.Contains(DynamicGridOptions.RecordCount) && (count > 0) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
+ //Count.Visibility = _HasOption(DynamicGridOptions.RecordCount) && (count > 0) ? Visibility.Visible : Visibility.Collapsed;
|
|
|
}
|
|
|
|
|
|
public IList<CoreRow> FilteredRows()
|
|
@@ -2728,7 +2728,7 @@ namespace InABox.DynamicGrid
|
|
|
{
|
|
|
//CoreRow row = (SelectedRow > -1) && (SelectedRow < Data.Rows.Count) ? Data.Rows[this.SelectedRow] : null;
|
|
|
|
|
|
- if (Options.Contains(DynamicGridOption.DirectEdit) && !OpenEditorOnDirectEdit)
|
|
|
+ if (HasOption(DynamicGridOption.DirectEdit) && !OpenEditorOnDirectEdit)
|
|
|
{
|
|
|
if (!CanCreateItems())
|
|
|
return;
|
|
@@ -3585,7 +3585,7 @@ namespace InABox.DynamicGrid
|
|
|
private void SelectColumnsClick(object sender, RoutedEventArgs e)
|
|
|
{
|
|
|
var editor = new DynamicGridColumnsEditor(typeof(T));
|
|
|
- editor.DirectEdit = Options.Contains(DynamicGridOption.DirectEdit);
|
|
|
+ editor.DirectEdit = HasOption(DynamicGridOption.DirectEdit);
|
|
|
|
|
|
editor.Columns.AddRange(VisibleColumns);
|
|
|
|
|
@@ -3614,7 +3614,7 @@ namespace InABox.DynamicGrid
|
|
|
{
|
|
|
Logger.Send(LogType.Information,"","DataGrid_Drop");
|
|
|
|
|
|
- if (!Options.Contains(DynamicGridOption.DragTarget))
|
|
|
+ if (!HasOption(DynamicGridOption.DragTarget))
|
|
|
return;
|
|
|
|
|
|
Logger.Send(LogType.Information,"","DataGrid_Drop::DragTarget==true");
|
|
@@ -3673,7 +3673,7 @@ namespace InABox.DynamicGrid
|
|
|
Logger.Send(LogType.Information,"","RowDragDropController_DragStart");
|
|
|
//e.Handled = true;
|
|
|
|
|
|
- if (!Options.Contains(DynamicGridOption.DragSource))
|
|
|
+ if (!HasOption(DynamicGridOption.DragSource))
|
|
|
return;
|
|
|
|
|
|
var rows = new List<CoreRow>();
|
|
@@ -3888,7 +3888,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private void CheckPreviewMouseDown(object sender, MouseButtonEventArgs e)
|
|
|
{
|
|
|
- if (!Options.Contains(DynamicGridOption.DragSource))
|
|
|
+ if (!HasOption(DynamicGridOption.DragSource))
|
|
|
return;
|
|
|
if (e.LeftButton == MouseButtonState.Pressed)
|
|
|
{
|
|
@@ -3901,7 +3901,7 @@ namespace InABox.DynamicGrid
|
|
|
//{
|
|
|
// Logger.Send(LogType.Information, this.GetType().EntityName(), String.Format("Checking Mouse Move: StartPoint = {0},{1}", startpoint.X, startpoint.Y));
|
|
|
|
|
|
- // if (!_Options.Contains(DynamicGridOptions.DragSource))
|
|
|
+ // if (!_HasOption(DynamicGridOptions.DragSource))
|
|
|
// return;
|
|
|
// Vector diff = startpoint - e.GetPosition(null);
|
|
|
// Logger.Send(LogType.Information, this.GetType().EntityName(), String.Format("Checking Mouse Move: StartPoint = {0},{1} Diff = {2},{3}", startpoint.X, startpoint.Y, diff.X, diff.Y));
|
|
@@ -3919,7 +3919,7 @@ namespace InABox.DynamicGrid
|
|
|
|
|
|
private void CheckPreviewMouseUp(object sender, MouseButtonEventArgs e)
|
|
|
{
|
|
|
- if (!Options.Contains(DynamicGridOption.DragSource))
|
|
|
+ if (!HasOption(DynamicGridOption.DragSource))
|
|
|
return;
|
|
|
|
|
|
Logger.Send(LogType.Information, GetType().EntityName(), "Clearing Start Point");
|