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