2 * This file is part of NeverNote
\r
3 * Copyright 2009 Randy Baumgarte
\r
5 * This file may be licensed under the terms of of the
\r
6 * GNU General Public License Version 2 (the ``GPL'').
\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
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
20 package cx.fbn.nevernote.gui;
\r
22 import com.trolltech.qt.gui.QAbstractItemView;
\r
23 import com.trolltech.qt.gui.QIcon;
\r
24 import com.trolltech.qt.gui.QTreeWidget;
\r
25 import com.trolltech.qt.gui.QTreeWidgetItem;
\r
27 import cx.fbn.nevernote.Global;
\r
29 public class AttributeTreeWidget extends QTreeWidget {
\r
31 public AttributeTreeWidget() {
\r
32 setHeaderLabel(tr("Attributes"));
\r
33 setSelectionMode(QAbstractItemView.SelectionMode.MultiSelection);
\r
35 setHeaderLabel(tr("Attributes"));
\r
36 setSelectionMode(QAbstractItemView.SelectionMode.SingleSelection);
\r
38 // Setup the first attribute tree
\r
39 QTreeWidgetItem created = new QTreeWidgetItem();
\r
40 created.setText(0,tr("Created"));
\r
41 addTopLevelItem(created);
\r
42 // Created Since List
\r
43 QTreeWidgetItem parent = created;
\r
44 QTreeWidgetItem child;
\r
45 child = new QTreeWidgetItem();
\r
46 child.setText(0,tr("Since"));
\r
47 parent.addChild(child);
\r
50 Global.createdBeforeFilter = new DateAttributeFilterTable();
\r
51 Global.createdSinceFilter = new DateAttributeFilterTable();
\r
52 Global.changedBeforeFilter = new DateAttributeFilterTable();
\r
53 Global.changedSinceFilter = new DateAttributeFilterTable();
\r
54 Global.containsFilter = new ContainsAttributeFilterTable();
\r
56 Global.createdBeforeFilter.setBefore();
\r
57 Global.createdBeforeFilter.setCreated();
\r
58 Global.createdSinceFilter.setSince();
\r
59 Global.createdSinceFilter.setCreated();
\r
60 Global.changedBeforeFilter.setBefore();
\r
61 Global.changedBeforeFilter.setUpdated();
\r
62 Global.changedSinceFilter.setSince();
\r
63 Global.changedBeforeFilter.setUpdated();
\r
65 String iconPath = new String("classpath:cx/fbn/nevernote/icons/");
\r
66 QIcon icon = new QIcon(iconPath+"attribute.png");
\r
67 for (int i=0; i<Global.createdSinceFilter.size(); i++) {
\r
68 child = new QTreeWidgetItem();
\r
69 child.setIcon(0, icon);
\r
70 child.setText(0,Global.createdSinceFilter.getName(i));
\r
71 parent.addChild(child);
\r
75 // Created Before List
\r
77 child = new QTreeWidgetItem();
\r
78 child.setText(0,tr("Before"));
\r
79 created.addChild(child);
\r
81 for (int i=0; i<Global.createdBeforeFilter.size(); i++) {
\r
82 child = new QTreeWidgetItem();
\r
83 child.setIcon(0, icon);
\r
84 child.setText(0,Global.createdBeforeFilter.getName(i));
\r
85 parent.addChild(child);
\r
89 QTreeWidgetItem lastModified = new QTreeWidgetItem();
\r
90 lastModified.setText(0,tr("Last Modified"));
\r
91 addTopLevelItem(lastModified);
\r
93 // Changed Since List
\r
94 parent = lastModified;
\r
95 child = new QTreeWidgetItem();
\r
96 child.setText(0,tr("Since"));
\r
97 lastModified.addChild(child);
\r
99 for (int i=0; i<Global.changedSinceFilter.size(); i++) {
\r
100 child = new QTreeWidgetItem();
\r
101 child.setIcon(0, icon);
\r
102 child.setText(0,Global.changedSinceFilter.getName(i));
\r
103 parent.addChild(child);
\r
108 child = new QTreeWidgetItem();
\r
109 child.setText(0,tr("Before"));
\r
110 lastModified.addChild(child);
\r
112 for (int i=0; i<Global.changedBeforeFilter.size(); i++) {
\r
113 child = new QTreeWidgetItem();
\r
114 child.setIcon(0, icon);
\r
115 child.setText(0,Global.changedBeforeFilter.getName(i));
\r
116 parent.addChild(child);
\r
119 // Now we are into the other attributes
\r
120 QTreeWidgetItem contains = new QTreeWidgetItem();
\r
121 contains.setText(0,tr("Contains"));
\r
122 addTopLevelItem(contains);
\r
123 child = new QTreeWidgetItem();
\r
124 child.setText(0,tr("Images"));
\r
125 child.setIcon(0, icon);
\r
126 contains.addChild(child);
\r
128 child = new QTreeWidgetItem();
\r
129 child.setText(0,tr("Audio"));
\r
130 child.setIcon(0, icon);
\r
131 contains.addChild(child);
\r
133 child = new QTreeWidgetItem();
\r
134 child.setText(0,tr("Ink"));
\r
135 child.setIcon(0, icon);
\r
136 contains.addChild(child);
\r
138 child = new QTreeWidgetItem();
\r
139 child.setText(0,tr("Encrypted Text"));
\r
140 child.setIcon(0, icon);
\r
141 contains.addChild(child);
\r
144 child = new QTreeWidgetItem();
\r
145 child.setText(0,tr("To-Do Items"));
\r
146 child.setIcon(0, icon);
\r
147 contains.addChild(child);
\r
149 child = new QTreeWidgetItem();
\r
150 child.setText(0,tr("Unfinished to-do items"));
\r
151 child.setIcon(0, icon);
\r
152 contains.addChild(child);
\r
154 child = new QTreeWidgetItem();
\r
155 child.setText(0,tr("Finished to-do items"));
\r
156 child.setIcon(0, icon);
\r
157 contains.addChild(child);
\r
159 child = new QTreeWidgetItem();
\r
160 child.setText(0,tr("Attachment"));
\r
161 child.setIcon(0, icon);
\r
162 contains.addChild(child);
\r
164 child = new QTreeWidgetItem();
\r
165 child.setText(0,tr("PDF"));
\r
166 child.setIcon(0, icon);
\r
167 contains.addChild(child);
\r