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