Changes between Initial Version and Version 1 of MapGuideRfc96


Ignore:
Timestamp:
06/12/10 19:33:29 (14 years ago)
Author:
wuma
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • MapGuideRfc96

    v1 v1  
     1= !MapGuide RFC 095 - OGC WMS 1.3.0 Support =
     2
     3This page contains an change request (RFC) for the !MapGuide Open Source project.
     4More !MapGuide RFCs can be found on the [wiki:MapGuideRfcs RFCs] page.
     5
     6
     7== Status ==
     8
     9||RFC Template Version||(1.0)||
     10||Submission Date||06/13/2010||
     11||Last Modified||Mars Wu 06/13/2010||
     12||Author||Mars Wu||
     13||RFC Status||draft||
     14||Implementation Status||under development||
     15||Proposed Milestone||2.3||
     16||Assigned PSC guide(s)||Bruce Dechant||
     17||'''Voting History'''||(vote date)||
     18||no vote|| ||
     19
     20== Overview ==
     21
     22This RFC is to add a new print function for both Ajax Viewer and Fusion Viewer. The new print function (let’s call it Quick Plot for now) will have following functions:
     23 * Can define the print area by put a capturing box in map.
     24 * Can choose different DPI for the generated printable picture
     25 * Offer a preview dialog to let user see what the print will look like.
     26
     27
     28== Motivation ==
     29
     30The current available print solution in both Ajax viewer and Fusion is limited because:
     31 * Can only print the visible region within current viewport, and cannot define in more detail about the print area
     32 * Cannot control the print resolution. The result of the existing print functions are just small pictures in 96 dpi which may lead to bade print quality
     33The new print solution will solve these problems.
     34
     35
     36== Proposed Solution ==
     37
     38This function needs to work in both Ajax Viewer and Fusion Viewer.
     39In '''Fusion viewer''', Quick Plot will be implemented as a new widget:
     40 * Uses Jx.Button as the uiClass:
     41{{{
     42Fusion.Widget.QuickPlot = OpenLayers.Class(Fusion.Widget,
     43{
     44    uiClass: Jx.Button,
     45}),
     46}}}
     47 * Has a main UI in TaskPane for configuring the print Title, Subtile, Print DPI etc.
     48 * Uses Jx.Dialog as the preview dialog.
     49 * The capture box, by moving / rotating which the user could define the print area will be implemented as Vector features.
     50 * Dragging / Dropping / Rotating the capture box will be implemented by OpenLayers.Handler.Drag and OpenLayers.Handler.Drag.Feature
     51In '''Aajx viewer''', Quick Plot will be implemented as an “Invoke Script” command:
     52 * A new function startQuickPlot will be implemented in ajaxmappane.templ to start Quick Plot logic by loading the main UI into the Task Pane. The main UI will share the template for Fusion viewer.
     53 * The preview dialog will also be implemented through Jx.Dialog. That means we need includes JxLib.js in Ajax viewer.
     54 * The capture box will be drawn in the map through the built-in jsGraphic API.
     55 * New event handlers will be attached to the map window to handle the capture box’s drag / drop / rotate
     56
     57
     58
     59== Implications ==
     60
     61Quick Plot for Ajax Viewer will need JxLib.js and JxTheme.css. Lazy load will be used so that only when Quick Plot is invoked, will the JxLib.js and JxTheme.css will be loaded. This way the new function will now impact the map initiation.
     62
     63== Test Plan ==
     64
     65N/A
     66
     67== Funding/Resources ==
     68
     69Supplied by Autodesk.