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