-
Notifications
You must be signed in to change notification settings - Fork 17
/
Copy pathIFastGridView.cs
131 lines (110 loc) · 3.78 KB
/
IFastGridView.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FastWpfGrid
{
public interface IFastGridView
{
/// <summary>
/// invalidates whole grid
/// </summary>
void InvalidateAll();
/// <summary>
/// invalidates given cell
/// </summary>
/// <param name="row"></param>
/// <param name="column"></param>
void InvalidateModelCell(int row, int column);
/// <summary>
/// invalidates given row header
/// </summary>
/// <param name="row"></param>
void InvalidateModelRowHeader(int row);
/// <summary>
/// invalidates given row (all cells including header)
/// </summary>
/// <param name="row"></param>
void InvalidateModelRow(int row);
/// <summary>
/// invalidates given column header
/// </summary>
/// <param name="column"></param>
void InvalidateModelColumnHeader(int column);
/// <summary>
/// invalidates given column (all cells including header)
/// </summary>
/// <param name="column"></param>
void InvalidateModelColumn(int column);
/// <summary>
/// invalidates grid header (top-left header cell)
/// </summary>
void InvalidateGridHeader();
/// <summary>
/// forces grid to refresh all data
/// </summary>
void NotifyRefresh();
/// <summary>
/// notifies grid about new rows added to the end
/// </summary>
void NotifyAddedRows();
/// <summary>
/// notifies grid, that result of GetHiddenColumns() or GetFrozenColumns() is changed
/// </summary>
void NotifyColumnArrangeChanged();
/// <summary>
/// notifies grid, that result of GetHiddenRows() or GetFrozenRows() is changed
/// </summary>
void NotifyRowArrangeChanged();
/// <summary>
/// set/get whether grid is transposed
/// </summary>
bool IsTransposed { get; set; }
/// <summary>
/// gets whether flexible rows (real rows) are curently used
/// </summary>
bool FlexibleRows { get; }
/// <summary>
/// gets or sets whereher flexible rows are allows
/// </summary>
bool AllowFlexibleRows { get; set; }
/// <summary>
/// gets selected model cells
/// </summary>
/// <returns></returns>
HashSet<FastGridCellAddress> GetSelectedModelCells();
/// <summary>
/// gets summary of active rows
/// </summary>
/// <returns></returns>
ActiveSeries GetActiveRows();
/// <summary>
/// gets summary of active columns
/// </summary>
/// <returns></returns>
ActiveSeries GetActiveColumns();
/// <summary>
/// shows quick acces menu to selection
/// </summary>
/// <param name="commands"></param>
void ShowSelectionMenu(IEnumerable<string> commands);
/// <summary>
/// hides inline editor
/// </summary>
/// <param name="saveCellValue"></param>
void HideInlineEditor(bool saveCellValue = true);
/// <summary>
/// handles command
/// </summary>
/// <param name="address"></param>
/// <param name="command"></param>
void HandleCommand(FastGridCellAddress address, object command);
///// <summary>
///// selects all cells in grid (with given limits)
///// </summary>
///// <param name="rowCountLimit"></param>
///// <param name="columnCountLimit"></param>
//void SelectAll(int? rowCountLimit, int? columnCountLimit);
}
}