package com.charlesmadere.android.classygames; import android.graphics.Shader; import android.graphics.drawable.BitmapDrawable; import android.os.Build; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import com.actionbarsherlock.app.SherlockDialogFragment; public final class ChessGlossaryDialogFragment extends SherlockDialogFragment { private final static String KEY_PLAYER_COLOR = "KEY_PLAYER_COLOR"; private ImageView bishopImage; private ImageView kingImage; private ImageView knightImage; private ImageView pawnImage; private ImageView queenImage; private ImageView rookImage; public static ChessGlossaryDialogFragment newInstance(final int playerColor) { final Bundle arguments = new Bundle(); arguments.putInt(KEY_PLAYER_COLOR, playerColor); final ChessGlossaryDialogFragment fragment = new ChessGlossaryDialogFragment(); fragment.setArguments(arguments); return fragment; } @Override public View onCreateView(final LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) { getDialog().setTitle(R.string.chess_glossary); return inflater.inflate(R.layout.chess_glossary_dialog_fragment, container, false); } @Override @SuppressWarnings("deprecation") public void onActivityCreated(final Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); final View view = getView(); bishopImage = (ImageView) view.findViewById(R.id.chess_glossary_dialog_fragment_bishop_imageview); kingImage = (ImageView) view.findViewById(R.id.chess_glossary_dialog_fragment_king_imageview); knightImage = (ImageView) view.findViewById(R.id.chess_glossary_dialog_fragment_knight_imageview); pawnImage = (ImageView) view.findViewById(R.id.chess_glossary_dialog_fragment_pawn_imageview); queenImage = (ImageView) view.findViewById(R.id.chess_glossary_dialog_fragment_queen_imageview); rookImage = (ImageView) view.findViewById(R.id.chess_glossary_dialog_fragment_rook_imageview); if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) { final BitmapDrawable background = (BitmapDrawable) getResources().getDrawable(R.drawable.bg_bright); background.setAntiAlias(true); background.setDither(true); background.setFilterBitmap(true); background.setTileModeXY(Shader.TileMode.REPEAT, Shader.TileMode.REPEAT); view.setBackgroundDrawable(background); } final Bundle arguments = getArguments(); if (arguments != null && !arguments.isEmpty()) { final int playerColor = arguments.getInt(KEY_PLAYER_COLOR); switch (playerColor) { case R.string.blue: setViewDrawables(R.drawable.piece_chess_bishop_blue, R.drawable.piece_chess_king_blue, R.drawable.piece_chess_knight_blue, R.drawable.piece_chess_queen_blue, R.drawable.piece_chess_pawn_blue, R.drawable.piece_chess_rook_blue); break; case R.string.green: setViewDrawables(R.drawable.piece_chess_bishop_green, R.drawable.piece_chess_king_green, R.drawable.piece_chess_knight_green, R.drawable.piece_chess_queen_green, R.drawable.piece_chess_pawn_green, R.drawable.piece_chess_rook_green); break; case R.string.orange: setViewDrawables(R.drawable.piece_chess_bishop_orange, R.drawable.piece_chess_king_orange, R.drawable.piece_chess_knight_orange, R.drawable.piece_chess_queen_orange, R.drawable.piece_chess_pawn_orange, R.drawable.piece_chess_rook_orange); break; case R.string.pink: default: setViewDrawables(R.drawable.piece_chess_bishop_pink, R.drawable.piece_chess_king_pink, R.drawable.piece_chess_knight_pink, R.drawable.piece_chess_queen_pink, R.drawable.piece_chess_pawn_pink, R.drawable.piece_chess_rook_pink); break; } } } private void setViewDrawables(final int bishop, final int king, final int knight, final int queen, final int pawn, final int rook) { bishopImage.setImageResource(bishop); kingImage.setImageResource(king); knightImage.setImageResource(knight); queenImage.setImageResource(queen); pawnImage.setImageResource(pawn); rookImage.setImageResource(rook); } }