Mercurial > dive4elements > river
view flys-client/ChangeLog @ 812:70b728a9f4e8
Meta data service: Create correct request document now.
flys-client/trunk@2468 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 08 Aug 2011 14:49:14 +0000 |
parents | 8fa303586f14 |
children | 57ea5af8a967 |
line wrap: on
line source
2011-08-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DatacageWindow.java: Do not cry for missing i18n if running into error. * src/main/java/de/intevation/flys/client/server/meta/Converter.java: Convert more stuff. * src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java: Create correct request document now. 2011-08-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/services/MetaDataService.java, src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/MetaDataServiceAsync.java: Take the user id, too. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java, src/main/java/de/intevation/flys/client/client/ui/DatacageWindow.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Adjusted call to pass the user id to the datacage window. * src/main/java/de/intevation/flys/client/client/ui/DatacageButton.java, src/main/java/de/intevation/flys/client/client/ui/DatacagePanel.java: TODO: Bring user id into play. 2011-08-02 Felix Wolfsteller <felix.wolfsteller@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/TableDataPanel.java: Unified spacing and punctuations in javadoc comments, removed incorrect comment. 2011-07-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: Collections are able to store the recommendations they have already loaded. Therefore, new methods have been added to add recommendations and to determine, if a recommendation has already been loaded. * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Read the already loaded recommendations from Collection's DESCRIBE document. * src/main/java/de/intevation/flys/client/server/CollectionHelper.java: Write the Collection's recommendations into its attribute document. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Two things: 1) Do no load recommendations that have already been loaded before. 2) Update UI when there are no more artifacts to load (recommendations). 2011-07-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Added missing slash in XPath expression. 2011-07-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultRecommendation.java, src/main/java/de/intevation/flys/client/shared/model/Recommendation.java: New. The interface and its default implementation that represent recommendations provided by an Artifact. A recommendation consists at least of the name of an ArtifactFactory and a list of database ids. * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Read the recommendations from Artifact's DESCRIBE document (which structure has changed.) * src/main/java/de/intevation/flys/client/shared/model/ArtifactDescription.java, src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java: Recommendation are no longer simple strings but Recommendation objects now. So, the interface to retrieve those recommendations has changed. * src/main/java/de/intevation/flys/client/client/services/ArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/ArtifactService.java, src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java: This service takes a further string now, which represents the database ids used to create static artifacts that require data from database. * src/main/java/de/intevation/flys/client/client/FLYS.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Adapted the call of the ArtifactService. M src/main/java/de/intevation/flys/client/client/ui/map/MapOutputTab.java 2011-07-20 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/map/FloodMap.java: The vector layer which is used to save features created by the user acts as OpenLayers base layer. I decided to do so, because this is the first and only layer that will always exist in our maps. Users aren't able to remove it! * src/main/java/de/intevation/flys/client/client/ui/map/MapThemePanel.java: Added a callback interface that allows the MapOutputTab to react on modifications in the ThemePanel. This special callback is used to activate/deactivate layers. * src/main/java/de/intevation/flys/client/client/ui/map/MapOutputTab.java: Now, the layers in the map reflect the facets of the map output. Each layer's extent is analyzed and finally the map is zoomed to the minimal extent that contains all layers. 2011-07-20 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ThemeNavigationPanel.java, src/main/java/de/intevation/flys/client/client/ui/ThemeNavigationPanel.java: Moved the panel a package level higher. * src/main/java/de/intevation/flys/client/client/ui/ThemePanel.java: New. Abstract class that consists basically of the code that was removed from ChartThemePanel. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: Sourced code base out to ThemePanel, so that's possible to reuse the code for a MapThemePanel. * src/main/java/de/intevation/flys/client/client/ui/map/MapThemePanel.java: New. A theme panel for the map widget. 2011-07-19 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/AttributedTheme.java: New. This theme stores all its attributes in a map. The intent of this theme is to save all the facet's values contained in the DESCRIBE of the Collection to be able to write an equivalent attribute part as the incoming DESCRIBE has -> no loss of attributes like WMS URL or layernames in a map theme! * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Instantiate new AttributedThemes to save all information of a facet. * src/main/java/de/intevation/flys/client/server/CollectionHelper.java: Write all attributes of an AttributedTheme into a facet's element. * src/main/java/de/intevation/flys/client/shared/model/Theme.java, src/main/java/de/intevation/flys/client/shared/model/DefaultTheme.java, src/main/java/de/intevation/flys/client/shared/model/FacetRecord.java, src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: The 'active' member variable is an integer value now as it is in the Collection's DESCRIBE document, too. 2011-07-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/ArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/ArtifactService.java, src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java: An artifact can be created using a UUID as model artifact. * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Read artifact recommendations from artifact description. * src/main/java/de/intevation/flys/client/shared/model/ArtifactDescription.java, src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java: Added method to retrieve recommendations. * src/main/java/de/intevation/flys/client/client/FLYS.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Adapted the call of the ArtifactService. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: If the Artifact of a collection changes, the recommended Artifacts - if existing - are created and added to the current Collection. 2011-07-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/map/MeasureControl.java: New. This control consists of two OpenLayers controls to measure lines and polygons. * src/main/java/de/intevation/flys/client/client/ui/map/MapToolbar.java: Added the MeasureControl. * src/main/webapp/images/measurePolygon.png, src/main/webapp/images/measurePolygon_Selected.png, src/main/webapp/images/measureLine.png, src/main/webapp/images/measureLine_Selected.png: New. Icons for the measure control. * src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added path locations for the measurement tools. 2011-07-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/map/MapPositionPanel.java: New. This panel displays the mouse position in map coordinates. * src/main/java/de/intevation/flys/client/client/ui/map/DrawControl.java:: New. This control consists of a button to enable the control and a combobox that provides different types of barriers. Dependent on the selected barrier type, the user can draw lines or polygons into the map. * src/main/java/de/intevation/flys/client/client/utils/EnableDisableCmd.java: New. This interface might be used to react on enable/disable operations. * src/main/java/de/intevation/flys/client/client/ui/map/MapToolbar.java: Added controls to digitize lines and polygons. * src/main/java/de/intevation/flys/client/client/ui/map/FloodMap.java: Added a method that returns a vector layer that might be used to insert new barriers draw by the user. This layer is used by the DrawControl. * src/main/java/de/intevation/flys/client/client/ui/map/MapOutputTab.java: The MapToolbar requires a Canvas object now, which is used to keep track on the current mouse position. * src/main/webapp/images/selectFeature_Selected.png, src/main/webapp/images/selectFeature.png, src/main/webapp/images/digitize.png, src/main/webapp/images/digitize_Selected.png, src/main/webapp/images/removeFeature.png: New. Icons for the map control elements. * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings and image pathes. 2011-07-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/map/MapToolbar.java: New. This toolbar provides controls that interact with the map. * src/main/java/de/intevation/flys/client/client/ui/map/FloodMap.java: Removed the initialization of map controls. * src/main/java/de/intevation/flys/client/client/ui/map/MapOutputTab.java: Added the MapToolbar at the top of the layout. 2011-07-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/map/MapOutputTab.java: Finished layouting the components. The map has the same layout as the chart now. 2011-07-08 Ingo Weinzierl <ingo@intevation.de> * pom.xml: Added a dependency to GwtOpenLayers 0.5 (Apache 2.0). * src/main/java/de/intevation/flys/client/FLYS.gwt.xml: Include the GWT OpenLayers code. * src/main/webapp/FLYS.html: Include OpenLayers 2.9 (currently from remote openlayers.org server). For production use, we have to include a local OpenLayers. * src/main/java/de/intevation/flys/client/client/FLYS.java: Small modification on the way to render the HTML page. This lets us now combine GWT and SmartGWT components. * src/main/java/de/intevation/flys/client/client/ui/map/FloodMap.java: New. This components manages the map provided by GwtOpenLayers. * src/main/java/de/intevation/flys/client/client/ui/map/MapOutputTab.java: Initializes a FloodMap now and renders the map in the middle area. Note, that the layout is nearly completely using GWT components. Mixing GwtOpenLayers with SmartGWT doesn't work here. 2011-07-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/OutputMode.java: An output mode has type member now. In addition, the interface describes a method that creates an OutputTab. Concrete subclasses should return OutputTabs that fit to their type. * src/main/java/de/intevation/flys/client/shared/model/ChartMode.java: New. This OutputMode is instantiated if type == "chart" and creates ChartOutputTabs. * src/main/java/de/intevation/flys/client/shared/model/MapMode.java: New. This OutputMode is instantiated if type == "map". It creates MapOutputTabs. * src/main/java/de/intevation/flys/client/shared/model/DefaultOutputMode.java: This default implementation of an OutputMode support the type member now. The method to create OutputTabs will return null. * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Now, we support the 'type' attribute of Outputs in the DESCRIBE document. Based on the type, we will now instantiate concrete subclasses of the DefaultOutputMode. E.g. the type == 'chart', the instantiated OutputMode will be ChartMode. * src/main/java/de/intevation/flys/client/client/ui/map/MapOutputTab.java: New. This OutputTab is used to render a map. Note: This is currently a stub only! * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Creating OutputTabs based on the names of an OutputMode is obsolete. Now, the OutputModes itself create their required OutputTab. 2011-07-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings for the output mode 'floodmap'. 2011-07-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/BooleanPanel.java, src/main/java/de/intevation/flys/client/client/ui/TextProvider.java, src/main/java/de/intevation/flys/client/client/ui/AutoIntegerPanel.java: Default values provided by the data list used to create the panels are set now. 2011-07-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java: Refactored getting labels out to own methods which enables subclasses to changed them. * src/main/java/de/intevation/flys/client/client/ui/WaterlevelGroundPanel.java: Override methods of DistancePanel to support own labels for this panel. In addition, this panel has no distance/locations table as the DistancePanel has. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added new strings for the distance panel and the waterlevel/ground panel. 2011-07-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/BooleanPanel.java: This panel is a sublcass of TextProvider now. The difference to the TextProvider is, that there is the option to active/deactivate a checkbox. So, the valid values returned by this panel are "true" and "false". 2011-07-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/TextProvider.java: Made methods in this class much smaller to override them easily in subclasses. In addition, the TextItem has been replaced with a DataSourceField which seems to be more easily to change in subclasses. * src/main/java/de/intevation/flys/client/client/ui/AutoIntegerPanel.java: Override required methods of TextProvider. This panel now accepts integer values and the string "auto". An inner class AutoIntegerValidator is used to validate the user input. * src/main/webapp/FLYS.css: Set style for html label elements. Those label elements are used in forms to label items. 2011-07-06 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/ParameterChangeEvent.java: This event now supports a further member variable "type". Type is an enum and can be FORWARD or BACK which reflects to stepping forward or backward with the master artifact. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Improved the way of adding/removing items to/from the static list of parameters. We now distinguish between the two ways: - step forward: the last item in the list is added to the static parameter list. This makes redrawing much smoother. - step backward: only the necessary items are removed from the static parameter list. Before, we have removed all items and added the relevant ones afterwards. This makes redrawing also much smoother. * src/main/java/de/intevation/flys/client/client/ui/ContinuePanel.java: This panel will have no static widget. * src/main/java/de/intevation/flys/client/client/ui/AutoIntegerPanel.java: This panel uses the parents createOld() now. 2011-07-06 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/webapp/FLYS.css: Some layout improvements related to the height of components. 2011-07-06 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: The right side of the ParameterList now consists of a stacked panel that itself consists of the helper panel and a panel for displaying the calculation results. The user is now able to see both at the same time. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Improved the Collection update process. There is no need to update the collection twice when the master artifact changed. Now, the collection is updated only a single time if the collection itself changed - and it changes everytime when its artifact is set. * src/main/java/de/intevation/flys/client/client/ui/TableDataPanel.java: The label 'Berechnungsergebnisse' is no longer part of the Canvas created by this class. * src/main/java/de/intevation/flys/client/client/ui/UIProvider.java, src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: The helper panel is now a VLayout, no longer a Canvas. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Add helper widgets as members to the helper panel, no longer as children. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings for the input support stack. 2011-07-05 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java, src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java: Modified these classes with the intent to override them easier. * src/main/java/de/intevation/flys/client/client/ui/BooleanPanel.java, src/main/java/de/intevation/flys/client/client/ui/DatacagePanel.java, src/main/java/de/intevation/flys/client/client/ui/TextProvider.java, src/main/java/de/intevation/flys/client/client/ui/AutoIntegerPanel.java, src/main/java/de/intevation/flys/client/client/ui/WaterlevelGroundPanel.java, src/main/java/de/intevation/flys/client/client/ui/DatacageButton.java: New panels for data input. The work on these classes is not finished yet! * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: Support more UI providers that return the new panels above. * src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: New strings used in the WaterlevelGroundPanel. 2011-07-05 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/AdvanceHandler.java: New. This interface describes a handler that listens to events in order to advance to a next step. * src/main/java/de/intevation/flys/client/client/ui/ContinuePanel.java: New. This panel doesn't allow users to enter data. It only displays a link that lets users step forward to a next state. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: The ParameterList needs to take care on states that do not require user input but that aren't the final state of an artifact. In such case, the UI provider should be the ContinuePanel only! It allows users to step to the next state. In order to provide such functionality - step forward without feeding the artifact - the ParameterList now implements the AdvanceHandler. * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: If the uiprovider attribute is 'continue', the ContinuePanel is returned. * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Adapted the width of the label field. * src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings for new states. 2011-07-04 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java: Added the missing "back"-button. 2011-07-01 Ingo Weinzierl <ingo@intevation.de> flys/issue159 (WINFO: Radiobutton - Ortsauswahl bei "W für ungleichwertigen Abflusslängsschnitt" entfernen) * src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java: Connected columns of the locations and distances tables with the panels from/to fields. The first two columns of the locations and the first column of the distances table might be used to set from/to values in the panel. 2011-07-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DistanceInfoXML.java: New. This service - which is no GWT RPC Service - returns the distance info document as XML. The content of the document is not modified, parsed but only copied through. * src/main/java/de/intevation/flys/client/client/ui/range/DistanceInfoDataSource.java: New. This data source is used to fill the LocationsTable and RangeTable. It uses the DistanceInfoXML service to query the required data automatically using a "locations" or "distances" filter to reduce the size of the data document. * src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java: Use the DistanceInfoDataSource to fill the locations and distances tables. * src/main/webapp/WEB-INF/web.xml: Registered the new service. 2011-06-30 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/range/LocationsTable.java, src/main/java/de/intevation/flys/client/client/ui/range/RangeTable.java: New. These two tables are used to support the user to select from/to values in the distance panel. * src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java: Added LocationsTable and RangeTable that currently load no data. 2011-06-30 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DistancePanel.java: New. This panel is used to insert kilometer ranges. There is no input mode for locations as it is in LocationDistancePanel. * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings for the distance panel. * src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java: Added a method to set the step width. * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: Create a DistancePanel UIProvider if the "uiprovider" string in the DESCRIBE of an artifact equals "distance_panel". 2011-06-29 Ingo Weinzierl <ingo@intevation.de> flys/issue185 (IE8 + Chromium: Kein Zoomen von Diagrammen möglich) * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Create the chart image first before initialising listeners on it. * src/main/java/de/intevation/flys/client/client/ui/chart/ZoomboxControl.java: The zoombox that is displayed in while zooming is 2 pixel smaller than the area between start and end point now. This should avoid the zoombox absorbing mouse events. 2011-06-29 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Reordered delete and rename in project context menu, add separator. 2011-06-29 Ingo Weinzierl <ingo@intevation.de> flys/issue181 (Erstes Thema in der Themenliste wählt sich automatisch wieder an) * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: We will no longer check if an update of the theme list is necessary. The EditEvent that is caught should be enough information to start the update process. 2011-06-28 Ingo Weinzierl <ingo@intevation.de> * pom.xml: GWT version upgrade from 2.1.1 to 2.3.0. 2011-06-28 Ingo Weinzierl <ingo@intevation.de> Tagged RELEASE 2.4 2011-06-27 Ingo Weinzierl <ingo@intevation.de> flys/issue182 (WINFO: Vorbelegung Q bei "ungleichwertigem Abflusslängsschnitt") * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: Set initial mode to Q. 2011-06-27 Ingo Weinzierl <ingo@intevation.de> * Changes: Prepared changes for the upcoming release. 2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/**/*.java: Removed trailing whitespace. 2011-06-26 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/server/UserCollectionsServiceImpl.java, src/main/java/de/intevation/flys/client/shared/model/CollectionRecord.java, src/main/java/de/intevation/flys/client/client/ui/chart/PanControl.java: Removed superfluous imports. 2011-06-24 Ingo Weinzierl <ingo@intevation.de> flys/issue165 (Projektliste: Einige Auffälligkeiten nach Neuimplementierung) * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Set the maximal length of project names to 50 characters. If the name, entered by the user, is longer than this max value, it is not saved to artifact server and the old name is displayed again. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added warning message for too long project names. 2011-06-24 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: The "zoom-to-max-extent" button will have the effect that no zoom values are transfered to the server. 2011-06-24 Ingo Weinzierl <ingo@intevation.de> flys/issue21 (Gleiches Projekt kann mehr als einmal gleichzeitig geöffnet werden) * src/main/java/de/intevation/flys/client/client/FLYS.java: Implements CollectionChangeHandler to lock new projects. In addition, there is a new method to close projects. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: If this view contains a Collection, FLYS is used to close this window. FLYS needs to unlock the project before the view is destroyed. Otherwise - if no Collection has been created yet - this view destroys itself. 2011-06-23 Ingo Weinzierl <ingo@intevation.de> flys/issue170 (Diagramm: Initiales Zoomen zeigt verschobenen Bereich) * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: The chart image is no longer removed from DOM but it's source is set to a new value after the panel's size changes. This makes the zoom actions much smoother and there the initial zoom values are no longer broken. * src/main/java/de/intevation/flys/client/client/ui/chart/PanControl.java: Panning will now move the image itself but not its parent element. * src/main/java/de/intevation/flys/client/shared/model/ChartInfo.java, src/main/java/de/intevation/flys/client/shared/Transform2D.java: Added methods to dump the objects to GWT log. 2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: Prepare for AT export. 2011-06-23 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Removed the formatter that cuts out a piece of the middle of project names. 2011-06-23 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/CollectionRecord.java: Store Html escaped strings as names. * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Display the project's name stored at the CollectionRecord which is Html escaped. 2011-06-23 Ingo Weinzierl <ingo@intevation.de> flys/issue165 (Projektliste: Einige Auffälligkeiten nach Neuimplementierung) * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Added tooltips and table headers. 2011-06-23 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added more i18n strings for the project list and error messages. * src/main/java/de/intevation/flys/client/client/FLYS.java: Added a handler that catches uncaught exceptions. Those exceptions are displayed using a new method showWarning(Throwable t). This method brings up a Window that displays the stacktrace of the exceptions. 2011-06-23 Sascha L. Teichmann <sascha.teichmann@intevation.de> * pom.xml: Added dependency to Apache Commons Lang 2.6 http://commons.apache.org/lang/ Used for proper HTML string escaping. * src/main/java/de/intevation/flys/client/server/ReportServiceImpl.java: Generate error reports as HTML lists. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Set report in corresponding panel. 2011-06-22 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/services/ReportService.java, src/main/java/de/intevation/flys/client/server/ReportServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/ReportServiceAsync.java: Stub for report service. * src/main/webapp/WEB-INF/web.xml: registered new service. 2011-06-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added a new error string. * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: Display a warning if there are no information of W and Q ranges that might be used to validate user input. 2011-06-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Register the CollectionView when a new collection is created. This is necessary to avoid an inconsistent view that would otherwise display projects that might have been deleted. 2011-06-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: If an open project is removed (via context menu) the related CollectionView is removed from screen. * src/main/java/de/intevation/flys/client/client/FLYS.java: Added a method that returns the current FLYSWorkspace. * src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java: Added a method that destroys a CollectionView if it is open. 2011-06-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DoCollectionAction.java: New. This base RPC service implementation handles collecion specific actions. It has a doAction() method that takes a Collection, the action document and a server url. * src/main/java/de/intevation/flys/client/server/SetCollectionNameServiceImpl.java, src/main/java/de/intevation/flys/client/server/DeleteCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/SetCollectionTTLServiceImpl.java: Trigger the collection actions on the server using the DoCollectionAction class which handles the Http stuff. * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Bugfix: If no user collections returned, we will clear the project list. 2011-06-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/SetCollectionNameServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/SetCollectionNameService.java, src/main/java/de/intevation/flys/client/server/SetCollectionNameServiceImpl.java: New. This service is used to set the name of a collection. Note, that this is currently just a stub. The ServiceImpl currently throws a "NOT IMPLEMENTED" exception. * src/main/java/de/intevation/flys/client/client/services/SetCollectionTTLServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/SetCollectionTTLService.java, src/main/java/de/intevation/flys/client/server/SetCollectionTTLServiceImpl.java: New. This service is used to set the time-to-live of a collection. Note, that this is currently just a stub. The ServiceImpl currently throws a "NOT IMPLEMENTED" exception. * src/main/java/de/intevation/flys/client/client/services/DeleteCollectionServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/DeleteCollectionService.java, src/main/java/de/intevation/flys/client/server/DeleteCollectionServiceImpl.java: New. This service is used to delete a collection. Note, that this is currently just a stub. The ServiceImpl currently throws a "NOT IMPLEMENTED" exception. * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Calls the services SetCollectionTTLService, SetCollectionNameService and DeleteCollectionService and display a warning if an error occured. * src/main/webapp/WEB-INF/web.xml: Registered the new services. 2011-06-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: There are setter methods for 'name' and 'ttl' now. The project list requires this to set those attribute to a new value. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings for the project list's context menu item "rename project". * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Added a context menu item to rename the selected project and listeners to trigger setting 'name' and 'ttl' to a new value. TODO: We still need to write RPC services to update those values! 2011-06-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: Renamed the german translation of wq mode for "Q at gauge". * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Adapted the layout to fit the (long) german wq mode string. 2011-06-22 Ingo Weinzierl <ingo@intevation.de> flys/issue104 (W-INFO: Wasserspiegellagenberechnung / Strecke) * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: The old/static panel will display the selected wq mode now, because it's no longer possible to recognize the selected q mode based on the displayed units (there are two different q modes now). 2011-06-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Initialize the combobox correctly. 2011-06-21 Ingo Weinzierl <ingo@intevation.de> flys/issue156 (WINFO: Platzierung des Berechnungsberichtes) * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Do not display report modes as tabs. 2011-06-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: The combobox is no longer editable now. 2011-06-21 Ingo Weinzierl <ingo@intevation.de> flys/issue21 (Gleiches Projekt kann mehr als einmal gleichzeitig geöffnet werden) * src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java: Open projects that are opened again via ProjectList are brought up to front and their size is restored. 2011-06-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: Take care on empty fields when adding a new double value. 2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/ReportMode.java: New. Mode to detect out of type 'report'. * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Build ReportModes for 'report' outs. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Filter reports and dispatch them to updateReports(). 2011-06-21 Ingo Weinzierl <ingo@intevation.de> flys/issue132 (WINFO: Streckenauswahl per default setzen) * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Set the initial mode to "distance". 2011-06-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/UserCollectionsServiceImpl.java, src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java: Read the time-to-live from collection's describe document. * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: Adapted the constructor calls. They require a time-to-live attribute now. This value is retrievable via getTTL(). * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: The project list has now a column that displays an icon that shows the favorite state of the project. A gold star means, the project is marked as favorite, a silver one means that the project is no favorite project. * src/main/java/de/intevation/flys/client/shared/model/CollectionRecord.java: The 'ttl' attribute returns the filename of the icon that should be displayed in the project list. * src/main/webapp/images/star_silver.png, src/main/webapp/images/star_gold.png: New. These icons - based on icons copied from famfamfam - are used to mark a project as favorite or no favorite. 2011-06-21 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/config.xml: Set project list update interval to 5 minutes. That is enough for long living projects. 2011-06-21 Ingo Weinzierl <ingo@intevation.de> flys/issue22 (Abgelaufene Projekte/Collections werden noch in der Projektliste angezeigt.) * src/main/java/de/intevation/flys/client/client/Config.java, src/main/java/de/intevation/flys/client/client/config.xml: Added a config option to specify the update interval of the project list. This value is retrievable using the method Config.getProjectListUpdateInterval(). * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Added a timer to update the user's collections frequently. The interval is determined by the constant UPDATE_INTERVAL which is currently 30 seconds or a config.xml option that needs to be configured at "/config/projectlist/update-interval/text()". 2011-06-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings for the new output "report" for each calculation mode. 2011-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Added report panel. * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/DistanceInfoServiceImpl.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/chart/MousePositionPanel.java, src/main/java/de/intevation/flys/client/client/ui/DatacageWindow.java: Removed superfluous imports. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: 'boolean ? true : false' <=> 'boolean' 2011-06-20 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Removed more expensive XPath. 2011-06-20 Ingo Weinzierl <ingo@intevation.de> flys/issue140 (WINFO: WQ-Tabelle in Tabs aufsplitten) flys/issue122 (W-INFO: Wasserspiegellagenberechnung / Auswahlunterstützung Abfluss (W-Werte sind nicht auswählbar)) * src/main/java/de/intevation/flys/client/client/ui/wq/QDTable.java: New. This table is used to show Q and D values for the WQInputPanel. The first two rows are selectable icons. * src/main/java/de/intevation/flys/client/client/ui/wq/WTable.java: New. This table is used to show W values for the WQInputPanel. The rows in this table are not selectable. * src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java: Added methods to set the lower and upper value directly. * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: Added a method to add a further double value to the current list. * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Removed the old WQD tables and replaced them with a QDTable and a WTable. The WQD values are sorted into the two tables when they are initialized. The values in the WTable are not selectable. The QDTable has two selectable columns. Based on the current mode (single values or range mode), the selected values are filled into the array panel or into the range panel. 2011-06-17 Ingo Weinzierl <ingo@intevation.de> flys/issue140 PART 1 (WINFO: WQ-Tabelle in Tabs aufsplitten) * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Splitted the code to determine min/max kilometer range and rivername from code to fetch WQ data via RPC. 2011-06-17 Ingo Weinzierl <ingo@intevation.de> flys/issue118 (W-INFO: Eingabe Q aus Auswahlunterstützung und Manuell) * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Added the "wq_free" parameter to the feed data even if the single value mode is selected. 2011-06-17 Ingo Weinzierl <ingo@intevation.de> flys/issue118 (W-INFO: Eingabe Q aus Auswahlunterstützung und Manuell) * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Added a further radio button to select a "Q at Gauge". In addition, this panel returns a new value "wq_free" that depends on the selected Q mode. It is "true" if Q is selected, otherwise "false". * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings for the new radio button. 2011-06-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/CollectionHelper.java: Write "index" and "description" into the attribute document. This is necessary for the ChartThemePanel. * src/main/java/de/intevation/flys/client/shared/model/Theme.java: Added a getIndex() method. 2011-06-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Read "index" and "description" of facets from collection's describe document. In addition, I replaced the expensive XPath search for attributes with DOM methods. * src/main/java/de/intevation/flys/client/shared/model/Theme.java, src/main/java/de/intevation/flys/client/shared/model/DefaultTheme.java, src/main/java/de/intevation/flys/client/shared/model/DefaultFacet.java: Themes and facets have now indices and descriptions. * src/main/java/de/intevation/flys/client/shared/model/FacetRecord.java: Display the description of a theme in the theme panel instead of the name (which represents the facet type). 2011-06-16 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DatacageWindow.java: Alloc TreeNode array with the right size because its known. 2011-06-15 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: Be more tolerant with entered whitespaces. 2011-06-15 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Set height of the parameter panel that shows the "old" values to "1" if no "old" value is existing. This avoids GWT throwing warning messages. 2011-06-15 Ingo Weinzierl <ingo@intevation.de> flys/issue117 (W-INFO: Wasserspiegellagenberechnung / Q-Eingabe) * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: This panel will return a list of unique values. * src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java: Improved parsing of double values. 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> flys/issue88 (WINFO/Wasserspiegellage: Namensänderung im Eingabebereich von Orten und Strecken) * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Modified strings for the location/distance panel. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Modified strings for the radio button and panel titles. 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/server/DistanceInfoServiceImpl.java: Got rid of namespace. Use DOM instead of XPath. 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DistanceInfoRecord.java: Adjusted table model. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Bring 'Oberkante' and 'Unterkante' into UI. * src/main/java/de/intevation/flys/client/client/FLYSConstants.java, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: i18n. Repaired a few wrong encoded strings, too. 2011-06-14 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/server/DistanceInfoServiceImpl.java, src/main/java/de/intevation/flys/client/shared/model/DistanceInfoObjectImpl.java, src/main/java/de/intevation/flys/client/shared/model/DistanceInfoObject.java: Loop through 'Unterkante' 'Oberkante' from service. 2011-06-14 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: Adapted the german error message that is displayed if the user entered a value which is not in the valid range. 2011-06-14 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/WQDataItem.java: New. This DataItem is used to save min/max W/Q values. This enables the UIProvider to validate the entered values. Currently, this is used in the WQAdaptedInputPanel only. * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Read the W/Q ranges from DESCRIBE document and create WQDataItems if they are existing. * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: Introduced a client side input validation for the entered W/Q values with respect on their format and min/max range. 2011-06-14 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: The values entered by the user are validated on client side now taking account on the format and the river's W/Q ranges. 2011-06-14 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: Added a method to validate the form field. If a value is not a valid double value, it returns false. * src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: The values entered in the text field are validated regarding to the river's range. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added error messages displayed if we were not able to read min/max values from DESCRIBE document. 2011-06-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added error strings for the range range/location panel. * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: Added a validate() method that is called before the event to step forward is fired. If the method returns a list with errors, the event is not fired. In that case, an error dialog is displayed. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Override the validate() method of AbstractUIProvider. * src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java: Added a method that validates the form. 2011-06-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ChartInfoServiceImpl.java: Parse min/max values for axes and all transformation matrix elements. * src/main/java/de/intevation/flys/client/shared/model/Axis.java: An axis has a min and max value now. * src/main/java/de/intevation/flys/client/shared/model/ChartInfo.java: The ChartInfo object provides a Transform2D object for each y axis contained in the chart. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Refactored the zoom and pan actions. The values used to select a concrete clip of the chart are computed based on the min/max range of an axis. The chart request uses percentual values for axes ranges now. 2011-06-09 Ingo Weinzierl <ingo@intevation.de> flys/issue139 (WINFO: NPE bei Step-Back bei ungleichwertiger Berechnungsart) * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: Fixed NPE while initialising user values. 2011-06-08 Ingo Weinzierl <ingo@intevation.de> flys/issue103 PART 2 (WINFO: Wasserspiegellagenberechnung / Layout-Inkonsistenz) * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Append the unit of W or Q to the values in the single mode. 2011-06-08 Ingo Weinzierl <ingo@intevation.de> flys/issue43 (i18n: Einige Verbesserungen) * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties: Adjusted the english text that is displayed before switching to another language. 2011-06-08 Ingo Weinzierl <ingo@intevation.de> flys/issue21 (Gleiches Projekt kann mehr als einmal gleichzeitig geöffnet werden) * src/main/java/de/intevation/flys/client/client/FLYS.java: Introduced a lock mechanism for projects. When a project is opened, it becomes locked. Further clicks on that project in the project list will have no effect except it brings up the project window. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Implements the CloseClickHandler interface now. The operations triggered by the "x" in the upper right corner of the window will close and destroy the window. This has been done automatically before. * src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java: Added a new method that brings up a project window. 2011-06-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ChartInfoServiceImpl.java: Skip axes that lay out of valid bounds. E.g. there are 2 axes: if one of those axes position is > 1 it is skipped. 2011-06-08 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Don't crash if there is no transformer. 2011-06-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Added a dirty hack to accept project names shorter than 30 characters without cutting a part from the middle. 2011-06-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/PanControl.java: Implemented the onMouseOut() method. If this event is catched, the current pan operation is finished (not canceled). 2011-06-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Axis.java: New. This class should represent an axis in a chart. * src/main/java/de/intevation/flys/client/shared/model/ChartInfo.java: New. This class is used by the ChartInfoService to retrieve more information about a Chart that just the Transform2D object to reproject points. It currently stores x and y axes and the Transform2D object of a chart. * src/main/java/de/intevation/flys/client/client/services/ChartInfoServiceAsync.java, src/main/java/de/intevation/flys/client/server/ChartInfoServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/ChartInfoService.java: Changed the return value of this service from Transform2D to ChartInfo. The Transform2D object is included in this new ChartInfo. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Implements the PanHandler interface. If a PanEvent is fired by the PanControl, a new chart range is computed using the axes information provided by the ChartInfo object (that has been retrieved by the ChartInfoService). * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Added the PanControl to the toolbar. 2011-06-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/HasPanHandlers.java, src/main/java/de/intevation/flys/client/client/event/PanEvent.java, src/main/java/de/intevation/flys/client/client/event/PanHandler.java: New. Classes and interfaces necessary for a pan listeners mechanism. * src/main/java/de/intevation/flys/client/client/ui/chart/PanControl.java: New. A control that enables the user to pan a chart. * src/main/webapp/images/pan.png, src/main/webapp/images/pan_Selected.png: Icons for the PanControl. * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added links to the pan icons. 2011-06-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/CSVExportServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/CSVExportService.java, src/main/java/de/intevation/flys/client/server/CSVExportServiceImpl.java: Changed the return value of this service from List to List<String[]>. This helps GWT creating JavaScript objects. * src/main/java/de/intevation/flys/client/client/ui/TableDataPanel.java: Adjusted the return value of the CSVExportService and added a warning dialog if an error occured while fetching those data. 2011-06-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ChartServiceHelper.java: New. This class helps generating the attribute document that is used for generating charts. * src/main/java/de/intevation/flys/client/client/services/ChartInfoServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/ChartInfoService.java, src/main/java/de/intevation/flys/client/server/ChartInfoServiceImpl.java, * src/main/java/de/intevation/flys/client/server/ChartOutputServiceImpl.java: Removed the code to create the chart attribute document. This work is done in the ChartServiceHelper. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Added a method that returns all attribute that should be used for the chart creation. Currently, there are width, height, x and y ranges. 2011-06-06 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Repaired broken zoom-out control. We will now zoom out for 10% of the axis range. E.g. range before = 2 - 10 , range after = 1.2 - 10.8 2011-06-06 Ingo Weinzierl <ingo@intevation.de> flys/issue131 (Anzeige der Position bei großen Zahlen ungenau) * src/main/java/de/intevation/flys/client/server/ChartInfoServiceImpl.java: Repaired a broken XPath expression for the chart attributes. 2011-06-06 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ZoomboxControl.java: Added a handler that listens to mouse out events. If the mouse moves out of the chart area, the current zoom operation is canceled. The zoombox and the coordinates are reset. 2011-06-03 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Added a method that allows zooming out for a specified factor (between 0-100). * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Added a button to zoom out 10%. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: * src/main/webapp/images/zoom-out.png: New. The icon for the zoom-out control. 2011-06-03 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: New method to reset the zoom. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Added a button that resets the zoom and triggers an update of the chart. * src/main/java/de/intevation/flys/client/client/ui/chart/ZoomboxControl.java: This control inherits from ImgButton now. The icon displayed for this control is the same as in the desktop version of this software. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added links to zoom button images. * src/main/webapp/images/zoom-in_Selected.png, src/main/webapp/images/zoom-1.png, src/main/webapp/images/zoom-in.png: Images used for the zoom buttons. 2011-06-03 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ChartOutputServiceImpl.java: Append the selected min and max ranges for x and y axes to the attribute document. This enables the server to zoom the chart to the specified view. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: The x and y ranges specified after zooming are stored as instance variables and used while creating the chart imgage url. The ChartOutputService will put those ranges into the attribute document for the chart creation. 2011-06-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Implements the ZoomHandler interface now. Currently, the values are just received from ZoomboxControl. We still need to refresh the chart with those zoom values. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Registered the ChartOutputTab as ZoomHandler at the ZoomboxControl. * src/main/java/de/intevation/flys/client/client/ui/chart/ZoomboxControl.java: Bugfix: fire the ZoomEvent when mouse up events occur. The events was not fired anytime. 2011-06-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/HasZoomHandlers.java, src/main/java/de/intevation/flys/client/client/event/ZoomHandler.java, src/main/java/de/intevation/flys/client/client/event/ZoomEvent.java: New. Necessary interfaces and classes for a listener mechanism for zoom events. * src/main/java/de/intevation/flys/client/client/ui/chart/ZoomboxControl.java: New. A zoombox control that draws - if activated - an semi opaque rectangle on the top of the observed panel. This control uses mouse up/down/move events to draw the rectangle. A mouse down event starts the zoom process, a mouse up event determines the coordinates for the zoom and fires a ZoomEvent. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Added the ZoomboxControl. 2011-06-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Moved the mouse position panel to the right border of the toolbar panel. * src/main/java/de/intevation/flys/client/client/ui/chart/MousePositionPanel.java: Improved the layout of this HLayout panel. It has a fixed width of 195px now. The components inside this panel have also fixed width values. 2011-06-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: After the chart panel is resized, we will now fetch a chart info document using the ChartInfoService. This service lets us update the current Transform2D - which is used to display mouse position in chart coordinates and determine mouse clicks for zooming. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Changed the constructor call of the MousePositionPanel. It needs to ChartOutputTab now. * src/main/java/de/intevation/flys/client/client/ui/chart/MousePositionPanel.java: Changed the way to compute the chart coordinates. We will now use the Transform2D object that is returned by the ChartInfoService. 2011-06-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Made the collection object accessible. 2011-06-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ChartInfoServiceImpl.java: Removed a debug statement. 2011-06-01 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/Transform2D.java: New. This class transforms coordinates into an other coordinate system based on specified scale and translation factors. * src/main/java/de/intevation/flys/client/client/services/ChartInfoServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/ChartInfoService.java, src/main/java/de/intevation/flys/client/server/ChartInfoServiceImpl.java: New. A service that fetches the chart info document provided by the artifact server and returns (currently) a Transform2D object. * src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added an error string that should be displayed if the chart info service failed. * src/main/webapp/WEB-INF/web.xml: Registered the chart info service. 2011-05-27 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Added a public method that returns the chart panel. * src/main/java/de/intevation/flys/client/client/ui/chart/MousePositionPanel.java: New. A panel that displays the mouse position relative to a element. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: Added the MousePositionPanel. NOTE: The MousePositionPanel does NOT show the correct position and it does NOT show the x|y coordinates in chart dimension yet! 2011-05-27 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Moved the toolbar code into an own class. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartToolbar.java: New. The toolbar used for chart panels. 2011-05-27 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Replaced buttons displayed as labels with real buttons. * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java, src/main/java/de/intevation/flys/client/client/ui/chart/ThemeNavigationPanel.java, src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Replaced label buttons with real buttons. * src/main/webapp/images/theme_top.png, src/main/webapp/images/theme_up.png, src/main/webapp/images/theme_bottom.png, src/main/webapp/images/theme_down.png: New. Images used in the ThemeNavigationPanel for buttons to move themes. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n string for the databasket and pathes for the icons used in the ThemeNavigationPanel. 2011-05-27 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/HasOutputParameterChangeHandlers.java, src/main/java/de/intevation/flys/client/client/event/OutputParameterChangeHandler.java, src/main/java/de/intevation/flys/client/client/event/OutputParameterChangeEvent.java: Interface and class to realize a listener mechanism for output parameter changes. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: Implements the OutputParameterChangeHandler interface. After the output parameter of the chart have changed, the chart is refreshed. NOTE: The panel is disabled right before the RPC call to replace the collection's attribute is executed. It is enabled after the RPC call has finished. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Implements the HasOutputParameterChangeHanders interface. The event is fired if there are changes in the chart theme control panel. 2011-05-27 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/CollectionAttributeServiceImpl.java: Connected this service with the artifact server. Modifications of a Collection will be stored in the artifact database now. * src/main/java/de/intevation/flys/client/server/CollectionHelper.java: New. This helper is currently used to create the attribute document of a collection based on a Collection itself. This helper now takes the attributes of the Collection and transforms those values into XML. 2011-05-27 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Theme.java, src/main/java/de/intevation/flys/client/shared/model/DefaultTheme.java: Added a setter method to set the 'active' attribute if a theme. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: After editing themes in the theme control panel will now modify the themes stored at the collection as well. 2011-05-26 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Theme.java, src/main/java/de/intevation/flys/client/shared/model/DefaultTheme.java: Added further methods to set the position of a theme to a new value and to compare two theme objects. * src/main/java/de/intevation/flys/client/shared/model/ThemeList.java: Added a method to set the position of a theme to a new value. Based on the new position, all other themes in this list are moved up or down. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: The actions in the navigation panel have now an effect on the order of the themes in the theme list. The selected theme/s is/are moved to top/bottom or just a single field up/down. NOTE: The order still have no effect on the chart rendering process. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/OnMoveHandler.java, src/main/java/de/intevation/flys/client/client/event/OnMoveEvent.java: New. Necessary classes and interfaces for a listener mechanism that is used to inform handlers about a movement. E.g. the movement of a theme. * src/main/java/de/intevation/flys/client/client/ui/chart/ThemeNavigationPanel.java: New. A panel that consist of four buttons that throw OnMoveEvents after pushing it. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: In addition, it implements the OnMoveHandler interface to listen to move events. NOTE: We need to implement the code that moves themes up/down. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Set the minimum width of the theme panel to 200px. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/CollectionAttributeService.java, src/main/java/de/intevation/flys/client/client/services/CollectionAttributeServiceAsync.java, src/main/java/de/intevation/flys/client/server/CollectionAttributeServiceImpl.java: New. This service should be used to modify/update the attribute of a collection. NOTE: The update process needs to be implemented! Currently, the only thing this service does is, that is waits 5sec and fetches a new description right after this ;-) * src/main/java/de/intevation/flys/client/shared/model/ThemeList.java: Added methods to remove and add themes. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: Changes in the theme panel will now trigger the update process of the collection's attribute using the CollectionAttributeService. * src/main/webapp/WEB-INF/web.xml: Registered the new service. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultTheme.java: Removed a bug that caused that the artifact of a default theme is never set. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Parse the theme lists - contained in the attribute of the collection - and add those lists to the collection. The lists are retrievable using the method getThemeList(String outName). * src/main/java/de/intevation/flys/client/shared/model/Theme.java, src/main/java/de/intevation/flys/client/shared/model/DefaultTheme.java: The interface and its default implementation of a theme. A theme represents a curve in a chart or a layer in a map. The default implementation knows about the facet, the position, the status and the artifact this theme belongs to. * src/main/java/de/intevation/flys/client/shared/model/ThemeList.java: New. A ThemeList is a wrapper for themes and should provide some functions to process regularly used operations on a list of themes. * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: Added a new constructor that takes a ThemeList as well and a method to retrieve a ThemeList based on the name of the output. * src/main/java/de/intevation/flys/client/shared/model/FacetRecord.java: This record no longer stores facets but themes. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: Modified the process of adding new themes to the theme grid. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/FacetRecord.java: New. This ListRecord is used to display facets in grids. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartThemePanel.java: New. This panel contains elements to control the themes of a chart. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings for the ChartThemePanel. * src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: The left side of this panel is filled with the ChartThemePanel now. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/meta/Converter.java, src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java, src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: Removed needless imports. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/chart: A new package for all chart relevant classes. * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java, src/main/java/de/intevation/flys/client/client/ui/chart/ChartOutputTab.java: Moved the ChartOutputTab to the chart package. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Adapted imports - added ChartOutputTab that has been moved to chart subpackage. 2011-05-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Bugfix: We return the inserted values only in getData(). We do not return Data objects with no value. This prevents NullPointerExceptions that occur if no location has been inserted - e.g. the case if we selected a range. 2011-05-24 Ingo Weinzierl <ingo@intevation.de> ISSUE-91 ISSUE-40 (part II/II) * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java, src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Read default values in those panels and fill the form items with that data. 2011-05-24 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: Added i18n error messages. 2011-05-24 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Take care on empty Data objects while initializing default values. 2011-05-24 Ingo Weinzierl <ingo@intevation.de> ISSUE-85 (part II/III) * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Repaired this broken panel. Now, we distinguish between the two modes 'range' and 'locations'. 2011-05-24 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Read the default values for Data objects from DESCRIBE. 2011-05-24 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Data.java, src/main/java/de/intevation/flys/client/shared/model/DefaultData.java: A data item can now have a default value and a default label. 2011-05-23 Ingo Weinzierl <ingo@intevation.de> ISSUE-62 (part I/II) * src/main/java/de/intevation/flys/client/client/event/OutputModesChangeEvent.java, src/main/java/de/intevation/flys/client/client/event/HasOutputModesChangeHandlers.java, src/main/java/de/intevation/flys/client/client/event/OutputModesChangeHandler.java: Classes and interfaces that are necessary to build up a listener mechanism for output mode changes. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java:: Implements the HasOutputModesChangeHandlers and OutputModesChangeHandler interfaces. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Implements the OutputModesChangeHandler interface which enables us to update the export panel even after the outs of an artifact have changed. 2011-05-20 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/config.xml: Reverted to default config; unintentional change in previous commit 2011-05-20 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added missing i18n strings for duration curve export. 2011-05-20 Ingo Weinzierl <ingo@intevation.de> Tagged RELEASE 2.3.1 2011-05-20 Ingo Weinzierl <ingo@intevation.de> * Changes: Prepared Changes for the upcoming release. 2011-05-20 Hans Plum <hans@intevation.de> * src/main/java/de/intevation/flys/client/client/config.xml: Reverted to default config; unintentional change in previous commit 2011-05-20 Hans Plum <hans@intevation.de> * NEWS: Added information for Release V 2.3.1 for endusers 2011-05-19 Ingo Weinzierl <ingo@intevation.de> Tagged RELEASE 2.3.1 * Changes: Prepared for release. 2011-05-19 Ingo Weinzierl <ingo@intevation.de> ISSUE-35 * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Added a maximize button to this view. 2011-05-19 Ingo Weinzierl <ingo@intevation.de> ISSUE-43 * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties: Adapted the english waring that is displayed before a language switch takes place. 2011-05-19 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings for exports of computed discharge curves. 2011-05-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings for exports. 2011-05-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n string for wst export. * src/main/java/de/intevation/flys/client/client/ui/ExportPanel.java: Set a maximum size of the export button and added a tooltip to distinguish exports. NOTE: We should consider using specific images for each export type. 2011-05-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ExportServiceImpl.java, src/main/java/de/intevation/flys/client/server/ChartOutputServiceImpl.java: Adapted a method signature of ClientProtocolUtils that has been changed in the last revision. 2011-05-17 Ingo Weinzierl <ingo@intevation.de> Tagged RELEASE 2.3 2011-05-16 Hans Plum <hans@intevation.de> * NEWS: Added version number and release date for V 2.3 2011-05-16 Hans Plum <hans@intevation.de> * NEWS: New. Describing new functionality and some backgrounds in MoinMoin-Wiki Syntax (in german only) from the user perspective. It does not differentiate between client and server-specific code! 2011-05-13 Ingo Weinzierl <ingo@intevation.de> * Changes: Prepared Changes for the upcoming release 2.3 - see Changes file to get to know about the change of version number. 2011-05-12 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/server/meta/Converter.java: New. Converts the incoming XML to a more informative way. * src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java: Use the new converter. 2011-05-12 Raimund Renkert <rrenkert@intevation.de> ISSUE-61 * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Changed datacage button style. 2011-05-12 Raimund Renkert <rrenkert@intevation.de> ISSUE-46 * src/main/java/de/intevation/flys/client/client/ui/TableDataPanel.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Removed the table header context menu. * src/main/java/de/intevation/flys/client/client/ui/LinkSelection.java: Removed log message. 2011-05-12 Raimund Renkert <rrenkert@intevation.de> ISSUE-43 * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: Changed i18n strings. 2011-05-12 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LinkSelection.java: New. Shows a list of rivers displayed as links. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: Use the new Panel to show rivers as links. 2011-05-12 Ingo Weinzierl <ingo@intevation.de> ISSUE-15 * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: After resizing the chart panel, the chart/image is replaced by a new chart with adjusted width and height (requested from server). 2011-05-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Defined the chart size (600x500). * src/main/java/de/intevation/flys/client/server/ChartOutputServiceImpl.java: Query the chart in the requested size defined in the GET-parameters of the request. 2011-05-12 Ingo Weinzierl <ingo@intevation.de> ISSUE-34 * src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java: The number of windows which are moved the right lower browser window corner is limited to 10 windows now. The 11th window is placed at the left upper corner again. Window 12-20 are moved with an offset into to the right lower corner again. 2011-05-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DataCageNode.java, src/main/java/de/intevation/flys/client/shared/model/DataCageTree.java: New. Server -> Client transport model. Ugly because it re-invents XML documents. XML is received by the RPC service from the artifact server, transformed into this transport representation and this is transformed in ui elements on the client side. * src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java: Transform the incoming XML to transport representation. TODO: Do not simply copy the XML. * src/main/java/de/intevation/flys/client/client/services/MetaDataServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/MetaDataService.java: Changed signature tio transport the tree. * src/main/java/de/intevation/flys/client/client/ui/DatacageWindow.java: Transform the transport tree into ui elements. 2011-05-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ExportPanel.java: Changed the height of this panel to be visible in all browsers. 2011-05-11 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java: Call the service. TODO: transport artifact server result to client. * src/main/java/de/intevation/flys/client/client/services/MetaDataServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/MetaDataService.java: Extended interfaces to cope with i18n. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Error messages if the artifact meta data service is not reachable. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Forward collection view to chart output tab. * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Forward artifact to fetch river name later. * src/main/java/de/intevation/flys/client/client/ui/DatacageWindow.java: New. UI code for the data cage panel. TODO: build tree from service data. * src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Added simple break in a loop if river was found. 2011-05-11 Ingo Weinzierl <ingo@intevation.de> ISSUE-56 * src/main/java/de/intevation/flys/client/shared/model/DefaultOutputMode.java, src/main/java/de/intevation/flys/client/shared/model/OutputMode.java: Added a further method that returns all available facets. * src/main/java/de/intevation/flys/client/client/ui/ExportPanel.java: New. This panel is used to serve download links for each export mode / type of a collection. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Implements the CollectionChangeHandler interface now. If a Collection changes, the available output modes are analyzed. If there are export modes available, those modes are displayed in a so called 'ExportPanel'. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Registered the ParameterList as CollectionChange handler. * src/main/webapp/FLYS.css: Added a stylesheet for the export panels title. * src/main/webapp/images/save.gif: New. This image is displayed in the export panel. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: New i18n strings for the export panel. 2011-05-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ExportServiceImpl.java: New. This service is a "proxy servlet" that enables the GUI to add download buttons for exporting the computed data of the artifact server. * src/main/java/de/intevation/flys/client/client/services/CSVExportService.java: Changed the URL part to query the CSV export ('export' -> 'csv'). * src/main/webapp/WEB-INF/web.xml: Registered the new ExportService. 2011-05-11 Raimund Renkert <rrenkert@intevation.de> ISSUE 34 * src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java: Move every new project window 20 px multiplicated with the window count down and right. 2011-05-11 Raimund Renkert <rrenkert@intevation.de> ISSUE 44 * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Moved the location/range and WQ input tables to the helper panel on the right. The tables have a dynamic size now. 2011-05-11 Raimund Renkert <rrenkert@intevation.de> ISSUE 41 (part2) * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Set the computation result panel width and height to 100%. The panel resizes with its parent component now. 2011-05-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/ExportMode.java: New. A derived OutputMode that is used to mark an OutputMode as an export. * src/main/java/de/intevation/flys/client/shared/model/OutputMode.java, src/main/java/de/intevation/flys/client/shared/model/DefaultOutputMode.java: Added methods to provide facets in output modes. * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java: Extract facets from DESCRIBE and distinguish between an ordinary OutputMode or an ExportMode. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Replaced the determination of an export mode for creating new OutputTabs. Now, we just create new OutputTabs for OutputModes that are no instance of ExportMode. Furthermore, the computation output panel is now displayed if there is an output mode which: - is an ExportMode - has a facet which name is "csv" 2011-05-11 Ingo Weinzierl <ingo@intevation.de> ISSUE-41 (part1) * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Moved the computation result panel right beside the parameterization. TODO: This panel has now hard coded width/height. The result of this is, that it does not change its size when the parent component is resized. So, the width and height should be set to 100%. 2011-05-11 Ingo Weinzierl <ingo@intevation.de> ISSUE-57 * src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Replaced wrong i18n function name. 2011-05-10 Ingo Weinzierl <ingo@intevation.de> ISSUE-48 * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Added labels placeholder for the theme control panel and the toolbar. Both panels now have a black border. 2011-05-10 Ingo Weinzierl <ingo@intevation.de> ISSUE-38 * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Set the first value of a select box as default value. 2011-05-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n error messages required if the data input failed in the adapted WQ panel. 2011-05-10 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Changed the empty table message for the WQ input table. 2011-05-10 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/TableDataPanel.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Changed the empty table text from default to "Loading data". * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings for empty table text. * src/main/java/de/intevation/flys/client/server/CSVExportServiceImpl.java: Changed author. 2011-05-10 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/MetaDataServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/MetaDataService.java: New. Stub for new meta data service. * src/main/webapp/WEB-INF/web.xml: Registered meta data service. 2011-05-10 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Fixed the location input. A range selection sets the correct location values now. 2011-05-10 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Remove the data table on step back. 2011-05-10 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Use the name instead of the description to determine the output mode. * src/main/java/de/intevation/flys/client/server/CSVExportServiceImpl.java: Removed obsolete code. * src/main/java/de/intevation/flys/client/client/ui/TableDataPanel.java: Build up a dynamic table for different header count. The first line of CSV data is used to set the header title. 2011-05-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/CSVExportServiceImpl.java: Bugfix: Use the ElementCreator from XMLUtils to add attribute to nodes in the xml document. Then, those nodes will have the ArtifactNamespace automatically. If we do something like node.setAttribute("art:attr", "value") Restlet will throw an exception, because it does not know the "art:" namespace. 2011-05-09 Ingo Weinzierl <ingo@intevation.de> * pom.xml: Bugfix: replaced the goupId of the OpenCSV dependency with the correct id. 2011-05-09 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/server/CSVExportServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/CSVExportServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/CSVExportService.java: New service. Requests CSV data and returns a list of lines in a string array. * src/main/java/de/intevation/flys/client/client/ui/TableDataPanel.java: New. Displays the data requested by the new service. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Added the table to UI. * src/main/webapp/WEB-INF/web.xml: Registered new service. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings for the new table. * pom.xml: Added dependency: au.com.bytecode.opencsv, version 2.0; 2011-05-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: Added radio buttons to choose between W/Q mode. 2011-05-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ChartOutputServiceImpl.java, src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Bugfix: the current locale string is used to fetch the chart image now which enables the client to present localized charts. 2011-05-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Added a doubleclick listener to the rows of this list. A doubleclick will now open the selected project. 2011-05-09 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DistanceInfoRecord.java, src/main/java/de/intevation/flys/client/client/Config.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Removed superfluous imports. 2011-05-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties: Changed wording: 'distance' -> 'range'. 2011-05-05 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Enable or disable table rows depending on the WQ selection. 2011-05-05 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Implemented handler for the value selection. 2011-05-05 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Added table for WQ inputs. TODO: Implement the selection and set the values. * src/main/java/de/intevation/flys/client/client/FLYSConstants.java, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: New i18n strings for the WQ input table. 2011-05-05 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Moved functions getData() and getDataItem() from WQInputPanel to AbstractUIProvider to make it accessible in all UIProvider that inherit from AbstractUIProvider. * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: Implemented the methods to create the old widget of thi panel. 2011-05-05 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added new i18n displayed in the WQAdaptedInputPanel. * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: The list of input fields for each intersected gauge is created now. The correct w/q values will be returned after the submit button has been clicked. * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: The orientation of the field label might be adjusted using a new constructor parameter. Furthermore, there is a new method (which has no parameters) that returns the double values inserted in this panel. 2011-05-04 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/server/WQInfoServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/WQInfoServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/WQInfoService.java: New. This service fetches WQ information from the server. * src/main/java/de/intevation/flys/client/shared/model/WQInfoRecord.java, src/main/java/de/intevation/flys/client/shared/model/WQInfoObjectImpl.java, src/main/java/de/intevation/flys/client/shared/model/WQInfoObject.java: New. Data structures for the WQ information. * src/main/webapp/WEB-INF/web.xml: Added new service. 2011-05-04 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Do not update the locations table if no data is cached. 2011-05-04 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQAdaptedInputPanel.java: New. This UIProvider is used to enter W/Q values associated with a set of gauges. NOTE: This is currently just a stub implementation used for further development. * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: Initialize the WQAdaptedInputPanel if the uiprovider flag is set to "wq_panel_adapted". * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: New i18n strings for the "discharge longitudinal section. 2011-05-04 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: Fixed the input panel. It takes manual input now and the table data is filtered correctly. 2011-05-04 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: Renamed the non-computed discharge curves into 'Discharge Curves at Gauges' (german 'Abflusskurven an Pegeln') to distinuish the two output types for discharge curves. 2011-05-04 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: New i18n strings for the computed discharge curve. 2011-05-03 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: New i18n strings for new output modes. 2011-05-03 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: Added new UI provider for single location selection. * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: Check if the values are not null. * src/main/java/de/intevation/flys/client/client/ui/SingleLocationPanel.java: New. Takes a single location from the location input table. 2011-05-02 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: The table data is cached in a new variable. The location table for distance input is rebuild on distance selection. 2011-05-02 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Introduced two further parameters to determine the selection mode of this panel. 2011-05-02 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Added location and distance tables. A selection fills the textfield with the selected values. * src/main/java/de/intevation/flys/client/shared/model/DistanceInfoRecord.java: New. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added i18n strings for the new tables. * src/main/java/de/intevation/flys/client/client/FLYSImages.java: Added new images. * src/main/java/de/intevation/flys/client/client/images/marker_green.png, src/main/java/de/intevation/flys/client/client/images/marker_red.png: New. 2011-05-02 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Bugfix: The WQ panel now returns the correct step width value if the range mode is selected. 2011-04-29 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java, src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java: Added setter for the location and distance values. * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java, src/main/java/de/intevation/flys/client/client/ui/UIProvider.java: Added setter for an artifact. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Set the current artifact to the provider to make the old data available for the other widgets. 2011-04-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: New i18n strings for a 'longitudinal section curve' output tab. 2011-04-28 Raimund Renkert <rrenkert@intevation.de> Added class diagrams. * doc/Flys-UI-Classes.png, doc/Flys-UI-Services-Classes.png: New. 2011-04-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/StepForwardServiceImpl.java: The error key that is provided by the FLYS artifact server is read from feed() result document and used to bring up an error popup with an translated error message. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties: Added error messages for the feed operation. 2011-04-14 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/Config.java: A new method returns the name of the current locale now. * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java, src/main/java/de/intevation/flys/client/server/UserCollectionsServiceImpl.java, src/main/java/de/intevation/flys/client/server/GetArtifactServiceImpl.java, src/main/java/de/intevation/flys/client/server/UserServiceImpl.java, src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/StepForwardServiceImpl.java, src/main/java/de/intevation/flys/client/server/AdvanceServiceImpl.java, src/main/java/de/intevation/flys/client/server/AddArtifactServiceImpl.java, src/main/java/de/intevation/flys/client/server/DistanceInfoServiceImpl.java, src/main/java/de/intevation/flys/client/server/RiverServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/UserService.java, src/main/java/de/intevation/flys/client/client/services/CreateCollectionService.java, src/main/java/de/intevation/flys/client/client/services/RiverServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/RiverService.java, src/main/java/de/intevation/flys/client/client/services/DescribeCollectionServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/GetArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/ArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/DescribeCollectionService.java, src/main/java/de/intevation/flys/client/client/services/ArtifactService.java, src/main/java/de/intevation/flys/client/client/services/GetArtifactService.java, src/main/java/de/intevation/flys/client/client/services/StepForwardServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/AdvanceServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/StepForwardService.java, src/main/java/de/intevation/flys/client/client/services/AdvanceService.java, src/main/java/de/intevation/flys/client/client/services/AddArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/DistanceInfoServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/AddArtifactService.java, src/main/java/de/intevation/flys/client/client/services/DistanceInfoService.java, src/main/java/de/intevation/flys/client/client/services/UserCollectionsServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/UserServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/CreateCollectionServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/UserCollectionsService.java: Introduced a "locale" parameter that stores the name of the current locale. This is used to set the locale of the request object manually. * src/main/java/de/intevation/flys/client/client/FLYS.java, src/main/java/de/intevation/flys/client/client/ui/ProjectList.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Modified the RPC service calls (introduction of a locale). 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: The title of the ParameterList depends on the Artifact's name if we gonna create a new CollectionView with an existing Artifact. 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Artifact.java, src/main/java/de/intevation/flys/client/shared/model/DefaultArtifact.java: An artifact knows its name now. It is retrievable via getName(). * src/main/java/de/intevation/flys/client/shared/model/WINFOArtifact.java: New. A concrete class that represents an Artifact using the WINFO parameterization. * src/main/java/de/intevation/flys/client/server/FLYSArtifactCreator.java: The ArtifactCreator builds up new Artifacts based on the name in the DESCRIBE document. If no name is included, a DefaultArtifact is created. 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/CollectionRecord.java: This record class uses the default mechanism to store/load values - it uses the setAttribute() and getAttribute() methods now. * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: The list is sorted based on the project's creation time now. * src/main/java/de/intevation/flys/client/client/ui/CollectionGrid.java: Removed. The collection grid is no longer used, because the fields are created by using default mechanisms (setting the field type, using cell formatter). 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYS.java: Implemented a method to open an existing project. The method takes the UUID of a Collection and creates a new CollectionView with ParameterList based on the first Artifact that is stored in that Collection. NOTE: Maybe we need to introduce a mechanism to mark the artifact that defines the parameterization. I am not sure, if the first artifact is always the artifact that the Collection's parameterization is based on! * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Triggers the method of FLYS to open an existing project. 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Added new constructors that enables us to create instances with an existing parameterization (with a given artifact). 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added further error messages. 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/CollectionRecord.java: There is a new method that returns the Collection object which is represented by this record. 2011-04-12 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/GetArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/GetArtifactService.java, src/main/java/de/intevation/flys/client/server/GetArtifactServiceImpl.java: New. A service that queries the artifact description based on the identifier of an artifact. * src/main/webapp/WEB-INF/web.xml: Registered the new GetArtifactService. 2011-04-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings that are used in the context menu of the project list. * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: A right mouse click on a project opens a context menu with the options to open / delete a project. 2011-04-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DistanceInfoServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/DistanceInfoServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/DistanceInfoService.java: New. This service fetches river specific distance information from server. * src/main/webapp/WEB-INF/web.xml: Registered the DistanceInfoService. 2011-04-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DistanceInfoObjectImpl.java, src/main/java/de/intevation/flys/client/shared/model/DistanceInfoObject.java: New. This model will be used by the LocationDistancePanel to bring up a table with distances which supports the user while entering the start and end point of the WINFO paramterization. A DistanceInfoObject contains information about a specific distance (description, from, to and riverside). 2011-04-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/UserServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/UserService.java: This service now throws an AuthenticationException if an error occured while user authentication. * src/main/java/de/intevation/flys/client/server/RiverServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/RiverService.java: This service now throws a ServerException if an error occured while reading the supported rivers from artifact server. * src/main/java/de/intevation/flys/client/client/FLYS.java: Show warnings if errors occur while fetching supported rivers or * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added further strings for error messages. 2011-04-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/exceptions/AuthenticationException.java: New. An exception that should be used if the user authentication fails. 2011-04-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java, src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/StepForwardServiceImpl.java, src/main/java/de/intevation/flys/client/server/AdvanceServiceImpl.java, src/main/java/de/intevation/flys/client/server/AddArtifactServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/CreateCollectionService.java, src/main/java/de/intevation/flys/client/client/services/DescribeCollectionService.java, src/main/java/de/intevation/flys/client/client/services/ArtifactService.java, src/main/java/de/intevation/flys/client/client/services/StepForwardService.java, src/main/java/de/intevation/flys/client/client/services/AdvanceService.java, src/main/java/de/intevation/flys/client/client/services/AddArtifactService.java: Improved the exception handling. If an exception occurs specific to an artifact / collection specific operation, a ServerException is thrown. The message of this exception is a key that needs to be translated using the lookup mechanism of FLYSConstants. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: The dialog helper class SC of the SmartGWT framework is used to bring up warning dialogs that inform the user about errors that occured after the artifact / collection specific operations. * src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added strings for the exceptions thrown in the services. 2011-04-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/exceptions/ServerException.java: New. This exception is used to be thrown after an error occured while one of the artifact / collection operations. 2011-04-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ChartOutputServiceImpl.java, src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Adjusted the code to trigger the out() operation of the Collection instead of the out() operation of the first Artifact in that Collection. 2011-04-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: Added new strings for a warning dialog that is opened when the user start changing the current language. * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Fixed the function to toggle the language and added a warning dialog that informs the user about the creation of a new session when the language is changed. 2011-04-05 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSConstants_de.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants_en.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.properties, src/main/java/de/intevation/flys/client/client/FLYSConstants.java: New. A constants interface with the ability to lookup an i18n string with a given key. * src/main/java/de/intevation/flys/client/client/ui/CollectionGrid.java, src/main/java/de/intevation/flys/client/client/ui/ProjectList.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java, src/main/java/de/intevation/flys/client/client/ui/MainMenu.java, src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java, src/main/java/de/intevation/flys/client/client/ui/FLYSHeader.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java, src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java, src/main/java/de/intevation/flys/client/client/ui/FLYSFooter.java: Replaced the FLYSMessages interface with the FLYSConstants interface. * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Removed. 2011-04-05 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Implemented the toggle button to switch the current locale. 2011-04-05 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties: Added missing strings used in the footer. 2011-03-30 Ingo Weinzierl <ingo@intevation.de> Tagged RELEASE 0.1 2011-03-30 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Removed some comments that have been commited by mistaken. 2011-03-30 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Derives the ConstantsWithLookup interface now. This makes it possible to fetch i18n string using a getString(String key) lookup method. * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties: Removed '@DefaultMessage' annotations - they are not available for ConstantsWithLookup, added a further i18n string and fixed another one. * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Some modifications related to the changes above. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Removed the hard coded title determination based on the selected module. Now, the getString() of FLYSMessages is used to determine the human readable string. 2011-03-30 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/server/AddArtifactServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/DescribeCollectionService.java, src/main/java/de/intevation/flys/client/client/FLYS.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java, src/main/java/de/intevation/flys/client/client/ui/FLYSFooter.java: Removed useless imports. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYS.java: The CollectionView no longer gets an empty collection when it is created. * src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java: The CollectionViews are no longer stored in a Map but in a List. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Bugfix: We just create a new collection a single time - if no one is existing. If the output modes of the artifact that is used for the parameterization changes, we fetch the new DESCRIBE document of the collection using the new DescribeCollectionService. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/DescribeCollectionServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/DescribeCollectionServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/DescribeCollectionService.java: New. This service is used to fetch the DESCRIBE document of a specific collection and returns a Collection object that contains the information of that document. The code to parse the DESCRIBE has been moved here from the AddArtifactServiceImpl which now derives the DescribeCollectionServiceImpl. * src/main/java/de/intevation/flys/client/server/AddArtifactServiceImpl.java: This service is derived from DescribeCollectionServiceImpl now, because the methods to parse the DESCRIBE document are moved to that service. * src/main/webapp/WEB-INF/web.xml: Registered the DescribeCollectionService. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties: Replaced the german title of the project list 'Berechnungen' with 'Projekte'. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYS.java: Registered the ProjectList as CollectionChangeHandler of each created CollectionView. * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Implements the CollectionChangeHandler to update the list of user collections after a collection changed (or has been created). * src/main/java/de/intevation/flys/client/client/ui/CollectionGrid.java, src/main/java/de/intevation/flys/client/shared/model/CollectionRecord.java: Modified the output of the 'name' and 'date' fields. * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added a format for datetime strings. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/UserCollectionsServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/UserCollectionsServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/UserCollectionsService.java: New. This service returns a list of Collections owned by a specified user. * src/main/webapp/WEB-INF/web.xml: Registered the UserCollectionsService. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: Added methods to retrieve the creation time. 2011-03-29 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Fixed code in ProjectList toggle method. * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Fixed the WQInputPanel label to have the correct size. 2011-03-29 Raimund Renkert <rrenkert@intevation.de> * src/main/webapp/FLYS.html: Added style information to avoid the smartgwt theme margin. 2011-03-29 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties: Changed some german strings. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Changed tab title. 2011-03-29 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Set label width to have a tabled style for WINFO selections. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Resized window to fit the content size. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: The ParameterList is a Tab now and can set its title itself. So, the title will change after the module is chosen. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Removed code to insert the ParameterList into a new Tab. This is no longer needed, because the ParameterList is a Tab itself. 2011-03-29 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Modified the string that points to the 'back button' image. * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: Modified the URL that points to the 'back button' image. Now, the base URL is taken into account as well. The button will be shown everywhere now (in every installation)! 2011-03-29 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Set label width to have a tabled style for WINFO selections. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Resized window to fit the content size. 2011-03-29 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Fixed toggle method. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/CollectionItem.java, src/main/java/de/intevation/flys/client/shared/model/DefaultCollectionItem.java: A CollectionItem has a hash() method now. The value comes from the Collection's DESCRIBE document. * src/main/java/de/intevation/flys/client/server/AddArtifactServiceImpl.java: The hash value of a collection item is parsed from DESCRIBE document. * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Appended the hash value of the artifact to the URL of the chart image. This bypasses the browser cache of a previous chart image. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: A parameterization change will always remove all output tabs before updating the output tab panel. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Modified existing string and added a new one. * src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: Added a further radio button for a plugin and changed the alignment of the radio button to vertical. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: Removed the "TODO: ThemeEditor" label. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Removed the date string from title bar. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/UIProvider.java, src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: A UIProvider might now have a panel that can be used to render helper widgets. E.g. the river selection will render its river map into this panel. It is injected and can be placed somewhere around the application. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Injected the right panel of the parameter panel into the UIProvider. Helper widgets are rendered into this panel now! * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java, src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: Some layout improvements (heights, position of elements and so far). 2011-03-28 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: The project list button toggles the project list now. 2011-03-28 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: Replaced next button image with smartgwt button. * src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Removed button path, added text for new button. * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties: Removed image path, added english text for button. * src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties: Removed image path, added german text for button. 2011-03-28 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added text for FLYSFooter. * src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties: Added german text for footer label. * src/main/java/de/intevation/flys/client/client/ui/FLYSFooter.java: New. A new ui element at the bottom of the page. * src/main/java/de/intevation/flys/client/client/FLYS.java: Added footer element to FLYS webpage. 2011-03-28 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: Customized ProjectList style. * src/main/java/de/intevation/flys/client/client/ui/FLYSView.java: Set background color and size constraints. * src/main/webapp/FLYS.css: Added background style. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: The right side of this panel displays an image now. This image represents a chart that is generated by an artifact. The request is made up in the ChartOutputServiceImpl. * src/main/java/de/intevation/flys/client/server/ChartOutputServiceImpl.java: New. This service creates the request to retrieve chart images and writes the response to the output stream. NOTE: This service is not asynchron! It is derived directly from HttpServlet. * src/main/webapp/WEB-INF/web.xml: Registered the ChartOutputService. 2011-03-25 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Limited the area for CollectionView to the size of FLYSWorkspace. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/OutputTab.java: Fixed a typo. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ChartOutputTab.java: An OutputTab with two panels. The left one is not implemented yet (ThemeEditor). The right one will display an image. * src/main/java/de/intevation/flys/client/client/ui/OutputTab.java: The content pane is set in the constructor. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: New output tabs will use the ChartOutputTab. NOTE: We should move the code that constructs the concrete output tabs into a factory class that decides which OutputTab has to be used. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: The tab bar is extended with output tabs if the artifact used for the parameterization reaches a state with output modes. * src/main/java/de/intevation/flys/client/client/ui/OutputTab.java: A base class that might be used to derive concrete output tabs for charts, maps and so on. 2011-03-28 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Moved parameterization specific code from CollectionView to ParameterList. 2011-03-26 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Moved ParameterList specific code into the ParameterList. 2011-03-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/CreateCollectionService.java, src/main/java/de/intevation/flys/client/client/services/CreateCollectionServiceAsync.java, src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java: Changed the return type to 'Collection' - returned a UUID (String) before. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: The artifact is put into the collection (or new collection) if we reach a step in the parameterization in that an artifact has reachable outputs. Furthermore, some adjustments related to the changes of the return type in the CreateCollectionService. 2011-03-25 Ingo Weinzierl <ingo@intevation.de> * src/main/webapp/WEB-INF/web.xml: Made the AddArtifactService accessible. 2011-03-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/AddArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/AddArtifactService.java, src/main/java/de/intevation/flys/client/server/AddArtifactServiceImpl.java: New. This service adds an existing artifact to an existing collection. The return value of this service is a Collection that is filled with CollectionItems and OutputModes. 2011-03-25 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/FLYS.gwt.xml: Changed theme to smartgwt Enterprise Blue. 2011-03-25 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Facet.java, src/main/java/de/intevation/flys/client/shared/model/DefaultFacet.java: New. An interface and its default implementation that provide methods to get information about facets. Currently, the only information that is supported is the name of the facet. * src/main/java/de/intevation/flys/client/shared/model/CollectionItem.java, src/main/java/de/intevation/flys/client/shared/model/DefaultCollectionItem.java: New. An interface and its default implementation that provide methods to get information about the available output modes and its facets of artifacts -> a CollectionItem is related to an artifact - both have the same identifier. * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: The Collection no longer stores references to artifacts, but to CollectionItems. I have changed this, because the artifact contains a lot more information we need for the Collections. So, I decided to create CollectionItems that are related to artiacts but just know about the possible outputmodes and facets. 2011-03-24 Raimund Renkert <rrenkert@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Set styles for label. * src/main/java/de/intevation/flys/client/client/ui/FLYSHeader.java: Fixed the method to calculate the image width and resized the BfG logo. * src/main/webapp/FLYS.css: Introduced styles for fonts and BfG colorscheme. 2011-03-23 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Extract the output modes from DESCRIBE document and fill the ArtifactDescription with those objects. 2011-03-23 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/ArtifactDescription.java: Added a method to retrieve the available output modes of the artifact. * src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java: Implemented the method to retrieve the available output modes and enhanced the default constructor with a parameter for output modes. 2011-03-23 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/OutputMode.java, src/main/java/de/intevation/flys/client/shared/model/DefaultOutputMode.java: New. An interface and its default implementation that describes available output modes of artifacts. 2011-03-21 Ingo Weinzierl <ingo@intevation.de> * src/main/webapp/images/next.xcf: Moved to images/next.xcf to avoid that this file is included in the WAR archive of the web application. * images/next.xcf: Moved from src/main/webapp/images/next.xcf. 2011-03-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Parse the selected values as human readable strings from the static UI part. * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Display human readable values in the static UI part. 2011-03-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/HasStepBackHandlers.java, src/main/java/de/intevation/flys/client/client/event/StepBackHandler.java, src/main/java/de/intevation/flys/client/client/event/StepBackEvent.java: New. These classes are used to realize a notification mechanism to listen to the step-back part of the advance() operation. UI elements should fire a StepBackEvent if the user tries to step back to a previous state. * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: The UIProvider implements the HasStepBackHandlers interface and fires StepBackEvents if the 'back' button has been clicked. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Listens to StepBackEvents. If such an event is received, we gonna remove all old state items from the list and revert the view. Afterwards, the artifact description is used to redraw the whole view. NOTE: I think we should just remove those items that belong to states between the current state and the target state. This would avoid a complete refresh of the ParameterPanel. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Listens to StepBackEvents. If such an event is received, the advance() operation is triggerd with the current artifact and the new target state identifier to step back to that state. 2011-03-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java, src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: The methods that validates a FormItem will skip StaticTextItem validation. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Added a mechanism to validate and save user input before returning the data entered in the fields. Reason: the BlurEvent - after that we gonne validate and save the input stuff - is not fired when the focus is still in one of the text fields and we click the 'next' button immediately. A nullpointer exception would be the result (which is avoided with the mechanism). 2011-03-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added localized strings that point to the source of the 'back' button. * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: Added a new method that creates the 'back' button and returns it. TODO: Fire an event that triggers the ADVANCE action. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Append the 'back' button in the panel with the 'old' parameters. * src/main/webapp/images/back.png, src/main/webapp/images/back_en.png, src/main/webapp/images/back_de.png: New. Images für the 'back' button in the parameterization. 2011-03-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added localized strings that point to the images of the 'next' button. * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: There is a method that creates the 'next' button, adds the UIProvider as ClickHandler and returns the button. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java, src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: The 'next' button is created in the AbstractUIProvider. So, we have a central place to adjust the look of this button. * src/main/webapp/images/next.xcf, src/main/webapp/images/next.png, src/main/webapp/images/next_en.png, src/main/webapp/images/next_de.png: Images for the 'next' button in the parameterization. 2011-03-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Read min/max values and define those values as default values for the distance modes. 2011-03-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Read min/max values and define those values as default values for the distance mode. 2011-03-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: When a state is reached with no further user input, the 'current' property of the ParameterList is set to 'null' and no dynamic panel is shown. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties: Fixed a typo. * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: The widgets displayed in the static panel are created using the UIProvider defined in the DataList. * src/main/java/de/intevation/flys/client/client/ui/UIProvider.java: There is a new method createOld() that is used to create the static representation of a DataList. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Implemented the createOld() method. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DataList.java: Added a constructor to create a DataList with a label. * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Read the label of the static state data objects and create the DataList objects with this attribute. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DataList.java: This data structure manages a list of Data objects. A DataList is the list of Data objects that a single State can have. So, this class has methods to retrieve the name of the state it belongs to, the list of Data objects, the recommended UIProvider and a label. * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java, src/main/java/de/intevation/flys/client/shared/model/ArtifactDescription.java, src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java, src/main/java/de/intevation/flys/client/shared/model/Data.java, src/main/java/de/intevation/flys/client/shared/model/DefaultData.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java, src/main/java/de/intevation/flys/client/client/ui/ParameterList.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java, src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java, src/main/java/de/intevation/flys/client/client/ui/UIProvider.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java, src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: Necessary refactoring to introduce the DataList data structure to manage the list of Data objects a single State provides. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Added a bit more space between the values that have been entered in former states and the current input panel. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/UserServiceImpl.java, src/main/java/de/intevation/flys/client/shared/model/Data.java, src/main/java/de/intevation/flys/client/shared/model/DefaultData.java, src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Removed needless imported. * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: The SelectProvider extends the AbstractUIProvider now. Now, each concrete UIProvider is an instance of the AbstractUIProvider that handles some basic events. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: The Single-W panel is displayed initially when the WQInputPanel is rendered. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Implemented some methods to retrieve the data that have been entered by the user. The getData() method retrieves data now! 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Implemented some methods to retrieve the data that have been entered by the user. The getData() method retrieves data now! 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: Defined the 'WINFO' plugin as default plugin. The initial view will display a preselcted winfo radio button. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Added the missing 'next' button. * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: Added the ClickHandler to the 'next' button. 2011-03-17 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: The 'uiprovider' attribute 'wq_panel' will return a WQInputPanel provider. 2011-03-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: Some refactoring. This class now uses the DoubleRangePanel and DoubleArrayPanel for the two different input modes as well. 2011-03-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added i18n strings used in the WQInputPanel. * src/main/java/de/intevation/flys/client/client/ui/DoubleRangePanel.java: New. This panel contains three input fields that enables the user to enter a start and end value and a step width. Furthermore, there are methods to validate the fields and to retrieve its values. * src/main/java/de/intevation/flys/client/client/ui/DoubleArrayPanel.java: New. This panel contains a single input field that enables the user to enter a list of double values. There is a method to validate the input and a method to retrieve the list of entered double values. * src/main/java/de/intevation/flys/client/client/ui/WQInputPanel.java: New. This panel allows the user to enter W or Q values for single or range input in one single state. 2011-03-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added i18n strings used in the LocationDistancePanel. * src/main/java/de/intevation/flys/client/client/ui/AbstractUIProvider.java: New. This abstract class implements the UIProvider and the HasStepForwardHandlers interface and its necessary methods. These two things are required by each concrete UIProvider, so this class should be the base class for further concrete UIProviders. * src/main/java/de/intevation/flys/client/client/ui/LocationDistancePanel.java: New. A UIProvider that enables the user to enter locations or a distance. * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: States with a uiprovider attribute set to 'location_distance_panel' use the LocationDistancePanel for user input. 2011-03-15 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Clear the panel that displays the current input widget before adding a new one to this panel. 2011-03-15 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added a i18n string for a new calculation. * src/main/java/de/intevation/flys/client/client/FLYSImages.java, src/main/java/de/intevation/flys/client/client/images/gewkarte.png: New image: the map that shows the relevant rivers. * src/main/java/de/intevation/flys/client/client/ui/MapSelection.java: Added the river map to the right panel of that widget. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Implemented the step forward mechanism. 2011-03-14 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java, src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: Save the name of the data item. We need the name for feed(). * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: Before adding further old data items, we gonna check if the item is already existing in the list. If it exists, the item is not added. 2011-03-14 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Read i18n strings from DESCRIBE document and display them in the UI. 2011-03-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Integrated the mechnism to listen on paramer changes. The CollectionView is both: a HasParameterChangeHandler and a ParameterChangeHandler. 2011-03-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Bugfix: Removed static string from gui. 2011-03-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Parse the static data from DESCRIBE document and put it into the ArtifactDescription. 2011-03-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/HasParameterChangeHandler.java, src/main/java/de/intevation/flys/client/client/event/ParameterChangeHandler.java, src/main/java/de/intevation/flys/client/client/event/ParameterChangeEvent.java: New. Interfaces and classes used for a listener mechanism to notify listeners when the parameterization of a Collection/Artifact has changed. 2011-03-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/StepForwardServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/StepForwardService.java, src/main/java/de/intevation/flys/client/server/StepForwardServiceImpl.java: New. This service bundles the artifact operations feed() and advance() into a single service. * src/main/java/de/intevation/flys/client/client/services/AdvanceServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/AdvanceService.java, src/main/java/de/intevation/flys/client/server/AdvanceServiceImpl.java: New. This service provides a method that triggers the advance() operation of the artifact server. * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: Added code to parse the reachable states from DESCRIBE. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Make use of the 'forward' service after choosing the module and the river. * src/main/webapp/WEB-INF/web.xml: Registered the new services 'forward' and 'advance'. 2011-03-09 Ingo Weinzierl <ingo@intevation.de> * src/test/java/de/intevation/flys/client/FLYSJUnit.gwt.xml, src/main/java/de/intevation/flys/client/client/GreetingServiceAsync.java, src/main/java/de/intevation/flys/client/client/GreetingService.java: Removed the GreetingService from out application - this service has been added initially by creating this repository. 2011-03-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added i18n strings for the module and river selection. * src/main/java/de/intevation/flys/client/client/ui/ModuleSelection.java: New. A wrapper for the module and river selection. Both information can be chosen in just one step. * src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: Some layout improvements. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Makes use of the ModuleSelection if no artifact is existing in a new CollectionView. Users may now choose the desired plugin and the river in one single step. 2011-03-09 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/RiverServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/RiverService.java, src/main/java/de/intevation/flys/client/server/RiverServiceImpl.java: New. A service that retrieves a list of supported rivers by the artifact server. * src/main/java/de/intevation/flys/client/shared/model/River.java, src/main/java/de/intevation/flys/client/shared/model/DefaultRiver.java: New. A model class and its default implementation to store rivers. * src/main/java/de/intevation/flys/client/client/FLYS.java: At application start, the provided rivers by the artifact server are fetched using the RiverService. The rivers are queriable via a getRivers() method. * src/main/webapp/WEB-INF/web.xml: Registered the RiverService. 2011-03-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added i18n strings used in the menu panel. * src/main/java/de/intevation/flys/client/client/FLYS.java: Added a method to retrieve the project list. * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Added further buttons (labels with ClickHandler) to switch the language, logout the current user or open an info panel. 2011-03-08 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/images/flys_logo.gif, src/main/java/de/intevation/flys/client/client/images/bfg_logo.gif: New. A logo of the BfG and a logo of the application FLYS. Both copied from desktop FLYS. * src/main/java/de/intevation/flys/client/client/FLYSImages.java: New. This interface grants access to the images used in this application. * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added the fullname of FLYS. * src/main/java/de/intevation/flys/client/client/ui/FLYSHeader.java: New. This class displays the header containing a FLYS and a BfG logo. * src/main/java/de/intevation/flys/client/client/FLYS.java: Integrated the FLYSHeader into the layout at the bottom of the application. * src/main/webapp/FLYS.html: Set the title of the application to "FLYS-3.0". 2011-03-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/services/CreateCollectionService.java, src/main/java/de/intevation/flys/client/client/services/CreateCollectionServiceAsync.java, src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java: New. A service that might be used to create new collections in the artifact server. * src/main/webapp/WEB-INF/web.xml: Registered the service to create new collections. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Added the service to create new collections. Currently, this service is not used. 2011-03-07 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultUser.java, src/main/java/de/intevation/flys/client/shared/model/User.java: A user interface and its default implementation. * src/main/java/de/intevation/flys/client/client/services/UserService.java, src/main/java/de/intevation/flys/client/client/services/UserServiceAsync.java, * src/main/java/de/intevation/flys/client/server/UserServiceImpl.java: This service will currently return the first user that is returned by the artifact server. * src/main/java/de/intevation/flys/client/client/FLYS.java: The FLYS instance stores the user that is logged in, because we need to make use of this user in many services. * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java, src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Make use of the User of this package - the User of the common package is not used any longer. 2011-03-02 Sascha L. Teichmann <sascha.teichmann@intevation.de> * pom.xml: Added missing SmartGWT repository. 2011-02-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ParameterList.java: A UI widget that stores and displays the data of former states and the current data. The widget displaying of the current data is created by the UIProvider that is stored in the Data object. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: We are able to create new WINFO artifacts. After the artifact has been created, the first 'state' is rendered in a 'WINFO tab' using the ParameterList. 2011-02-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: The 'uiprovider' attribute is parsed from DESCRIBE document and stored at the Data object. * src/main/java/de/intevation/flys/client/shared/model/Data.java, src/main/java/de/intevation/flys/client/shared/model/DefaultData.java: Implemented code to store the UIProvider (as string!) for the Data object. 2011-02-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/StepForwardEvent.java: An event that is thrown after the user has selected or entered data in the UI and triggers the feed & advance operations via UI button. * src/main/java/de/intevation/flys/client/client/event/HasStepForwardHandlers.java: This interface is used by classes that provide that step forward mechanism. * src/main/java/de/intevation/flys/client/client/event/StepForwardHandler.java: This interface is used by classes that want to listen to StepForwardEvents. 2011-02-22 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/UIProvider.java, src/main/java/de/intevation/flys/client/client/ui/MapSelection.java, src/main/java/de/intevation/flys/client/client/ui/SelectProvider.java: The interface description and two implementations of a UIProvider. A UIProvider is used to create widgets for the user input. The UIProvider that is used in the current state depends on the data type in the describe document and a 'uiprovider' flag that might be configured there. * src/main/java/de/intevation/flys/client/client/ui/UIProviderFactory.java: The factory that is used to create new instances of UIProvider. 2011-02-21 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: This view implements the HasCollectionChangeHandlers interface - CollectionChangeHandler can register to this class and retrieve notifications when the collection of this view changes. 2011-02-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/event/CollectionChangeHandler.java, src/main/java/de/intevation/flys/client/client/event/CollectionChangeEvent.java, src/main/java/de/intevation/flys/client/client/event/HasCollectionChangeHandlers.java: New. These interfaces and classes should be used to listen to changes in Collections. 2011-02-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: Enhanced the Collection and its default implementation with new methods to add new Artifacts, retrieve Artifacts and get the number of artifacts managed by the Collection. 2011-02-18 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactDescriptionFactory.java: New. This factory is used to create an ArtifactDescription based on an DESCRIBE document returned by the artifact server. * src/main/java/de/intevation/flys/client/server/FLYSArtifactCreator.java: A new DefaultArtifact with an ArtifactDescription that contains the dynamic UI part is returned by the create() method now. 2011-02-17 Ingo Weinzierl <ingo@intevation.de> * pom.xml: This client uses the artifacts http-client for the communication between client and server now. * src/main/java/de/intevation/flys/client/server/FLYSArtifactCreator.java: New. An instance of the ArtitactCreator interface of the http-client. It uses the document returned by the artifact server to create an artifact instance. NOTE: The artifact creation needs to be implemented! This is currently just a stub to make the other things work. * src/main/java/de/intevation/flys/client/client/services/ArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/ArtifactService.java: The method signature of create() changed: the server url is required now. * src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java: Make use of the HttpClient and the FLYSArtifactCreator to create artifacts. * src/main/java/de/intevation/flys/client/client/FLYS.java, src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Added the server url to the create() call of the ArtifactService. 2011-02-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: This view will now display radio buttons to choose between the module 'WINFO', 'MINFO', 'Map' and 'Fix-Analyse'. A button is shown to create an artifact of the selected module. NOTE: The next step here is to use the returning artifact with its description and display widgets based on these information. * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added i18n strings for the CollectionView's 'next' button. 2011-02-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/ArtifactDescription.java, src/main/java/de/intevation/flys/client/shared/model/DataItem.java, src/main/java/de/intevation/flys/client/shared/model/Data.java: The interfaces implement the Serializable interface now. * src/main/java/de/intevation/flys/client/shared/model/DefaultArtifactDescription.java, src/main/java/de/intevation/flys/client/shared/model/DefaultDataItem.java, src/main/java/de/intevation/flys/client/shared/model/DefaultData.java: New. Default implementions of the interfaces above. These classes implements constructors and the necessary methods of the interface descriptions only! 2011-02-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/ArtifactServiceAsync.java, src/main/java/de/intevation/flys/client/client/services/ArtifactService.java: New. Interface descriptions and the server implementation of an artifact service that provides basic methods for working with artifacts. NOTE: The implementation is currently just a stub. The artifact creation needs to be implemented. * src/main/webapp/WEB-INF/web.xml: Added a servlet for the artifact interface. 2011-02-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Artifact.java: Implements the serializable interface which is necessary to be able to use this object in the GWT client code. * src/main/java/de/intevation/flys/client/shared/model/DefaultArtifact.java: New. A simple default implementation of an artifact. 2011-02-16 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/FLYS.gwt.xml: Added the Resources and XML modules of GWT. * src/main/java/de/intevation/flys/client/client/config.xml: An xml file that will contain the client configuration. * src/main/java/de/intevation/flys/client/client/Config.java: New. This class should be used to handle the client configuration and provides methods for retrieving information about the configuration. * src/main/java/de/intevation/flys/client/client/FLYSResources.java: The configuration (Config) is initialized at the startup. 2011-02-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/Artifact.java: New. The interface description of an artifact used in this client. There are several methods that provide information about the artifact itself and its representation. * src/main/java/de/intevation/flys/client/shared/model/ArtifactDescription.java: New. The ArtifactDescription provides information about the current representation of an artifact. * src/main/java/de/intevation/flys/client/shared/model/DataItem.java, src/main/java/de/intevation/flys/client/shared/model/Data.java: New. The interfaces are used to handle user input. 2011-02-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added strings for the plugins. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: Display radio buttons if the collection is new and no plugin (winfo, minfo, map, fix analyse) has been chosen. 2011-02-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: New strings for the CollectionViews. * src/main/java/de/intevation/flys/client/client/ui/FLYSWorkspace.java: New. This is the workspace for FLYS. It contains the windows for each collection of the user. * src/main/java/de/intevation/flys/client/client/ui/CollectionView.java: New. This window will display a collection. Currently, it has just a title, but no content. * src/main/java/de/intevation/flys/client/client/ui/FLYSView.java: Displays the FLYSWorkspace. * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: Added a button to open new collections. * src/main/java/de/intevation/flys/client/client/FLYS.java: The FLYSWorkspace is created here. FLYS stores a reference to it and puts the workspace into the FLYSView. Furthermore, there is a new method that creates new Collections. NOTE: Currently, there is no communication with the artifact server, because Collections aren't implemented yet! 2011-02-11 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: Added a new method that returns the UUID of the collection. 2011-02-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/client/ui/ProjectList.java: The ProjectList stores a reference to the current user and provides a list with his existing projects. NOTE: There are created two Collections and two CollectionRecords for the mockup. This code needs to be removed after a service to fetch the user collections has been implemented. * src/main/java/de/intevation/flys/client/client/ui/CollectionGrid.java: This grid will show a list of collections with its last modification date, their uuid and two buttons to publish and delete the collection. NOTE: The buttons have no effect yet. * src/main/java/de/intevation/flys/client/client/FLYS.java: The FLYS class has a reference to the ProjectList. If a logged in user was found, the ProjectList is initialized and added to the FLYSView. * src/main/java/de/intevation/flys/client/client/ui/FLYSView.java: There is a new method to set the ProjectList. Furthermore, all UI components are put into a HLayout now. On this way, we are able to open/close the ProjectList. * src/main/java/de/intevation/flys/client/client/FLYSMessages.java, src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties: Added strings for the project list. 2011-02-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/shared/model/DefaultCollection.java, src/main/java/de/intevation/flys/client/shared/model/Collection.java: The interface and its default implementation of a Collection. NOTE: I think both classes will change pretty much, but they have been necessary for the ProjectList mockup. 2011-02-10 Ingo Weinzierl <ingo@intevation.de> * src/main/java/de/intevation/flys/client/FLYS.gwt.xml: The artifact-common package is available in the GWT code now. * pom.xml: Made the artifact-common package available. * src/main/java/de/intevation/flys/client/server/UserServiceImpl.java, src/main/java/de/intevation/flys/client/client/services/UserService.java, src/main/java/de/intevation/flys/client/client/services/UserServiceAsync.java: A service definition that retrieves user information. Currently, this service defines a single method that returns the user that is currently logged in. * src/main/webapp/WEB-INF/web.xml: Added a servlet definition that provides the UserService. * src/main/java/de/intevation/flys/client/client/FLYSMessages_en.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages_de.properties, src/main/java/de/intevation/flys/client/client/FLYSMessages.java: Added I18N string for a guest user. * src/main/java/de/intevation/flys/client/client/ui/MainMenu.java: There are new methods to set the current user and to update the menu with its name. * src/main/java/de/intevation/flys/client/client/FLYS.java: After creating the necessary components, the current user is queried by the UserService and displayed in the menu bar.