/**
* height in pixels for allowing height adjuster to be active
*/
- private static int HEIGHT_ADJUSTER_HEIGHT = 10;
+ public static int HEIGHT_ADJUSTER_HEIGHT = 10;
private static final Font font = new Font("Arial", Font.PLAIN, 11);
private int annotationIdWidth = -1;
+ public static final String RESIZE_MARGINS_MARK_PREF = "RESIZE_MARGINS_MARK";
+
/**
* Creates a new AnnotationLabels object
*
RenderingHints.VALUE_ANTIALIAS_ON);
}
- drawComponent(g2, true, width);
-
+ drawComponent(g2, true, width, true);
}
/**
*/
public void drawComponent(Graphics g, int width)
{
- drawComponent(g, false, width);
+ drawComponent(g, false, width, true);
}
/**
* @param width
* Width for scaling labels
*/
- public void drawComponent(Graphics g, boolean clip, int givenWidth)
+ public void drawComponent(Graphics g, boolean clip, int givenWidth, boolean forGUI)
{
int width = givenWidth;
IdwidthAdjuster iwa = null;
{
Graphics2D g2d = (Graphics2D) g;
Graphics dummy = g2d.create();
- int newAnnotationIdWidth = drawLabels(dummy, clip, width, false,
+ int newAnnotationIdWidth = drawLabels(dummy, clip, width, false, forGUI,
null);
dummy.dispose();
Dimension d = ap.calculateDefaultAlignmentIdWidth();
}
else
{
- int newAnnotationIdWidth = drawLabels(g, clip, width, false, null);
+ int newAnnotationIdWidth = drawLabels(g, clip, width, false, forGUI, null);
width = Math.max(newAnnotationIdWidth, givenWidth);
}
- drawLabels(g, clip, width, true, null);
+ drawLabels(g, clip, width, true, forGUI, null);
}
/**
* Returns the width of the annotation labels.
*
* @param g
- * Graphics2D instance (needed for font scaling)
+ * Graphics2D instance (used for rendering and font scaling if no fmetrics supplied)
* @param clip
* - true indicates that only current visible area needs to be
* rendered
* @param width
* Width for scaling labels
+ * @param actuallyDraw - when false, no graphics are rendered to g0
+ * @param forGUI - when false, GUI relevant marks like indicators for dragging annotation panel height are not rendered
* @param fmetrics
* FontMetrics if Graphics object g is null
*/
public int drawLabels(Graphics g0, boolean clip, int width,
- boolean actuallyDraw, FontMetrics fmetrics)
+ boolean actuallyDraw, boolean forGUI, FontMetrics fmetrics)
{
if (clip)
{
{
g.setColor(Color.white);
g.fillRect(0, 0, getWidth(), getHeight());
+
+ if (!Cache.getDefault(RESIZE_MARGINS_MARK_PREF, false)
+ && !av.getWrapAlignment() && forGUI)
+ {
+ g.setColor(Color.LIGHT_GRAY);
+ g.drawLine(0, HEIGHT_ADJUSTER_HEIGHT / 4, HEIGHT_ADJUSTER_WIDTH / 4,
+ HEIGHT_ADJUSTER_HEIGHT / 4);
+ g.drawLine(0, 3 * HEIGHT_ADJUSTER_HEIGHT / 4,
+ HEIGHT_ADJUSTER_WIDTH / 4, 3 * HEIGHT_ADJUSTER_HEIGHT / 4);
+
+ }
}
if (actuallyDraw)
{
if (debugRedraw)
{
- System.out.println("before vis: " + i);
+ jalview.bin.Console.outPrintln("before vis: " + i);
}
before = true;
}
{
if (debugRedraw)
{
- System.out.println(
+ jalview.bin.Console.outPrintln(
"Scroll offset: " + sOffset + " after vis: " + i);
}
after = true;
public void mouseEntered(MouseEvent e)
{
}
+
+ public void drawComponentNotGUI(Graphics idGraphics, int idWidth)
+ {
+ drawComponent(idGraphics, false, idWidth, false);
+ }
}