下面列出了怎么用org.eclipse.jface.resource.ResourceManager的API类实例代码及写法,或者点击链接到github查看源代码。
public RootFigure(ResourceManager resourceManager) {
fResourceManager = resourceManager;
setStyleProvider(null);
fTimeViewDetails = new TimeBaseConverter(this);
final BorderLayout layout = new BorderLayout();
layout.setVerticalSpacing(10);
setLayoutManager(layout);
setOpaque(true);
updateStyle(fStyleProvider);
fDetailFigure = new DetailFigure(getStyleProvider());
add(fDetailFigure, BorderLayout.CENTER);
fOverviewFigure = new OverviewFigure(getStyleProvider());
add(fOverviewFigure, BorderLayout.BOTTOM);
}
@Override
public Rectangle resize ( final ResourceManager resourceManager, final Rectangle clientRectangle )
{
final int width = this.width >= 0 ? this.width : calcWidth ( resourceManager, clientRectangle.height );
if ( this.left )
{
this.rect = new Rectangle ( clientRectangle.x, clientRectangle.y, width, clientRectangle.height );
return new Rectangle ( clientRectangle.x + width, clientRectangle.y, clientRectangle.width - width, clientRectangle.height );
}
else
{
this.rect = new Rectangle ( clientRectangle.x + clientRectangle.width - width, clientRectangle.y, width, clientRectangle.height );
return new Rectangle ( clientRectangle.x, clientRectangle.y, clientRectangle.width - width, clientRectangle.height );
}
}
@Override
public Rectangle resize ( final ResourceManager resourceManager, final Rectangle clientRectangle )
{
if ( this.title == null || this.title.isEmpty () )
{
return null;
}
final GC gc = new GC ( resourceManager.getDevice () );
gc.setFont ( createFont ( resourceManager ) );
try
{
final Point size = gc.textExtent ( this.title );
this.rect = new Rectangle ( clientRectangle.x, clientRectangle.y, clientRectangle.width, size.y + this.padding * 2 );
return new Rectangle ( clientRectangle.x, this.rect.y + this.rect.height, clientRectangle.width, clientRectangle.height - this.rect.height );
}
finally
{
gc.dispose ();
}
}
private Font createFont ( final ResourceManager resourceManager )
{
final Font defaultFont = resourceManager.getDevice ().getSystemFont ();
if ( defaultFont == null )
{
return null;
}
final FontData fd[] = FontDescriptor.copy ( defaultFont.getFontData () );
if ( fd == null )
{
return null;
}
for ( final FontData f : fd )
{
if ( this.fontSize > 0 )
{
f.setHeight ( this.fontSize );
}
}
return resourceManager.createFont ( FontDescriptor.createFrom ( fd ) );
}
@Override
public Rectangle resize ( final ResourceManager resourceManager, final Rectangle clientRectangle )
{
final int height = this.height >= 0 ? this.height : calcHeight ( resourceManager );
if ( this.bottom )
{
this.rect = new Rectangle ( clientRectangle.x, clientRectangle.y + clientRectangle.height - height, clientRectangle.width, height );
return new Rectangle ( clientRectangle.x, clientRectangle.y, clientRectangle.width, clientRectangle.height - height );
}
else
{
this.rect = new Rectangle ( clientRectangle.x, clientRectangle.y, clientRectangle.width, height );
return new Rectangle ( clientRectangle.x, clientRectangle.y + height, clientRectangle.width, clientRectangle.height - height );
}
}
public InputManager ( final DataBindingContext dbc, final ChartViewer viewer, final ResourceManager resourceManager, final AxisLocator<XAxis, XAxisViewer> xLocator, final AxisLocator<YAxis, YAxisViewer> yLocator )
{
this.list = new WritableList ( dbc.getValidationRealm () );
this.dbc = dbc;
this.viewer = viewer;
this.resourceManager = resourceManager;
this.xLocator = xLocator;
this.yLocator = yLocator;
this.list.addListChangeListener ( this.listener = new IListChangeListener () {
@Override
public void handleListChange ( final ListChangeEvent event )
{
handleListeChange ( event.diff );
}
} );
}
public ScriptInput ( final ChartViewer viewer, final Realm realm, final ResourceManager resourceManager, final XAxis xAxis, final YAxis yAxis )
{
super ( resourceManager );
this.viewer = viewer;
this.renderer = new StepRenderer ( viewer.getChartRenderer (), this.dataSeries = new AsyncFunctionSeriesData ( realm, xAxis, yAxis, 0 ) {
@Override
protected Double eval ( final long timestamp )
{
return handleEval ( timestamp );
}
} );
viewer.getChartRenderer ().addRenderer ( this.renderer );
attachHover ( viewer, xAxis );
}
public ArcController ( final SymbolController controller, final Arc element, final ResourceManager manager )
{
super ( controller, manager );
this.figure = new ArcShape () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
this.figure.setArc ( element.getStart (), element.getLength () );
controller.addElement ( element, this );
applyCommon ( element );
}
private Font createFont(final ResourceManager resourceManager) {
final Font defaultFont = resourceManager.getDevice().getSystemFont();
if (defaultFont == null) {
return null;
}
final FontData fd[] = FontDescriptor.copy(defaultFont.getFontData());
if (fd == null) {
return null;
}
for (final FontData f : fd) {
if (this.fontSize > 0) {
f.setHeight(this.fontSize);
}
}
return resourceManager.createFont(FontDescriptor.createFrom(fd));
}
@PostConstruct
public void postConstruct(Composite parent) {
ResourceManager resourceManager = new LocalResourceManager(JFaceResources.getResources(), parent);
TreeViewer viewer = new TreeViewer(parent);
viewer.setContentProvider(new TreeContentProvider());
viewer.getTree().setHeaderVisible(true);
viewer.getTree().setLinesVisible(true);
viewer.getTree().setFont(resourceManager.createFont(FontDescriptor.createFrom("Arial", 32, SWT.ITALIC)));
TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
viewerColumn.getColumn().setWidth(300);
viewerColumn.getColumn().setText("Names");
viewerColumn.setLabelProvider(new ColumnLabelProvider());
viewer.setInput(new String[] { "Simon Scholz", "Lars Vogel", "Dirk Fauth", "Wim Jongman", "Tom Schindl" });
GridLayoutFactory.fillDefaults().generateLayout(parent);
}
private int calcHeight ( final ResourceManager resourceManager )
{
if ( this.axis == null )
{
return 0;
}
final GC gc = new GC ( resourceManager.getDevice () );
try
{
gc.setFont ( makeFont ( resourceManager ) );
final DateFormat format = makeFormat ( this.axis.getMax () - this.axis.getMin () );
final Point markerSize = getExtent ( gc, format.format ( new Date () ) );
final Point labelSize = getExtent ( gc, this.axis.getLabel () );
int height = markerSize.y + labelSize.y + this.textPadding * 2 + this.markerSize;
if ( labelSize.y > 0 )
{
height += this.textPadding;
}
return height;
}
finally
{
gc.dispose ();
}
}
@Override
public ViewInstance createViewInstance ( final ViewManager viewManager, final ViewManagerContext viewManagerContext, final ViewInstanceDescriptor descriptor, final Composite viewHolder, final ResourceManager manager, final IWorkbenchPartSite site )
{
final VisualInterfaceViewInstance instance = new VisualInterfaceViewInstance ( viewManager, viewManagerContext, viewHolder, descriptor, site.getService ( IEvaluationService.class ) );
instance.init ();
return instance;
}
public AbstractInputViewer ( final DataBindingContext dbc, final DataSeries element, final ChartViewer viewer, final ResourceManager resourceManager, final AxisLocator<XAxis, XAxisViewer> xLocator, final AxisLocator<YAxis, YAxisViewer> yLocator )
{
this.element = element;
this.viewer = viewer;
this.dbc = dbc;
this.resourceManager = new LocalResourceManager ( resourceManager );
this.xLocator = xLocator;
this.yLocator = yLocator;
addBinding ( dbc.bindValue ( PojoObservables.observeValue ( this, "x" ), EMFObservables.observeValue ( element, ChartPackage.Literals.DATA_SERIES__X ) ) ); //$NON-NLS-1$
addBinding ( dbc.bindValue ( PojoObservables.observeValue ( this, "y" ), EMFObservables.observeValue ( element, ChartPackage.Literals.DATA_SERIES__Y ) ) ); //$NON-NLS-1$
}
public DataItemSeriesViewer ( final DataBindingContext dbc, final DataItemSeries element, final ChartViewer viewer, final ResourceManager resourceManager, final AxisLocator<XAxis, XAxisViewer> xLocator, final AxisLocator<YAxis, YAxisViewer> yLocator )
{
super ( dbc, element, viewer, resourceManager, xLocator, yLocator );
this.inputObservable = BeansObservables.observeValue ( this, PROP_INPUT );
this.linePropertiesObservable = EMFObservables.observeValue ( element, ChartPackage.Literals.DATA_ITEM_SERIES__LINE_PROPERTIES );
addBindings ( LinePropertiesBinder.bind ( dbc, this.inputObservable, this.linePropertiesObservable ) );
setInputObserable ( this.inputObservable );
}
public ScriptSeriesViewer ( final DataBindingContext dbc, final ScriptSeries element, final ChartViewer viewer, final ResourceManager resourceManager, final AxisLocator<XAxis, XAxisViewer> xLocator, final AxisLocator<YAxis, YAxisViewer> yLocator )
{
super ( dbc, element, viewer, resourceManager, xLocator, yLocator );
this.inputObservable = BeansObservables.observeValue ( this, PROP_INPUT );
this.linePropertiesObservable = EMFObservables.observeValue ( element, ChartPackage.Literals.SCRIPT_SERIES__LINE_PROPERTIES );
addBinding ( dbc.bindValue ( PojoObservables.observeDetailValue ( this.inputObservable, "script", null ), EMFObservables.observeValue ( element, ChartPackage.Literals.SCRIPT_SERIES__SCRIPT ) ) ); //$NON-NLS-1$
addBindings ( LinePropertiesBinder.bind ( dbc, this.inputObservable, this.linePropertiesObservable ) );
setInputObserable ( this.inputObservable );
}
public ColorUpdater ( final String name, final ResourceManager manager, final ColorDescriptor defaultColor )
{
this.name = name;
this.manager = manager;
this.defaultColor = defaultColor;
JFaceResources.getColorRegistry ().addListener ( this );
refresh ();
}
public ChartView ( final ViewManagerContext viewManagerContext, final ResourceManager manager, final ViewInstanceDescriptor descriptor, final Composite viewHolder, final IEvaluationService evaluationService, final boolean showSelector )
{
super ( viewManagerContext, descriptor, evaluationService );
this.showSelector = showSelector;
this.viewHolder = viewHolder;
this.viewManagerContext = viewManagerContext;
}
@Override
public ViewInstance createViewInstance ( final ViewManager viewManager, final ViewManagerContext viewManagerContext, final ViewInstanceDescriptor descriptor, final Composite viewHolder, final ResourceManager manager, final IWorkbenchPartSite site )
{
final ChartView view = new ChartView ( viewManagerContext, manager, descriptor, viewHolder, (IEvaluationService)site.getService ( IEvaluationService.class ), true );
view.init ();
return view;
}
@Override
public Controller create ( final SymbolController controller, final Primitive element, final SymbolLoader symbolLoader, final ResourceManager manager, final BasicViewElementFactory basicViewElementFactory, final FactoryContext context )
{
try
{
final ChartView view = (ChartView)element;
return new ChartController ( controller, manager, view, symbolLoader, context );
}
catch ( final Exception e )
{
return Helper.createErrorController ( e );
}
}
public ChartController ( final SymbolController symbolController, final ResourceManager resourceManager, final ChartView view, final SymbolLoader symbolLoader, final FactoryContext context )
{
super ( symbolController, resourceManager );
this.context = context;
this.symbolLoader = symbolLoader;
this.wrapperFigure = new Figure () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
this.wrapperFigure.setOpaque ( false );
this.figure = new ChartFigure ( Display.getCurrent (), resourceManager );
this.wrapperFigure.setLayoutManager ( new StackLayout () );
this.wrapperFigure.add ( this.figure );
this.errorFigure = new ErrorFigure ();
symbolController.addElement ( view, this );
applyCommon ( view );
}
public FigureRenderer ( final ChartFigure chartFigure, final ResourceManager resourceManager )
{
super ( resourceManager );
this.realm = new DisplayRealm ( Display.getCurrent () );
this.chartFigure = chartFigure;
this.figureListener = new FigureListenerImpl ();
this.chartFigure.addFigureListener ( this.figureListener );
}
public LineController ( final SymbolController controller, final Line element, final ResourceManager manager )
{
super ( controller, manager );
this.figure = new PolylineShape () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
final PointList points = new PointList ();
for ( final Position pos : element.getPoints () )
{
final Point p = new PrecisionPoint ( pos.getX (), pos.getY () );
points.addPoint ( p );
}
setPoints ( points );
controller.addElement ( element, this );
applyCommon ( element );
}
public RoundedRectangleController ( final SymbolController controller, final RoundedRectangle element, final ResourceManager manager )
{
super ( controller, manager );
this.figure = new org.eclipse.draw2d.RoundedRectangle () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
if ( element.getCorner () != null )
{
setCorner ( Double.valueOf ( Math.round ( element.getCorner ().getWidth () ) ).intValue (), Double.valueOf ( Math.round ( element.getCorner ().getWidth () ) ).intValue () );
}
else
{
setCorner ( 0, 0 );
}
controller.addElement ( element, this );
applyCommon ( element );
}
public EllipseController ( final SymbolController controller, final org.eclipse.scada.vi.model.Ellipse element, final ResourceManager manager )
{
super ( controller, manager );
final PrecisionRectangle rect = new PrecisionRectangle ();
if ( element.getSize () != null )
{
rect.setPreciseSize ( element.getSize ().getWidth (), element.getSize ().getHeight () );
}
this.figure = new Ellipse () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
this.figure.setBounds ( rect );
controller.addElement ( element, this );
applyCommon ( element );
}
public TextController ( final FigureCanvas canvas, final SymbolController controller, final Text element, final ResourceManager manager )
{
super ( controller, manager );
this.canvas = canvas;
this.figure = new Label ( element.getText ()) {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
protected void paintFigure ( final Graphics graphics )
{
final Double alpha = getAlpha ();
if ( alpha != null )
{
graphics.setAlpha ( (int) ( Math.max ( 0.0, Math.min ( 1.0, alpha ) ) * 255.0 ) );
}
super.paintFigure ( graphics );
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ( );
}
};
controller.addElement ( element, this );
applyCommon ( element );
}
public PolygonController ( final SymbolController controller, final Polygon element, final ResourceManager manager )
{
super ( controller, manager );
this.figure = new PolygonShape () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
final PointList points = new PointList ();
for ( final Position pos : element.getPoints () )
{
final Point p = new PrecisionPoint ( pos.getX (), pos.getY () );
points.addPoint ( p );
}
setPoints ( points );
controller.addElement ( element, this );
applyCommon ( element );
}
public RectangleController ( final SymbolController controller, final Rectangle element, final ResourceManager manager )
{
super ( controller, manager );
final PrecisionRectangle rect = new PrecisionRectangle ();
if ( element.getSize () != null )
{
rect.setPreciseSize ( element.getSize ().getWidth (), element.getSize ().getHeight () );
}
this.figure = new RectangleFigureExtension ( this );
this.figure.setBounds ( rect );
controller.addElement ( element, this );
applyCommon ( element );
}
public ImageController ( final FigureCanvas canvas, final SymbolController controller, final Image element, final SymbolLoader symbolLoader, final ResourceManager manager, final FactoryContext factoryContext )
{
super ( controller, manager );
this.factoryContext = factoryContext;
this.symbolLoader = symbolLoader;
this.figure = new Label () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
controller.addElement ( element, this );
applyCommon ( element );
setImage ( element.getUri () );
}
public FigureContainerController ( final SymbolController controller, final FigureContainer element, final ResourceManager manager, final BasicViewElementFactory viewElementFactory ) throws Exception
{
super ( controller, manager );
this.figure = new Figure () {
@Override
public void addNotify ()
{
super.addNotify ();
start ();
}
@Override
public void removeNotify ()
{
stop ();
super.removeNotify ();
}
};
if ( element.getSize () != null )
{
final PrecisionRectangle rect = new PrecisionRectangle ();
rect.setPreciseSize ( element.getSize ().getWidth (), element.getSize ().getHeight () );
this.figure.setBounds ( rect );
}
controller.addElement ( element, this );
this.figure.setLayoutManager ( new StackLayout () );
this.figure.add ( viewElementFactory.create ( controller, element.getContent () ).getFigure () );
applyCommon ( element );
}
public BasicViewElementFactory ( final FigureCanvas canvas, final ResourceManager manager, final SymbolLoader symbolLoader, final FactoryContext factoryContext )
{
this.manager = manager;
this.canvas = canvas;
this.symbolLoader = symbolLoader;
this.symbolCache = new HashMap<URI, XMISymbolLoader> ();
this.factoryContext = factoryContext == null ? FactoryContext.DEFAULT : factoryContext;
}