OSDN Git Service

Change generation of files/paths in home dir to use FileManager
[neighbornote/NeighborNote.git] / src / cx / fbn / nevernote / dialog / FindDialog.java
1 /*\r
2  * This file is part of NeverNote \r
3  * Copyright 2009 Randy Baumgarte\r
4  * \r
5  * This file may be licensed under the terms of of the\r
6  * GNU General Public License Version 2 (the ``GPL'').\r
7  *\r
8  * Software distributed under the License is distributed\r
9  * on an ``AS IS'' basis, WITHOUT WARRANTY OF ANY KIND, either\r
10  * express or implied. See the GPL for the specific language\r
11  * governing rights and limitations.\r
12  *\r
13  * You should have received a copy of the GPL along with this\r
14  * program. If not, go to http://www.gnu.org/licenses/gpl.html\r
15  * or write to the Free Software Foundation, Inc.,\r
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\r
17  *\r
18 */\r
19 \r
20 package cx.fbn.nevernote.dialog;\r
21 \r
22 \r
23 import com.trolltech.qt.gui.QCheckBox;\r
24 import com.trolltech.qt.gui.QDialog;\r
25 import com.trolltech.qt.gui.QGridLayout;\r
26 import com.trolltech.qt.gui.QLabel;\r
27 import com.trolltech.qt.gui.QLineEdit;\r
28 import com.trolltech.qt.gui.QPushButton;\r
29 import com.trolltech.qt.webkit.QWebPage;\r
30 \r
31 public class FindDialog extends QDialog {\r
32 \r
33         private final QLineEdit text;\r
34         private final QCheckBox wrap;\r
35         private final QCheckBox forward;\r
36         private final QCheckBox backward;\r
37         private final QCheckBox caseSensitive;\r
38         private final QPushButton ok;\r
39         \r
40         // Constructor\r
41         public FindDialog() {\r
42                 setWindowTitle("Find");\r
43                 QGridLayout grid = new QGridLayout();\r
44                 setLayout(grid);\r
45 \r
46                 text = new QLineEdit();\r
47                 wrap = new QCheckBox();\r
48                 forward = new QCheckBox();\r
49                 backward = new QCheckBox();\r
50                 caseSensitive = new QCheckBox();\r
51 \r
52                 QGridLayout textGrid = new QGridLayout();\r
53                 textGrid.addWidget(new QLabel("Text"), 1,1);\r
54                 textGrid.addWidget(text, 1, 2);\r
55                 grid.addLayout(textGrid, 1, 1);\r
56                 \r
57                 QGridLayout opt = new QGridLayout();\r
58                 opt.addWidget(new QLabel("Case Sensitive"), 1,1);\r
59                 opt.addWidget(caseSensitive, 1, 2);\r
60                 opt.addWidget(new QLabel("Forward"), 2,1);\r
61                 opt.addWidget(forward, 2, 2);\r
62                 opt.addWidget(new QLabel("Backward"), 3,1);\r
63                 opt.addWidget(backward, 3, 2);\r
64                 opt.addWidget(new QLabel("Wrap"), 4,1);\r
65                 opt.addWidget(wrap, 4, 2);\r
66                 opt.setContentsMargins(10, 10,  -10, -10);\r
67                 grid.addLayout(opt,2,1);\r
68                 \r
69                 forward.clicked.connect(this, "forwardClicked()");\r
70                 backward.clicked.connect(this, "backwardClicked()");\r
71                 \r
72                 QGridLayout buttonLayout = new QGridLayout();\r
73                 ok = new QPushButton("OK");\r
74                 ok.clicked.connect(this, "okButtonPressed()");\r
75                 QPushButton cancel = new QPushButton("Close");\r
76                 cancel.clicked.connect(this, "closeButtonPressed()");\r
77                 buttonLayout.addWidget(ok, 1, 1);\r
78                 buttonLayout.addWidget(cancel, 1,2);\r
79                 grid.addLayout(buttonLayout,3,1);\r
80         }\r
81         \r
82         \r
83         //set focus on show\r
84         public void setFocusOnTextField() {\r
85                 text.setFocus();\r
86         }\r
87         \r
88         // The OK button was pressed\r
89         @SuppressWarnings("unused")\r
90         private void okButtonPressed() {\r
91 //              close();\r
92         }\r
93         // The CANCEL button was pressed\r
94         @SuppressWarnings("unused")\r
95         private void closeButtonPressed() {\r
96                 close();\r
97         }\r
98         // Check if the OK button was pressed\r
99         public void okPressed() {\r
100                 return;\r
101         }\r
102         // The forward checkbox was clicked\r
103         @SuppressWarnings("unused")\r
104         private void forwardClicked() {\r
105                 backward.setChecked(false);\r
106         }\r
107         // The backward checkbox was clicked\r
108         @SuppressWarnings("unused")\r
109         private void backwardClicked() {\r
110                 forward.setChecked(false);\r
111         }\r
112         // Return search flags\r
113         public QWebPage.FindFlags getFlags() {\r
114                 QWebPage.FindFlags flags = new QWebPage.FindFlags();\r
115                 \r
116                 if (wrap.isChecked()) \r
117                         flags.set(QWebPage.FindFlag.FindWrapsAroundDocument);\r
118                 if (backward.isChecked()) \r
119                         flags.set(QWebPage.FindFlag.FindBackward);\r
120                 if (caseSensitive.isChecked()) \r
121                         flags.set(QWebPage.FindFlag.FindCaseSensitively);\r
122                                         \r
123                 return flags;\r
124         }\r
125         // Return search text\r
126         public String getText() {\r
127                 return text.text();\r
128         }\r
129         public QPushButton getOkButton() {\r
130                 return ok;\r
131         }\r
132 }\r