summaryrefslogtreecommitdiffstats
path: root/kvoctrain/kvoctrain/entry-dialogs/TenseEntryPage.h
blob: 5c118e8dcffdfc1b26a030d47fd0df694131e7c1 (plain)
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
/***************************************************************************

                   tenses of irreg. verbs dialog page

    -----------------------------------------------------------------------

    begin          : Sat Nov 27 20:20:34 1999

    copyright      : (C) 1999-2001 Ewald Arnold <kvoctrain@ewald-arnold.de>
                     (C) 2001 The KDE-EDU team
                     (C) 2005 Peter Hedlund <peter.hedlund@kdemail.net>

    -----------------------------------------------------------------------

 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef TenseEntryPage_included
#define TenseEntryPage_included

#include "TenseEntryPageForm.h"

#include <grammarmanager.h>

class EntryDlg;

class TenseEntryPage : public TenseEntryPageForm
{
  Q_OBJECT

public:
  TenseEntryPage
  (
    EntryDlg          *dlgbook,
    bool               multi_sel,
    const Conjugation &con_prefix,
    const Conjugation &conjugations,
    QWidget           *parent = NULL,
    const char        *name = NULL
  );

  void setData(bool multi_sel, const Conjugation &conjugations);

  Conjugation getConjugation();

  bool isModified();
  void setModified(bool mod = true);
  void setEnabled(int enable_type);

signals:
  void sigModified();

protected:
  void updateFields();

protected slots:
  void secondPluralChanged(const QString&);
  void secondSingularChanged(const QString&);
  void thirdNSingularChanged(const QString&);
  void thirdFPluralChanged(const QString&);
  void thirdMSingularChanged(const QString&);
  void thirdFSingularChanged(const QString&);
  void slotTenseSelected(int);
  void thirdMPluralChanged(const QString&);
  void thirdNPluralChanged(const QString&);
  void firstSingularChanged(const QString&);
  void firstPluralChanged(const QString&);
  void slotThirdSCommonToggled(bool);
  void slotThirdPCommonToggled(bool);
  void slotNextConj();

protected:
  Conjugation   prefix,
                conjugations;
  QString       selection;
  bool          multi_mode;
  bool          modified;
  EntryDlg     *dlgbook;
};

#endif // TenseEntryPage_included