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