Revision 33420 branches/v2_0_0_prep/applications/appgvSIG/src/org/gvsig/app/project/documents/layout/fframes/FFrameView.java
FFrameView.java | ||
---|---|---|
55 | 55 |
import java.awt.image.BufferedImage; |
56 | 56 |
|
57 | 57 |
import org.cresques.cts.IProjection; |
58 |
import org.slf4j.Logger; |
|
59 |
import org.slf4j.LoggerFactory; |
|
60 |
|
|
58 | 61 |
import org.gvsig.andami.PluginServices; |
59 | 62 |
import org.gvsig.andami.messages.NotificationManager; |
60 | 63 |
import org.gvsig.app.project.Project; |
... | ... | |
65 | 68 |
import org.gvsig.app.project.documents.layout.fframes.gui.dialogs.IFFrameDialog; |
66 | 69 |
import org.gvsig.app.project.documents.layout.gui.LayoutPanel; |
67 | 70 |
import org.gvsig.app.project.documents.view.DefaultViewDocument; |
71 |
import org.gvsig.app.project.documents.view.ViewDocument; |
|
68 | 72 |
import org.gvsig.compat.print.PrintAttributes; |
69 | 73 |
import org.gvsig.fmap.dal.exception.ReadException; |
70 | 74 |
import org.gvsig.fmap.geom.Geometry; |
... | ... | |
82 | 86 |
import org.gvsig.fmap.mapcontext.events.listeners.ViewPortListener; |
83 | 87 |
import org.gvsig.fmap.mapcontext.rendering.legend.events.LegendChangedEvent; |
84 | 88 |
import org.gvsig.fmap.mapcontext.rendering.legend.events.listeners.LegendListener; |
89 |
import org.gvsig.tools.ToolsLocator; |
|
90 |
import org.gvsig.tools.dynobject.DynStruct; |
|
91 |
import org.gvsig.tools.persistence.PersistenceManager; |
|
92 |
import org.gvsig.tools.persistence.PersistentState; |
|
93 |
import org.gvsig.tools.persistence.exception.PersistenceException; |
|
85 | 94 |
import org.gvsig.utils.XMLEntity; |
86 |
import org.slf4j.Logger; |
|
87 |
import org.slf4j.LoggerFactory; |
|
88 | 95 |
|
89 | 96 |
|
90 | 97 |
|
... | ... | |
95 | 102 |
*/ |
96 | 103 |
public class FFrameView extends FFrame implements ViewPortListener, |
97 | 104 |
LegendListener, IFFrameUseProject, IFFrameUseFMap { |
105 |
public static final String PERSISTENCE_DEFINITION_NAME = "FFrameText"; |
|
106 |
|
|
107 |
private static final String MODE_FIELD = "mode"; |
|
108 |
private static final String TYPESCALE_FIELD = "typeScale"; |
|
109 |
private static final String EXTENSION_FIELD = "extension"; |
|
110 |
private static final String QUALITY_FIELD = "quality"; |
|
111 |
private static final String VIEWING_FIELD = "viewing"; |
|
112 |
private static final String BLINKED_FIELD = "bLinked"; |
|
113 |
private static final String MAPUNITS_FIELD = "mapUnits"; |
|
114 |
private static final String SCALE_FIELD = "scale"; |
|
115 |
private static final String VIEW_FIELD = "view"; |
|
116 |
private static final String ENVELOPE_FIELD = "envelope"; |
|
117 |
private static final String SHOWGRID_FIELD = "showGrid"; |
|
118 |
private static final String GRID_FIELD = "gridview"; |
|
119 |
|
|
98 | 120 |
private static final GeometryManager geomManager = GeometryLocator.getGeometryManager(); |
99 | 121 |
private static final Logger logger = LoggerFactory.getLogger(FFrameView.class); |
100 | 122 |
public static final int PRESENTACION = 0; |
... | ... | |
105 | 127 |
protected int m_quality = PRESENTACION; |
106 | 128 |
protected int m_viewing = 0; |
107 | 129 |
protected boolean m_bLinked = true; |
108 |
protected DefaultViewDocument view = null;
|
|
130 |
protected ViewDocument view = null; |
|
109 | 131 |
protected MapContext m_fmap = null; |
110 | 132 |
protected double m_Scale = 0; |
111 | 133 |
protected int m_mapUnits = 1; //Metros. |
... | ... | |
280 | 302 |
* |
281 | 303 |
* @return Modelo de la vista. |
282 | 304 |
*/ |
283 |
public DefaultViewDocument getView() {
|
|
305 |
public ViewDocument getView() { |
|
284 | 306 |
return view; |
285 | 307 |
} |
286 | 308 |
|
... | ... | |
380 | 402 |
.getImageHeight()); |
381 | 403 |
} |
382 | 404 |
g.translate(r.getX(), r.getY()); |
383 |
g.drawImage(m_image, 0, 0, getLayout().getLayoutControl()); |
|
405 |
g.drawImage(m_image, 0, 0, getLayout().getLayoutControl().getComponent());
|
|
384 | 406 |
g.translate(-r.getX(), -r.getY()); |
385 | 407 |
scaleAnt = getLayout().getLayoutControl().getAT().getScaleX(); |
386 | 408 |
origin = getLayout().getLayoutControl().getRectOrigin();//.clone(); |
... | ... | |
1080 | 1102 |
view.getMapContext().getViewPort().refreshExtent(); |
1081 | 1103 |
} |
1082 | 1104 |
} |
1105 |
|
|
1106 |
public static void registerPersistent() { |
|
1107 |
PersistenceManager manager = ToolsLocator.getPersistenceManager(); |
|
1108 |
if( manager.getDefinition(PERSISTENCE_DEFINITION_NAME)==null ) { |
|
1109 |
DynStruct definition = manager.addDefinition( |
|
1110 |
FFrameView.class, |
|
1111 |
PERSISTENCE_DEFINITION_NAME, |
|
1112 |
"FFrameView persistence definition", |
|
1113 |
null, |
|
1114 |
null |
|
1115 |
); |
|
1116 |
|
|
1117 |
definition.extend(manager.getDefinition(FFrame.PERSISTENCE_DEFINITION_NAME)); |
|
1118 |
|
|
1119 |
|
|
1120 |
definition.addDynFieldInt(MODE_FIELD).setMandatory(true); |
|
1121 |
definition.addDynFieldInt(TYPESCALE_FIELD).setMandatory(true); |
|
1122 |
definition.addDynFieldInt(EXTENSION_FIELD).setMandatory(true); |
|
1123 |
definition.addDynFieldInt(QUALITY_FIELD).setMandatory(true); |
|
1124 |
definition.addDynFieldInt(VIEWING_FIELD).setMandatory(true); |
|
1125 |
definition.addDynFieldBoolean(BLINKED_FIELD).setMandatory(true); |
|
1126 |
definition.addDynFieldInt(MAPUNITS_FIELD).setMandatory(true); |
|
1127 |
definition.addDynFieldDouble(SCALE_FIELD).setMandatory(true); |
|
1128 |
definition.addDynField(VIEW_FIELD).setClassOfValue(ViewDocument.class).setMandatory(true); |
|
1129 |
definition.addDynFieldBoolean(ENVELOPE_FIELD).setClassOfValue(Envelope.class).setMandatory(false); |
|
1130 |
definition.addDynFieldBoolean(SHOWGRID_FIELD).setMandatory(true); |
|
1131 |
definition.addDynFieldString(GRID_FIELD).setClassOfValue(IFFrame.class).setMandatory(true); |
|
1132 |
} |
|
1133 |
} |
|
1134 |
|
|
1135 |
@Override |
|
1136 |
public void loadFromState(PersistentState state) |
|
1137 |
throws PersistenceException { |
|
1138 |
super.loadFromState(state); |
|
1139 |
m_Mode = state.getInt(MODE_FIELD); |
|
1140 |
m_typeScale = state.getInt(TYPESCALE_FIELD); |
|
1141 |
m_extension = state.getInt(EXTENSION_FIELD); |
|
1142 |
m_quality = state.getInt(QUALITY_FIELD); |
|
1143 |
m_viewing = state.getInt(VIEWING_FIELD); |
|
1144 |
m_bLinked = state.getBoolean(BLINKED_FIELD); |
|
1145 |
m_mapUnits = state.getInt(MAPUNITS_FIELD); |
|
1146 |
m_Scale = state.getDouble(SCALE_FIELD); |
|
1147 |
view = (ViewDocument)state.get(VIEW_FIELD); |
|
1148 |
|
|
1149 |
if (state.hasValue(ENVELOPE_FIELD)){ |
|
1150 |
this.getMapContext().getViewPort().setEnvelope((Envelope)state.get(ENVELOPE_FIELD)); |
|
1151 |
} |
|
1152 |
|
|
1153 |
showGrid = state.getBoolean(SHOWGRID_FIELD); |
|
1154 |
grid = (IFFrame)state.get(GRID_FIELD); |
|
1155 |
} |
|
1156 |
|
|
1157 |
@Override |
|
1158 |
public void saveToState(PersistentState state) throws PersistenceException { |
|
1159 |
super.saveToState(state); |
|
1160 |
state.set(MODE_FIELD, m_Mode); |
|
1161 |
state.set(TYPESCALE_FIELD, m_typeScale); |
|
1162 |
state.set(EXTENSION_FIELD, m_extension); |
|
1163 |
state.set(QUALITY_FIELD, m_quality); |
|
1164 |
state.set(VIEWING_FIELD, m_viewing); |
|
1165 |
state.set(BLINKED_FIELD, m_bLinked); |
|
1166 |
state.set(MAPUNITS_FIELD, m_mapUnits); |
|
1167 |
state.set(SCALE_FIELD, m_Scale); |
|
1168 |
state.set(VIEW_FIELD, view); |
|
1169 |
|
|
1170 |
if (getMapContext() != null && getMapContext().getViewPort().getEnvelope() != null) { |
|
1171 |
state.set(ENVELOPE_FIELD, getMapContext().getViewPort().getEnvelope()); |
|
1172 |
} |
|
1173 |
|
|
1174 |
state.set(SHOWGRID_FIELD, showGrid); |
|
1175 |
state.set(GRID_FIELD, grid); |
|
1176 |
} |
|
1083 | 1177 |
} |
Also available in: Unified diff