Murray Cumming [Mon, 7 May 2012 21:27:38 +0000 (23:27 +0200)]
ConfiguredDocument: Restore correct addition of hidden primary key items.
* src/main/java/org/glom/web/client/ui/list/ListTable.java
(ListTable.createCellTable): Uncomment out the check for the hidden
primary key.
* src/main/java/org/glom/web/server/ConfiguredDocument.java: Only
add primary key items for top-level lists and portals, as before,
instead of adding them to each group.
* src/main/java/org/glom/web/shared/libglom/layout/LayoutGroup.java:
Actually implement the extra methods such as setHiddenPrimaryKey() and
comment that these are used only for top-level list groups and in portals.
This strangeness suggests even more that this should not be squeezed
into the LayoutGroup class.
Murray Cumming [Mon, 7 May 2012 18:38:12 +0000 (20:38 +0200)]
Fix Formatting loading.
* src/main/java/org/glom/web/shared/libglom/layout/LayoutItemField.java:
getFormattingUsed(): Remove the duplicate Formatting member variable
in favour of the one from the base class.
* src/main/java/org/glom/web/shared/libglom/layout/LayoutItemWithFormatting.java:
Initialize a new Formatting instead of using null by default, so we
have some defaults, instead of having to initialize one later just to
get the same defaults. This also makes loading of formatting from the
document work, because that expected a non-null.
Murray Cumming [Mon, 7 May 2012 10:17:22 +0000 (12:17 +0200)]
RelatedListTable: Make sure that the tableName is set.
* src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
Constructor: Take the tableName so it is available later. Otherwise,
the server assumes that we mean the default table and cannot find the
relationship in it.
* src/main/java/org/glom/web/client/activity/DetailsActivity.java
setData(): Pass the tableName to the RelatedListTable constructor.
Murray Cumming [Mon, 7 May 2012 10:08:18 +0000 (12:08 +0200)]
Fix portal navigation via the Details button.
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
Add some checks for empty relationship names, and comments that an empty
table name is OK, because it is later interpreted as the default table.
* src/main/java/org/glom/web/server/database/RelatedListNavigation.java:
getNavigationRecord(): Uncomment and correct the code that decides what
table to navigate to.
Murray Cumming [Mon, 7 May 2012 09:28:07 +0000 (11:28 +0200)]
Add some checks.
* src/main/java/org/glom/web/client/activity/DetailsActivity.java:
RelatedListNavigationButtonCell.onEnterKeyDown(), setData():
* src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
getDataProvider():
* src/main/java/org/glom/web/client/ui/list/ListTable.java:
addColumn():
* src/main/java/org/glom/web/server/database/DBAccess.java:
convertResultSetToDTO(), getPortal():
* src/main/java/org/glom/web/server/database/ListDBAccess.java
getListData():
* src/main/java/org/glom/web/server/database/RelatedListDBAccess.java:
Add checks for null objects and out of range access, with log messages to
give hints so we can fix these properly.
Murray Cumming [Mon, 7 May 2012 09:25:04 +0000 (11:25 +0200)]
Portals: some corrections.
* src/main/java/org/glom/web/client/activity/DetailsActivity.java
setData():
* src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
constructor: Use getRelationshipNameUsed() instead of getName(), because
that is what is meant.
* src/main/java/org/glom/web/shared/libglom/layout/LayoutItemPortal.java:
getFromField(): Fix a typo, to get the field name, not the table name.
* src/main/java/org/glom/web/server/database/DBAccess.java:
getPortal(): Fix a typo that stopped this from working.
Murray Cumming [Mon, 7 May 2012 07:27:27 +0000 (09:27 +0200)]
LayoutItemPortal: Also override getTitleOriginal().
* src/main/java/org/glom/web/shared/libglom/layout/LayoutItemPortal.java:
This lets the base getTitle() with no parameters work.
TODO: Test this properly.
Murray Cumming [Sun, 6 May 2012 21:13:41 +0000 (23:13 +0200)]
LayoutItemPortal: getTitle*(): Use the relationship title.
Murray Cumming [Sun, 6 May 2012 21:01:03 +0000 (23:01 +0200)]
LayoutItemField: Fix loading of custom titles.
* src/main/java/org/glom/web/server/libglom/Document.java
loadDataLayoutItemField(): The title, if any, instead of the field
title, is stored in a title_custom node. Load it from there.
* src/main/java/org/glom/web/shared/libglom/CustomTitle.java: Add this
class.
* src/main/java/org/glom/web/shared/libglom/layout/LayoutItemField:
Add getCustomTitle() and use it, instead of super.getTitle*(), in the
getTitle*() overrides.
* src/test/java/org/glom/web/server/libglom/LayoutItemFieldTest.java:
Adapt.
Murray Cumming [Sun, 6 May 2012 20:15:56 +0000 (22:15 +0200)]
LayoutItemField: Fall back to field titles, so some are really shown.
* src/main/java/org/glom/web/shared/libglom/layout/LayoutItemField.java:
Override getTitleOriginal() and getTitle(), as in java-libglom.
* src/test/java/org/glom/web/server/libglom/LayoutItemFieldTest.java:
Test this behaviour.
Murray Cumming [Sun, 6 May 2012 19:48:55 +0000 (21:48 +0200)]
Correct use of setExpectedResultSize().
* src/main/java/org/glom/web/server/ConfiguredDocument.java
getValidListViewLayoutGroup(), getDetailsLayoutGroup():
Use setExpectedResultSize only on top-level groups (for instance, the
list layout) or on child portals (in details views).
Use the correct table name for portals to avoid SQL errors.
Update the expected counts when returning cached layouts.
Murray Cumming [Sun, 6 May 2012 15:05:35 +0000 (17:05 +0200)]
Document: Interpret no group column count as 1.
* src/main/java/org/glom/web/server/libglom/Document.java: Use a sane
default, though we now check for this in the UI code anyway.
Murray Cumming [Sun, 6 May 2012 15:00:50 +0000 (17:00 +0200)]
More null checks.
Murray Cumming [Sun, 6 May 2012 14:18:36 +0000 (16:18 +0200)]
Translatable: Use Hashmap instead of Treemap because GWT supports it.
* src/main/java/org/glom/web/shared/libglom/Translatable.java:
The use of Treemap lead to this error from async methods, with no
further clue:
"The response could not be deserialized"
Murray Cumming [Sun, 6 May 2012 14:11:41 +0000 (16:11 +0200)]
OnlineGlom.gwt.xml: Add exludes to fix explicit gwt compilation in Eclipse.
* src/main/java/org/glom/web/OnlineGlom.gwt.xml: This is necessary
when using the Google -> GWT Compile, or
g toolbar button -> GWT Compile Project... feature in Eclipse.
Murray Cumming [Sun, 6 May 2012 13:51:27 +0000 (15:51 +0200)]
ListTable.addColumn(): Protect against a null Formatting.
* src/main/java/org/glom/web/client/ui/list/ListTable.java: addColumn():
Create a default Formatting if it is null, because that is the simplest
way to do this.
Murray Cumming [Sun, 6 May 2012 13:36:31 +0000 (15:36 +0200)]
ConfiguredDocument.updateLayoutGroup(): Protect against a null dereference.
* src/main/java/org/glom/web/server/ConfiguredDocument.java
updateLayoutGroup(): Check that the field is not null.
Murray Cumming [Sun, 6 May 2012 13:28:32 +0000 (15:28 +0200)]
ListViewImpl: Protected against a bad cast error.
* src/main/java/org/glom/web/client/ui/ListViewImpl.java:
onEnterKeyDown(): Do not cast without an instanceof check.
Murray Cumming [Sun, 6 May 2012 13:23:54 +0000 (15:23 +0200)]
ListTable: Protect against an out of range error.
* src/main/java/org/glom/web/client/ui/list/ListTable.java
createCellTable(): This is unlikely, but can happen while debugging.
Murray Cumming [Sun, 6 May 2012 10:59:01 +0000 (12:59 +0200)]
AsyncMessage onFailure() callbacks: Log the exception message.
* src/main/java/org/glom/web/client/activity/DetailsActivity.java
* src/main/java/org/glom/web/client/activity/DocumentSelectionActivity.java:
* src/main/java/org/glom/web/client/activity/ListActivity.java:
* src/main/java/org/glom/web/client/activity/ReportActivity.java:
* src/main/java/org/glom/web/client/activity/TableSelectionActivity:
* src/main/java/org/glom/web/client/ui/details/RelatedListTable.java:
* src/main/java/org/glom/web/client/ui/list/ListViewTable.java:
These are useful clues when something is wrong.
Murray Cumming [Sun, 6 May 2012 10:45:01 +0000 (12:45 +0200)]
ConfiguredDocument: Avoid a null dereference.
* src/main/java/org/glom/web/server/ConfiguredDocument.java
TableLayoutsForLocale.getMapWithAdd(): Make sure that the list and
details maps are created.
Murray Cumming [Sun, 6 May 2012 10:25:01 +0000 (12:25 +0200)]
Document: Correct the port number parsing.
* src/main/java/org/glom/web/server/libglom/Document.java:
This lets us actually connect to the database and show the document.
Murray Cumming [Sun, 6 May 2012 10:18:30 +0000 (12:18 +0200)]
Added a TODO
Murray Cumming [Sat, 5 May 2012 21:40:33 +0000 (23:40 +0200)]
Fix mvn gwt:test
* pom.xml: Use htmlunit mode for gwt:test, because the default demands
user-interaction, asking us to load a temporary URL in a browser.s
* src/main/java/org/glom/web/OnlineGlom.gwt.xml: Add a servlet node,
which is apparently necessary for testing the service. See the comment.
* src/test/java/org/glom/web/client/GwtTestOnlineGlomService.java:
Show the exception, if any. This is how I saw the 404 in the HTML in
the exception.
Murray Cumming [Sat, 5 May 2012 20:32:05 +0000 (22:32 +0200)]
DocumentTest: Move the .glom files into the resources directory.
* src/test/java/org/glom/web/server/libglom/DocumentTest: And get the
URI via getResource().
Murray Cumming [Sat, 5 May 2012 19:56:57 +0000 (21:56 +0200)]
Remove an unused variable
Murray Cumming [Sat, 5 May 2012 19:52:31 +0000 (21:52 +0200)]
Document: Remove the FieldIdentifies inner class.
* src/main/java/org/glom/web/server/libglom/Document.java: We only
use the Relationship (though the same function in libglom is maybe
used in other ways) and so this removes a compiler warning.
Murray Cumming [Sat, 5 May 2012 19:48:00 +0000 (21:48 +0200)]
Document.load() Remove the error code parameter.
* src/main/java/org/glom/web/server/libglom/Document.java: load():
Remove the parameter. We do not set it yet and it could never have
worked as an output parameter (though maybe it did in java-libglom).
We could use an exception if we really want the failure reason.
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
init():
* src/test/java/org/glom/web/server/libglom/DocumentTest.java:
setUp(), testGetSuitableTableToViewDetails(): Adapt.
Murray Cumming [Sat, 5 May 2012 19:44:11 +0000 (21:44 +0200)]
Make some inner classes static.
* src/main/java/org/glom/web/server/ConfiguredDocument.java
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java
* src/main/java/org/glom/web/server/ReportGenerator.java
* src/main/java/org/glom/web/server/libglom/Document.java
Make all inner classes static that can be static.
Murray Cumming [Sat, 5 May 2012 19:35:48 +0000 (21:35 +0200)]
OnlineGlomServiceImpl: Do not load and check for java-libglom.
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java
init(): We do not use java-libglom any more.
Murray Cumming [Sat, 5 May 2012 19:24:04 +0000 (21:24 +0200)]
Remove mentions of java-libglom.
* README: Remove mention of java-libglom, because it no longer needed.
* utils/build-onlineglom-war.sh:
* utils/check-and-recover-tomcat.py:
* utils/install-onlineglom-war.sh: Remove these as they are no longer
useful. Building is now far easier, with no need for jhbuild.
Murray Cumming [Sat, 5 May 2012 19:03:02 +0000 (21:03 +0200)]
Fix the build (mvn package)
* src/main/java/org/glom/web/shared/libglom/layout/LayoutGroup.java
(LayoutGroup): Make the LayoutItemList inner class static and protected.
Otherwise the GWT Java->Javascript compilation fails with just this
error, during mvn package or when attempting to view in a browser,
in the GWT developer mode in Eclipse.
[INFO] --- gwt-maven-plugin:2.4.0:compile (default) @ gwt-glom ---
[INFO] auto discovered modules [org.glom.web.OnlineGlom]
[INFO] Compiling module org.glom.web.OnlineGlom
[INFO] [ERROR] Errors in 'file:/home/murrayc/checkouts/gnome/gwt-glom/src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java'
[INFO] [ERROR] Line 46: Failed to resolve 'org.glom.web.client.OnlineGlomService' via deferred binding
[INFO] Scanning for additional dependencies: file:/home/murrayc/checkouts/gnome/gwt-glom/src/main/java/org/glom/web/client/ui/details/DetailsCell.java
[INFO] [WARN] For the following type(s), generated source was never committed (did you forget to call commit()?)
[INFO] [WARN] org.glom.web.client.OnlineGlomService_Proxy
[INFO] [ERROR] Cannot proceed due to previous errors
It has taken me 2 days to find out what was causing that. After reducing
the code, the compiler eventually showed me the full error message.
Murray Cumming [Fri, 4 May 2012 13:13:31 +0000 (15:13 +0200)]
ConfiguredDocument: Cache the cloned and stripped layouts.
* src/main/java/org/glom/web/server/ConfiguredDocument.java:
getValidListViewLayoutGroup(), .getDetailsLayoutGroup(): Store the cloned
layout in a map, so we can retrieve it again without rebuilding it.
Murray Cumming [Fri, 4 May 2012 11:31:20 +0000 (13:31 +0200)]
UsesRelationshipImpl: Complete the relationshipEquals() implementation.
Murray Cumming [Fri, 4 May 2012 11:25:14 +0000 (13:25 +0200)]
Fix a typo in a test.
Murray Cumming [Fri, 4 May 2012 11:22:08 +0000 (13:22 +0200)]
libglom classes: Implement some auto-generated emthods.
Murray Cumming [Fri, 4 May 2012 09:52:50 +0000 (11:52 +0200)]
Add GwtTestOnlineGlomService.
* src/test/java/org/glom/web/client/GwtTestOnlineGlomService.java:
However, this (and the other GwtTest*) does not seem to run during
mvn test.
Murray Cumming [Fri, 4 May 2012 09:26:08 +0000 (11:26 +0200)]
Remove use of unsupported features from client code.
* src/main/java/org/glom/web/client/StringUtils.java: Add equals().
* src/main/java/org/glom/web/shared/libglom/layout/UsesRelationshipImpl.java:
* src/main/java/org/glom/web/shared/libglom/layout/reportparts/LayoutItemGroupBy.java:
Use our client version of StringUtils instead of the apache commons one.
However, the GWT Javascript compliation still fails.
Murray Cumming [Fri, 4 May 2012 08:21:26 +0000 (10:21 +0200)]
libglom classes: Use serialization instead of deep cloning.
Because using clone() or Cloneable in classes that are also compiled to
client Javascript will cause that compilation to fail, even if those methods are
never used in the client Javascript.
However, somethign else is still breaking the GWT javascript compilation.
Murray Cumming [Thu, 3 May 2012 20:49:10 +0000 (22:49 +0200)]
LayoutItemPortal: Move use of Document.
Murray Cumming [Thu, 3 May 2012 20:36:35 +0000 (22:36 +0200)]
Avoid apache.commons StringUtils in shared.
Murray Cumming [Thu, 3 May 2012 20:32:12 +0000 (22:32 +0200)]
Update hacky paths in test
Murray Cumming [Thu, 3 May 2012 20:30:10 +0000 (22:30 +0200)]
Move Document from shared to server.
Murray Cumming [Thu, 3 May 2012 20:18:50 +0000 (22:18 +0200)]
Replace a Hashmap with TreeMap for GWT
Murray Cumming [Thu, 3 May 2012 20:09:53 +0000 (22:09 +0200)]
Convert most code to camelCase.
Murray Cumming [Thu, 3 May 2012 19:28:43 +0000 (21:28 +0200)]
Some import reorganizing by Eclipse
Murray Cumming [Thu, 3 May 2012 19:28:15 +0000 (21:28 +0200)]
Some code reformatting by Eclipse
Murray Cumming [Thu, 3 May 2012 19:27:26 +0000 (21:27 +0200)]
Some cleanup by Eclipse
Murray Cumming [Thu, 3 May 2012 19:26:55 +0000 (21:26 +0200)]
Some cleanup by Eclipse
Murray Cumming [Thu, 3 May 2012 10:26:14 +0000 (12:26 +0200)]
Fix a use of String ==.
Murray Cumming [Thu, 3 May 2012 10:22:02 +0000 (12:22 +0200)]
Further libglom implementation in Java.
Finish the libglom classes enough to pass the DocumentTest test
case from java-libglom.
Murray Cumming [Wed, 25 Apr 2012 10:43:28 +0000 (12:43 +0200)]
Add a Field class and implement some loading of it in Document.
Murray Cumming [Wed, 25 Apr 2012 09:52:34 +0000 (11:52 +0200)]
Initial Document loading implementation, instead of libglom.
* src/test/java/org/glom/web/shared/libglom/: Add Document, Report,
and Translatable classes, and adapt the rest of the code to use them.
However, this is still missing Layout and Field classes and loading.
Murray Cumming [Tue, 24 Apr 2012 15:38:48 +0000 (17:38 +0200)]
Use of jOOQ: Move Field creation into a utility method.
* src/main/java/org/glom/web/server/SqlUtils.java:
This lets us improve it more easily.
Murray Cumming [Tue, 24 Apr 2012 14:22:07 +0000 (16:22 +0200)]
Use of jOOQ: Improve the code to COUNT a sub-select.
* src/main/java/org/glom/web/server/SqlUtils.java:
Move initial query creation into
build_sql_select_step_with_where_clause().
build_sql_select_count_rows(): Use the jOOQ API instead of
concatentating text, because a jOOQ Select*Step is a TableLike,
which is what from() takes.
Murray Cumming [Sun, 22 Apr 2012 22:30:44 +0000 (00:30 +0200)]
Use jOOQ instead of Glom.build_sql*(), to avoid native calls.
* pom.xml: Depend on jooq.
* src/main/java/org/glom/web/server/SqlUtils.java: Reimplement the
methods with jOOQ, based on the C++ implementations in libglom,
with some changes to the logic required by jooQ.
Take a jOOQ Condition rather than a Glom.SqlExpr (GdaSqlExpr) for the
where clause.
* src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
* src/main/java/org/glom/web/server/ReportGenerator.java:
* src/main/java/org/glom/web/server/SqlUtils.java:
* src/main/java/org/glom/web/server/database/DetailsDBAccess.java:
* src/main/java/org/glom/web/server/database/ListDBAccess.java:
* src/main/java/org/glom/web/server/database/ListViewDBAccess.java:
* src/main/java/org/glom/web/server/database/RelatedListDBAccess.java:
* src/main/java/org/glom/web/server/database/RelatedListNavigation:
Adapt. In particular, the SqlUtils methods now need to take a Connection,
because jOOQ needs that, though it seems unnecessary.
This is not quite finished. Ideally jOOQ would help us to build
table_name.field_name names, quoting and escaping them properly.
See http://stackoverflow.com/questions/
10264001/instantiating-a-jooq-field-by-name
Murray Cumming [Sat, 21 Apr 2012 20:25:35 +0000 (22:25 +0200)]
Add a TODO
Murray Cumming [Sat, 21 Apr 2012 20:17:23 +0000 (22:17 +0200)]
Move use of Glom.build_sql*() into a new SqlUtils class.
* src/main/java/org/glom/web/server/SqlUtils.java: Add static methods
to wrap Glom.build_sql*(). The parameter types are still Glom one,
but this will make it easier to start using something other than
libglom or SqlBuilder.
Murray Cumming [Sat, 21 Apr 2012 20:10:49 +0000 (22:10 +0200)]
Code style changes from Eclipse
Murray Cumming [Sat, 21 Apr 2012 14:08:15 +0000 (16:08 +0200)]
Update the project URL.
* pom.xml: Use an OnlineGlom-specific URL for the project URL.
Murray Cumming [Sat, 21 Apr 2012 13:22:13 +0000 (15:22 +0200)]
Code style changes from Eclipse
Murray Cumming [Sat, 21 Apr 2012 13:21:16 +0000 (15:21 +0200)]
Main layout: Use a FlowTable instead of absolute positioning.
* src/main/java/org/glom/web/client/OnlineGlom.java: onModuleLoad():
The RootLayoutPanel is a (extends) AbsolutePanel, so each of its
child panels/widgets must have an absolute position. But that is annoying, so
this adds a FlowTable and puts the child panels in there.
Murray Cumming [Sat, 21 Apr 2012 11:05:05 +0000 (13:05 +0200)]
GwtTestOnlineGlom: Comment out unused code.
* src/test/java/org/glom/web/client/GwtTestOnlineGlom.java:
Eclipse has started to say that some code is unused.
Murray Cumming [Fri, 20 Apr 2012 22:09:35 +0000 (00:09 +0200)]
Codestyle changes from Eclipse
Murray Cumming [Fri, 20 Apr 2012 22:07:49 +0000 (00:07 +0200)]
Update to the latest versions of dependencies.
* pom.xml: Update version numbers of dependencies to the latest
versions.
* src/main/java/org/glom/web/server/ConfiguredDocument.java:
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
* src/main/java/org/glom/web/server/ReportGenerator.java:
* src/main/java/org/glom/web/server/database/ListViewDBAccess.java:
* src/main/java/org/glom/web/server/database/RelatedListDBAccess.java:
* src/main/java/org/glom/web/server/database/RelatedListNavigation.
java:
* src/test/java/org/glom/web/client/GwtTestOnlineGlom.java:
Modify the imports where necessary.
Murray Cumming [Fri, 20 Apr 2012 19:54:14 +0000 (21:54 +0200)]
Syntax changes by Eclipse.
Murray Cumming [Tue, 17 Apr 2012 12:28:06 +0000 (14:28 +0200)]
Style: Remove overflow:hidden from searchbox
* src/main/webapp/style.css: Because this pushes the Back To Link
label/link on to the next row, which is then hidden due to the
hard-coded (in ems) height.
Conflicts:
ChangeLog
Murray Cumming [Fri, 20 Apr 2012 08:52:43 +0000 (10:52 +0200)]
Remove some duplicate code.
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java
getDocumentInfo(): This must have been duplicated during the merge from the
reports branch.
Murray Cumming [Thu, 19 Apr 2012 19:57:54 +0000 (21:57 +0200)]
1.21.8.1
Murray Cumming [Thu, 19 Apr 2012 12:08:14 +0000 (14:08 +0200)]
Merge branch 'reports'
Conflicts:
ChangeLog
pom.xml
src/main/java/org/glom/web/OnlineGlom.gwt.xml
src/main/java/org/glom/web/client/activity/DetailsActivity.java
src/main/java/org/glom/web/client/activity/ListActivity.java
src/main/java/org/glom/web/client/activity/TableSelectionActivity.java
src/main/java/org/glom/web/client/place/HasTablePlace.java
src/main/java/org/glom/web/client/place/ListPlace.java
src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java
src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java
src/main/resources/org/glom/web/client/ui/OnlineGlomConstants.properties
src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_cs.properties
src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_de.properties
src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_es.properties
src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_sl.properties
src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_zh_CN.properties
Murray Cumming [Thu, 19 Apr 2012 11:47:41 +0000 (13:47 +0200)]
Reports: Try to avoid page breaks
Murray Cumming [Thu, 19 Apr 2012 11:25:48 +0000 (13:25 +0200)]
Add some comments.
Murray Cumming [Thu, 19 Apr 2012 10:50:31 +0000 (12:50 +0200)]
Reports: Localize the waiting for report message.
* src/main/java/org/glom/web/client/activity/ReportActivity.java
start(): Get the message from the contants.
* src/main/resources/org/glom/web/client/ui/OnlineGlomConstants.properties:
Add the string here.
* src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_cs.properties:
* src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_de.properties:
* src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_es.properties:
* src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_sl.properties:
* src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_zh_CN.properties:
Update these files with the English text for newer strings for now.
Murray Cumming [Thu, 19 Apr 2012 10:31:57 +0000 (12:31 +0200)]
Reports: Show a message while waiting for the report.
* src/main/java/org/glom/web/client/ui/ReportView.java
* src/main/java/org/glom/web/client/ui/ReportViewImpl.java:
Add setWaitingText(), to show a message saying that we are
waiting for the report to be ready.
* src/main/java/org/glom/web/client/activity/ReportActivity.java
start(): Call setWaitingText() before calling the async
report generation.
Murray Cumming [Thu, 19 Apr 2012 09:46:02 +0000 (11:46 +0200)]
ReportGenerator: Specify date and time formats.
* src/main/java/org/glom/web/server/ReportGenerator.java:
createFieldValueElement(): Use the default (and localized)
short formats, though we still need a way to show 4-digit
years without providing the format for every locale.
* src/main/java/org/glom/web/server/database/DBAccess.java:
convertResultSetToDTO(): Use the short formats here too.
Murray Cumming [Wed, 18 Apr 2012 19:32:21 +0000 (21:32 +0200)]
ReportGenerator: Use the correct numeric formatting.
* src/main/java/org/glom/web/server/ReportGenerator.java
createFieldExpression(), createFieldValueElement(): Take the
whole LayoutItem_Field instead of just the field name, so
we have access to the formatting.
createFieldValueElement(): Use JRTextField.setPattern() to
specify the numeric formatting, with the help of a
regular DecimalFormat.
Murray Cumming [Wed, 18 Apr 2012 19:01:09 +0000 (21:01 +0200)]
Code formatting changes by Eclipse.
Murray Cumming [Wed, 18 Apr 2012 19:00:16 +0000 (21:00 +0200)]
ReportGenerator: Avoid showing null for group by titles.
* src/main/java/org/glom/web/server/ReportGenerator.java
generateReport(): Use setBlankWhenNull() on the field title
style too, because this is used for values in group by
sections.
Murray Cumming [Wed, 18 Apr 2012 18:42:32 +0000 (20:42 +0200)]
Rename a member variable
Murray Cumming [Wed, 18 Apr 2012 08:42:36 +0000 (10:42 +0200)]
ReportGenerator: Add a colon to titles in vertical groups.
* src/main/java/org/glom/web/server/ReportGenerator.java
addFieldToDetailBandVertical(): Pass true for the withColon
parameter.
Murray Cumming [Wed, 18 Apr 2012 08:37:07 +0000 (10:37 +0200)]
ReportGenerator: Simplify the code by using Position more.
Murray Cumming [Wed, 18 Apr 2012 08:10:07 +0000 (10:10 +0200)]
Reports: Support vertical groups, roughly.
* src/main/java/org/glom/web/server/ReportGenerator.java:
addToReport(): Rename to addGroupToReport() and, if necessary,
call the new addVerticalGroupToReport() method.
createFieldValueElement(): Let the caller specify the Y position
too.
Murray Cumming [Tue, 17 Apr 2012 14:35:05 +0000 (16:35 +0200)]
Reports: Allow a second report to be shown.
* src/main/java/org/glom/web/client/ui/ReportViewImpl.java:
clear(): Do not remove the HTML widget, which broke the whole layout.
Murray Cumming [Tue, 17 Apr 2012 13:53:27 +0000 (15:53 +0200)]
Locales drop-down: Show that we use English by default.
* src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
fillView(): When we use English, just because that is the default, when
no locale is specified, show that in the Locales drop-down instead of
just showing the first item.
Murray Cumming [Tue, 17 Apr 2012 13:27:38 +0000 (15:27 +0200)]
Unselect the Report/Locale/Table combo item when appropriate.
* src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
setPlace(): clear reportName if this is not a ReportPlace.
* src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
setSelectedTableName(), setSelectedLocale(), setSelectedReport():
When the provided name is empty, unselect all items, so that none are
indicated. This uses a for loop because I cannot find a single method
to do this.
Murray Cumming [Tue, 17 Apr 2012 12:54:22 +0000 (14:54 +0200)]
Report: Give the user a way to get back to the list.
* src/main/java/org/glom/web/client/activity/TableSelectionActivity.java:
start(), setPlace(): Show the Back To List link on reports, and also
interpret selecting the empty report item as back to list.
Murray Cumming [Tue, 17 Apr 2012 12:28:06 +0000 (14:28 +0200)]
Style: Remove overflow:hidden from searchbox
* src/main/webapp/style.css: Because this pushes the Back To Link
label/link on to the next row, which is then hidden due to the
hard-coded (in ems) height.
Murray Cumming [Fri, 13 Apr 2012 13:17:12 +0000 (15:17 +0200)]
Really show the selected Report name.
* src/main/java/org/glom/web/client/activity/TableSelectionActivity:
setPlace(): Store the reportName here, if it is that kind of Place.
fillView(): Set the selected Report after filling the list of reports.
* src/main/java/org/glom/web/client/ui/TableSelectionViewImpl.java:
setSelectedLocale(), setSelectedReport(): Avoid possible uses of
null Strings, though we need some way to unselect all ListBox items
in that case.
Murray Cumming [Fri, 13 Apr 2012 11:27:19 +0000 (13:27 +0200)]
ReportGenerator: Try to avoid some problems.
* src/main/java/org/glom/web/server/ReportGenerator.java
addField(): Try to avoid duplicates, and avoid using a null
class type.
Murray Cumming [Fri, 13 Apr 2012 11:03:57 +0000 (13:03 +0200)]
Reports: Use quickFind.
* src/main/java/org/glom/web/client/OnlineGlomService.java;
* src/main/java/org/glom/web/client/OnlineGlomServiceAsync.java:
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java:
getReportHTML(): Add a quickFind parameter.
* src/main/java/org/glom/web/client/activity/ReportActivity.java
start(): Pass the quickFind parameter.
* src/main/java/org/glom/web/server/ReportGenerator.java
generateReport(): Take a quickFind parameter.
Murray Cumming [Fri, 13 Apr 2012 10:57:17 +0000 (12:57 +0200)]
ReportPlace: Actually use the report name.
* src/main/java/org/glom/web/client/place/ReportPlace.java
getPlace(): Do not assign the report name to the quickfind.
Murray Cumming [Fri, 13 Apr 2012 10:43:15 +0000 (12:43 +0200)]
Show java.library.path when complaining.
* src/main/java/org/glom/web/server/OnlineGlomServiceImpl.java
init(): When telling us to check java.library.path, show the
current value.
Murray Cumming [Thu, 12 Apr 2012 07:55:13 +0000 (09:55 +0200)]
Adapt to the java-libglom 1.21.8 API.
* src/main/java/org/glom/web/server/ConfiguredDocument.java:
java-libglom's FieldFormatting is now Formatting.
Murray Cumming [Thu, 12 Apr 2012 07:40:05 +0000 (09:40 +0200)]
Use the latest java-libglom version.
* pom.xml: Use java-libglom 1.21.8.
Conflicts:
ChangeLog
Murray Cumming [Thu, 12 Apr 2012 07:58:16 +0000 (09:58 +0200)]
1.21.8
Murray Cumming [Thu, 12 Apr 2012 07:55:13 +0000 (09:55 +0200)]
Adapt to the java-libglom 1.21.8 API.
* src/main/java/org/glom/web/server/ConfiguredDocument.java:
java-libglom's FieldFormatting is now Formatting.
Murray Cumming [Thu, 12 Apr 2012 07:40:05 +0000 (09:40 +0200)]
Use the latest java-libglom version.
* pom.xml: Use java-libglom 1.21.8.
Murray Cumming [Thu, 12 Apr 2012 07:39:03 +0000 (09:39 +0200)]
Translations: Add Esperanto.
* src/main/java/org/glom/web/OnlineGlom.gwt.xml
* src/main/resources/org/glom/web/client/ui/OnlineGlomConstants_eo.
properties: Add this translation because someone took the time to make it.
Murray Cumming [Thu, 15 Mar 2012 12:19:57 +0000 (13:19 +0100)]
Adapt to the java-libglom 1.21.7 API.
* src/main/java/org/glom/web/server/ReportGenerator.java:
addToReport(): get_group_secondary_fields() is now
get_secondary_fields().
Murray Cumming [Thu, 15 Mar 2012 12:12:48 +0000 (13:12 +0100)]
Use the latest java-libglom version.
* pom.xml: Use java-libglom 1.21.7.
Conflicts:
ChangeLog
pom.xml