47 | | ^(Describe your design here.)^ |
| 47 | * Research is made for the gradient - the fastest way to do this task is to use the dialog JXGradientChooser again. This is from swinglabs library - add it in the dependency sections and in nexus server if needed. |
| 48 | * Create ImmGradient class which has to wrap the MultipleGradientPaint(this is from batik library - add it manually to nexus, groupId - org.apache.batik.ext, artifactId - awd, version - 1.7beta1+r522428) |
| 49 | |
| 50 | * Create interface with name Filling and with one method fill with Graphics2d and shape arguments. It will be implemented by ImmColor, ImmImage and ImmGradient - these will be the filling types of the ShapeElements. |
| 51 | * For the ImmImage use drawImage method and shape coordinates to fit the image in the frame correctly. |
| 52 | * In the ShapeSceneElement add new "filling" property which will represent the shape filling and will contain a Filling object. |
| 53 | * In the ShapeElementHelper implement drawContent - the fill method should be called from there for each Filling object. |
| 54 | * To keep the transparency active for now(for release purposes for example) check the filling instance - if it is color getEffectiveColor has to be called to make the color transparent(this should be improved for the other revisions). |
| 55 | * In FrameView and PageWorkArea in the backgroundElement you have to switch between background types and set the filling property depending on that. |
| 56 | * Implement this task in parralel with [wiki:GROUP_PAGE_PROPERTIES_R0] so it can be demonstrated as it is described in how to demo section. |
| 57 | * Because the task was timeboxed there are no tests presented and the pattern filling will be implemented in next revisions. |