clevic 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt ADDED
@@ -0,0 +1,371 @@
1
+ 2008-03-26 14:22 panic
2
+
3
+ * Manifest.txt, README.txt, TODO, accounts_models.rb,
4
+ lib/clevic/delegates.rb, times_models.rb: documentation. Move db
5
+ options to model defn files
6
+
7
+ 2008-03-26 13:31 panic
8
+
9
+ * accounts_models.rb, lib/clevic/browser.rb,
10
+ lib/clevic/cache_table.rb, lib/clevic/entry_table_model.rb,
11
+ times_models.rb: single-selection filtering working
12
+
13
+ 2008-03-26 09:43 panic
14
+
15
+ * TODO, lib/clevic/browser.rb, lib/clevic/cache_table.rb,
16
+ lib/clevic/entry_table_model.rb, lib/clevic/entry_table_view.rb:
17
+ search mostly working. Filtering half done
18
+
19
+ 2008-03-26 09:41 panic
20
+
21
+ * lib/clevic/search_dialog.rb: search dialog
22
+
23
+ 2008-03-26 09:40 panic
24
+
25
+ * bin/clevic, lib/clevic/db_options.rb: move db options to a
26
+ separate file to make irb easier
27
+
28
+ 2008-03-26 09:39 panic
29
+
30
+ * accounts_models.rb: fix require
31
+ * Rakefile, ui/browser.ui, ui/search_dialog.ui: add search dialog
32
+
33
+ 2008-03-26 09:38 panic
34
+
35
+ * lib/clevic/model_column.rb: keep association metadata
36
+
37
+ 2008-03-26 09:09 panic
38
+
39
+ * lib/clevic/extensions.rb: improve some inspects. Add a dump for
40
+ ModelIndex
41
+
42
+ 2008-03-24 17:08 panic
43
+
44
+ * bin/clevic, lib/clevic/browser.rb: take out test for single model
45
+
46
+ 2008-03-24 17:07 panic
47
+
48
+ * TODO, accounts_models.rb, bin/clevic, lib/clevic/browser.rb,
49
+ ui/browser.ui: fix focus buglets. Ctrl-Tab to move tabs
50
+
51
+ 2008-03-23 04:18 panic
52
+
53
+ * Manifest.txt, Rakefile, bin/clevic, lib/clevic/cache_table.rb,
54
+ lib/clevic/entry_builder.rb, lib/clevic/entry_table_model.rb,
55
+ lib/clevic/entry_table_view.rb, ui/browser.ui: filter by current
56
+ selection. Remove dependence on collection[0] for model_class
57
+ retrieval
58
+
59
+ 2008-03-20 08:24 panic
60
+
61
+ * bin/clevic, lib/clevic/entry_builder.rb,
62
+ lib/clevic/entry_table_model.rb, lib/clevic/entry_table_view.rb,
63
+ times_models.rb: make requires use library directories
64
+
65
+ 2008-03-20 08:19 panic
66
+
67
+ * ., active_record, bin, bin/clevic, cache_table.rb, clevic,
68
+ delegates.rb, entry_builder.rb, entry_table_model.rb,
69
+ entry_table_view.rb, extensions.rb, lib, lib/active_record,
70
+ lib/clevic, lib/clevic/cache_table.rb, lib/clevic/delegates.rb,
71
+ lib/clevic/entry_builder.rb, lib/clevic/entry_table_model.rb,
72
+ lib/clevic/entry_table_view.rb, lib/clevic/extensions.rb:
73
+ conform to Hoe directories
74
+
75
+ 2008-03-20 08:17 panic
76
+
77
+ * History.txt, Manifest.txt, README.txt, Rakefile,
78
+ sql/accounts.sql, sql/times.sql: first with Hoe
79
+
80
+ 2008-03-18 15:45 panic
81
+
82
+ * TODO, accounts_models.rb, entry_table_view.rb: allow Ctrl-Return
83
+ to create new row
84
+
85
+ 2008-03-18 11:25 panic
86
+
87
+ * accounts_models.rb, delegates.rb, entry_table_model.rb,
88
+ entry_table_view.rb, extensions.rb: make
89
+ CombeDelegate#setModelData common. use full_edit instead of open.
90
+
91
+ 2008-03-18 08:53 panic
92
+
93
+ * entry_table_view.rb: create set_current_unless_override
94
+
95
+ 2008-03-18 08:46 panic
96
+
97
+ * accounts_models.rb, clevic, delegates.rb, entry_table_model.rb,
98
+ entry_table_view.rb, times_models.rb: fix delegate editing and
99
+ cursor movement
100
+
101
+ 2008-03-17 15:34 panic
102
+
103
+ * accounts_models.rb, entry_table_model.rb, entry_table_view.rb:
104
+ send data_changed to entity models
105
+
106
+ 2008-03-17 12:28 panic
107
+
108
+ * clevic, entry_table_model.rb, extensions.rb: attempts to fix
109
+ reloading:
110
+
111
+ 2008-03-17 12:03 panic
112
+
113
+ * cache_table.rb, entry_builder.rb, entry_table_model.rb,
114
+ times_models.rb: improvements in caching and fetching from DB
115
+ only when necessary
116
+
117
+ 2008-03-16 09:25 panic
118
+
119
+ * entry_builder.rb: remove debugging puts
120
+
121
+ 2008-03-15 08:54 panic
122
+
123
+ * accounts_models.rb, cache_table.rb, clevic, entry_table_view.rb,
124
+ extensions.rb, times_models.rb, ui/browser.ui: use triggered
125
+ instead of activated. Exception handling for calls to UI model
126
+ definitions. Try to activate debugger.
127
+
128
+ 2008-03-13 12:26 panic
129
+
130
+ * TODO, delegates.rb: update for ruby-pg
131
+
132
+ 2008-03-11 19:50 panic
133
+
134
+ * entry_builder.rb, entry_table_view.rb, times_models.rb: add some
135
+ times-capture specific code
136
+
137
+ 2008-03-09 19:22 panic
138
+
139
+ * accounts_models.rb, clevic, entry_table_view.rb, ui/browser.ui:
140
+ add clever debit & credit completion
141
+
142
+ 2008-03-09 13:19 panic
143
+
144
+ * clevic: make it executable
145
+
146
+ 2008-03-09 13:15 panic
147
+
148
+ * browser.rb, clevic: rename main file
149
+
150
+ 2008-03-09 13:12 panic
151
+
152
+ * ., times: rename project
153
+
154
+ 2008-03-02 21:35 panic
155
+
156
+ * times/entry_table_model.rb, times/entry_table_view.rb: start
157
+ abstracting model_class from collection[0]
158
+
159
+ 2008-03-02 21:20 panic
160
+
161
+ * times/accounts_models.rb, times/browser.rb: add some samples for
162
+ accounts. Allow model order to be specified.
163
+
164
+ 2008-03-02 21:09 panic
165
+
166
+ * times/TODO, times/accounts_models.rb, times/cache_table.rb,
167
+ times/entry_builder.rb, times/entry_table_model.rb,
168
+ times/entry_table_view.rb, times/extensions.rb: Add lazy model
169
+ instance fetching. Do a faster fix for row sizes
170
+
171
+ 2008-03-02 15:08 panic
172
+
173
+ * times/accounts_models.rb, times/browser.rb,
174
+ times/entry_table_model.rb: add the values table to accounts.
175
+ Various other comments.
176
+
177
+ 2008-03-02 12:55 panic
178
+
179
+ * times/accounts_models.rb, times/delegates.rb,
180
+ times/entry_builder.rb: comments for builder methods. Allow
181
+ conditions for DistinctDelegate
182
+
183
+ 2008-03-02 12:37 panic
184
+
185
+ * times/accounts_models.rb, times/delegates.rb,
186
+ times/entry_builder.rb, times/entry_table_model.rb: allow format
187
+ and alignment to be specified in the ui table definition.
188
+ Improve formatting code. Add a Restricted field type.
189
+
190
+ 2008-03-01 16:15 panic
191
+
192
+ * times/TODO, times/accounts_models.rb, times/times_models.rb: fix
193
+ some orderings
194
+
195
+ 2008-03-01 16:02 panic
196
+
197
+ * times/accounts_models.rb, times/browser.rb,
198
+ times/times_models.rb: check for :database in options. remove
199
+ references to old Tables idea.
200
+
201
+ 2008-03-01 15:57 panic
202
+
203
+ * times/accounts, times/accounts_models.rb, times/browser.rb,
204
+ times/entry_builder.rb, times/times, times/times_models.rb:
205
+ browser now uses command line parameter to get ui table
206
+ definitions and db connections
207
+
208
+ 2008-02-28 18:47 panic
209
+
210
+ * times/browser.rb, times/entry_table_model.rb,
211
+ times/ui/browser.ui: remove puts output. Make sure initial
212
+ designer tab is empty, and is cleared when table tabs are added
213
+
214
+ 2008-02-28 18:40 panic
215
+
216
+ * times/Rakefile, times/dir.rb, times/ui: do Rakefile for invoking
217
+ rbuic4
218
+
219
+ 2008-02-28 18:12 panic
220
+
221
+ * times/accounts_models.rb, times/browser.rb,
222
+ times/entry_builder.rb, times/entry_table_model.rb,
223
+ times/entry_table_view.rb, times/reports, times/reports/invoice,
224
+ times/sql, times/sql/invoice.view.sql,
225
+ times/sql/nice_entries.view.sql, times/times, times/times.ui,
226
+ times/ui, times/ui/browser.ui: get elementary tabbed tables
227
+ working
228
+
229
+ 2008-02-14 11:54 panic
230
+
231
+ * times/times: specify table name on command line
232
+
233
+ 2008-01-15 07:19 panic
234
+
235
+ * times/accounts, times/times: allow host to be specified
236
+
237
+ 2007-11-29 12:57 panic
238
+
239
+ * times/accounts, times/accounts.odb, times/accounts_models.rb:
240
+ allow editing of accounts table. Copy accounts.odb here
241
+
242
+ 2007-09-13 06:04 panic
243
+
244
+ * times/accounts, times/accounts_models.rb, times/times: allow use
245
+ of db to be specified on command line
246
+
247
+ 2007-09-05 15:53 panic
248
+
249
+ * times/times: make coding a bit neater
250
+
251
+ 2007-09-05 15:45 panic
252
+
253
+ * times/delegates.rb, times/entry_builder.rb,
254
+ times/entry_table_model.rb, times/entry_table_view.rb,
255
+ times/extensions.rb: paste of rows working
256
+
257
+ 2007-09-04 11:52 panic
258
+
259
+ * times/accounts_models.rb, times/entry_table_model.rb: change to
260
+ test db. Allow entry of a single digit in a date field and it
261
+ will fill in the month from the previous row
262
+
263
+ 2007-09-04 11:39 panic
264
+
265
+ * times/accounts_models.rb, times/entry_table_view.rb,
266
+ times/times: don't show two tables. renames. Use live db for
267
+ accounts
268
+
269
+ 2007-09-04 06:34 panic
270
+
271
+ * times/accounts, times/entry_builder.rb,
272
+ times/entry_table_model.rb, times/entry_table_view.rb,
273
+ times/extensions.rb, times/times: neaten up requires, and have a
274
+ look at 2 windows where one goes blank
275
+
276
+ 2007-09-03 22:07 panic
277
+
278
+ * times/entry_table_model.rb: other small tweaks
279
+
280
+ 2007-09-03 22:00 panic
281
+
282
+ * times/accounts, times/entry_table_model.rb, times/times: fix
283
+ number alignment
284
+
285
+ 2007-09-03 21:24 panic
286
+
287
+ * times/accounts, times/accounts_models.rb, times/delegates.rb,
288
+ times/entry_builder.rb, times/entry_table_model.rb,
289
+ times/entry_table_view.rb, times/times: add entry builder and
290
+ make accounts and times work with it
291
+
292
+ 2007-09-03 15:28 panic
293
+
294
+ * times/accounts, times/entry_table_view.rb: do column sizing
295
+
296
+ 2007-09-03 11:52 panic
297
+
298
+ * times/accounts, times/delegates.rb, times/entry_table_view.rb:
299
+ show popup on f4
300
+
301
+ 2007-09-03 11:21 panic
302
+
303
+ * times/accounts, times/accounts_models.rb, times/delegates.rb,
304
+ times/entry_table_model.rb, times/entry_table_view.rb,
305
+ times/extensions.rb: fix completion handling
306
+
307
+ 2007-09-03 06:15 panic
308
+
309
+ * times/TODO, times/accounts, times/entry_table_model.rb,
310
+ times/entry_table_view.rb, times/extensions.rb, times/models.rb,
311
+ times/times, times/times.rb: move times-specific code to its own
312
+ file
313
+
314
+ 2007-09-02 18:05 panic
315
+
316
+ * times/TODO, times/entry_table_model.rb, times/extensions.rb:
317
+ weirdness with can't convert frozen object with Date. Fix sql
318
+ updates
319
+
320
+ 2007-09-02 16:52 panic
321
+
322
+ * times/TODO, times/delegates.rb, times/entry_table_model.rb,
323
+ times/entry_table_view.rb: better error handling
324
+
325
+ 2007-08-31 15:11 panic
326
+
327
+ * times/TODO, times/delegates.rb, times/extensions.rb,
328
+ times/models.rb, times/times.rb: allow nil values in combo box
329
+ fields
330
+
331
+ 2007-08-30 21:58 panic
332
+
333
+ * times/TODO, times/delegates.rb, times/entry_table_view.rb,
334
+ times/times.rb: do completion for select distinct
335
+
336
+ 2007-08-30 21:03 panic
337
+
338
+ * times/log: remove file
339
+
340
+ 2007-08-30 21:01 panic
341
+
342
+ * times/delegates.rb, times/entry_table_model.rb: remove cruft
343
+
344
+ 2007-08-30 20:55 panic
345
+
346
+ * times/active_table_model.rb, times/entry_table_model.rb,
347
+ times/times.rb, times/times_qt.rb: rename to EntryTableModel.
348
+ Remove old files
349
+
350
+ 2007-08-30 20:50 panic
351
+
352
+ * times/active_table_model.rb, times/delegates.rb,
353
+ times/entry_table_view.rb, times/extensions.rb, times/times.rb:
354
+ lots of neatening up code and putting the access methods into
355
+ ModelIndex
356
+
357
+ 2007-08-30 19:33 panic
358
+
359
+ * times/TODO, times/active_table_model.rb, times/delegates.rb,
360
+ times/entry_table_view.rb, times/extensions.rb, times/times.rb:
361
+ Create EntryDelegate, although it's not really used. Make sure
362
+ boolean fields get checkboxes.
363
+
364
+ 2007-08-29 11:25 panic
365
+
366
+ * times, times/TODO, times/active_record,
367
+ times/active_record/dirty.rb, times/active_table_model.rb,
368
+ times/delegates.rb, times/dir.rb, times/entry_table_view.rb,
369
+ times/extensions.rb, times/log, times/models.rb, times/times.rb,
370
+ times/times.ui, times/times_qt.rb: initial import
371
+
data/INSTALL ADDED
@@ -0,0 +1,10 @@
1
+ port install ssl
2
+ port install dbus
3
+ port install qt4-mac +dbus +ssl
4
+ fetch qt4-qtruby from rubyforge
5
+ unpack
6
+ fetch kalyptus and kalyptusCxxToSmoke.pm frm http://websvn.kde.org/trunk/KDE/kdebindings/kalyptus/
7
+ copy over files
8
+ cmake .
9
+ comment out qsslconfiguration.h line in smoke/qt/x_15.cpp
10
+ make
data/Manifest.txt ADDED
@@ -0,0 +1,30 @@
1
+ History.txt
2
+ INSTALL
3
+ Manifest.txt
4
+ README.txt
5
+ Rakefile
6
+ TODO
7
+ accounts_models.rb
8
+ bin/clevic
9
+ lib/active_record/dirty.rb
10
+ lib/clevic.rb
11
+ lib/clevic/browser.rb
12
+ lib/clevic/cache_table.rb
13
+ lib/clevic/db_options.rb
14
+ lib/clevic/delegates.rb
15
+ lib/clevic/extensions.rb
16
+ lib/clevic/field.rb
17
+ lib/clevic/item_delegate.rb
18
+ lib/clevic/model_builder.rb
19
+ lib/clevic/model_column.rb
20
+ lib/clevic/search_dialog.rb
21
+ lib/clevic/table_model.rb
22
+ lib/clevic/table_view.rb
23
+ lib/clevic/ui/browser.ui
24
+ lib/clevic/ui/browser_ui.rb
25
+ lib/clevic/ui/icon.png
26
+ lib/clevic/ui/search_dialog.ui
27
+ lib/clevic/ui/search_dialog_ui.rb
28
+ sql/accounts.sql
29
+ sql/times.sql
30
+ times_models.rb
data/README.txt ADDED
@@ -0,0 +1,94 @@
1
+ = clevic
2
+
3
+ http://www.rubyforge.org/clevic
4
+
5
+ == DESCRIPTION:
6
+
7
+ Database framework and Qt Model/View GUI for data capture and
8
+ editing of tables in a pre-existing relational DBMS. Thanks to ActiveRecord,
9
+ Postgresql, Mysql and so on are supported. Has only been tested with Postgres.
10
+
11
+ There is a mild focus on reducing keystrokes for repetitive data capture,
12
+ so it provides
13
+ nice keyboard shortcuts for all sorts of things. Model (table) objects
14
+ are extensible to allow for model (table) specific cleverness, like
15
+ auto-filling-in of fields.
16
+
17
+ == FEATURES:
18
+
19
+ * Filter by current field.
20
+ * search by field contents.
21
+ * uses ActiveRecord for data access. Does *not* use the Qt SQL models.
22
+ * sensible caching to handle large data sets without unnecessary memory and cpu usage
23
+ * in-place Combo boxes for related table and foreign keys
24
+ * distinct combo boxes to list previous values for a field
25
+ * cut and paste in CSV format
26
+ * sortable by row headers (not yet)
27
+ * color highlighting of fields and records on definable criteria (not yet).
28
+ * extensions to various Qt classes to make db programming easier.
29
+ * leverages SQL whenever possible to handle large datasets, sorting, filtering
30
+ etc. So it's probably not suitable for talking to a remote db across a slow link.
31
+
32
+ === Shortcuts:
33
+
34
+ * Ctrl-' for ditto (copy value from previous record)
35
+ * Ctrl-; for insert current date
36
+ * Ctrl-] for copy previous record, one field right
37
+ * Ctrl-[ for copy previous record, one field left
38
+ * Ctrl-f to find a record
39
+ * Ctrl-l to filter by current selection
40
+ * cursor keys for movement
41
+
42
+ === Model definition:
43
+
44
+ Right now, models must be defined in Ruby. The framework provides
45
+ an easy Rails-migrations-like syntax for that.
46
+ Start with account_models.rb and times_models.rb, with associated SQL
47
+ schemas in the sql subdirectory. For implementation and more extensive
48
+ comments, see Browser and EntryBuilder.
49
+
50
+ == PROBLEMS:
51
+
52
+ See TODO file.
53
+
54
+ == SYNOPSIS:
55
+
56
+ clevic model_definition_file
57
+
58
+ == REQUIREMENTS:
59
+
60
+ * fastercsv
61
+ * ruby-qt4
62
+ * bsearch
63
+ * active_record
64
+ * active_record/dirty (included)
65
+ * db driver (ie postgres-pr)
66
+ * rdbms (ie postgres)
67
+
68
+ == INSTALL:
69
+
70
+ sudo gem install
71
+
72
+ == THANKS:
73
+
74
+ * Michelle Riley for help debugging the windows gem
75
+
76
+ == LICENSE:
77
+
78
+ (The GPL-2 License)
79
+
80
+ Copyright (C) 2008 John Anderson
81
+
82
+ This program is free software; you can redistribute it and/or
83
+ modify it under the terms of the GNU Library General Public License
84
+ as published by the Free Software Foundation; either version 2
85
+ of the License, or (at your option) any later version.
86
+
87
+ This program is distributed in the hope that it will be useful,
88
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
89
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
90
+ GNU General Public License for more details.
91
+
92
+ You should have received a copy of the GNU Library General Public License
93
+ along with this program; if not, write to the Free Software
94
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.