1 package mhr.appandroid.views.imagepresentationview;
3 import mhr.appandroid.R;
4 import mhr.appandroid.adapters.APDBitmap;
5 import mhr.appandroid.views.SimpleBitmapView;
6 import mhr.appandroid.views.imagepresentationview.ImagePresentationEvent.EventType;
7 import mhr.appcore.image.layers.LayerPDInfo;
8 import mhr.appcore.image.layers.LayerType;
9 import android.app.Activity;
10 import android.content.ClipData;
11 import android.content.Context;
12 import android.graphics.Bitmap;
13 import android.graphics.BitmapFactory;
14 import android.graphics.BitmapShader;
15 import android.graphics.Rect;
16 import android.graphics.Shader.TileMode;
17 import android.util.AttributeSet;
18 import android.widget.CheckBox;
19 import android.widget.CompoundButton;
20 import android.widget.CompoundButton.OnCheckedChangeListener;
21 import android.widget.PopupMenu.OnMenuItemClickListener;
22 import android.widget.FrameLayout;
23 import android.widget.ImageView;
24 import android.widget.PopupMenu;
25 import android.widget.ProgressBar;
26 import android.widget.SeekBar;
27 import android.widget.SeekBar.OnSeekBarChangeListener;
28 import android.widget.TextView;
29 import android.view.DragEvent;
30 import android.view.MenuItem;
31 import android.view.View;
32 import android.view.View.OnClickListener;
33 import android.view.View.OnLongClickListener;
37 public class MasterMaskView extends FrameLayout implements OnCheckedChangeListener, OnClickListener, OnLongClickListener, OnMenuItemClickListener {
77 super(context, attrs);
82 super(context, attrs, defStyle);
123 ((Activity) getContext()).getLayoutInflater().inflate(
R.layout.view_master_mask,
this,
true);
124 }
catch (ClassCastException exc) {
126 TextView tv =
new TextView(getContext());
127 tv.setText(
"Prewiew not available, requires Activity to be Context.");
132 maskThumbIV = (ImageView) findViewById(
R.id.MasterMaskThumb);
143 maskPreviewSBV.
getBitmapBackground().setShader(
new BitmapShader(BitmapFactory.decodeResource(getResources(),
R.drawable.checkboard), TileMode.REPEAT, TileMode.REPEAT));
146 checkedColor = getResources().getColor(
R.color.SelectedToolBackground);
148 maskPopup =
new PopupMenu(getContext(),
this);
149 maskPopup.inflate(
R.menu.view_layer_view_mask);
150 maskPopup.setOnMenuItemClickListener(
this);
185 final int id = item.getItemId();
186 if (
id ==
R.id.LayerPopUpCopyMaskBitmap) {
190 }
else if (
id ==
R.id.LayerPopUpPasteMaskBitmap) {
194 }
else if (
id ==
R.id.LayerPopUpClearMaskBitmap) {
198 }
else if (
id ==
R.id.LayerPopUpFillMaskBitmap) {
202 }
else if (
id ==
R.id.LayerPopUpInvertMaskBitmap) {
206 }
else if (
id ==
R.id.LayerPopUpAddMaskBitmap) {
210 }
else if (
id ==
R.id.LayerPopUpRemoveMaskBitmap) {