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