clevic 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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.