Set group titles with name when title is empty.
[online-glom:gwt-glom.git] / ChangeLog
1 2011-11-16  Ben Konrath  <ben@bagu.org>
2
3         Set group titles with name when title is empty.
4
5         This fixes a problem with an empty notebook tab label in the Lesson
6         Planner document. The forth tab in the notebook should be "Internet":
7
8         http://bagu.org:8080/OnlineGlom/#details:document=lesson-planner&table=teachers&value=0
9
10         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Use
11         libglom's LayoutItem.get_title_or_name() to fill in the LayoutGroup
12         DTO title.
13
14 2011-11-16  Ben Konrath  <ben@bagu.org>
15
16         Remove whitespace from the configured username properties.
17
18         This assumes that usernames won't have whitespace at the beginning
19         or end. But I think this is a reasonable assumption.
20
21         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use
22         String.trim() to remove the whitespace from the username properties.
23
24 2011-11-15  Ben Konrath  <ben@bagu.org>
25
26         Add details view mockup with HTML tables and text entries.
27
28         This is from the attachment on this bug:
29
30         https://bugzilla.gnome.org/show_bug.cgi?id=663109
31
32         * mockups/details-view-html-tables-text-entries.html:
33
34 2011-11-15  Ben Konrath  <ben@bagu.org>
35
36         Add space between the columns of the flow table.
37
38         This fixes:
39
40         https://bugzilla.gnome.org/show_bug.cgi?id=662918
41
42         * src/main/java/org/glom/web/client/ui/details/FlowTable.java: Add a 1%
43         space between columns in the flow table.
44
45 2011-11-15  Ben Konrath  <ben@bagu.org>
46
47         Add backup files to the .gitignore.
48
49         * .gitignore: Ignore files that end with ~.
50
51 2011-11-09  Ben Konrath  <ben@bagu.org>
52
53         Use latest release of gwt-log.
54
55         Gwt-log releases are now being submitted to the maven central
56         repository so manual installation of the jar is no longer required.
57
58         * pom.xml: Update version and groupId of gwt-log dependency.
59
60 2011-10-31  Ben Konrath  <ben@bagu.org>
61
62         Don't use GWT numeric formatting to override the glom currency formatting.
63
64         Currencies are now displayed like they are in Glom. See this bug:
65
66         https://bugzilla.gnome.org/show_bug.cgi?id=646216
67
68         * src/main/java/org/glom/web/client/Utils.java: Remove GWT currency
69         formatting.
70         * src/main/java/org/glom/web/client/ui/cell/NumericCell.java: Add
71         currency code to constructor and set it when the cell is rendered.
72         * src/main/java/org/glom/web/client/ui/list/ListTable.java: Add the
73         currency code to the constructor of the NumericCell.
74
75 2011-10-27  Ben Konrath  <ben@bagu.org>
76
77         Require the latest release of java-libglom (1.17.4).
78
79         * pom.xml:
80
81 2011-10-26  Ben Konrath  <ben@bagu.org>
82
83         Add style to Notebook that matches current theme.
84
85         It's not the best style in the world but it's better than the default.
86
87         * src/main/java/org/glom/web/client/ui/details/Notebook.java: Add some
88         padding at the bottom of the child widgets.
89         * src/main/webapp/style.css: Add style for the Notebook.
90
91 2011-10-26  Ben Konrath  <ben@bagu.org>
92
93         Move servlet initialization code to overridden init method.
94
95         This is half of the solution to getting proper error messages
96         displayed when configuration errors occur. Here's the relevant bug:
97
98         https://bugzilla.gnome.org/show_bug.cgi?id=662792
99
100         The rest of the solution involves surrounding the init method with a
101         try/catch block and setting a global variable with the error /
102         exception. A new async method should be created to retrieve and display
103         the error message / exception.
104
105         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Move
106         code from constructor to init method adding exceptions as needed.
107
108 2011-10-26  Ben Konrath  <ben@bagu.org>
109
110         Add script to monitor and restart tomcat if required.
111
112         * utils/check-and-recover-tomcat.py: New file.
113
114 2011-10-26  Ben Konrath  <ben@bagu.org>
115
116         Display the correct number of data items in the pager.
117
118         This commit fixes:
119
120         https://bugzilla.gnome.org/show_bug.cgi?id=661441
121
122         * src/main/java/org/glom/web/client/ui/list/ListViewTable.java:
123         * src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
124         The implementation is the same for both tables: Keep track of the
125         number of non-empty rows and fire and RowCountChangeEvent after the data has
126         been updated.
127         * src/main/java/org/glom/web/client/ui/list/ListTable.java: Add a
128         custom Pager class that subclasses SimplePager to handle displaying
129         the correct number when empty rows have been added.
130
131 2011-10-26  Ben Konrath  <ben@bagu.org>
132
133         Correct error in previous commit.
134
135         * src/main/java/org/glom/web/client/activity/ListActivity.java: Remove
136         eventBus parameter from listView.setCellTable().
137
138 2011-10-26  Ben Konrath  <ben@bagu.org>
139
140         Fix error in TODO comment.
141
142         * src/main/java/org/glom/web/client/activity/ListActivity.java:
143
144 2011-10-24  Ben Konrath  <ben@bagu.org>
145
146         Create Notebook widgets to the details view.
147
148         This isn't finished just yet - I still need to create a reasonable
149         style to match the current theme.
150
151         * src/main/java/org/glom/web/client/Utils.java: Add method for
152         calculating the height of a widget. This is used in the Notebook class.
153         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Update for
154         new constructor method in Group.
155         * src/main/java/org/glom/web/client/ui/details/Group.java: Add new
156         method for creating child widget that can be used by subclasses
157         like Notebook. New constructor that allows disabling the group
158         titles - Notebooks don't set a group title for their child groups.
159         * src/main/java/org/glom/web/client/ui/details/Notebook.java: New class
160         to make Notebooks using GWT's TabLayoutPanel.
161         * src/main/java/org/glom/web/client/ui/details/Portal.java: New
162         constructor that allows disabling the group titles.
163         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Create the
164         LayoutItemNotebook DTO.
165         * src/main/java/org/glom/web/shared/layout/LayoutItemNotebook.java: New
166         DTO for Notebooks. It's just an empty class for now but we might need
167         it to transfer some specific information in the future.
168
169 2011-10-21  Ben Konrath  <ben@bagu.org>
170
171         Add navigation buttons to related list tables.
172
173         * src/main/java/org/glom/web/client/OnlineGlomService.java:
174         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
175         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add new
176         method getSuitableRecordToViewDetails() for getting the table name
177         and primary key value for related list navigation buttons.
178         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Add
179         private cell renderer class to get the navigation information for
180         related list tables from the server. Extract the navigation
181         processing code from the details cell navigation and use it for the
182         related list navigation as well.
183         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Add private
184         cell renderer class for the details open buttons. This was needed
185         because the related list navigation buttons and the list view
186         navigation buttons need to react differently when clicked.
187         * src/main/java/org/glom/web/client/ui/cell/OpenButtonCell.java: Remove
188         the onEnterKeyDown() method because it's now overriden in the
189         subclasses that are specific to the related list tables and the list
190         view tables.
191         * src/main/java/org/glom/web/client/ui/details/Portal.java: Increase
192         the vertical size a little because the buttons add a bit of vertical
193         space to table. This is not a perfect solution because the vertical
194         size of with table fewer than 5 rows will be a little smaller.
195         * src/main/java/org/glom/web/client/ui/list/ListTable.java: Update for
196         changes in how navigation buttons are handled.
197         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Implement
198         getSuitableRecordToViewDetails() using the new RelatedListNavigation
199         database access object.
200         * src/main/java/org/glom/web/server/database/DBAccess.java: Move code
201         to find the portal for a given relationship name from
202         RelatedListDBAccess. Add method to find a primary key field for a
203         given table.
204         * src/main/java/org/glom/web/server/database/RelatedListDBAccess.java:
205         Move code to find the portal for a given relationship name to
206         DBAccess.
207         * src/main/java/org/glom/web/server/database/RelatedListNavigation.java:
208         New file: database access object for getting the related list
209         navigation information (the table name and the primary key value).
210         * src/main/java/org/glom/web/shared/NavigationRecord.java: New file:
211         DTO for transferring a table name to navigate to and a primary key
212         value.
213         * src/main/java/org/glom/web/shared/layout/LayoutItemPortal.java: Add
214         boolean and getter/setter to specifies if the related list should add
215         navigation buttons.
216
217 2011-10-24  Murray Cumming  <murrayc@murrayc.com>
218
219         Use the master branch of java-libglom
220
221         * pom.xml: Depend on java-libglom 1.19 instead.
222         
223         This is the master branch. See also the libglom-1-18 branch.
224
225 2011-10-11  Ben Konrath  <ben@bagu.org>
226
227         Enable the open navigation button when the data has been set.
228
229         This avoids having active buttons that don't do anything when the data
230         has not been set.
231
232         * src/main/java/org/glom/web/client/ui/details/DetailsCell.java:
233
234 2011-10-11  Ben Konrath  <ben@bagu.org>
235
236         Use IsWidget interface for FlowTableItem.
237
238         * src/main/java/org/glom/web/client/ui/details/FlowTable.java: Change
239         FlowTableItem.getWidget() to asWidget() from the IsWidget interface.
240
241 2011-10-11  Ben Konrath  <ben@bagu.org>
242
243         Remove GWT styling from open button in details view.
244
245         There are still some issues with how the details cell is arranged but
246         this should be made to match Glom 1.20. I'm going to leave fixing this
247         until I have Glom 1.20 up and running.
248
249         * src/main/java/org/glom/web/client/ui/details/DetailsCell.java: Set
250         style name on open button.
251         * src/main/webapp/style.css: Move and edit details-navigation class.
252         Re-arrange some classes to make them appear in the same order as the
253         UI.
254
255 2011-10-07  Ben Konrath  <ben@bagu.org>
256
257         Update to GWT 2.4.0.
258
259         * .gitignore: Ignore new cache directory.
260         * .settings/com.google.gwt.eclipse.core.prefs: Update Eclipse settting.
261         * pom.xml: Change GWT and maven plugin to 2.4.0.
262         * src/main/java/org/glom/web/OnlineGlom.gwt.xml: Update doctype for
263         2.4.0.
264         * src/main/java/org/glom/web/client/ClientFactory.java:
265         * src/main/java/org/glom/web/client/ClientFactoryImpl.java:
266         * src/main/java/org/glom/web/client/OnlineGlom.java:
267         Update source for API changes.
268         * utils/build-onlineglom-war.sh: Remove cache directory before the
269         build.
270
271 2011-10-07  Ben Konrath  <ben@bagu.org>
272
273         Add navigation buttons in the details view.
274
275         This isn't finished but I thought I'd commit what I have as it's a
276         pretty good start. I still need to:
277
278         1. Change the style so that it fits better into the current theme
279         2. Adjust the details cell to expand as much as possible.
280
281         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Add
282         click handlers to navigation buttons in the DetailsCells. Create a
283         refreshData() method to get just the data from the server without the
284         layout.
285         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
286         Update the tableSelector and browser title when the table name
287         changes without using the tableSelector.
288         * src/main/java/org/glom/web/client/ui/DetailsView.java:
289         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Rename
290         getDetailsCells() to getCells(). Update variable names.
291         * src/main/java/org/glom/web/client/ui/details/DetailsCell.java: Add
292         method to set click handler on navigation button. Rename a few
293         variables. Add navigation buttons where needed.
294         * src/main/java/org/glom/web/client/ui/details/Group.java: Rename a few
295         variables and methods.
296         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Set the
297         navigation boolean and navigation table as required in the
298         LayoutItemField DTO.
299         * src/main/java/org/glom/web/shared/layout/LayoutItemField.java: Add
300         variables for navigation along with getter/setter methods.
301
302 2011-10-07  Ben Konrath  <ben@bagu.org>
303
304         Rename Field to DetailsCell.
305
306         This is a refactor-only commit. No functionality has been added or
307         removed.
308
309         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
310         Update variable and method names.
311         * src/main/java/org/glom/web/client/ui/DetailsView.java:
312         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Update
313         variable and method names.
314         * src/main/java/org/glom/web/client/ui/details/DetailsCell.java:
315         Renamed from Field.
316         * src/main/java/org/glom/web/client/ui/details/Group.java: Update
317         variable and method names.
318
319 2011-10-07  Ben Konrath  <ben@bagu.org>
320
321         Create separate methods for layout and data the details view.
322
323         This is a refactor-only commit. No functionality has been added or
324         removed.
325
326         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: New
327         private methods: setData(), createLayout().
328
329 2011-10-07  Ben Konrath  <ben@bagu.org>
330
331         Don't use TableSelectorImpl implementation details in TableSelectorActivity.
332
333         This is part of a change to get navigation buttons in the details view
334         but it should have been done this way from the start.
335
336         * src/main/java/org/glom/web/client/activity/ListActivity.java: Update
337         for method name change in TableSelectionView.
338         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
339         Create TableChangeEvent and set the browser title using the
340         TableSelectionView API.
341         * src/main/java/org/glom/web/client/ui/TableSelectionView.java:
342         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
343         Change getSelectedTable() to getSelectedTableName(). Add
344         getSelectedTableTitle().
345
346 2011-10-07  Ben Konrath  <ben@bagu.org>
347
348         Use primaryKeyValue naming convention in constructor of DetailsPlace.
349
350         * src/main/java/org/glom/web/client/place/DetailsPlace.java:
351
352 2011-10-07  Ben Konrath  <ben@bagu.org>
353
354         Update TableChangeEvent to use newTableName naming convention.
355
356         This makes the class more consistent with GWT naming conventions.
357
358         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
359         Update for method name change in TableChangeEvent.
360         * src/main/java/org/glom/web/client/activity/ListActivity.java: Update
361         for method name change in TableChangeEvent.
362         * src/main/java/org/glom/web/client/event/TableChangeEvent.java: Update
363         newTableName variable and getter method. Make toDebugString()
364         actually work.
365
366 2011-09-30  Ben Konrath  <ben@bagu.org>
367
368         Disable the pager in the list tables when the data row count is less than the minimum.
369
370         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
371         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
372
373 2011-09-30  Ben Konrath  <ben@bagu.org>
374
375         Add empty rows to the end of related list and list view tables.
376
377         I also extracted the cell rendering classes from the ListTable because
378         the code was becoming a little crazy with all the anonymous inner
379         classes. My plan is to use these cell rendering classes in the details
380         view as well so this refactor will be needed for that change.
381
382         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Only
383         set the row count in related list tables if the data has more rows
384         than the minimum number of rows visible.
385         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Only set the
386         row count in list view tables if the data has more rows than the
387         minimum number of rows visible.
388         * src/main/java/org/glom/web/client/ui/cell/BooleanCell.java: New class
389         for rendering TYPE_BOOLEAN cells. The code was extracted from the
390         ListTable class.
391         * src/main/java/org/glom/web/client/ui/cell/NumericCell.java: New class
392         for rendering TYPE_NUMERIC cells. The code was extracted from the
393         ListTable class.
394         * src/main/java/org/glom/web/client/ui/cell/OpenButtonCell.java: New
395         class for rendering cells with buttons in list views. The code was
396         extracted from the ListTable class.
397         * src/main/java/org/glom/web/client/ui/cell/TextCell.java: New class
398         for rendering TYPE_TEXT cells. The code was extracted from the
399         ListTable class.
400         * src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
401         Add empty rows to the end of the data if required. Implement
402         ListTable.getMinNumVisibleRows().
403         * src/main/java/org/glom/web/client/ui/list/ListTable.java: Extract
404         cell renderer code to public classes. Return null in
405         Column.getValue() for empty rows. Add new abstract method:
406         getMinNumVisibleRows(). Move code to set the row count of the list view
407         table to ListViewImpl.
408         * src/main/java/org/glom/web/client/ui/list/ListViewTable.java: Add
409         empty rows to the end of the data if required. Implement
410         ListTable.getMinNumVisibleRows().
411
412
413 2011-09-27  Ben Konrath  <ben@bagu.org>
414
415         Use GWT.log for client-side debugging statements.
416
417         These are optimized out when deployed so I should have used this method
418         in the first place. These statements will eventually be replaced with some sort
419         of notification in the browser.
420
421         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
422         * src/main/java/org/glom/web/client/activity/ListActivity.java:
423         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
424         * src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
425         * src/main/java/org/glom/web/client/ui/list/ListViewTable.java:
426
427 2011-09-27  Ben Konrath  <ben@bagu.org>
428
429         Put tableselector on the right, back to list link on right.
430
431         The idea is that the table selector is acting like a label for the
432         currently displayed table so it should be placed below the document title. This
433         puts the table title in a similar position to where it is in Glom.
434
435         * mockups/details-contacts.html:
436         * mockups/details-projects.html:
437         * mockups/listview-contacts.html:
438         * mockups/listview-projects.html:
439         * mockups/style.css:
440         Update mockups to match how the interfaces currently look.
441         * src/main/webapp/style.css: Swap positions of backlink with the table
442         selector. Add some space on the left side of the table selector to
443         line things up with the document title.
444
445 2011-09-27  Ben Konrath  <ben@bagu.org>
446
447         Add field colouring to details view.
448
449         This change re-works how field colouring works. The colour formatting
450         information is now set to the client with the layout information instead of
451         with the data. This eliminates the need to send the same colour strings for
452         data in list view column when colour information is set.
453
454         In order to set an alternate colour for negative numeric values, the
455         number is now sent to client and formatted with the GWT NumberFormat class.
456
457         This change also fixes:
458
459         https://bugzilla.gnome.org/show_bug.cgi?id=659752
460
461         * src/main/java/org/glom/web/OnlineGlom.gwt.xml: Add the GWT
462         internationalization framework which is needed for client side numeric
463         formatting.
464         * src/main/java/org/glom/web/client/Utils.java: New file for some
465         client static utility methods.
466         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Pass
467         the DataItem object to the Field class. Use a utility method to
468         create the foreignKeyValue string.
469         * src/main/java/org/glom/web/client/ui/details/Field.java: Set
470         alignment and text colours in the constructor. Add setData(DataItem)
471         method. Remove setText(String) method.
472         * src/main/java/org/glom/web/client/ui/list/ListTable.java: Add the
473         colour information to GlomTextCell. Create and use GlomNumberCell for
474         rendering numbers. Use utility method to get the string for the
475         primary key of the key provider. Re-work how the horizontal alignment
476         is set.
477         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Add
478         formatting to layout information. Methods for converting the libglom
479         formatting information were moved from DBAccess.
480         * src/main/java/org/glom/web/server/database/DBAccess.java: Remove
481         numeric formatting (it's now done on the client side). Don't set text
482         colours in DataItem. Move libglom formatting conversion methods to
483         ConfiguredDocument.
484         * src/main/java/org/glom/web/shared/DataItem.java: Remove fields and
485         getters/setters for text colour information.
486         * src/main/java/org/glom/web/shared/GlomNumericFormat.java: New file
487         for transferring the libglom NumericFormat information to the client.
488         * src/main/java/org/glom/web/shared/layout/Formatting.java: Add fields
489         and getters/setters for: GlomNumericFormat, background colour and
490         foreground colour strings.
491
492 2011-09-26  Ben Konrath  <ben@bagu.org>
493
494         Simplify code that iterates through the LayoutGroup.
495
496         * src/main/java/org/glom/web/client/ui/list/ListTable.java:
497
498 2011-09-26  Ben Konrath  <ben@bagu.org>
499
500         Accept Eclipse formatting for OnlineGlomServiceAsync.
501
502         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
503
504 2011-09-26  Ben Konrath  <ben@bagu.org>
505
506         Don't use the ListDBAccess classes to get the primary key layout information.
507
508         This was causing a bug where the wrong index for the hidden primary key
509         was being sent to the client.
510
511         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Find the
512         primary key while creating the LayoutGroup DTO. Create a
513         LayoutItemField DTO for hidden primary keys. Don't use the
514         RelatedListDBAccess because it was only used for getting the primary
515         key.
516         * src/main/java/org/glom/web/server/database/DBAccess.java: Change the
517         access modifier from public to protected for getPrimaryKeyField() and
518         getPrimaryKeyLayoutItemField().
519         * src/main/java/org/glom/web/server/database/ListDBAccess.java: Remove
520         abstract method getExpectedResultSize() because RelatedListDBAccess
521         doesn't have enough info to implement it.
522         * src/main/java/org/glom/web/server/database/ListViewDBAccess.java:
523         Remove @Override for getExpectedResultSize().
524         * src/main/java/org/glom/web/server/database/RelatedListDBAccess.java:
525         Remove method getExpectedResultSize().
526
527 2011-09-23  Ben Konrath  <ben@bagu.org>
528
529         Log which layout (list or details) the ignored item is from.
530
531         * src/main/java/org/glom/web/server/ConfiguredDocument.java:
532
533 2011-09-23  Ben Konrath  <ben@bagu.org>
534
535         Remove annotations that turn off code formatting in DataItem.
536
537         * src/main/java/org/glom/web/shared/DataItem.java:
538
539 2011-09-23  Ben Konrath  <ben@bagu.org>
540
541         Rename GlomField to DataItem and update associated methods.
542
543         This is a rename-only refactor. No functionality has been added or
544         removed.
545
546         * src/main/java/org/glom/web/client/OnlineGlomService.java:
547         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
548         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
549         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
550         * src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
551         * src/main/java/org/glom/web/client/ui/list/ListTable.java:
552         * src/main/java/org/glom/web/client/ui/list/ListViewTable.java:
553         * src/main/java/org/glom/web/server/ConfiguredDocument.java:
554         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
555         * src/main/java/org/glom/web/server/database/DBAccess.java:
556         * src/main/java/org/glom/web/server/database/DetailsDBAccess.java:
557         * src/main/java/org/glom/web/server/database/ListDBAccess.java:
558         * src/main/java/org/glom/web/server/database/ListViewDBAccess.java:
559         * src/main/java/org/glom/web/server/database/RelatedListDBAccess.java:
560         * src/main/java/org/glom/web/shared/DataItem.java:
561         * src/main/java/org/glom/web/shared/DetailsLayoutAndData.java:
562         * src/main/java/org/glom/web/shared/layout/LayoutGroup.java:
563
564 2011-09-23  Ben Konrath  <ben@bagu.org>
565
566         Rename GlomDocument to DocumentInfo and update associated methods.
567
568         This is a rename-only refactor. No functionality has been added or
569         removed.
570
571         * src/main/java/org/glom/web/client/OnlineGlomService.java:
572         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
573         * src/main/java/org/glom/web/client/activity/ListActivity.java:
574         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
575         * src/main/java/org/glom/web/server/ConfiguredDocument.java:
576         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
577         * src/main/java/org/glom/web/shared/DocumentInfo.java:
578
579 2011-09-20  Ben Konrath  <ben@bagu.org>
580
581         Require java-libglom 1.17.3.
582
583         This picks up the fix for the seg fault problem with the Scenes table
584         in the Openismus Film Manager example.
585
586         * pom.xml:
587
588 2011-09-20  Ben Konrath  <ben@bagu.org>
589
590         Change the way sort clause is added for primary key when no sort clause is requested.
591
592         The primary key is now added to the LayoutFieldVector (fieldsToGet)
593         before the sort clause is created. When a sort clause is not requested, the
594         sort clause is created by finding the primary key in the LayoutFieldVector
595         (fieldsToGet).
596
597         * src/main/java/org/glom/web/server/database/ListDBAccess.java:
598
599 2011-09-20  Ben Konrath  <ben@bagu.org>
600
601         Log error message if no documents are found in the configured directory.
602
603         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Also:
604         Extract the glom file extension string to a private static final class
605         variable (mostly as syntactic sugar). Accept a minor formatting change.
606         * src/main/resources/onlineglom.properties: Add '/glomfile' to end of
607         the example glom.document.directory configuration property to make it
608         more clear that it can any directory, not just the home directory.
609
610 2011-09-18  Ben Konrath  <ben@bagu.org>
611
612         Add related lists to details view.
613
614         The related list table has support for paging and sorting just like the
615         table in the list view.
616
617         * pom.xml: Require java-libglom 1.17.2 for the new methods to build the
618         SQL queries for the related list tables.
619         * src/main/java/org/glom/web/client/OnlineGlomService.java:
620         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
621         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
622         Rename getList methods to getListView and add comments. Remove
623         getDetailsLayout() as it's not used anymore. Add note to getDetailsData() about
624         it being unused. Add methods: getDetailsLayoutAndData(),
625         getSortedRelatedListData(), getRelatedListData(), getRelatedListRowCount()
626         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
627         Create the layout and set the data for the fields in one async call
628         instead of two. Create related lists where appropriate.
629         * src/main/java/org/glom/web/client/activity/ListActivity.java: Changes
630         for method name changes in OnlineGlomService.
631         * src/main/java/org/glom/web/client/ui/DetailsView.java:
632         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Rename
633         addLayoutGroup() to addGroup(). Add methods to get the DTOs for the
634         visible UI objects.
635         * src/main/java/org/glom/web/client/ui/ListView.java:
636         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Remove
637         tableName from setCellTable(). Create a ListViewTable instead of
638         ListTable.
639         * src/main/java/org/glom/web/client/ui/details/Field.java: New class to
640         represent a data field in the details view.
641         * src/main/java/org/glom/web/client/ui/details/Group.java: Move to code
642         from addDetailsCell() to Field class. Keep track of the Fields and
643         Portals in the details view.
644         * src/main/java/org/glom/web/client/ui/details/Portal.java: Make portal
645         a little bigger to match Glom. Keep track of the LayoutItemPortal DTO
646         and add a method to get it. Add method to set the contents of the
647         portal.
648         * src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
649         New class for related list tables. This class has the data provider
650         for the related list table.
651         * src/main/java/org/glom/web/client/ui/list/ListTable.java: Change to
652         abstract class which is the base class for the ListViewTable and the
653         RelatedListTable.
654         * src/main/java/org/glom/web/client/ui/list/ListViewTable.java:
655         New class for list view tables. This class has the data provider for
656         the list view table.
657         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Add
658         methods for related list tables. Add more information to the
659         LayoutItemField and LayoutItemPortal DTOs.
660         * src/main/java/org/glom/web/server/database/DetailsDBAccess.java:
661         Remove debugging print statement.
662         * src/main/java/org/glom/web/server/database/ListDBAccess.java:
663         Remove debugging print statements. Add primary key field to SQL count
664         query.
665         * src/main/java/org/glom/web/server/database/ListViewDBAccess.java:
666         Remove unnecessary LayoutFieldVector parameter from
667         getResultSizeOfSQLQuery() method.
668         * src/main/java/org/glom/web/server/database/RelatedListDBAccess.java:
669         New class for related list table database access.
670         * src/main/java/org/glom/web/shared/DetailsLayoutAndData.java: New
671         class that is a wrapper DTO for details view layout and data.
672         * src/main/java/org/glom/web/shared/layout/LayoutItemPortal.java: Add
673         new 'fromField' string to this DTO.
674         * src/main/webapp/style.css: Remove bottom margin and override top
675         margin with 0em.
676
677 2011-09-15  Ben Konrath  <ben@bagu.org>
678
679         Breakup the OnlineGlomServiceImpl class to make it more manageable.
680
681         This sets things up to make it easier to add the data retrieval for
682         related lists (portals). No user noticeable changes were made with
683         this commit.
684
685         * src/main/java/org/glom/web/server/ConfiguredDocument.java: This
686         class has the code to retrieve the layouts and access the
687         database using the new database helper classes.
688         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
689         Most of the functionality has been removed from this class. This
690         class now represents the public interface for the client side
691         code. It also deals with configuring the servlet and cleaning
692         things up when the servlet is stopped.
693         * src/main/java/org/glom/web/server/Utils.java: Extract a couple
694         of static methods into this utility class.
695         * src/main/java/org/glom/web/server/database/DBAccess.java:
696         * src/main/java/org/glom/web/server/database/DetailsDBAccess.java:
697         * src/main/java/org/glom/web/server/database/ListDBAccess.java:
698         * src/main/java/org/glom/web/server/database/ListViewDBAccess.java:
699         These classes have the database retrieval code. The class hierarchy
700         has been setup to make it easy to reuse code for similar
701         functionality.
702
703 2011-09-06  Ben Konrath  <ben@bagu.org>
704
705         Create separate classes for list table code and the data provider.
706
707         As part of this refactor, I also split up the code a bit to make it
708         more manageable.
709
710         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Move list
711         table code to two new classes (below).
712         * src/main/java/org/glom/web/client/ui/list/ListTable.java: New file
713         with code from ListViewImpl.
714         * src/main/java/org/glom/web/client/ui/list/ListTableDataProvider.java:
715         New file with code from ListViewImpl.
716
717 2011-09-06  Ben Konrath  <ben@bagu.org>
718
719         Change the LayoutItemPortal DTO to extend LayoutGroup instead of LayoutItem.
720
721         This fixes the LayoutItemPortal DTO to match the libglom layout object
722         hierarchy.
723
724         * src/main/java/org/glom/web/shared/layout/LayoutItemPortal.java:
725
726 2011-09-01  Ben Konrath  <ben@bagu.org>
727
728         Set title of Portals in the Details View.
729
730         * pom.xml: Bump required version of java-libglom to 1.17.1.
731         * src/main/java/org/glom/web/client/ui/details/Group.java: Move Portal
732         widget creation to its own class. Add comments to constructor.
733         * src/main/java/org/glom/web/client/ui/details/Portal.java: New file.
734         The code is mostly from the Group class with the title now set.
735         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set
736         title of Portal. Update some comments. Fix some code formatting.
737
738 2011-09-01  Ben Konrath  <ben@bagu.org>
739
740         Remove TODO comment for the flow table column width.
741
742         The flow table column width is working correctly and doesn't need to be
743         changed. See this mailing list post for more info:
744
745         https://mail.gnome.org/archives/glom-devel-list/2011-August/msg00017.html
746
747         * src/main/java/org/glom/web/client/ui/details/FlowTable.java:
748
749 2011-08-27  Ben Konrath  <ben@bagu.org>
750
751         Add document title (database name) to top of the browser page.
752
753         I added the document title to the TableSelecitonView but that will
754         change if / when we add a view that doesn't require table selection.
755
756         * mockups/details-contacts.html:
757         * mockups/details-projects.html:
758         * mockups/listview-contacts.html:
759         * mockups/listview-projects.html:
760         * mockups/style.css: Add document title to mockups to keep things
761         consistent.
762         * src/main/java/org/glom/web/client/OnlineGlom.java: Adjust LayoutPanel
763         sizes to account for the document title.
764         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
765         Set the document title when it has been retrieved from the server.
766         * src/main/java/org/glom/web/client/ui/TableSelectionView.java:
767         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java: Add
768         and implement setDocumentTitle(String) method.
769         * src/main/webapp/style.css: Add ID for document title style.
770
771 2011-08-25  Ben Konrath  <ben@bagu.org>
772
773         Add NavigationType enum to LayoutItemPortal DTO.
774
775         This is the start of adding support for Portals to the Details View.
776
777         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Convert
778         LayoutItem_Portal.navigation_type enum from libglom to
779         LayoutItemPortal.NavigationType enum.
780         * src/main/java/org/glom/web/shared/layout/LayoutItemPortal.java: Add
781         NavigationType enum, field for storing the NavigationType and getter
782         and setter methods.
783
784 2011-08-25  Ben Konrath  <ben@bagu.org>
785
786         Implement the flow table layout in the Details View.
787
788         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Change
789         FlowTable to Group to account for the renamed class.
790         * src/main/java/org/glom/web/client/ui/details/FlowTable.java: New
791         File. This is a container widget that implements the Glom details view
792         flow table behaviour.
793         * src/main/java/org/glom/web/client/ui/details/Group.java: Moved from
794         org/glom/web/client/ui/FlowTable.java.
795         * src/main/webapp/style.css: Adjust bottom margin of the subgroup-title
796         so that the size of the subgroups are a closer match to the size of
797         the Glom subgroups. This makes the flowtable layout match the layout
798         in Glom for the Music Collection example file.
799
800 2011-08-16  Ben Konrath  <ben@bagu.org>
801
802         Create container element for LayoutItemPortal in Details View.
803
804         This will help me develop the layout for the FlowTable.
805
806         * src/main/java/org/glom/web/client/ui/FlowTable.java: Also rename
807         fieldPanel variable to detailsCell.
808
809 2011-08-15  Ben Konrath  <ben@bagu.org>
810
811         Set the height of the data element in the Details View.
812
813         I changed the InlineLabels (text in a span element) to Labels (text in
814         a div element) so that I could set the height of the details-data
815         elements instead of the details-cell parent elements. This allows the
816         the details-data element to display the correct height if style is
817         applied that shows the height.
818
819         This change has the added benefit of allowing the order of the labels
820         and data elements to be changed for right-to-left languages.
821
822         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Change
823         InlineLabels to Labels.
824         * src/main/java/org/glom/web/client/ui/FlowTable.java: Change
825         InlineLabels to Labels. Set the height of the data element.
826         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set the
827         multiline text height in the Formatting DTO.
828         * src/main/java/org/glom/web/shared/layout/Formatting.java: Add field
829         for multiline height along with getter and setter methods.
830         * src/main/webapp/style.css: Adjust style to account for the change
831         from span elements to div elements in the details cell.
832
833 2011-08-15  Ben Konrath  <ben@bagu.org>
834
835         Make the List View appearance match the mockups.
836
837         It doesn't match exactly but it's much better than it was.
838
839         * mockups/listview-contacts.html: Remove unused css classes.
840         * mockups/listview-projects.html: Remove unused css classes.
841         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Display 15
842         rows instead of 20. Rename vPanel to mainPanel. Use FlowPanel (div)
843         for mainPanel instead of VerticalPanel (table). Set style name on
844         CellTable. Set style name on Details column. Right-align Details
845         buttons.
846         * src/main/webapp/style.css: Adjust properties to match the mockups.
847
848 2011-08-12  Ben Konrath  <ben@bagu.org>
849
850         Add better support for subgroups in the details view.
851
852         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Update for
853         changed FlowTable constructor.
854         * src/main/java/org/glom/web/client/ui/FlowTable.java: Add better
855         support for subgroups and subgroup-titles.
856         * src/main/webapp/style.css: Add CSS class for subgroups and
857         subgroup-titles.
858
859 2011-08-12  Ben Konrath  <ben@bagu.org>
860
861         Return the top level LayoutGroup title.
862
863         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
864
865 2011-08-11  Ben Konrath  <ben@bagu.org>
866
867         Make the TableSelector header match the mockup.
868
869         * src/main/java/org/glom/web/client/OnlineGlom.java: Add a margin to
870         the layout panel. Properly lineup the table selection header with
871         the list and details view.
872         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Remove the
873         margin around the details view.
874         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
875         Rename listBox variable to tableSelector. Set id for the style sheet.
876         Use a FlowPanel instead of a HorizontalPanel.
877         * src/main/webapp/style.css: Add properties to make the TableSelector
878         box match the mockups.
879
880 2011-07-13  Ben Konrath  <ben@bagu.org>
881
882         Update install script for java-libglom version change.
883
884         * utils/install-onlineglom-war.sh: Also exit if 'make check' in
885         java-libglom fails.
886
887 2011-07-13  Ben Konrath  <ben@bagu.org>
888
889         Add support sub-group in the details view.
890
891         I also removed the code that special-cased the default details view
892         layout. See:
893
894         http://mail.gnome.org/archives/glom-devel-list/2011-July/msg00005.html
895
896         I still have to make a proper flowtable.
897
898         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
899         Don't special-case default details view layout.
900         * src/main/java/org/glom/web/client/ui/DetailsView.java: Remove
901         addLayoutField() as I'm going to use it.
902         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Extract
903         GroupPanel to FlowTable class. Remove unimplemented addLayoutField()
904         method.
905         * src/main/java/org/glom/web/client/ui/FlowTable.java: New class
906         extracted from DetailsViewImpl.GroupPanel. Add support for
907         sub-groups.
908         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set
909         column count when getting the details layout.
910
911 2011-07-12  Ben Konrath  <ben@bagu.org>
912
913         Set browser title with database and table titles.
914
915         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
916         Set the browser title when the table changes and when the activity
917         first starts.
918         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set
919         title when retrieving document info (the GlomDocument object).
920         * src/main/java/org/glom/web/shared/GlomDocument.java: Add title field
921         with getter and setter methods. Remove unused convenience constructor.
922         Use default code formatting.
923
924 2011-07-12  Ben Konrath  <ben@bagu.org>
925
926         Ignore LayoutItemPortals in the details view.
927
928         I added a new DTO for the LayoutItemPortal so that I can ignore it in
929         the client code.
930
931         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Ignore
932         LayoutItemPortal layout objects.
933         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Create
934         LayoutItemPortal objects when retrieving the details layout.
935         * src/main/java/org/glom/web/shared/layout/LayoutItemPortal.java: New
936         file. This is an empty class and just used to get type information for
937         now.
938
939 2011-07-12  Ben Konrath  <ben@bagu.org>
940
941         Use java-libglom 1.17.0.
942
943         * pom.xml:
944
945 2011-07-11  Ben Konrath  <ben@bagu.org>
946
947         Remove "Table:" label from table selector.
948
949         This matches a recent change in the Glom UI.
950
951         * mockups/details-contacts.html:
952         * mockups/details-projects.html:
953         * mockups/listview-contacts.html:
954         * mockups/listview-projects.html: Remove the "Table:" label from the
955         mockups as well.
956         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
957
958 2011-07-11  Ben Konrath  <ben@bagu.org>
959
960         Add main groups to the details view.
961
962         This makes things look a little nicer in the details view. The next step
963         is to implement the flowtable.
964
965         * src/main/java/org/glom/web/OnlineGlom.gwt.xml: Inherit only the
966         resources from the standard gwt css theme. Standard.css is now
967         included in OnlineGlom.html so that the online glom css rules have
968         precedence over the gwt theme.
969         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Pass
970         the whole LayoutGroup to the DetailsView instead of just the titles.
971         * src/main/java/org/glom/web/client/ui/DetailsView.java:
972         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java: Create the
973         details layout with a helper class (GroupPanel). I might extract this
974         class when I make the full flowtable.
975         * src/main/java/org/glom/web/shared/layout/LayoutItem.java: Add empty
976         string as default so I don't have to worry about NPEs when processing
977         the layout objects.
978         * src/main/webapp/OnlineGlom.html: Add the gwt standard css file (see
979         note beside OnlineGlom.gwt.xml above).
980         * src/main/webapp/style.css: Add default font-size to body to override
981         the font-size set by the standard theme. Don't use h2 tags for
982         group-title. Create new details-cell class.
983
984 2011-07-08  Murray Cumming  <murrayc@murrayc.com>
985
986         ConfiguredDocument: Set the port number too.
987
988         * src/main/java/org/glom/web/server/ConfiguredDocument.java
989         (ConfiguredDocument.ConfiguredDocument): Get the port number from the 
990         Glom document. Presumably this worked sometimes so far because there is a 
991         default port number.
992
993 2011-07-08  Murray Cumming  <murrayc@murrayc.com>
994
995         ConfiguredDocument: Warn that sqlite and self-hosting are not supported.
996
997         * src/main/java/org/glom/web/server/ConfiguredDocument.java
998         (ConfiguredDocument.ConfiguredDocument): Check that the hosting mode is 
999         correct, though we should throw an exception too.
1000
1001 2011-07-08  Murray Cumming  <murrayc@murrayc.com>
1002
1003         Fix a addDocuemnt typo.
1004
1005         * src/main/java/org/glom/web/shared/Documents.java
1006         (Documents.addDocuemnt): Rename to addDocument().
1007         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java
1008         (OnlineGlomServiceImpl.getDocuments): Adapt.
1009         
1010 2011-07-08  Murray Cumming  <murrayc@murrayc.com>
1011
1012         Slightly improved log output when connection fails.
1013
1014         * src/main/java/org/glom/web/server/ConfiguredDocument.java
1015         (ConfiguredDocument.setUsernameAndPassword):
1016         We don't know for sure if it' the username/password that's wrong, so 
1017         rephrase the message.
1018         Also ouput the exception message, though it's generic in this case.
1019
1020 2011-07-08  Ben Konrath  <ben@bagu.org>
1021
1022         Cleanup comments.
1023
1024         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Also
1025         added braces to a one line if statement because the Eclipse formatter
1026         was getting confused.
1027
1028 2011-07-07  Ben Konrath  <ben@bagu.org>
1029
1030         Update project config files for Eclipse 3.7 and use GWT 2.3.0.
1031
1032         These should really be two separate tasks but I counldn't get things to
1033         work with GWT 2.2.0 and Eclipse 3.7.
1034
1035         * .classpath:
1036         * .project:
1037         * .settings/org.eclipse.jdt.core.prefs:
1038         * .settings/org.eclipse.jdt.ui.prefs:
1039         * .settings/org.eclipse.ltk.core.refactoring.prefs:
1040         * .settings/org.eclipse.m2e.core.prefs:
1041         Add new config files. Update current files. Remove references to the
1042         webtools plugins as we're not using any of the webtools features.
1043         * .gitignore: Add logs directory which is created when running with
1044         'mvn gwt:run'.
1045         * pom.xml: Update to GWT 2.3.0. Eclipse configuration was automatically added.
1046         * src/main/java/org/glom/web/OnlineGlom.gwt.xml: Moved from
1047         src/main/resources/org/glom/web/OnlineGlom.gwt.xml as per this known
1048         limitation:
1049         http://mojo.codehaus.org/gwt-maven-plugin/eclipse/google_plugin.html#Limitations
1050
1051 2011-07-07  Murray Cumming  <murrayc@murrayc.com>
1052
1053         onlineglom.properties: Add explanatory comments.
1054
1055         * src/main/resources/onlineglom.properties: Also change the default user 
1056         from ben to someuser, to avoid the risk of people thinking we just 
1057         stupidly hard-coded a locale path, when they see that on stderr or in a log.
1058
1059 2011-06-28  Ben Konrath  <ben@bagu.org>
1060
1061         Use filename in Log for incorrect passwords.
1062
1063         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Add
1064         getFileName(String) method to get the filename from the URI.
1065
1066 2011-06-28  Ben Konrath  <ben@bagu.org>
1067
1068         Add the table name to the URL token for the ListPlace.
1069
1070         This makes things consistent between the DetailsPlace and the
1071         ListPlace. It also allows the the ListPlace to be bookmarked.
1072
1073         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1074         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1075         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1076         Remove getDefaultListLayout(). The default layout is now returned
1077         by the getListLayout() method when the table name is an empty string.
1078         * src/main/java/org/glom/web/client/activity/ListActivity.java:
1079         Add table name field. Change to a new ListPlace when the table
1080         has been changed. Use getListLayout() for getting the default
1081         list layout.
1082         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
1083         Add table name field. Set the correct table name in the list box
1084         when loading from bookmark. This corrects a problem for the
1085         DetailsPlace too.
1086         * src/main/java/org/glom/web/client/place/DetailsPlace.java:
1087         Move table name to super-class (HasSelectableTable). Move document
1088         and table URL keys to super-class in HasSelectableTable.
1089         * src/main/java/org/glom/web/client/place/HasSelectableTablePlace.java:
1090         Add table name field. Add Tokenizer class with URL key common to
1091         the subclasses (DetailsPlace and ListPlace).
1092         * src/main/java/org/glom/web/client/place/ListPlace.java:
1093         Add table name. Add code to parse the URL token.
1094         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.java:
1095         Update ListPlace construction with empty table name string.
1096         * src/main/java/org/glom/web/client/ui/TableSelectionView.java:
1097         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
1098         Change setTableSelectedIndex(int) to setSelectedTableName(String).
1099         Update ListPlace construction with table name string.
1100         * src/main/java/org/glom/web/shared/layout/LayoutGroup.java:
1101         Change defaultTableName field to tableName to reflect how it's now
1102         used. Update the getter and setter methods.
1103
1104 2011-06-28  Ben Konrath  <ben@bagu.org>
1105
1106         Enable the table selector in the DetailsView.
1107
1108         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1109         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1110         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1111         Remove getDefaultDetailsLayout(). The default layout is now returned
1112         by the getDetailsLayout() method when the table name is an empty
1113         string.
1114         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Add
1115         event handler for table change event. Change to using
1116         getDetailsLayout() for the default details layout.
1117         * src/main/java/org/glom/web/client/place/DetailsPlace.java: Add table
1118         name to URL token.
1119         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Use table
1120         when navigating to the details place.
1121
1122 2011-06-27  Ben Konrath  <ben@bagu.org>
1123
1124         Use filename based unique document ID in URL and for RPC.
1125
1126         The document ID is the glom document name with spaces (' ') replaced
1127         with pluses ('+') and without the .glom extension.
1128
1129         This change is mostly a string substitution of 'documentTitle' for
1130         'documentID'. The only code change is the addition of a Documents DTO to get the
1131         filename to document title mappings as indicated below.
1132
1133         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1134         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1135         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
1136         * src/main/java/org/glom/web/client/activity/DocumentSelectionActivity.java:
1137         Use Documents DTO to create the document links in the document
1138         selection view.
1139         * src/main/java/org/glom/web/client/activity/ListActivity.java:
1140         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
1141         * src/main/java/org/glom/web/client/place/DetailsPlace.java:
1142         * src/main/java/org/glom/web/client/place/HasSelectableTablePlace.java:
1143         * src/main/java/org/glom/web/client/place/ListPlace.java:
1144         * src/main/java/org/glom/web/client/ui/DocumentSelectionView.java:
1145         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.java:
1146         * src/main/java/org/glom/web/client/ui/ListView.java:
1147         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
1148         * src/main/java/org/glom/web/client/ui/TableSelectionView.java:
1149         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
1150         * src/main/java/org/glom/web/server/Log.java:
1151         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
1152         getDocumentTitles() to getDocuments() and return the Documents DTO.
1153         * src/main/java/org/glom/web/shared/Documents.java: New DTO for
1154         transferring the filename to document title mappings.
1155
1156 2011-06-25  Ben Konrath  <ben@bagu.org>
1157
1158         Make the authentication popup work again.
1159
1160         This bug was introduced when I extracted ConfiguredDocument to its own class.
1161
1162         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Return the
1163         correct success / fail status in setUsernameAndPassword().
1164
1165 2011-06-25  Ben Konrath  <ben@bagu.org>
1166
1167         Use filename as unique key for configuring database usernames and passwords.
1168
1169         This replaces the use of the Glom document title which could change
1170         depending on the locale. Thanks to Murray Cumming for pointing out this
1171         problem.
1172
1173         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1174         * src/main/resources/onlineglom.properties:
1175
1176 2011-06-24  Ben Konrath  <ben@bagu.org>
1177
1178         Pass primary key value to DetailsView.
1179
1180         This enables the DetailsView to load the correct data.
1181
1182         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Add
1183         primary key value field and set in constructor. Pass primary key
1184         value to getDetailsData().
1185         * src/main/java/org/glom/web/client/place/DetailsPlace.java: Add URL
1186         variables for document title and primary key value.
1187         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Pass primary
1188         key value to the DetailsPlace.
1189
1190 2011-06-24  Ben Konrath  <ben@bagu.org>
1191
1192         Add primary key index to LayoutGroup DTO and add ProvidesKey to CellTable.
1193
1194         This allows the primary key to be retrieved by the Details button. This
1195         functionality has not been implemented yet but it's in the works.
1196
1197         * src/main/java/org/glom/web/client/activity/ListActivity.java: Pass
1198         the LayoutGroup result to ListView.setCellTable instead of all of its
1199         fields individually.
1200         * src/main/java/org/glom/web/client/ui/ListView.java:
1201         * src/main/java/org/glom/web/client/ui/ListViewImpl.java: Use
1202         LayoutGroup as parameter for setCellTable. Add ProvidesKey to CellTable
1203         get the primary key for the table.
1204         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set the
1205         index of the primary key in the LayoutGroup accounting for hidden
1206         primary keys. Rename getJavaNumberFormat() to
1207         convertToJavaNumberFormat() for consistency. Cleanup / add some
1208         comments.
1209         * src/main/java/org/glom/web/shared/layout/LayoutGroup.java: Add a
1210         field for primary key index and a field to indicate whether the
1211         primary key is hidden or not.
1212
1213 2011-06-23  Ben Konrath  <ben@bagu.org>
1214
1215         Rename getTableData methods to getListData.
1216
1217         This is a rename refactor for consistency with other methods.
1218
1219         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1220         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1221         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
1222         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1223
1224 2011-06-23  Ben Konrath  <ben@bagu.org>
1225
1226         Extract the ConfiguredDocument innerclass into its own class.
1227
1228         This makes the servlet code more object oriented.
1229
1230         * src/main/java/org/glom/web/server/ConfiguredDocument.java: Extracted
1231         from private ConfiguredDocument class in OnlineGlomServiceImpl.
1232         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use the
1233         new ConfiguredDocument class.
1234
1235 2011-06-21  Ben Konrath  <ben@bagu.org>
1236
1237         Use the LayoutGroup group for the list layout instead of ColumnInfo and LayoutListTable.
1238
1239         This makes things more inline with how libglom works and reduces code
1240         duplication. This refactor lays the groundwork for adding the primary key to
1241         the LayoutGroup object.
1242
1243         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1244         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1245         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1246         Change method names to getListLayout and getDefaultListLayout for
1247         consistency. Use LayoutGroup as the DTO for the list layout instead of
1248         ColumnInfo and LayoutListTable.
1249         * src/main/java/org/glom/web/client/activity/ListActivity.java: Use the
1250         new method names along with the LayoutGroup object for transferring the
1251         list layout.
1252         * src/main/java/org/glom/web/client/ui/ListView.java:
1253         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
1254         Use ArrayList<LayoutItem> instead of ColumnInfo[] in setCellTable().
1255         * src/main/java/org/glom/web/shared/ColumnInfo.java: Deleted. Replaced
1256         with LayoutGroup.
1257         * src/main/java/org/glom/web/shared/LayoutListTable.java: Deleted.
1258         Replaced with LayoutGroup.
1259         * src/main/java/org/glom/web/shared/layout/LayoutGroup.java: Add
1260         expectedResultSize and defaultTableName fields which are needed for
1261         the list layout.
1262         * src/main/java/org/glom/web/shared/layout/LayoutItemField.java: Add
1263         type field which is needed for the list layout but will also be
1264         useful for the details layout as things progress.
1265         * src/main/java/org/glom/web/shared/layout/LayoutItemWithFormatting.java:
1266         Make class abstract. Remove the unnecessary
1267         getFormattingHorizontalAlignment method. Add setFormatting method.
1268
1269 2011-06-16  Ben Konrath  <ben@bagu.org>
1270
1271         Add scripts for building and installing war.
1272
1273         These will help when updating OnlineGlom but they're also good
1274         supplemental documentation of the build and deployment proceeding.
1275
1276         * utils/build-onlineglom-war.sh: New file.
1277         * utils/install-onlineglom-war.sh: New file.
1278
1279 2011-06-16  Ben Konrath  <ben@bagu.org>
1280
1281         Create wrapper class to create consistent log messages.
1282
1283         I wrapped methods in the Log class of gwt-log to add the method names
1284         from the servlet and create consistent formatting of the document title
1285         and table names in the log messages.
1286
1287         * src/main/java/org/glom/web/server/Log.java: New file with wrapped methods.
1288         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Convert all
1289         log methods to use methods from wrapped Log class.
1290
1291 2011-06-16  Ben Konrath  <ben@bagu.org>
1292
1293         Remove superfluous conditional return.
1294
1295         Thanks to Murray Cumming for pointing this out!
1296
1297         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1298
1299 2011-06-15  Ben Konrath  <ben@bagu.org>
1300
1301         Return an ArrayList of LayoutGroups for the Details layout.
1302
1303         This corrects a problem with the details layout as it can have more
1304         than one top level LayoutGroup.
1305
1306         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1307         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Change
1308         method name from get*DetailsLayoutGroup to get*DetailsLayout. Return
1309         an ArrayList<LayoutGroup> in the get*DetailsLayout methods.
1310         * src/main/java/org/glom/web/client/activity/DetailsActivity.java: Deal
1311         with ArrayList of LayoutGroups for the details view layout.
1312         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
1313         method name from get*DetailsLayoutGroup to get*DetailsLayout. Return an
1314         ArrayList<LayoutGroup> in the get*DetailsLayout methods. Inline
1315         getTableFieldsToShowForSequence() into getFieldsToShowForSQLQuery() to simplify
1316         the code a bit. Rename getTableFieldsToShowForSequenceAddGroup() to
1317         getFieldsToShowForSQLQueryAddGroup() to try to keep things more consistent.
1318
1319 2011-06-14  Ben Konrath  <ben@bagu.org>
1320
1321         Use cast_dynamic method to determine the libglom LayoutItem type.
1322
1323         This is better than finding the LayoutItem type by using the string
1324         returned from the get_part_type_name() method.
1325
1326         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1327
1328 2011-06-14  Ben Konrath  <ben@bagu.org>
1329
1330         Add method names to log entries in the servlet.
1331
1332         This helps when tracking down deployment problems.
1333
1334         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1335
1336 2011-06-14  Ben Konrath  <ben@bagu.org>
1337
1338         Add data to the DetailsView using a hard-coded primary key value.
1339
1340         The layout and functionality of the DetailsView is not complete. This
1341         is just a checkpoint so the patch doesn't get too big.
1342
1343         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1344         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1345         Add getDetailsData() servlet method.
1346         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
1347         Add RPC to getDetailsData(). Change the way the LayoutGroups and
1348         LayoutFields are added to the DetailsView.
1349         * src/main/java/org/glom/web/client/ui/DetailsView.java:
1350         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java:
1351         Add setData() method. Change addLayoutGroup() and addLayoutField() to
1352         take the string for the title instead of the object.
1353         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1354         Add implementation getDetailsData() along with some private helper
1355         methods.
1356         * src/main/webapp/style.css: Add padding to details-data class. Add a
1357         details-label class with the same padding as the details-data class.
1358
1359 2011-06-03  Ben Konrath  <ben@bagu.org>
1360
1361         Use presenter.goTo() to change to the DetailsPlace.
1362
1363         This will make things easier when we need to open the DetailsView with
1364         data specific to the row that was clicked.
1365
1366         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
1367
1368 2011-06-02  Ben Konrath  <ben@bagu.org>
1369
1370         Add CSS file from mockups.
1371
1372         I'm adding this now because it's going to be useful to have when
1373         developing the DetailsView. The TableSelectionView and ListView aren't
1374         setup properly yet.
1375
1376         * src/main/webapp/OnlineGlom.html:
1377         * src/main/webapp/style.css:
1378
1379 2011-06-02  Ben Konrath  <ben@bagu.org>
1380
1381         Use String.isEmpty() to check for empty string.
1382
1383         * src/main/java/org/glom/web/client/activity/ListActivity.java:
1384
1385 2011-06-02  Ben Konrath  <ben@bagu.org>
1386
1387         Display main layout group titles in the DetailsView.
1388
1389         This is the start of the DetailsActivity/DetailsView implementation.
1390
1391         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1392         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1393         Add getDetailsLayoutGroup() and getDefaultDetailsLayoutGroup() methods.
1394         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
1395         Get the layout information for the details view from the server and set
1396         the main layout group titles.
1397         * src/main/java/org/glom/web/client/ui/DetailsView.java:
1398         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java:
1399         Add addLayoutGroup() and addLayoutField() methods. This are just
1400         temporary methods for creating the the details view that will change
1401         in the future.
1402         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1403         Implement getDetailsLayoutGroup() and getDefaultDetailsLayoutGroup()
1404         methods.
1405         * src/main/java/org/glom/web/shared/layout/Formatting.java:
1406         * src/main/java/org/glom/web/shared/layout/LayoutGroup.java:
1407         * src/main/java/org/glom/web/shared/layout/LayoutItem.java:
1408         * src/main/java/org/glom/web/shared/layout/LayoutItemField.java:
1409         * src/main/java/org/glom/web/shared/layout/LayoutItemWithFormatting.java:
1410         Data Transfer Objects that mimic the libglom object structure. These are
1411         used for transferring the details layout but could also be used for
1412         transferring the list layout.
1413
1414 2011-05-27  Ben Konrath  <ben@bagu.org>
1415
1416         Reset the AuthenticationPopup when clearing the ListView.
1417
1418         * src/main/java/org/glom/web/client/activity/ListActivity.java:
1419
1420 2011-05-27  Ben Konrath  <ben@bagu.org>
1421
1422         Fix problem with onlineglom.properties file loading.
1423
1424         The old way worked in Eclipse but not on the server. Loading the
1425         onlineglom.properties file now works in Eclipse and on the server.
1426
1427         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1428
1429 2011-05-24  Ben Konrath  <ben@bagu.org>
1430
1431         Update gwt-log from 3.1.0 to 3.1.2.
1432
1433         Gwt-log 3.1.0 has been marked as depreciated.
1434
1435         * pom.xml:
1436
1437 2011-05-24  Ben Konrath  <ben@bagu.org>
1438
1439         Add comment to ListActivity.goTo() method.
1440
1441         * src/main/java/org/glom/web/client/activity/ListActivity.java:
1442
1443 2011-05-24  Ben Konrath  <ben@bagu.org>
1444
1445         Remove FIXME in convertGdkColorToHtmlColour()
1446
1447         The Gdk::Color value returned by libglom is 16-bits per channel on both
1448         64 and 32-bit platforms.
1449
1450         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1451
1452 2011-05-19  Ben Konrath  <ben@bagu.org>
1453
1454         Improve performance of initial ListView load.
1455
1456         I removed a round trip to the server for getting the default table name
1457         and then requesting information about that table. This also removes a potential
1458         problem with the table change handler not being setup in time to receive the
1459         table change event from the ListActivity.
1460
1461         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1462         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
1463         getDefaultLayoutListTable() method. Improve comments.
1464         * src/main/java/org/glom/web/client/activity/ListActivity.java: Use
1465         getDefaultLayoutListTable() method instead of firing a table change
1466         event to get the table to load.
1467         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
1468         implementation of getDefaultLayoutListTable() method.
1469         * src/main/java/org/glom/web/shared/LayoutListTable.java: Add field for
1470         table name.
1471
1472 2011-05-19  Ben Konrath  <ben@bagu.org>
1473
1474         Override toDebugString() in TableChangeEvent.
1475
1476         This is useful to have for debugging.
1477
1478         * src/main/java/org/glom/web/client/event/TableChangeEvent.java:
1479
1480 2011-05-19  Ben Konrath  <ben@bagu.org>
1481
1482         Add a "Back to List" link when at the DetailsPlace.
1483
1484         * src/main/java/org/glom/web/client/activity/ListActivity.java:
1485         Populate the CellTable based on the selected table of the ListBox if
1486         it's set otherwise use the default table. This allows the "Back to
1487         List" link to work.
1488         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
1489         Remove Place from constructors. Add a setPlace() method. Add
1490         goToPlace() method. Set class as presenter for TableSelectionView.
1491         * src/main/java/org/glom/web/client/mvp/TableSelectionActivityMapper.java:
1492         Use the same TableSelectionActivity when switching between the List and
1493         Details Places.
1494         * src/main/java/org/glom/web/client/place/DetailsPlace.java:
1495         Subclass the new HasSelectableTablePlace. This removes some duplicate
1496         code.
1497         * src/main/java/org/glom/web/client/place/HasSelectableTablePlace.java:
1498         New class to represent Places that display the TableSelectionView.
1499         * src/main/java/org/glom/web/client/place/ListPlace.java:
1500         Subclass the new HasSelectableTablePlace. This removes some duplicate
1501         code.
1502         * src/main/java/org/glom/web/client/ui/TableSelectionView.java:
1503         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
1504         Add Presenter interface. Add setBackLinkVisible() method. Add
1505         setBackLink() method.
1506
1507 2011-05-18  Ben Konrath  <ben@bagu.org>
1508
1509         Enable the "Details" buttons.
1510
1511         Right now only an empty details view is displayed.
1512
1513         * src/main/java/org/glom/web/client/ClientFactory.java:
1514         * src/main/java/org/glom/web/client/ClientFactoryImpl.java:
1515         Add DetailsView to ClientFactory.
1516         * src/main/java/org/glom/web/client/activity/DetailsActivity.java:
1517         A basic activity for the details view.
1518         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
1519         Add a new constructor that takes a DetailsPlace. Rename shutdown() to
1520         clearView().
1521         * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
1522         Add DetailsPlace.Tokenizer to the list of tokens that are generated by
1523         GWT.
1524         * src/main/java/org/glom/web/client/mvp/DataActivityMapper.java:
1525         Create a new DetailsActivity when a DetailsPlace is requested. Remove
1526         unnecessary super() in constructor.
1527         * src/main/java/org/glom/web/client/mvp/TableSelectionActivityMapper.java:
1528         Create a new TableSelectionActivity when a DetailsPlace is requested. We
1529         really shouldn't create a new TableSelectionActivity for both the ListPlace
1530         and the DetailsPlace so this should be considered a temporary solution.
1531         * src/main/java/org/glom/web/client/place/DetailsPlace.java:
1532         New file. Represents a URL for the details view.
1533         * src/main/java/org/glom/web/client/ui/DetailsView.java:
1534         * src/main/java/org/glom/web/client/ui/DetailsViewImpl.java:
1535         A basic details view interface and implementation.
1536         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
1537         Enable the "Details" buttons.
1538
1539 2011-05-12  Ben Konrath  <ben@bagu.org>
1540
1541         Use a LayoutPanel with multiple display areas for main layout.
1542
1543         This is mostly a refactor in that there are no changes from the user
1544         point of view. These changes are required so that we can swap out the list view
1545         with the details view when the user clicks the "Details" button.
1546
1547         * src/main/java/org/glom/web/client/ClientFactory.java:
1548         * src/main/java/org/glom/web/client/ClientFactoryImpl.java: Remove
1549         OnlineGlomView. Add TableSelectionView, ListView and
1550         AuthenticationPopup.
1551         * src/main/java/org/glom/web/client/OnlineGlom.java: Use LayoutPanel
1552         for main layout. Add display regions for main activities. Add
1553         activity manager for for main activities.
1554         * src/main/java/org/glom/web/client/activity/ListActivity.java: New
1555         file from parts of the deleted OnlineGlomActivity.
1556         * src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
1557         New file from parts of the deleted OnlineGlomActivity.
1558         * src/main/java/org/glom/web/client/event/TableChangeEvent.java:
1559         * src/main/java/org/glom/web/client/event/TableChangeEventHandler.java:
1560         New files for app wide table change event.
1561         * src/main/java/org/glom/web/client/mvp/DataActivityMapper.java:
1562         * src/main/java/org/glom/web/client/mvp/DocumentSelectionActivityMapper.java:
1563         * src/main/java/org/glom/web/client/mvp/TableSelectionActivityMapper.java:
1564         Activity mappers for the main activities replace the deleted app-wide
1565         AppActivityMapper.
1566         * src/main/java/org/glom/web/client/ui/AuthenticationPopup.java:
1567         Fix a spelling error in he comment.
1568         * src/main/java/org/glom/web/client/ui/ListView.java:
1569         * src/main/java/org/glom/web/client/ui/ListViewImpl.java:
1570         Renamed from LayoutListView and modified for MVP. This still not a
1571         proper dumb view as prescribed by the MVP pattern but it works for now.
1572         * src/main/java/org/glom/web/client/ui/TableSelectionView.java:
1573         * src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
1574         New widget stripped out of the deleted OnlineGlomView.
1575         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1576         Remove hack that is fixed by this patch.
1577
1578 2011-05-06  Ben Konrath  <ben@bagu.org>
1579
1580         Rename OnlineGlomPlace to ListPlace.
1581
1582         The only change besides the rename is that url will now display #list
1583         instead of #Document.
1584
1585         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
1586         * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java:
1587         * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
1588         * src/main/java/org/glom/web/client/place/ListPlace.java:
1589         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.java:
1590
1591 2011-05-06  Ben Konrath  <ben@bagu.org>
1592
1593         Use Presenter for app navigation.
1594
1595         This is the proper way to deal with Place (URL) changes with the MVP
1596         framework.
1597
1598         * src/main/java/org/glom/web/client/ClientFactory.java:
1599         * src/main/java/org/glom/web/client/ClientFactoryImpl.java: Remove
1600         PlaceHistoryMapper and PlaceHistoryHandler.
1601         * src/main/java/org/glom/web/client/OnlineGlom.java: Re-add
1602         PlaceHistoryMapper and PlaceHistoryHandler.
1603         * src/main/java/org/glom/web/client/activity/DocumentSelectionActivity.java:
1604         Don't use getHistoryMapper().getToken(place) to create the hyperlinks.
1605         * src/main/java/org/glom/web/client/ui/DocumentSelectionView.java:
1606         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.java:
1607         Add Presenter interface and setPresenter methods. Rename addHyperLink
1608         to addDocumentLink taking only the document title as a parameter.
1609
1610 2011-04-14  Ben Konrath  <ben@bagu.org>
1611
1612         Prompt for db username/password if they haven't been set.
1613
1614         This is implemented with a popup widget that is contained within the
1615         OnlineGlomView and managed by the OnlineGlomActivity.
1616
1617         * src/main/java/org/glom/web/client/OnlineGlomService.java: Two new
1618         methods for checking and setting the database username and password.
1619         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Two
1620         new methods for checking and setting the database username and
1621         password.
1622         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
1623         Display authentication popup if the JDBC connection to the database
1624         has not been authenticated.
1625         * src/main/java/org/glom/web/client/ui/AuthenticationPopup.java: New
1626         file.
1627         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Add methods
1628         for dealing with the authentication popup.
1629         * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java:
1630         Implement the methods for dealing with the authentication popup.
1631         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Don't
1632         try to executed queries if the database connection hasn't been
1633         authenticated. Implement methods for checking and setting the
1634         database username and password.
1635
1636 2011-04-12  Ben Konrath  <ben@bagu.org>
1637
1638         Make log messages a little clearer.
1639
1640         Add a dash betweeen the document title and the table name.
1641
1642         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1643
1644 2011-04-12  Ben Konrath  <ben@bagu.org>
1645
1646         Protect against NPEs when cleaning up database resources.
1647
1648         While this isn't strictly necessary because the exception is caught,
1649         not protecting against the NPEs makes it harder to find the real error
1650         in the log file.
1651
1652         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1653
1654 2011-04-12  Ben Konrath  <ben@bagu.org>
1655
1656         Move configuration of the servlet to the constructor.
1657
1658         The servlet will be initialized even if the database authentication
1659         information is not set or correct. I still need to add the UI for prompting
1660         the user for the authentication information when it's required.
1661
1662         * src/main/java/org/glom/web/client/OnlineGlomService.java: Add
1663         javadocs for getDocumentTitles() method.
1664         * src/main/java/org/glom/web/client/activity/DocumentSelectionActivity.java:
1665         Set error message when RPC fails.
1666         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Get the
1667         glom files directory from the configuration file. Try to set the
1668         database authentication information for the specific document if it's
1669         set and works otherwise try to use the global authentication
1670         information set for the directory.
1671         * src/main/resources/onlineglom.properties: Moved from
1672         src/main/webapp/WEB-INF/OnlineGlom.properties. Updated with new keys.
1673         Added detailed comments for the new keys.
1674
1675 2011-04-11  Ben Konrath  <ben@bagu.org>
1676
1677         Remove unnecessary @Override in DocumentSelectionViewImpl.
1678
1679         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.java:
1680
1681 2011-04-11  Ben Konrath  <ben@bagu.org>
1682
1683         Remove center alignment in DocumentSelectionView.
1684
1685         The title element is still centred but the document titles and bottom
1686         sentence are both left-aligned.
1687
1688         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.ui.xml:
1689
1690 2011-04-11  Ben Konrath  <ben@bagu.org>
1691
1692         Change 'Demo' naming convention to 'Document'.
1693
1694         This is just a rename refactor with no functional changes to the code.
1695
1696         * src/main/java/org/glom/web/client/ClientFactory.java:
1697         * src/main/java/org/glom/web/client/ClientFactoryImpl.java:
1698         * src/main/java/org/glom/web/client/OnlineGlom.java:
1699         * src/main/java/org/glom/web/client/OnlineGlomService.java:
1700         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1701         * src/main/java/org/glom/web/client/activity/DocumentSelectionActivity.java:
1702         * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java:
1703         * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
1704         * src/main/java/org/glom/web/client/place/DocumentSelectionPlace.java:
1705         * src/main/java/org/glom/web/client/ui/DocumentSelectionView.java:
1706         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.java:
1707         * src/main/java/org/glom/web/client/ui/DocumentSelectionViewImpl.ui.xml:
1708         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1709
1710 2011-04-08  Ben Konrath  <ben@bagu.org>
1711
1712         Remove FIXME from safeLongToInt() method.
1713
1714         Libglom uses longs on 32-bit and 64-bit platforms so it's ok to use
1715         this method.
1716
1717         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1718
1719 2011-04-08  Ben Konrath  <ben@bagu.org>
1720
1721         Display an error if no glom documents are found in the specified directory.
1722
1723         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
1724         * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
1725         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
1726         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1727
1728 2011-04-08  Ben Konrath  <ben@bagu.org>
1729
1730         Add copyright header to one more file ... oops.
1731
1732         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
1733
1734 2011-04-08  Ben Konrath  <ben@bagu.org>
1735
1736         Add copyright header to files without it.
1737
1738         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
1739         * src/main/java/org/glom/web/client/place/DemoSelectionPlace.java:
1740         * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
1741         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
1742         * src/main/java/org/glom/web/shared/ColumnInfo.java:
1743         * src/main/java/org/glom/web/shared/GlomField.java:
1744
1745 2011-04-08  Ben Konrath  <ben@bagu.org>
1746
1747         Add support for accessing multiple glom documents in the servlet.
1748
1749         This completes the demo selection functionality.
1750
1751         * src/main/java/org/glom/web/client/OnlineGlomService.java: Add
1752         document title to methods.
1753         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
1754         document title to methods.
1755         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
1756         Set browser window title when the activity starts. Correct name of
1757         document title variable.
1758         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
1759         Set browser window title when the activity starts. Set the table
1760         selector change handler after table selector has been set. Clear the
1761         OnlineGlomView when the activity has been stopped.
1762         * src/main/java/org/glom/web/client/place/OnlineGlomPlace.java: Use the
1763         document title as the place token. Use "#Document:" instead of
1764         "#OnlineGlomPlace:" in the URL.
1765         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.ui.xml:
1766         Change heading to "Online Glom"
1767         * src/main/java/org/glom/web/client/ui/LayoutListView.java: Use
1768         document title in RPC methods.
1769         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Remove
1770         setDocumentTitle() method. Add clear() method.
1771         * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: Remove
1772         setDocumentTitle() method. Implement clear() method which removes the
1773         change handler on the ListBox, clears the ListBox and clears the
1774         DataPanel.
1775         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1776         Implement methods with document title. Keep track for the configured
1777         glom documents and their corresponding JDBC configurations in a hash
1778         table. This information is retrieved using the document title as the
1779         key in the hash table.
1780         * src/main/java/org/glom/web/shared/GlomDocument.java: Remove
1781         document title field as it's no longer needed.
1782
1783 2011-04-08  Ben Konrath  <ben@bagu.org>
1784
1785         Update the Eclipse JDT configuration.
1786
1787         * .settings/org.eclipse.jdt.ui.prefs: Automatically add comments to new
1788         methods. Automatically add the copyright header to new files.
1789
1790 2011-04-05  Ben Konrath  <ben@bagu.org>
1791
1792         Add new page for demo selection.
1793
1794         This patch adds all the components required to view and start an
1795         OnlineGlom demo by clicking on the desired hyperlink. The user is
1796         able to return to the demo selection page with the browser's back
1797         button. I still need to modify the servlet to work with multiple
1798         documents so all demo links will load the file defined in the
1799         OnlineGlom.properties.
1800
1801         * .gitignore: Add .gwt which holds the error log for the GWT UiBuidler.
1802         This is only useful during development so we don't need to save it.
1803         * src/main/java/org/glom/web/client/ClientFactory.java: Add method to
1804         get a reference to the DemoSelectionView.
1805         * src/main/java/org/glom/web/client/ClientFactoryImpl.java: Implement
1806         method to get a reference to the DemoSelectionView.
1807         * src/main/java/org/glom/web/client/OnlineGlom.java: Change the
1808         default view to DemoSelectionView.
1809         * src/main/java/org/glom/web/client/OnlineGlomService.java: Add method
1810         to get glom document titles for glom files in a hard-coded directory.
1811         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
1812         method to get glom document titles for glom files in a hard-coded
1813         directory.
1814         * src/main/java/org/glom/web/client/activity/DemoSelectionActivity.java:
1815         Presenter for DemoSelectionView.
1816         * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java: Update
1817         for DemoSelectionView.
1818         * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
1819         Update for DemoSelectionView.
1820         * src/main/java/org/glom/web/client/place/DemoSelectionPlace.java:
1821         Basic 'Place' implementation for the DemoSelectionView.
1822         * src/main/java/org/glom/web/client/ui/DemoSelectionView.java:
1823         The interface for the DemoSelectionView.
1824         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.java:
1825         The implementation of the DemoSelectionView.
1826         * src/main/java/org/glom/web/client/ui/DemoSelectionViewImpl.ui.xml:
1827         The GWT UiBuilder xml file used in DemoSelectionViewImpl.
1828         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
1829         implementation of method to get glom document titles for glom files
1830         in a hard-coded directory.
1831         * src/main/webapp/OnlineGlom.html: Remove link to CSS file as it's
1832         on longer being used.
1833         * src/main/webapp/glom.png: Glom logo.
1834
1835 2011-04-05  Ben Konrath  <ben@bagu.org>
1836
1837         Move RPC code from OnlineGlomViewImpl to OnlineGlomActivity.
1838
1839         This is the forth and final commit of a refactor that will allow
1840         OnlineGlom to be used with multiple documents.
1841
1842         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
1843         Move RPC code from OnlineGlomViewImpl to this class.
1844         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Add methods
1845         to inferface.
1846         * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: Move
1847         RPC code to the presenter class (the P in MVP).
1848
1849 2011-04-04  Ben Konrath  <ben@bagu.org>
1850
1851         Start moving the existing OnlineGlom code to MVP.
1852
1853         This work is based on the GWT MVP framework that is documented here:
1854
1855         https://code.google.com/webtoolkit/doc/2.2/DevGuideMvpActivitiesAndPlaces.html
1856
1857         This is the third commit of a refactor that will allow OnlineGlom to
1858         be used with multiple documents.
1859
1860         * src/main/java/org/glom/web/client/ClientFactory.java: New file.
1861         Interface for client factory which is used to get instances of various
1862         classes throughout the app.
1863         * src/main/java/org/glom/web/client/ClientFactoryImpl.java: New file.
1864         Implementation of client factory.
1865         * src/main/java/org/glom/web/client/OnlineGlom.java: Add code to
1866         initialize the MVP framework.
1867         * src/main/java/org/glom/web/client/activity/OnlineGlomActivity.java:
1868         New file. Activity manager for the main container widget. This is the
1869         Presenter in MVP.
1870         * src/main/java/org/glom/web/client/mvp/AppActivityMapper.java: New file.
1871         Maps place (URL) to its corresponding activity.
1872         * src/main/java/org/glom/web/client/mvp/AppPlaceHistoryMapper.java:
1873         New file. This is just a place holder for a generated file.
1874         * src/main/java/org/glom/web/client/place/OnlineGlomPlace.java:
1875         New file. Represents the URL for the main Online Glom app.
1876         * src/main/java/org/glom/web/client/ui/LayoutListView.java: Update
1877         for changes in LayoutListViewImpl.
1878         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java: Create
1879         interface for View. Move code to OnlineGlomViewImpl class.
1880         * src/main/java/org/glom/web/client/ui/OnlineGlomViewImpl.java: New
1881         file. Implementation of OnlineGlomView.
1882         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml: Add Activity and
1883         Place resources. Use ClientFactoryImpl by default.
1884
1885 2011-04-04  Ben Konrath  <ben@bagu.org>
1886
1887         Move View classes to their own package.
1888
1889         This is the second commit of a refactor that will allow OnlineGlom to
1890         be used with multiple documents.
1891
1892         * src/main/java/org/glom/web/client/OnlineGlom.java:
1893         * src/main/java/org/glom/web/client/ui/LayoutListView.java:
1894         * src/main/java/org/glom/web/client/ui/OnlineGlomView.java:
1895
1896 2011-04-02  Ben Konrath  <ben@bagu.org>
1897
1898         Move UI code from the main module to its own class.
1899
1900         This is the first commit of a refactor that will allow OnlineGlom to be
1901         used with multiple documents.
1902
1903         * src/main/java/org/glom/web/client/LayoutListView.java: Update
1904         references to OnlineGlom to OnlineGlomView.
1905         * src/main/java/org/glom/web/client/OnlineGlom.java: Move code to
1906         OnlineGlomView and instantiate it here.
1907         * src/main/java/org/glom/web/client/OnlineGlomView.java: New class that
1908         represents the main OnlineGlomView with one document.
1909
1910 2011-04-01  Ben Konrath  <ben@bagu.org>
1911
1912         Fix formatting of gwt.xml and add DTD.
1913
1914         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml:
1915
1916 2011-03-30  Ben Konrath  <ben@bagu.org>
1917
1918         Propperly convert gdkColor string to html colour string.
1919
1920         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1921
1922 2011-03-28  Ben Konrath  <ben@bagu.org>
1923
1924         Change implementation of OnlineGlomServiceImpl.getColumnInfoHorizontalAlignment().
1925
1926         This implementation matches
1927         OnlineGlomServiceImpl.getColumnInfoGlomFieldType(), should perform better, is more
1928         readable and is not tied to Swig.
1929
1930         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1931
1932 2011-03-28  Ben Konrath  <ben@bagu.org>
1933
1934         Use read-only checkboxes for boolean field types.
1935
1936         * src/main/java/org/glom/web/client/LayoutListView.java: Create columns
1937         in the CellTable based on the field type. It currently only
1938         distinguishes between boolean and text columns but I'll need to add
1939         support for more types.
1940         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Set the
1941         column type in the ColumnInfo object. Add method to convert between the
1942         glom field type enum in ColumnInfo and the glom field type in libglom.
1943         * src/main/java/org/glom/web/shared/ColumnInfo.java: Add support for
1944         field type.
1945         * src/main/java/org/glom/web/shared/GlomField.java: Add support for
1946         getting and setting booleans.
1947
1948 2011-03-25  Ben Konrath  <ben@bagu.org>
1949
1950         Don't get the Date twice from the ResultSet.
1951
1952         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1953
1954 2011-03-25  Ben Konrath  <ben@bagu.org>
1955
1956         Cleanup code in the servlet.
1957
1958         * TODO: Remove item about row count. Add item about testing row count
1959         query with large number of rows.
1960         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Fix
1961         spelling mistakes, change method parameter to be consistent with
1962         other methods.
1963
1964 2011-03-25  Ben Konrath  <ben@bagu.org>
1965
1966         Add server side logging with the gwt-log library.
1967
1968         * .gitignore: Ignore the log file we're now producing.
1969         * TODO: Add a couple TODO item for logging.
1970         * pom.xml: Add gwt-log and log4j as a dependency.
1971         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
1972         logging of errors, warnings and some important info.
1973         * src/main/resources/log4j.properties: New file to configure log4j.
1974
1975 2011-03-24  Ben Konrath  <ben@bagu.org>
1976
1977         Add a disable button for the Details view.
1978
1979         * src/main/java/org/glom/web/client/LayoutListView.java:
1980
1981 2011-03-22  Ben Konrath  <ben@bagu.org>
1982
1983         Use a count query to get the number of rows for the list view pager.
1984
1985         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
1986
1987 2011-03-22  Ben Konrath  <ben@bagu.org>
1988
1989         Add more TODO information about CellTable pager positioning. 
1990
1991         * TODO:
1992
1993 2011-03-19  Ben Konrath  <ben@bagu.org>
1994
1995         Add TODO item about CellTable pager positioning.
1996
1997         * TODO:
1998
1999 2011-03-18  Ben Konrath  <ben@bagu.org>
2000
2001         Remove unneeded GlomFieldColumn class.
2002
2003         This is just a small code cleanup.
2004
2005         * src/main/java/org/glom/web/client/LayoutListView.java:
2006
2007 2011-03-18  Ben Konrath  <ben@bagu.org>
2008
2009         Use cursor mode in the query that gets data for the list view.
2010
2011         I still need to fix the potential memory problem when getting the row
2012         count for the list view.
2013
2014         * TODO: Add note about testing memory usage with large data sets. Add
2015         item about fixing row counting with large data sets.
2016         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Put the
2017         PostgreSQL JDBC driver into cursor mode when getting data for the
2018         list view.
2019
2020 2011-03-15  Ben Konrath  <ben@bagu.org>
2021
2022         Remove the GWT Container from the Eclipse build classpath.
2023
2024         The GWT dependencies are set by Maven so this isn't needed.
2025
2026         * .classpath:
2027
2028 2011-03-15  Murray Cumming  <murrayc@murrayc.com>
2029
2030         Added some earlier mockups to git, but not to the tarball dist.
2031
2032         * mockups/: Added some mockups from 2010-02 by Daniel Borgmann for
2033         Openismus. These hopefully show how we might structure the HTML so that
2034         it can be styled easily with CSS. However, we probably need to adapt them
2035         for the CSS structure that GWT dictates for common widgets.
2036
2037 2011-03-14  Ben Konrath  <ben@bagu.org>
2038
2039         Locate OnlineGlom.properties using the ServletContext.
2040
2041         This is required to be able to locate the file in the deployed servlet.
2042
2043         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2044         Configure the database and glom document in in a helper method so
2045         that the ServletContext can be used to locate OnlineGlom.properties.
2046         * src/main/webapp/WEB-INF/OnlineGlom.properties: Moved from
2047         src/main/webapp. This is the proper location for .properites files.
2048
2049 2011-03-12  Ben Konrath  <ben@bagu.org>
2050
2051         Add note to README about why we're compiling down to obfuscated JavaScript.
2052
2053         * README:
2054
2055 2011-03-11  Ben Konrath  <ben@bagu.org>
2056
2057         Use properties file to configure servlet.
2058
2059         This allows people to change the glom file path, db username and db
2060         password without recompiling the code.
2061
2062         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2063         * src/main/webapp/OnlineGlom.properties:
2064
2065 2011-03-11  Ben Konrath  <ben@bagu.org>
2066
2067         Use table fields in layout list view if the layout list is not defined.
2068
2069         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2070         Manually create a LayoutFieldVector for the query builder using the
2071         table fields when a layout list is not defined in the glom file.
2072
2073 2011-03-11  Ben Konrath  <ben@bagu.org>
2074
2075         Only show FIXME string for images when there's an image.
2076
2077         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Also included
2078         in this change are some small code cleanups.
2079
2080 2011-03-11  Ben Konrath  <ben@bagu.org>
2081
2082         Set text for fields with TYPE_IMAGE and TYPE_INVALID to avoid NPEs.
2083
2084         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2085
2086 2011-03-11  Ben Konrath  <ben@bagu.org>
2087
2088         Correctly set the index of the default table.
2089
2090         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2091         Correctly set the index of the default table. Add commented out example
2092         file paths.
2093
2094 2011-03-10  Ben Konrath  <ben@bagu.org>
2095
2096         Add comment to pom.xml about the previous change.
2097
2098         * pom.xml: Add comment about the deployment issue so that it's obvious
2099         why java-libglom is set to the provided scope.
2100
2101 2011-03-10  Ben Konrath  <ben@bagu.org>
2102
2103         Change java-libglom dependency from compile to provided in pom.xml.
2104
2105         Since java-libglom uses jni it can only be loaded once and therefore
2106         must be placed in $CATALINA_HOME/lib and not included in each war.
2107         This directory is defined as /usr/share/tomcat6/lib/ on Ubuntu 10.04.
2108         More information about this issue can be found in the Tomcat 6 release
2109         notes in the "JNI Based Applications" section:
2110
2111         http://tomcat.apache.org/tomcat-6.0-doc/RELEASE-NOTES.txt
2112
2113         * README: Remove note about this issue. Deployment info should really
2114         be on the wiki anyway so I'll add it right now.
2115         * pom.xml: Change java-libglom dependency from compile to provided so
2116         that it's copied in to the packaged war.
2117
2118 2011-03-09  Ben Konrath  <ben@bagu.org>
2119
2120         Change to using a neutral locale for currency, date and time formatting.
2121
2122         This solves the problem of currency values being represented without a
2123         space between the currency code and the number (e.g. "EUR5.89" is now
2124         represented as "EUR 5.89"). More work is required when we implement
2125         a locale preference setting.
2126
2127         * TODO: Add note about currency formatting issues with different
2128         locales.
2129         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
2130         to using the neutral ROOT locale.
2131
2132 2011-03-09  Ben Konrath  <ben@bagu.org>
2133
2134         Add support for currency codes that are not ISO 4217 codes.
2135
2136         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use
2137         the currency code defined in the glom file when it's not 3 characters
2138         long or when Java doesn't recognize the string as an ISO 4217 code.
2139
2140 2011-03-08  Ben Konrath  <ben@bagu.org>
2141
2142         Remove test classes, launch configurations and configuration.
2143
2144         The test stuff was getting in the way when creating the war. To make
2145         the war file you can now do 'mvn clean package'. The packaged war file
2146         will be in the target directory.
2147
2148         * .classpath: Remove unused classpathentry for tests and i18n.
2149         * pom.xml: Remove junit.jar dependency. Properly use gwt.version
2150         property. Don't run test or i18n goals when packaging the war.
2151         * src/main/webapp/WEB-INF/web.xml: Add xml name space. Correct
2152         formatting.
2153
2154         Removed files:
2155
2156         * OnlineGlomTest-dev.launch:
2157         * OnlineGlomTest-prod.launch:
2158         * src/test/java/org/glom/web/client/GwtTestOnlineGlom.java:
2159         * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml:
2160
2161 2011-03-07  Ben Konrath  <ben@bagu.org>
2162
2163         Update gwt-maven plugin to 2.2.0 and fix other configuation problems.
2164
2165         These fixes allow me to use 'mvn deploy' to create the war file.
2166
2167         * .classpath: This generated config has been updated by Eclipse. This
2168         change was probably triggered by me updating from Eclipse 3.6.1 to
2169         3.6.2.
2170         * .gitignore: Add entry to ignore the directory
2171         src/main/webapp/WEB-INF/deploy. This directory is generated by Eclipse.
2172         * .project: The generated config has been updated by Eclipse. This
2173         change was probably triggered by me updating from Eclipse 3.6.1 to
2174         3.6.2.
2175         * .settings/com.google.appengine.eclipse.core.prefs: Add empty config
2176         so that Eclipse doesn't complain
2177         * pom.xml: Update to gwt-maven-plugin 2.2.0.
2178         * src/test/java/org/glom/web/client/GwtTestOnlineGlom.java: Move from
2179         'tests' directory to 'client' directory. This is the new
2180         gwt-maven-plugin convension.
2181         * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml: Correctly
2182         refer to org.glom.web.OnlineGlom gwt module and OnlineGlomServiceImpl.
2183
2184 2011-03-07  Ben Konrath  <ben@bagu.org>
2185
2186         Add support for horizontal alignment in the LayoutList columns.
2187
2188         * TODO: Remove item about horizontal alignment. Add item about
2189         improvements to ColumnInfo.
2190         * src/main/java/org/glom/web/client/LayoutListView.java: Set horizontal
2191         alignment on the columns. Use ColumnInfo RPC object get the column
2192         title and horizontal alignment.
2193         * src/main/java/org/glom/web/client/OnlineGlom.java: Update
2194         LayoutListView creation with ColumnInfo RPC object.
2195         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Create
2196         a ColumnInfo object for every LayoutList columnn. Convert the
2197         FieldFormatting.HorizontalAlignment to the correct
2198         ColumnnInfo.HorizontatlAlignment with the new
2199         getColumnInfoHorizontalAlignment helper method.
2200         * src/main/java/org/glom/web/shared/ColumnInfo.java: New RPC object
2201         to encapsulate column information like alignment and title. This
2202         could be used to set the colour instead of on a per cell field basis.
2203         * src/main/java/org/glom/web/shared/LayoutListTable.java: Replace
2204         column title storage and retrieval with ColumnInfo.
2205
2206 2011-03-04  Ben Konrath  <ben@bagu.org>
2207
2208         Add support for column sorting.
2209
2210         * src/main/java/org/glom/web/client/LayoutListView.java: Change
2211         AsynDataProvider to be an anonymous inner class. Use new
2212         getSortedTableData RPC method when column sort is requested. Set all
2213         columns sortable and add an AsyncHandler to activate sorting in the
2214         AsyncDataProvider.
2215         * src/main/java/org/glom/web/client/OnlineGlomService.java: Add new
2216         method getSortedTableData(). Cleanup other method signatures.
2217         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Add
2218         new method getSortedTableData(). Cleanup other method signatures.
2219         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2220         Implement getSortedTableData() and getTableData() methods by using a
2221         private helper method with the appropriate parameters filled in. Use
2222         user supplied sort clause when supplied, otherwise fall back to
2223         sorting by the primary key. Move destroy() method to be underneath
2224         constructor for readability.  Cleanup comments.
2225
2226 2011-03-03  Ben Konrath  <ben@bagu.org>
2227
2228         Add support for colour text and colour backgrounds to the layout list cells.
2229
2230         Only the cell backgrounds are coloured which leaves a gap between the
2231         cells that isn't coloured. I need to figure out a way to set
2232         'style=background-colour:' on the whole column rather than just the
2233         cell.
2234
2235         * TODO: Add a note about colouring the background of the whole column.
2236         * src/main/java/org/glom/web/client/LayoutListView.java: Add a custom
2237         column type (GlomFieldColumn) and a custom cell type (GlomFieldCell) to
2238         render the coloured text and backgrounds. Use GlomField[] for the row type.
2239         * src/main/java/org/glom/web/client/OnlineGlomService.java: Use GlomField[]
2240         for the row type.
2241         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Use
2242         GlomField[] for the row type.
2243         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Use
2244         GlomField[] for the row type. Set the text, text colour and background
2245         colour in the GlomField objects as specified in the glom document. Add
2246         method to convert from Gdk::Color to HTML colour string. Cleanup comments.
2247         * src/main/java/org/glom/web/shared/GlomField.java: New file to encapulate
2248         the glom field text, foreground colour and background colour.
2249
2250 2011-03-02  Ben Konrath  <ben@bagu.org>
2251
2252         Don't display hidden tables in the combo box.
2253
2254         * src/main/java/org/glom/web/client/OnlineGlom.java: Update code to use
2255         ArrayLists.
2256         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
2257         code to ignore hidden tables using ArrayLists for the table names and
2258         titles.
2259         * src/main/java/org/glom/web/shared/GlomDocument.java: Change tableTitles and
2260         tableNames to use ArrayLists instead of String[]. Update getter and setter
2261         methods.
2262
2263 2011-03-01  Ben Konrath  <ben@bagu.org>
2264
2265         Add support for Date and Time number types.
2266
2267         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2268         Implement formatting for Date and Time values. Change the default glom
2269         file to small business example.
2270
2271 2011-03-01  Ben Konrath  <ben@bagu.org>
2272
2273         Add support for formatting glom types as specified in the glom file.
2274
2275         Formatting isn't finished yet - I still need to add support for Date
2276         and Time values.
2277
2278         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Add
2279         formatting support for TYPE_TEXT, TYPE_BOOLEAN and TYPE_NUMERIC. Remove
2280         checks for null values in JDBC cleanup code and catch all exceptions
2281         instead of just SQLExceptions.
2282         * src/main/java/org/glom/web/shared/LayoutListTable.java: Fix incorrect
2283         method name.
2284
2285 2011-03-01  Ben Konrath  <ben@bagu.org>
2286
2287         Use GWT 2.2.0 instead of 2.1.1.
2288
2289         * pom.xml: Change GWT version numbers.
2290
2291 2011-03-01  Ben Konrath  <ben@bagu.org>
2292
2293         A few small code cleanups.
2294
2295         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Remove
2296         duplicate for loop.
2297         * src/main/java/org/glom/web/shared/GlomDocument.java: Remove
2298         unnecessary object creation in constructor.
2299         * src/main/java/org/glom/web/shared/LayoutListTable.java: Remove
2300         unnecessary object creation in constructor.
2301
2302 2011-02-28  Ben Konrath  <ben@bagu.org>
2303
2304         Add file for TODO list.
2305
2306         * TODO: New file.
2307
2308 2011-02-18  Ben Konrath  <ben@bagu.org>
2309
2310         Enable the CellTable Pager when more than 20 rows need to be viewed.
2311
2312         The Pager will automatically become active when the results are larger
2313         than the CellTable size which is currently set to 20 lines.
2314
2315         * src/main/java/org/glom/web/client/LayoutListView.java: Correct class
2316         name on debug statment in RPC call in LayoutListDataProvider, add
2317         numRows parameter to LayoutListView constructor, propperly set rowCount
2318         in CellTable.
2319         * src/main/java/org/glom/web/client/OnlineGlom.java: Correct class
2320         name on debug statment in RPC call, use LayoutListTable object in RPC
2321         calls, pass rowCount to LayoutListView.
2322         * src/main/java/org/glom/web/client/OnlineGlomService.java: Change
2323         getLayoutListHeaders to getLayoutListTable and return LayoutListTable
2324         object.
2325         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java: Update
2326         interface for changes in OnlineGlomService.
2327         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java: Change
2328         getLayoutListHeaders() to getLayoutListTable() and return
2329         LayoutListTable. Using this object allows me to pass other information
2330         about the LayoutList like the expected number of rows in the result set.
2331         The Connection object from the connection pool is now propperly closed.
2332         Only the requested number of lines are returned to the client in
2333         getTableData().
2334         * src/main/java/org/glom/web/shared/LayoutListTable.java: Move from
2335         GlomTable and add columnTitles and numRows.
2336
2337 2011-02-18  Ben Konrath  <ben@bagu.org>
2338
2339         Use String arrays instead of GlomTable objects in GlomDocument GWT-RPC object.
2340
2341         This is a small performance boost. I'll use GlomTable to get the required
2342         layoutlist information.
2343
2344         * src/main/java/org/glom/web/client/OnlineGlom.java:
2345         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2346         * src/main/java/org/glom/web/shared/GlomDocument.java:
2347
2348 2011-02-18  Ben Konrath  <ben@bagu.org>
2349
2350         Add option to turn off formatting in JDT formatter preferences.
2351
2352         * .settings/org.eclipse.jdt.core.prefs:
2353
2354 2011-02-18  Ben Konrath  <ben@bagu.org>
2355
2356         Rename LayoutList to LayoutListView.
2357
2358         I'm working towards setting things up to easily use MVP when the time
2359         comes.
2360
2361         * src/main/java/org/glom/web/client/LayoutListView.java: Rename from
2362         LayoutList.java.
2363         * src/main/java/org/glom/web/client/OnlineGlom.java: Update
2364         references.
2365
2366 2011-02-17  Ben Konrath  <ben@bagu.org>
2367
2368         Move LayoutListDataProvider class into LayoutList.java.
2369
2370         * src/main/java/org/glom/web/client/LayoutList.java:
2371
2372 2011-02-17  Ben Konrath  <ben@bagu.org>
2373
2374         Rename RPC service classes from LibGlomService* to OnlineGlomService*.
2375
2376         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Update
2377         references.
2378         * src/main/java/org/glom/web/client/OnlineGlom.java: Update references.
2379         * src/main/java/org/glom/web/client/OnlineGlomService.java: Rename
2380         from LibGlomServer.java.
2381         * src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
2382         Rename from LibGlomServiceAsync.java.
2383         * src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
2384         Rename from LibGlomServiceImpl.java.
2385         * src/main/webapp/WEB-INF/web.xml: Update configuration.
2386
2387 2011-02-17  Ben Konrath  <ben@bagu.org>
2388
2389         Update JDT settings.
2390
2391         * .settings/org.eclipse.jdt.core.prefs:
2392
2393 2011-02-17  Ben Konrath  <ben@bagu.org>
2394
2395         Move GWT-RPC objects to shared package (where they should be).
2396
2397         * src/main/java/org/glom/web/client/LibGlomService.java: Update imports.
2398         * src/main/java/org/glom/web/client/LibGlomServiceAsync.java: Update imports.
2399         * src/main/java/org/glom/web/client/OnlineGlom.java: Update imports.
2400         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Update imports.
2401         * src/main/java/org/glom/web/shared/GlomDocument.java: Move to
2402         org.glom.web.shared package.
2403         * src/main/java/org/glom/web/shared/GlomTable.java: Move to
2404         org.glom.web.shared package.
2405         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml: Included shared
2406         directory in compilation to javascript.
2407
2408 2011-02-16  Ben Konrath  <ben@bagu.org>
2409
2410         Add sort clause to the sql query that grabs table information.
2411
2412         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add sort clause
2413         if one of the columns is a primary key.
2414
2415 2011-02-16  Ben Konrath  <ben@bagu.org>
2416
2417         Disable generateAsync feature of gwt-maven.
2418
2419         The generated interface does not correctly match the methods in LibGlomService
2420         and the generated singleton Util inner-class doesn't respect the servlet
2421         mappings.
2422
2423         * pom.xml: Turn off generateAsync feature.
2424         * src/main/java/org/glom/web/client/LibGlomServiceAsync.java: Re-add file
2425         with singleton Util inner-class.
2426
2427 2011-02-14  Ben Konrath  <ben@bagu.org>
2428
2429         Add LGPL v3 licence notices.
2430
2431         Followed directions listed here:
2432         http://www.gnu.org/licenses/gpl-howto.html
2433
2434         * COPYING: This file is a copy of the GPL v3.
2435         * COPYING.LESSER: This file is a copy of the LGPL v3.
2436         * src/main/java/org/glom/web/client/GlomDocument.java: Add licence
2437         notice.
2438         * src/main/java/org/glom/web/client/GlomTable.java: Add licence
2439         notice.
2440         * src/main/java/org/glom/web/client/LayoutList.java: Add licence
2441         notice.
2442         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Add
2443         licence notice.
2444         * src/main/java/org/glom/web/client/LibGlomService.java: Add licence
2445         notice.
2446         * src/main/java/org/glom/web/client/OnlineGlom.java: Add licence
2447         notice.
2448         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add
2449         licence notice.
2450
2451 2011-02-14  Ben Konrath  <ben@bagu.org>
2452
2453         Use ArrayList instead of Array in GWT-RPC calls.
2454
2455         Apparently this gives a slight performance boost to the compiled
2456         java script.
2457
2458         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Use ArrayList
2459         instead of Array.
2460         * src/main/java/org/glom/web/client/LibGlomService.java: Use ArrayList instead
2461         of Array.
2462
2463 2011-02-14  Ben Konrath  <ben@bagu.org>
2464
2465         Access data from a postgres db rather than the example glom file.
2466
2467         * .settings/com.google.gwt.eclipse.core.prefs: Change GWT setting to
2468         compile down to obfuscated javascript.
2469         * pom.xml: Add c3p0 and postgres JDBC libraries.
2470         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Return data
2471         using a postgres db accessed through the c3p0 connection pooling library.
2472
2473 2011-02-14  Ben Konrath  <ben@bagu.org>
2474
2475         Update Java formatter settings.
2476
2477         * .settings/org.eclipse.jdt.core.prefs: Change comment length to 120.
2478
2479 2011-02-02  Ben Konrath  <ben@bagu.org>
2480
2481         Update Eclipse and Maven configs to in preparation for the postgres JDBC jar.
2482
2483         * .classpath: Change JRE to Java 1.6, remove GWT configuration as we're now
2484         using Maven.
2485         * .settings/com.google.gwt.eclipse.core.prefs: Don't copy gwt-servlet.jar to
2486         the compiled webapp directory that Eclipse uses as we're using Maven now.
2487         * .settings/org.eclipse.jdt.core.prefs: Change target platform to Java 1.6.
2488         * .settings/org.eclipse.wst.common.project.facet.core.xml: Change Java version
2489         to 1.6.
2490         * pom.xml: Format file, change target Java version to 1.6.
2491
2492 2011-02-02  Ben Konrath  <ben@bagu.org>
2493
2494         Add information about a deployment related issue.
2495
2496         * README: Add Notes section with the problem outlined.
2497
2498 2011-02-02  Ben Konrath  <ben@bagu.org>
2499
2500         Call Glom.libglom_deinit() when the servlet is shutdown.
2501
2502         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java: Add
2503         Glom.libglom_deinit() to destroy() method.
2504
2505 2011-01-28  Ben Konrath  <ben@bagu.org>
2506
2507         Use generated Util class to get the RPC Async interface.
2508
2509         * .settings/com.google.gwt.eclipse.core.prefs: Update generated Eclipse config
2510         file.
2511         * src/main/java/org/glom/web/client/LayoutListDataProvider.java: Use generated
2512         getInstance() method to get a reference to the RPC Async interface.
2513         * src/main/java/org/glom/web/client/OnlineGlom.java: Use generated
2514         getInstance() method to get a reference to the RPC Async interface, remove
2515         the now unused getLibGlomServiceProxy() method.
2516
2517 2011-01-27  Ben Konrath  <ben@bagu.org>
2518
2519         Cleanup ChangeLog entry from previous commit.
2520
2521         * ChangeLog: Group logical changes together and add comments.
2522
2523 2011-01-25  Ben Konrath  <ben@bagu.org>
2524
2525         Convert to gwt-maven project.
2526
2527         * .gitignore: Update for new project structure.
2528         * README: New file with a link to the online documentation.
2529         * pom.xml: The generated maven configuration file with some tweaks.
2530
2531         Add / update Eclipse settings. These files are a merge of the files that
2532         were generated with the gwt-maven plugin and the files we were previously
2533         using.
2534         * .classpath:
2535         * .project:
2536         * .settings/.jsdtscope:
2537         * .settings/com.google.gdt.eclipse.core.prefs:
2538         * .settings/com.google.gwt.eclipse.core.prefs:
2539         * .settings/org.eclipse.jdt.core.prefs:
2540         * .settings/org.eclipse.wst.common.component:
2541         * .settings/org.eclipse.wst.common.project.facet.core.xml:
2542         * .settings/org.eclipse.wst.jsdt.ui.superType.container:
2543         * .settings/org.maven.ide.eclipse.prefs:
2544         * OnlineGlomTest-dev.launch:
2545         * OnlineGlomTest-prod.launch:
2546
2547         Java source files moved from the 'src' directory to the directory structure
2548         required by maven.
2549         * src/main/java/org/glom/web/client/GlomDocument.java:
2550         * src/main/java/org/glom/web/client/GlomTable.java:
2551         * src/main/java/org/glom/web/client/LayoutList.java:
2552         * src/main/java/org/glom/web/client/LayoutListDataProvider.java:
2553         * src/main/java/org/glom/web/client/LibGlomService.java:
2554         * src/main/java/org/glom/web/client/OnlineGlom.java:
2555         * src/main/java/org/glom/web/server/LibGlomServiceImpl.java:
2556
2557         Non-functional property file used for translations. I included this as
2558         reminder that it's something I need to sort out.
2559         * src/main/resources/org/glom/web/client/Messages.properties:
2560
2561         The OnlineGlom GWT config file moved from the 'src/org/glom/web' directory.
2562         * src/main/resources/org/glom/web/OnlineGlom.gwt.xml:
2563
2564         The servlet configuration files moved from the 'war' directory.
2565         * src/main/webapp/OnlineGlom.css:
2566         * src/main/webapp/OnlineGlom.html:
2567         * src/main/webapp/WEB-INF/web.xml:
2568
2569         Generated test files with most of the code commented out. I included these
2570         so that it's easy to add tests when we're ready for them.
2571         * src/test/java/org/glom/web/tests/GwtTestOnlineGlom.java:
2572         * src/test/resources/org/glom/web/OnlineGlomJUnit.gwt.xml:
2573
2574 2011-01-25  Ben Konrath  <ben@bagu.org>
2575
2576         Remove unused println.
2577
2578         * src/org/glom/web/server/LibGlomServiceImpl.java:
2579
2580 2011-01-25  Ben Konrath  <ben@bagu.org>
2581
2582         Add project specific JDT settings.
2583
2584         * .settings/org.eclipse.jdt.core.prefs: Generated by Eclipse.
2585         * .settings/org.eclipse.jdt.ui.prefs: Generated by Eclipse.
2586
2587 2011-01-25  Ben Konrath  <ben@bagu.org>
2588
2589         Populate celltable with example data.
2590
2591         * src/org/glom/web/client/GlomDocument.java: Correct formatting.
2592         * src/org/glom/web/client/GlomTable.java: Correct formatting.
2593         * src/org/glom/web/client/LayoutList.java: Renamed from ListLayoutTable.java,
2594         add LayoutListDataProvider to CellTable, add simpler pager (not working yet).
2595         * src/org/glom/web/client/LayoutListDataProvider.java: New file,
2596         asynchronously gets the example data.
2597         * src/org/glom/web/client/LibGlomService.java: Add getTableData() method.
2598         * src/org/glom/web/client/LibGlomServiceAsync.java: Add getTableData() method.
2599         * src/org/glom/web/client/OnlineGlom.java: Allow service proxy object and
2600         curently selected table to be retrieved by other widgets.
2601         * src/org/glom/web/server/LibGlomServiceImpl.java: Correct formatting,
2602         implement getTableData() in a hacky way. This method needs to be updated
2603         to grab information from the database when database creating is
2604         implemented.
2605
2606 2011-01-20  Ben Konrath  <ben@bagu.org>
2607
2608         Set table headers when table dropBox changes.
2609
2610         * src/org/glom/web/client/GlomDocument.java: Correct some method
2611         names.
2612         * src/org/glom/web/client/LibGlomService.java: Add method
2613         to get list layout field names.
2614         * src/org/glom/web/client/LibGlomServiceAsync.java: Add method
2615         to get list layout field names.
2616         * src/org/glom/web/client/ListLayoutTable.java: New file - composite
2617         widget for list layout table.
2618         * src/org/glom/web/client/OnlineGlom.java: Add a change handler for
2619         the table drop box and add new updateTable() method to asynchronously
2620         get the layout list field names for the currently selected table.
2621         * src/org/glom/web/server/LibGlomServiceImpl.java: Add server side
2622         implementation of getLayoutListHeaders() method.
2623         * war/OnlineGlom.html: Remove GlomWebApp div tag as it is not required.
2624
2625 2011-01-18  Ben Konrath  <ben@bagu.org>
2626
2627         Make a listBox with table titles instead of the flexTable demo.
2628
2629         This is the start of something more useful.
2630
2631         * .classpath: Exclude a bunch of packages from the JVM that are
2632         getting in the way of the Eclipse content assist.
2633         * src/org/glom/web/client/GlomDocument.java:
2634         * src/org/glom/web/client/GlomTable.java:
2635         * src/org/glom/web/client/LibGlomService.java:
2636         * src/org/glom/web/client/LibGlomServiceAsync.java:
2637         * src/org/glom/web/client/OnlineGlom.java:
2638         * src/org/glom/web/server/LibGlomServiceImpl.java:
2639         * war/OnlineGlom.html:
2640         * war/WEB-INF/web.xml:
2641
2642 211-01-13  Ben Konrath  <ben@bagu.org>
2643
2644         Update to new java-libglom API.
2645
2646         * .gitignore: Ignore OnlineGlom.war.
2647         * src/org/glom/web/server/TableNamesServiceImpl.java: Update to new java-libglom API.
2648
2649 2010-12-20  Ben Konrath  <ben@bagu.org>
2650
2651         Add some basic style to the table listing.
2652
2653         * src/org/glom/web/client/OnlineGlom.java: Add style to the table
2654         header, print useful error message on async callback failure.
2655         * war/OnlineGlom.css: Add style for table header, remove defaults
2656         provided by the Eclipse project wizard.
2657
2658 2010-12-20  Ben Konrath  <ben@bagu.org>
2659
2660         Load example file from installed glom dir.
2661
2662         * src/org/glom/web/server/TableNamesServiceImpl.java: Use the Java API
2663         provided by java-libglom to find the example file.
2664
2665 2010-12-20  Ben Konrath  <ben@bagu.org>
2666
2667         Update Eclipse settings.
2668
2669         * .classpath:
2670         * .settings/com.google.gdt.eclipse.core.prefs:
2671         * .settings/com.google.gwt.eclipse.core.prefs:
2672
2673 2010-12-17  Ben Konrath  <ben@bagu.org>
2674
2675         Initial commit.
2676
2677         * .classpath: New file.
2678         * .gitignore: New file.
2679         * .project: New file.
2680         * .settings/com.google.gdt.eclipse.core.prefs: New file.
2681         * .settings/com.google.gwt.eclipse.core.prefs: New file.
2682         * src/org/glom/web/OnlineGlom.gwt.xml: New file.
2683         * src/org/glom/web/client/GlomTable.java: New file.
2684         * src/org/glom/web/client/OnlineGlom.java: New file.
2685         * src/org/glom/web/client/TableNameService.java: New file.
2686         * src/org/glom/web/client/TableNameServiceAsync.java: New file.
2687         * src/org/glom/web/server/TableNamesServiceImpl.java: New file.
2688         * war/OnlineGlom.css: New file.
2689         * war/OnlineGlom.html: New file.
2690         * war/WEB-INF/web.xml: New file.
2691         * war/images/glom.png: New file.