1 /*
2  *  "GEDKeeper", the personal genealogical database editor.
3  *  Copyright (C) 2009-2017 by Sergey V. Zhdanovskih.
4  *
5  *  This file is part of "GEDKeeper".
6  *
7  *  This program is free software: you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License as published by
9  *  the Free Software Foundation, either version 3 of the License, or
10  *  (at your option) any later version.
11  *
12  *  This program is distributed in the hope that it will be useful,
13  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *  GNU General Public License for more details.
16  *
17  *  You should have received a copy of the GNU General Public License
18  *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 using System.Collections.Generic;
22 using BSLib.Design.MVP;
23 using GDModel;
24 
25 namespace GKCore.Interfaces
26 {
27     public interface IWindow : IView, ILocalizable
28     {
Show(bool showInTaskbar)29         void Show(bool showInTaskbar);
30     }
31 
32     public interface IWorkWindow : IWindow
33     {
UpdateControls()34         void UpdateControls();
35 
36         /// <summary>
37         /// Is called after changing the settings of the user interface.
38         /// </summary>
UpdateSettings()39         void UpdateSettings();
40 
NavCanBackward()41         bool NavCanBackward();
NavCanForward()42         bool NavCanForward();
NavNext()43         void NavNext();
NavPrev()44         void NavPrev();
45 
AllowQuickSearch()46         bool AllowQuickSearch();
FindAll(string searchPattern)47         IList<ISearchResult> FindAll(string searchPattern);
QuickSearch()48         void QuickSearch();
SelectByRec(GDMRecord record)49         void SelectByRec(GDMRecord record);
50 
AllowFilter()51         bool AllowFilter();
SetFilter()52         void SetFilter();
53     }
54 }
55