add java version of new crosshairs flags; draw crosshairs 1/3

width/height of cells instead of reusing focus code to color
background.
This commit is contained in:
Andy2 2010-08-11 18:53:12 -07:00
parent d44b08b609
commit ac022ea5a5
2 changed files with 22 additions and 3 deletions

View file

@ -445,8 +445,8 @@ public class BoardView extends View implements DrawCtx, BoardHandler,
}
}
public boolean drawCell( Rect rect, String text, int tile, int owner,
int bonus, int hintAtts, int flags )
public boolean drawCell( final Rect rect, String text, int tile, int owner,
int bonus, int hintAtts, final int flags )
{
int backColor;
boolean empty = 0 != (flags & (CELL_DRAGSRC|CELL_ISEMPTY));
@ -500,6 +500,8 @@ public class BoardView extends View implements DrawCtx, BoardHandler,
}
// frame the cell
m_canvas.drawRect( rect, m_strokePaint );
drawCrosshairs( rect, flags );
return true;
} // drawCell
@ -779,6 +781,21 @@ public class BoardView extends View implements DrawCtx, BoardHandler,
}
}
private void drawCrosshairs( final Rect rect, final int flags )
{
int color = m_otherColors[CommonPrefs.COLOR_FOCUS];
if ( 0 != (flags & CELL_CROSSHOR) ) {
Rect hairRect = new Rect( rect );
hairRect.inset( 0, hairRect.height() / 3 );
fillRect( hairRect, color );
}
if ( 0 != (flags & CELL_CROSSVERT) ) {
Rect hairRect = new Rect( rect );
hairRect.inset( hairRect.width() / 3, 0 );
fillRect( hairRect, color );
}
}
private void fillRect( Rect rect, int color )
{
m_fillPaint.setColor( color );

View file

@ -31,7 +31,9 @@ public interface DrawCtx {
static final int CELL_VALHIDDEN = 0x20; /* show letter only, not value */
static final int CELL_DRAGSRC = 0x40; /* where drag originated */
static final int CELL_DRAGCUR = 0x80; /* where drag is now */
static final int CELL_ALL = 0xFF;
static final int CELL_CROSSVERT = 0x100;
static final int CELL_CROSSHOR = 0x200;
static final int CELL_ALL = 0x3FF;
/* BoardObjectType */
static final int OBJ_NONE = 0;