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