Display an error if no glom documents are found in the specified directory.
[online-glom:gwt-glom.git] / ChangeLog
1 2011-04-08  Ben Konrath  <ben@bagu.org>
2
3         Display an error if no glom documents are found in the specified directory.
4
5         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
6         * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
7         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
8         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
9
10 2011-04-08  Ben Konrath  <ben@bagu.org>
11
12         Add copyright header to one more file ... oops.
13
14         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
15
16 2011-04-08  Ben Konrath  <ben@bagu.org>
17
18         Add copyright header to files without it.
19
20         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
21         * src/main/java/org/glom/web/client/place/DemoSelectionPlace.java:
22         * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
23         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
24         * src/main/java/org/glom/web/shared/ColumnInfo.java:
25         * src/main/java/org/glom/web/shared/GlomField.java:
26
27 2011-04-08  Ben Konrath  <ben@bagu.org>
28
29         Add support for accessing multiple glom documents in the servlet.
30
31         This completes the demo selection functionality.
32
33         * src/main/java/org/glom/web/client/OnlineGlomService.java: Add
34         document title to methods.
35         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
36         document title to methods.
37         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
38         Set browser window title when the activity starts. Correct name of
39         document title variable.
40         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
41         Set browser window title when the activity starts. Set the table
42         selector change handler after table selector has been set. Clear the
43         OnlineGlomView when the activity has been stopped.
44         * src/main/java/org/glom/web/client/place/OnlineGlomPlace.java: Use the
45         document title as the place token. Use "#Document:" instead of
46         "#OnlineGlomPlace:" in the URL.
47         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.ui.xml:
48         Change heading to "Online Glom"
49         * src/main/java/org/glom/web/client/ui/LayoutListView.java: Use
50         document title in RPC methods.
51         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Remove
52         setDocumentTitle() method. Add clear() method.
53         * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: Remove
54         setDocumentTitle() method. Implement clear() method which removes the
55         change handler on the ListBox, clears the ListBox and clears the
56         DataPanel.
57         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
58         Implement methods with document title. Keep track for the configured
59         glom documents and their corresponding JDBC configurations in a hash
60         table. This information is retrieved using the document title as the
61         key in the hash table.
62         * src/main/java/org/glom/web/shared/GlomDocument.java: Remove
63         document title field as it's no longer needed.
64
65 2011-04-08  Ben Konrath  <ben@bagu.org>
66
67         Update the Eclipse JDT configuration.
68
69         * .settings/org.eclipse.jdt.ui.prefs: Automatically add comments to new
70         methods. Automatically add the copyright header to new files.
71
72 2011-04-05  Ben Konrath  <ben@bagu.org>
73
74         Add new page for demo selection.
75
76         This patch adds all the components required to view and start an
77         OnlineGlom demo by clicking on the desired hyperlink. The user is
78         able to return to the demo selection page with the browser's back
79         button. I still need to modify the servlet to work with multiple
80         documents so all demo links will load the file defined in the
81         OnlineGlom.properties.
82
83         * .gitignore: Add .gwt which holds the error log for the GWT UiBuidler.
84         This is only useful during development so we don't need to save it.
85         * src/main/java/org/glom/web/client/ClientFactory.java: Add method to
86         get a reference to the DemoSelectionView.
87         * src/main/java/org/glom/web/client/ClientFactoryImpl.java: Implement
88         method to get a reference to the DemoSelectionView.
89         * src/main/java/org/glom/web/client/OnlineGlom.java: Change the
90         default view to DemoSelectionView.
91         * src/main/java/org/glom/web/client/OnlineGlomService.java: Add method
92         to get glom document titles for glom files in a hard-coded directory.
93         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
94         method to get glom document titles for glom files in a hard-coded
95         directory.
96         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
97         Presenter for DemoSelectionView.
98         * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java: Update
99         for DemoSelectionView.
100         * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
101         Update for DemoSelectionView.
102         * src/main/java/org/glom/web/client/place/DemoSelectionPlace.java:
103         Basic 'Place' implementation for the DemoSelectionView.
104         * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
105         The interface for the DemoSelectionView.
106         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
107         The implementation of the DemoSelectionView.
108         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.ui.xml:
109         The GWT UiBuilder xml file used in DemoSelectionViewImpl.
110         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
111         implementation of method to get glom document titles for glom files
112         in a hard-coded directory.
113         * src/main/webapp/OnlineGlom.html: Remove link to CSS file as it's
114         on longer being used.
115         * src/main/webapp/glom.png: Glom logo.
116
117 2011-04-05  Ben Konrath  <ben@bagu.org>
118
119         Move RPC code from OnlineGlomViewImpl to OnlineGlomActivity.
120
121         This is the forth and final commit of a refactor that will allow
122         OnlineGlom to be used with multiple documents.
123
124         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
125         Move RPC code from OnlineGlomViewImpl to this class.
126         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Add methods
127         to inferface.
128         * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: Move
129         RPC code to the presenter class (the P in MVP).
130
131 2011-04-04  Ben Konrath  <ben@bagu.org>
132
133         Start moving the existing OnlineGlom code to MVP.
134
135         This work is based on the GWT MVP framework that is documented here:
136
137         https://code.google.com/webtoolkit/doc/2.2/DevGuideMvpActivitiesAndPlaces.html
138
139         This is the third commit of a refactor that will allow OnlineGlom to
140         be used with multiple documents.
141
142         * src/main/java/org/glom/web/client/ClientFactory.java: New file.
143         Interface for client factory which is used to get instances of various
144         classes throughout the app.
145         * src/main/java/org/glom/web/client/ClientFactoryImpl.java: New file.
146         Implementation of client factory.
147         * src/main/java/org/glom/web/client/OnlineGlom.java: Add code to
148         initialize the MVP framework.
149         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
150         New file. Activity manager for the main container widget. This is the
151         Presenter in MVP.
152         * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java: New file.
153         Maps place (URL) to its corresponding activity.
154         * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
155         New file. This is just a place holder for a generated file.
156         * src/main/java/org/glom/web/client/place/OnlineGlomPlace.java:
157         New file. Represents the URL for the main Online Glom app.
158         * src/main/java/org/glom/web/client/ui/LayoutListView.java: Update
159         for changes in LayoutListViewImpl.
160         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Create
161         interface for View. Move code to OnlineGlomViewImpl class.
162         * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: New
163         file. Implementation of OnlineGlomView.
164         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml: Add Activity and
165         Place resources. Use ClientFactoryImpl by default.
166
167 2011-04-04  Ben Konrath  <ben@bagu.org>
168
169         Move View classes to their own package.
170
171         This is the second commit of a refactor that will allow OnlineGlom to
172         be used with multiple documents.
173
174         * src/main/java/org/glom/web/client/OnlineGlom.java:
175         * src/main/java/org/glom/web/client/ui/LayoutListView.java:
176         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java:
177
178 2011-04-02  Ben Konrath  <ben@bagu.org>
179
180         Move UI code from the main module to its own class.
181
182         This is the first commit of a refactor that will allow OnlineGlom to be
183         used with multiple documents.
184
185         * src/main/java/org/glom/web/client/LayoutListView.java: Update
186         references to OnlineGlom to OnlineGlomView.
187         * src/main/java/org/glom/web/client/OnlineGlom.java: Move code to
188         OnlineGlomView and instantiate it here.
189         * src/main/java/org/glom/web/client/OnlineGlomView.java: New class that
190         represents the main OnlineGlomView with one document.
191
192 2011-04-01  Ben Konrath  <ben@bagu.org>
193
194         Fix formatting of gwt.xml and add DTD.
195
196         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml:
197
198 2011-03-30  Ben Konrath  <ben@bagu.org>
199
200         Propperly convert gdkColor string to html colour string.
201
202         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
203
204 2011-03-28  Ben Konrath  <ben@bagu.org>
205
206         Change implementation of OnlineGlomServiceImpl.getColumnInfoHorizontalAlignment().
207
208         This implementation matches
209         OnlineGlomServiceImpl.getColumnInfoGlomFieldType(), should perform better, is more
210         readable and is not tied to Swig.
211
212         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
213
214 2011-03-28  Ben Konrath  <ben@bagu.org>
215
216         Use read-only checkboxes for boolean field types.
217
218         * src/main/java/org/glom/web/client/LayoutListView.java: Create columns
219         in the CellTable based on the field type. It currently only
220         distinguishes between boolean and text columns but I'll need to add
221         support for more types.
222         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set the
223         column type in the ColumnInfo object. Add method to convert between the
224         glom field type enum in ColumnInfo and the glom field type in libglom.
225         * src/main/java/org/glom/web/shared/ColumnInfo.java: Add support for
226         field type.
227         * src/main/java/org/glom/web/shared/GlomField.java: Add support for
228         getting and setting booleans.
229
230 2011-03-25  Ben Konrath  <ben@bagu.org>
231
232         Don't get the Date twice from the ResultSet.
233
234         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
235
236 2011-03-25  Ben Konrath  <ben@bagu.org>
237
238         Cleanup code in the servlet.
239
240         * TODO: Remove item about row count. Add item about testing row count
241         query with large number of rows.
242         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Fix
243         spelling mistakes, change method parameter to be consistent with
244         other methods.
245
246 2011-03-25  Ben Konrath  <ben@bagu.org>
247
248         Add server side logging with the gwt-log library.
249
250         * .gitignore: Ignore the log file we're now producing.
251         * TODO: Add a couple TODO item for logging.
252         * pom.xml: Add gwt-log and log4j as a dependency.
253         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
254         logging of errors, warnings and some important info.
255         * src/main/resources/log4j.properties: New file to configure log4j.
256
257 2011-03-24  Ben Konrath  <ben@bagu.org>
258
259         Add a disable button for the Details view.
260
261         * src/main/java/org/glom/web/client/LayoutListView.java:
262
263 2011-03-22  Ben Konrath  <ben@bagu.org>
264
265         Use a count query to get the number of rows for the list view pager.
266
267         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
268
269 2011-03-22  Ben Konrath  <ben@bagu.org>
270
271         Add more TODO information about CellTable pager positioning. 
272
273         * TODO:
274
275 2011-03-19  Ben Konrath  <ben@bagu.org>
276
277         Add TODO item about CellTable pager positioning.
278
279         * TODO:
280
281 2011-03-18  Ben Konrath  <ben@bagu.org>
282
283         Remove unneeded GlomFieldColumn class.
284
285         This is just a small code cleanup.
286
287         * src/main/java/org/glom/web/client/LayoutListView.java:
288
289 2011-03-18  Ben Konrath  <ben@bagu.org>
290
291         Use cursor mode in the query that gets data for the list view.
292
293         I still need to fix the potential memory problem when getting the row
294         count for the list view.
295
296         * TODO: Add note about testing memory usage with large data sets. Add
297         item about fixing row counting with large data sets.
298         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Put the
299         PostgreSQL JDBC driver into cursor mode when getting data for the
300         list view.
301
302 2011-03-15  Ben Konrath  <ben@bagu.org>
303
304         Remove the GWT Container from the Eclipse build classpath.
305
306         The GWT dependencies are set by Maven so this isn't needed.
307
308         * .classpath:
309
310 2011-03-15  Murray Cumming  <murrayc@murrayc.com>
311
312         Added some earlier mockups to git, but not to the tarball dist.
313
314         * mockups/: Added some mockups from 2010-02 by Daniel Borgmann for
315         Openismus. These hopefully show how we might structure the HTML so that
316         it can be styled easily with CSS. However, we probably need to adapt them
317         for the CSS structure that GWT dictates for common widgets.
318
319 2011-03-14  Ben Konrath  <ben@bagu.org>
320
321         Locate OnlineGlom.properties using the ServletContext.
322
323         This is required to be able to locate the file in the deployed servlet.
324
325         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
326         Configure the database and glom document in in a helper method so
327         that the ServletContext can be used to locate OnlineGlom.properties.
328         * src/main/webapp/WEB-INF/OnlineGlom.properties: Moved from
329         src/main/webapp. This is the proper location for .properites files.
330
331 2011-03-12  Ben Konrath  <ben@bagu.org>
332
333         Add note to README about why we're compiling down to obfuscated JavaScript.
334
335         * README:
336
337 2011-03-11  Ben Konrath  <ben@bagu.org>
338
339         Use properties file to configure servlet.
340
341         This allows people to change the glom file path, db username and db
342         password without recompiling the code.
343
344         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
345         * src/main/webapp/OnlineGlom.properties:
346
347 2011-03-11  Ben Konrath  <ben@bagu.org>
348
349         Use table fields in layout list view if the layout list is not defined.
350
351         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
352         Manually create a LayoutFieldVector for the query builder using the
353         table fields when a layout list is not defined in the glom file.
354
355 2011-03-11  Ben Konrath  <ben@bagu.org>
356
357         Only show FIXME string for images when there's an image.
358
359         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Also included
360         in this change are some small code cleanups.
361
362 2011-03-11  Ben Konrath  <ben@bagu.org>
363
364         Set text for fields with TYPE_IMAGE and TYPE_INVALID to avoid NPEs.
365
366         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
367
368 2011-03-11  Ben Konrath  <ben@bagu.org>
369
370         Correctly set the index of the default table.
371
372         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
373         Correctly set the index of the default table. Add commented out example
374         file paths.
375
376 2011-03-10  Ben Konrath  <ben@bagu.org>
377
378         Add comment to pom.xml about the previous change.
379
380         * pom.xml: Add comment about the deployment issue so that it's obvious
381         why java-libglom is set to the provided scope.
382
383 2011-03-10  Ben Konrath  <ben@bagu.org>
384
385         Change java-libglom dependency from compile to provided in pom.xml.
386
387         Since java-libglom uses jni it can only be loaded once and therefore
388         must be placed in $CATALINA_HOME/lib and not included in each war.
389         This directory is defined as /usr/share/tomcat6/lib/ on Ubuntu 10.04.
390         More information about this issue can be found in the Tomcat 6 release
391         notes in the "JNI Based Applications" section:
392
393         http://tomcat.apache.org/tomcat-6.0-doc/RELEASE-NOTES.txt
394
395         * README: Remove note about this issue. Deployment info should really
396         be on the wiki anyway so I'll add it right now.
397         * pom.xml: Change java-libglom dependency from compile to provided so
398         that it's copied in to the packaged war.
399
400 2011-03-09  Ben Konrath  <ben@bagu.org>
401
402         Change to using a neutral locale for currency, date and time formatting.
403
404         This solves the problem of currency values being represented without a
405         space between the currency code and the number (e.g. "EUR5.89" is now
406         represented as "EUR 5.89"). More work is required when we implement
407         a locale preference setting.
408
409         * TODO: Add note about currency formatting issues with different
410         locales.
411         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
412         to using the neutral ROOT locale.
413
414 2011-03-09  Ben Konrath  <ben@bagu.org>
415
416         Add support for currency codes that are not ISO 4217 codes.
417
418         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use
419         the currency code defined in the glom file when it's not 3 characters
420         long or when Java doesn't recognize the string as an ISO 4217 code.
421
422 2011-03-08  Ben Konrath  <ben@bagu.org>
423
424         Remove test classes, launch configurations and configuration.
425
426         The test stuff was getting in the way when creating the war. To make
427         the war file you can now do 'mvn clean package'. The packaged war file
428         will be in the target directory.
429
430         * .classpath: Remove unused classpathentry for tests and i18n.
431         * pom.xml: Remove junit.jar dependency. Properly use gwt.version
432         property. Don't run test or i18n goals when packaging the war.
433         * src/main/webapp/WEB-INF/web.xml: Add xml name space. Correct
434         formatting.
435
436         Removed files:
437
438         * OnlineGlomTest-dev.launch:
439         * OnlineGlomTest-prod.launch:
440         * src/test/java/org/glom/web/client/GwtTestOnlineGlom.java:
441         * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml:
442
443 2011-03-07  Ben Konrath  <ben@bagu.org>
444
445         Update gwt-maven plugin to 2.2.0 and fix other configuation problems.
446
447         These fixes allow me to use 'mvn deploy' to create the war file.
448
449         * .classpath: This generated config has been updated by Eclipse. This
450         change was probably triggered by me updating from Eclipse 3.6.1 to
451         3.6.2.
452         * .gitignore: Add entry to ignore the directory
453         src/main/webapp/WEB-INF/deploy. This directory is generated by Eclipse.
454         * .project: The generated config has been updated by Eclipse. This
455         change was probably triggered by me updating from Eclipse 3.6.1 to
456         3.6.2.
457         * .settings/com.google.appengine.eclipse.core.prefs: Add empty config
458         so that Eclipse doesn't complain
459         * pom.xml: Update to gwt-maven-plugin 2.2.0.
460         * src/test/java/org/glom/web/client/GwtTestOnlineGlom.java: Move from
461         'tests' directory to 'client' directory. This is the new
462         gwt-maven-plugin convension.
463         * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml: Correctly
464         refer to org.glom.web.OnlineGlom gwt module and OnlineGlomServiceImpl.
465
466 2011-03-07  Ben Konrath  <ben@bagu.org>
467
468         Add support for horizontal alignment in the LayoutList columns.
469
470         * TODO: Remove item about horizontal alignment. Add item about
471         improvements to ColumnInfo.
472         * src/main/java/org/glom/web/client/LayoutListView.java: Set horizontal
473         alignment on the columns. Use ColumnInfo RPC object get the column
474         title and horizontal alignment.
475         * src/main/java/org/glom/web/client/OnlineGlom.java: Update
476         LayoutListView creation with ColumnInfo RPC object.
477         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Create
478         a ColumnInfo object for every LayoutList columnn. Convert the
479         FieldFormatting.HorizontalAlignment to the correct
480         ColumnnInfo.HorizontatlAlignment with the new
481         getColumnInfoHorizontalAlignment helper method.
482         * src/main/java/org/glom/web/shared/ColumnInfo.java: New RPC object
483         to encapsulate column information like alignment and title. This
484         could be used to set the colour instead of on a per cell field basis.
485         * src/main/java/org/glom/web/shared/LayoutListTable.java: Replace
486         column title storage and retrieval with ColumnInfo.
487
488 2011-03-04  Ben Konrath  <ben@bagu.org>
489
490         Add support for column sorting.
491
492         * src/main/java/org/glom/web/client/LayoutListView.java: Change
493         AsynDataProvider to be an anonymous inner class. Use new
494         getSortedTableData RPC method when column sort is requested. Set all
495         columns sortable and add an AsyncHandler to activate sorting in the
496         AsyncDataProvider.
497         * src/main/java/org/glom/web/client/OnlineGlomService.java: Add new
498         method getSortedTableData(). Cleanup other method signatures.
499         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
500         new method getSortedTableData(). Cleanup other method signatures.
501         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
502         Implement getSortedTableData() and getTableData() methods by using a
503         private helper method with the appropriate parameters filled in. Use
504         user supplied sort clause when supplied, otherwise fall back to
505         sorting by the primary key. Move destroy() method to be underneath
506         constructor for readability.  Cleanup comments.
507
508 2011-03-03  Ben Konrath  <ben@bagu.org>
509
510         Add support for colour text and colour backgrounds to the layout list cells.
511
512         Only the cell backgrounds are coloured which leaves a gap between the
513         cells that isn't coloured. I need to figure out a way to set
514         'style=background-colour:' on the whole column rather than just the
515         cell.
516
517         * TODO: Add a note about colouring the background of the whole column.
518         * src/main/java/org/glom/web/client/LayoutListView.java: Add a custom
519         column type (GlomFieldColumn) and a custom cell type (GlomFieldCell) to
520         render the coloured text and backgrounds. Use GlomField[] for the row type.
521         * src/main/java/org/glom/web/client/OnlineGlomService.java: Use GlomField[]
522         for the row type.
523         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Use
524         GlomField[] for the row type.
525         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use
526         GlomField[] for the row type. Set the text, text colour and background
527         colour in the GlomField objects as specified in the glom document. Add
528         method to convert from Gdk::Color to HTML colour string. Cleanup comments.
529         * src/main/java/org/glom/web/shared/GlomField.java: New file to encapulate
530         the glom field text, foreground colour and background colour.
531
532 2011-03-02  Ben Konrath  <ben@bagu.org>
533
534         Don't display hidden tables in the combo box.
535
536         * src/main/java/org/glom/web/client/OnlineGlom.java: Update code to use
537         ArrayLists.
538         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
539         code to ignore hidden tables using ArrayLists for the table names and
540         titles.
541         * src/main/java/org/glom/web/shared/GlomDocument.java: Change tableTitles and
542         tableNames to use ArrayLists instead of String[]. Update getter and setter
543         methods.
544
545 2011-03-01  Ben Konrath  <ben@bagu.org>
546
547         Add support for Date and Time number types.
548
549         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
550         Implement formatting for Date and Time values. Change the default glom
551         file to small business example.
552
553 2011-03-01  Ben Konrath  <ben@bagu.org>
554
555         Add support for formatting glom types as specified in the glom file.
556
557         Formatting isn't finished yet - I still need to add support for Date
558         and Time values.
559
560         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
561         formatting support for TYPE_TEXT, TYPE_BOOLEAN and TYPE_NUMERIC. Remove
562         checks for null values in JDBC cleanup code and catch all exceptions
563         instead of just SQLExceptions.
564         * src/main/java/org/glom/web/shared/LayoutListTable.java: Fix incorrect
565         method name.
566
567 2011-03-01  Ben Konrath  <ben@bagu.org>
568
569         Use GWT 2.2.0 instead of 2.1.1.
570
571         * pom.xml: Change GWT version numbers.
572
573 2011-03-01  Ben Konrath  <ben@bagu.org>
574
575         A few small code cleanups.
576
577         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Remove
578         duplicate for loop.
579         * src/main/java/org/glom/web/shared/GlomDocument.java: Remove
580         unnecessary object creation in constructor.
581         * src/main/java/org/glom/web/shared/LayoutListTable.java: Remove
582         unnecessary object creation in constructor.
583
584 2011-02-28  Ben Konrath  <ben@bagu.org>
585
586         Add file for TODO list.
587
588         * TODO: New file.
589
590 2011-02-18  Ben Konrath  <ben@bagu.org>
591
592         Enable the CellTable Pager when more than 20 rows need to be viewed.
593
594         The Pager will automatically become active when the results are larger
595         than the CellTable size which is currently set to 20 lines.
596
597         * src/main/java/org/glom/web/client/LayoutListView.java: Correct class
598         name on debug statment in RPC call in LayoutListDataProvider, add
599         numRows parameter to LayoutListView constructor, propperly set rowCount
600         in CellTable.
601         * src/main/java/org/glom/web/client/OnlineGlom.java: Correct class
602         name on debug statment in RPC call, use LayoutListTable object in RPC
603         calls, pass rowCount to LayoutListView.
604         * src/main/java/org/glom/web/client/OnlineGlomService.java: Change
605         getLayoutListHeaders to getLayoutListTable and return LayoutListTable
606         object.
607         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Update
608         interface for changes in OnlineGlomService.
609         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
610         getLayoutListHeaders() to getLayoutListTable() and return
611         LayoutListTable. Using this object allows me to pass other information
612         about the LayoutList like the expected number of rows in the result set.
613         The Connection object from the connection pool is now propperly closed.
614         Only the requested number of lines are returned to the client in
615         getTableData().
616         * src/main/java/org/glom/web/shared/LayoutListTable.java: Move from
617         GlomTable and add columnTitles and numRows.
618
619 2011-02-18  Ben Konrath  <ben@bagu.org>
620
621         Use String arrays instead of GlomTable objects in GlomDocument GWT-RPC object.
622
623         This is a small performance boost. I'll use GlomTable to get the required
624         layoutlist information.
625
626         * src/main/java/org/glom/web/client/OnlineGlom.java:
627         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
628         * src/main/java/org/glom/web/shared/GlomDocument.java:
629
630 2011-02-18  Ben Konrath  <ben@bagu.org>
631
632         Add option to turn off formatting in JDT formatter preferences.
633
634         * .settings/org.eclipse.jdt.core.prefs:
635
636 2011-02-18  Ben Konrath  <ben@bagu.org>
637
638         Rename LayoutList to LayoutListView.
639
640         I'm working towards setting things up to easily use MVP when the time
641         comes.
642
643         * src/main/java/org/glom/web/client/LayoutListView.java: Rename from
644         LayoutList.java.
645         * src/main/java/org/glom/web/client/OnlineGlom.java: Update
646         references.
647
648 2011-02-17  Ben Konrath  <ben@bagu.org>
649
650         Move LayoutListDataProvider class into LayoutList.java.
651
652         * src/main/java/org/glom/web/client/LayoutList.java:
653
654 2011-02-17  Ben Konrath  <ben@bagu.org>
655
656         Rename RPC service classes from LibGlomService* to OnlineGlomService*.
657
658         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Update
659         references.
660         * src/main/java/org/glom/web/client/OnlineGlom.java: Update references.
661         * src/main/java/org/glom/web/client/OnlineGlomService.java: Rename
662         from LibGlomServer.java.
663         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
664         Rename from LibGlomServiceAsync.java.
665         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
666         Rename from LibGlomServiceImpl.java.
667         * src/main/webapp/WEB-INF/web.xml: Update configuration.
668
669 2011-02-17  Ben Konrath  <ben@bagu.org>
670
671         Update JDT settings.
672
673         * .settings/org.eclipse.jdt.core.prefs:
674
675 2011-02-17  Ben Konrath  <ben@bagu.org>
676
677         Move GWT-RPC objects to shared package (where they should be).
678
679         * src/main/java/org/glom/web/client/LibGlomService.java: Update imports.
680         * src/main/java/org/glom/web/client/LibGlomServiceAsync.java: Update imports.
681         * src/main/java/org/glom/web/client/OnlineGlom.java: Update imports.
682         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Update imports.
683         * src/main/java/org/glom/web/shared/GlomDocument.java: Move to
684         org.glom.web.shared package.
685         * src/main/java/org/glom/web/shared/GlomTable.java: Move to
686         org.glom.web.shared package.
687         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml: Included shared
688         directory in compilation to javascript.
689
690 2011-02-16  Ben Konrath  <ben@bagu.org>
691
692         Add sort clause to the sql query that grabs table information.
693
694         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add sort clause
695         if one of the columns is a primary key.
696
697 2011-02-16  Ben Konrath  <ben@bagu.org>
698
699         Disable generateAsync feature of gwt-maven.
700
701         The generated interface does not correctly match the methods in LibGlomService
702         and the generated singleton Util inner-class doesn't respect the servlet
703         mappings.
704
705         * pom.xml: Turn off generateAsync feature.
706         * src/main/java/org/glom/web/client/LibGlomServiceAsync.java: Re-add file
707         with singleton Util inner-class.
708
709 2011-02-14  Ben Konrath  <ben@bagu.org>
710
711         Add LGPL v3 licence notices.
712
713         Followed directions listed here:
714         http://www.gnu.org/licenses/gpl-howto.html
715
716         * COPYING: This file is a copy of the GPL v3.
717         * COPYING.LESSER: This file is a copy of the LGPL v3.
718         * src/main/java/org/glom/web/client/GlomDocument.java: Add licence
719         notice.
720         * src/main/java/org/glom/web/client/GlomTable.java: Add licence
721         notice.
722         * src/main/java/org/glom/web/client/LayoutList.java: Add licence
723         notice.
724         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Add
725         licence notice.
726         * src/main/java/org/glom/web/client/LibGlomService.java: Add licence
727         notice.
728         * src/main/java/org/glom/web/client/OnlineGlom.java: Add licence
729         notice.
730         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add
731         licence notice.
732
733 2011-02-14  Ben Konrath  <ben@bagu.org>
734
735         Use ArrayList instead of Array in GWT-RPC calls.
736
737         Apparently this gives a slight performance boost to the compiled
738         java script.
739
740         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Use ArrayList
741         instead of Array.
742         * src/main/java/org/glom/web/client/LibGlomService.java: Use ArrayList instead
743         of Array.
744
745 2011-02-14  Ben Konrath  <ben@bagu.org>
746
747         Access data from a postgres db rather than the example glom file.
748
749         * .settings/com.google.gwt.eclipse.core.prefs: Change GWT setting to
750         compile down to obfuscated javascript.
751         * pom.xml: Add c3p0 and postgres JDBC libraries.
752         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Return data
753         using a postgres db accessed through the c3p0 connection pooling library.
754
755 2011-02-14  Ben Konrath  <ben@bagu.org>
756
757         Update Java formatter settings.
758
759         * .settings/org.eclipse.jdt.core.prefs: Change comment length to 120.
760
761 2011-02-02  Ben Konrath  <ben@bagu.org>
762
763         Update Eclipse and Maven configs to in preparation for the postgres JDBC jar.
764
765         * .classpath: Change JRE to Java 1.6, remove GWT configuration as we're now
766         using Maven.
767         * .settings/com.google.gwt.eclipse.core.prefs: Don't copy gwt-servlet.jar to
768         the compiled webapp directory that Eclipse uses as we're using Maven now.
769         * .settings/org.eclipse.jdt.core.prefs: Change target platform to Java 1.6.
770         * .settings/org.eclipse.wst.common.project.facet.core.xml: Change Java version
771         to 1.6.
772         * pom.xml: Format file, change target Java version to 1.6.
773
774 2011-02-02  Ben Konrath  <ben@bagu.org>
775
776         Add information about a deployment related issue.
777
778         * README: Add Notes section with the problem outlined.
779
780 2011-02-02  Ben Konrath  <ben@bagu.org>
781
782         Call Glom.libglom_deinit() when the servlet is shutdown.
783
784         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add
785         Glom.libglom_deinit() to destroy() method.
786
787 2011-01-28  Ben Konrath  <ben@bagu.org>
788
789         Use generated Util class to get the RPC Async interface.
790
791         * .settings/com.google.gwt.eclipse.core.prefs: Update generated Eclipse config
792         file.
793         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Use generated
794         getInstance() method to get a reference to the RPC Async interface.
795         * src/main/java/org/glom/web/client/OnlineGlom.java: Use generated
796         getInstance() method to get a reference to the RPC Async interface, remove
797         the now unused getLibGlomServiceProxy() method.
798
799 2011-01-27  Ben Konrath  <ben@bagu.org>
800
801         Cleanup ChangeLog entry from previous commit.
802
803         * ChangeLog: Group logical changes together and add comments.
804
805 2011-01-25  Ben Konrath  <ben@bagu.org>
806
807         Convert to gwt-maven project.
808
809         * .gitignore: Update for new project structure.
810         * README: New file with a link to the online documentation.
811         * pom.xml: The generated maven configuration file with some tweaks.
812
813         Add / update Eclipse settings. These files are a merge of the files that
814         were generated with the gwt-maven plugin and the files we were previously
815         using.
816         * .classpath:
817         * .project:
818         * .settings/.jsdtscope:
819         * .settings/com.google.gdt.eclipse.core.prefs:
820         * .settings/com.google.gwt.eclipse.core.prefs:
821         * .settings/org.eclipse.jdt.core.prefs:
822         * .settings/org.eclipse.wst.common.component:
823         * .settings/org.eclipse.wst.common.project.facet.core.xml:
824         * .settings/org.eclipse.wst.jsdt.ui.superType.container:
825         * .settings/org.maven.ide.eclipse.prefs:
826         * OnlineGlomTest-dev.launch:
827         * OnlineGlomTest-prod.launch:
828
829         Java source files moved from the 'src' directory to the directory structure
830         required by maven.
831         * src/main/java/org/glom/web/client/GlomDocument.java:
832         * src/main/java/org/glom/web/client/GlomTable.java:
833         * src/main/java/org/glom/web/client/LayoutList.java:
834         * src/main/java/org/glom/web/client/LayoutListDataProvider.java:
835         * src/main/java/org/glom/web/client/LibGlomService.java:
836         * src/main/java/org/glom/web/client/OnlineGlom.java:
837         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java:
838
839         Non-functional property file used for translations. I included this as
840         reminder that it's something I need to sort out.
841         * src/main/resources/org/glom/web/client/Messages.properties:
842
843         The OnlineGlom GWT config file moved from the 'src/org/glom/web' directory.
844         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml:
845
846         The servlet configuration files moved from the 'war' directory.
847         * src/main/webapp/OnlineGlom.css:
848         * src/main/webapp/OnlineGlom.html:
849         * src/main/webapp/WEB-INF/web.xml:
850
851         Generated test files with most of the code commented out. I included these
852         so that it's easy to add tests when we're ready for them.
853         * src/test/java/org/glom/web/tests/GwtTestOnlineGlom.java:
854         * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml:
855
856 2011-01-25  Ben Konrath  <ben@bagu.org>
857
858         Remove unused println.
859
860         * src/org/glom/web/server/LibGlomServiceImpl.java:
861
862 2011-01-25  Ben Konrath  <ben@bagu.org>
863
864         Add project specific JDT settings.
865
866         * .settings/org.eclipse.jdt.core.prefs: Generated by Eclipse.
867         * .settings/org.eclipse.jdt.ui.prefs: Generated by Eclipse.
868
869 2011-01-25  Ben Konrath  <ben@bagu.org>
870
871         Populate celltable with example data.
872
873         * src/org/glom/web/client/GlomDocument.java: Correct formatting.
874         * src/org/glom/web/client/GlomTable.java: Correct formatting.
875         * src/org/glom/web/client/LayoutList.java: Renamed from ListLayoutTable.java,
876         add LayoutListDataProvider to CellTable, add simpler pager (not working yet).
877         * src/org/glom/web/client/LayoutListDataProvider.java: New file,
878         asynchronously gets the example data.
879         * src/org/glom/web/client/LibGlomService.java: Add getTableData() method.
880         * src/org/glom/web/client/LibGlomServiceAsync.java: Add getTableData() method.
881         * src/org/glom/web/client/OnlineGlom.java: Allow service proxy object and
882         curently selected table to be retrieved by other widgets.
883         * src/org/glom/web/server/LibGlomServiceImpl.java: Correct formatting,
884         implement getTableData() in a hacky way. This method needs to be updated
885         to grab information from the database when database creating is
886         implemented.
887
888 2011-01-20  Ben Konrath  <ben@bagu.org>
889
890         Set table headers when table dropBox changes.
891
892         * src/org/glom/web/client/GlomDocument.java: Correct some method
893         names.
894         * src/org/glom/web/client/LibGlomService.java: Add method
895         to get list layout field names.
896         * src/org/glom/web/client/LibGlomServiceAsync.java: Add method
897         to get list layout field names.
898         * src/org/glom/web/client/ListLayoutTable.java: New file - composite
899         widget for list layout table.
900         * src/org/glom/web/client/OnlineGlom.java: Add a change handler for
901         the table drop box and add new updateTable() method to asynchronously
902         get the layout list field names for the currently selected table.
903         * src/org/glom/web/server/LibGlomServiceImpl.java: Add server side
904         implementation of getLayoutListHeaders() method.
905         * war/OnlineGlom.html: Remove GlomWebApp div tag as it is not required.
906
907 2011-01-18  Ben Konrath  <ben@bagu.org>
908
909         Make a listBox with table titles instead of the flexTable demo.
910
911         This is the start of something more useful.
912
913         * .classpath: Exclude a bunch of packages from the JVM that are
914         getting in the way of the Eclipse content assist.
915         * src/org/glom/web/client/GlomDocument.java:
916         * src/org/glom/web/client/GlomTable.java:
917         * src/org/glom/web/client/LibGlomService.java:
918         * src/org/glom/web/client/LibGlomServiceAsync.java:
919         * src/org/glom/web/client/OnlineGlom.java:
920         * src/org/glom/web/server/LibGlomServiceImpl.java:
921         * war/OnlineGlom.html:
922         * war/WEB-INF/web.xml:
923
924 211-01-13  Ben Konrath  <ben@bagu.org>
925
926         Update to new java-libglom API.
927
928         * .gitignore: Ignore OnlineGlom.war.
929         * src/org/glom/web/server/TableNamesServiceImpl.java: Update to new java-libglom API.
930
931 2010-12-20  Ben Konrath  <ben@bagu.org>
932
933         Add some basic style to the table listing.
934
935         * src/org/glom/web/client/OnlineGlom.java: Add style to the table
936         header, print useful error message on async callback failure.
937         * war/OnlineGlom.css: Add style for table header, remove defaults
938         provided by the Eclipse project wizard.
939
940 2010-12-20  Ben Konrath  <ben@bagu.org>
941
942         Load example file from installed glom dir.
943
944         * src/org/glom/web/server/TableNamesServiceImpl.java: Use the Java API
945         provided by java-libglom to find the example file.
946
947 2010-12-20  Ben Konrath  <ben@bagu.org>
948
949         Update Eclipse settings.
950
951         * .classpath:
952         * .settings/com.google.gdt.eclipse.core.prefs:
953         * .settings/com.google.gwt.eclipse.core.prefs:
954
955 2010-12-17  Ben Konrath  <ben@bagu.org>
956
957         Initial commit.
958
959         * .classpath: New file.
960         * .gitignore: New file.
961         * .project: New file.
962         * .settings/com.google.gdt.eclipse.core.prefs: New file.
963         * .settings/com.google.gwt.eclipse.core.prefs: New file.
964         * src/org/glom/web/OnlineGlom.gwt.xml: New file.
965         * src/org/glom/web/client/GlomTable.java: New file.
966         * src/org/glom/web/client/OnlineGlom.java: New file.
967         * src/org/glom/web/client/TableNameService.java: New file.
968         * src/org/glom/web/client/TableNameServiceAsync.java: New file.
969         * src/org/glom/web/server/TableNamesServiceImpl.java: New file.
970         * war/OnlineGlom.css: New file.
971         * war/OnlineGlom.html: New file.
972         * war/WEB-INF/web.xml: New file.
973         * war/images/glom.png: New file.