Package org.eclipse.gef.examples.logicdesigner.figures

Source Code of org.eclipse.gef.examples.logicdesigner.figures.StickyNoteFigure

/*******************************************************************************
* Copyright (c) 2000, 2005 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
*     IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.gef.examples.logicdesigner.figures;

import org.eclipse.draw2d.MarginBorder;
import org.eclipse.draw2d.StackLayout;
import org.eclipse.draw2d.text.FlowPage;
import org.eclipse.draw2d.text.ParagraphTextLayout;
import org.eclipse.draw2d.text.TextFlow;

/**
* A Figure with a bent corner and an embedded TextFlow within a FlowPage that contains
* text.
*/
public class StickyNoteFigure
  extends BentCornerFigure
{

/** The inner TextFlow **/
private TextFlow textFlow;

/**
*  Creates a new StickyNoteFigure with a default MarginBorder size of DEFAULT_CORNER_SIZE
*  - 3 and a FlowPage containing a TextFlow with the style WORD_WRAP_SOFT.
*/
public StickyNoteFigure() {
  this(BentCornerFigure.DEFAULT_CORNER_SIZE - 3);
}

/**
* Creates a new StickyNoteFigure with a MarginBorder that is the given size and a
* FlowPage containing a TextFlow with the style WORD_WRAP_SOFT.
*
* @param borderSize the size of the MarginBorder
*/
public StickyNoteFigure(int borderSize) {
  setBorder(new MarginBorder(borderSize));
  FlowPage flowPage = new FlowPage();

  textFlow = new TextFlow();

  textFlow.setLayoutManager(new ParagraphTextLayout(textFlow,
          ParagraphTextLayout.WORD_WRAP_SOFT));

  flowPage.add(textFlow);

  setLayoutManager(new StackLayout());
  add(flowPage);
}

/**
* Returns the text inside the TextFlow.
*
* @return the text flow inside the text.
*/
public String getText() {
  return textFlow.getText();
}

/**
* Sets the text of the TextFlow to the given value.
*
* @param newText the new text value.
*/
public void setText(String newText) {
  textFlow.setText(newText);
}

}
TOP

Related Classes of org.eclipse.gef.examples.logicdesigner.figures.StickyNoteFigure

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.