コード例 #1
0
ファイル: CommonMethods.cs プロジェクト: SlyAss/TaskBoard
            public static void Delete <TTable>(TTable selectedItem, IDatabaseEditor <TTable> databaseEditor, Func <TTable, Guid> getId, Action actionAfterSuccess = null)
            {
                if (selectedItem == null)
                {
                    return;
                }

                SafeRunMethod.WithoutReturn(() => {
                    databaseEditor.Delete(getId(selectedItem));
                    actionAfterSuccess?.Invoke();
                });
            }
コード例 #2
0
            public static void Delete <TBasedProxy, TExtendedProxy>(TBasedProxy selectedItem, IDatabaseEditor <TBasedProxy, TExtendedProxy> databaseEditor)
            {
                if (selectedItem == null)
                {
                    return;
                }

                SafeRunMethod.WithoutReturn(() => databaseEditor.Delete(selectedItem));
            }
コード例 #3
0
            public static void Edit <TBasedProxy, TExtendedProxy, TWindow>(TBasedProxy selectedItem, IDatabaseReader <TBasedProxy, TExtendedProxy> databaseReader, Func <TExtendedProxy, bool, TWindow> getWindow, IDatabaseEditor <TBasedProxy, TExtendedProxy> databaseEditor) where TWindow : Window, IProxyWindowWithExtendedProxy <TExtendedProxy>
            {
                if (selectedItem == null)
                {
                    return;
                }

                var oldProxy = SafeRunMethod.WithReturn(() => databaseReader.GetExtendedProxy(selectedItem));

                if (oldProxy == null)
                {
                    return;
                }

                var window = getWindow(oldProxy, false);

                if (window.ShowDialog() != true)
                {
                    return;
                }

                SafeRunMethod.WithoutReturn(() => databaseEditor.Edit(oldProxy, window.ExtendedProxy));
            }
コード例 #4
0
            public static void Add <TBasedProxy, TExtendedProxy, TWindow>(Func <TExtendedProxy, bool, TWindow> getWindow, IDatabaseEditor <TBasedProxy, TExtendedProxy> databaseEditor) where TWindow : Window, IProxyWindowWithExtendedProxy <TExtendedProxy>
            {
                var window = getWindow(default(TExtendedProxy), false);

                if (window.ShowDialog() != true)
                {
                    return;
                }

                SafeRunMethod.WithoutReturn(() => databaseEditor.Add(window.ExtendedProxy));
            }
コード例 #5
0
ファイル: CommonMethods.cs プロジェクト: SlyAss/TaskBoard
            public static void Edit <TTable, TWindow>(TTable selectedItem, Func <TTable, bool, TWindow> getWindow, IDatabaseEditor <TTable> databaseEditor, Func <TTable, Guid> getId, Action actionAfterSuccess = null) where TWindow : Window, IWindowWithChecking <TTable>
            {
                if (selectedItem == null)
                {
                    return;
                }

                var window = getWindow(selectedItem, false);

                if (window.ShowDialog() != true)
                {
                    return;
                }

                SafeRunMethod.WithoutReturn(() => {
                    databaseEditor.Edit(getId(selectedItem), window.Table);
                    actionAfterSuccess?.Invoke();
                });
            }
コード例 #6
0
ファイル: CommonMethods.cs プロジェクト: SlyAss/TaskBoard
            public static void Add <TTable, TWindow>(Func <TTable, bool, TWindow> getWindow, IDatabaseEditor <TTable> databaseEditor, Action actionAfterSuccess = null) where TWindow : Window, IWindowWithChecking <TTable>
            {
                var window = getWindow(default(TTable), false);

                if (window.ShowDialog() != true)
                {
                    return;
                }

                SafeRunMethod.WithoutReturn(() => {
                    databaseEditor.Add(window.Table);
                    actionAfterSuccess?.Invoke();
                });
            }