mirror of
				https://github.com/SimpleMobileTools/Simple-Draw.git
				synced 2025-06-05 21:59:17 +02:00 
			
		
		
		
	Separated background color functionality from Clear action
This commit is contained in:
		@@ -14,8 +14,6 @@ import java.util.LinkedHashMap;
 | 
			
		||||
import java.util.Map;
 | 
			
		||||
 | 
			
		||||
public class MyCanvas extends View {
 | 
			
		||||
    private Paint mBackgroundPaint;
 | 
			
		||||
 | 
			
		||||
    private Paint mPaint;
 | 
			
		||||
    private Path mPath;
 | 
			
		||||
    private Map<Path, Integer> mPaths;
 | 
			
		||||
@@ -30,10 +28,6 @@ public class MyCanvas extends View {
 | 
			
		||||
    public MyCanvas(Context context, AttributeSet attrs) {
 | 
			
		||||
        super(context, attrs);
 | 
			
		||||
 | 
			
		||||
        mBackgroundPaint = new Paint();
 | 
			
		||||
        mBackgroundPaint.setColor(Color.WHITE);
 | 
			
		||||
        mBackgroundPaint.setStyle(Paint.Style.FILL);
 | 
			
		||||
 | 
			
		||||
        mPath = new Path();
 | 
			
		||||
        mPaint = new Paint();
 | 
			
		||||
        mPaint.setColor(Color.BLACK);
 | 
			
		||||
@@ -66,10 +60,6 @@ public class MyCanvas extends View {
 | 
			
		||||
        invalidate();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public int getBackgroundColor() {
 | 
			
		||||
        return mBackgroundPaint.getColor();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setColor(int newColor) {
 | 
			
		||||
        mColor = newColor;
 | 
			
		||||
    }
 | 
			
		||||
@@ -86,9 +76,6 @@ public class MyCanvas extends View {
 | 
			
		||||
    protected void onDraw(Canvas canvas) {
 | 
			
		||||
        super.onDraw(canvas);
 | 
			
		||||
 | 
			
		||||
        // Clear canvas background
 | 
			
		||||
        canvas.drawRect(0, 0, canvas.getWidth(), canvas.getHeight(), mBackgroundPaint);
 | 
			
		||||
 | 
			
		||||
        for (Map.Entry<Path, Integer> entry : mPaths.entrySet()) {
 | 
			
		||||
            mPaint.setColor(entry.getValue());
 | 
			
		||||
            canvas.drawPath(entry.getKey(), mPaint);
 | 
			
		||||
@@ -98,9 +85,7 @@ public class MyCanvas extends View {
 | 
			
		||||
        canvas.drawPath(mPath, mPaint);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void clearCanvas(int color) {
 | 
			
		||||
        mBackgroundPaint.setColor(color);
 | 
			
		||||
 | 
			
		||||
    public void clearCanvas() {
 | 
			
		||||
        mPath.reset();
 | 
			
		||||
        mPaths.clear();
 | 
			
		||||
        pathsUpdated();
 | 
			
		||||
 
 | 
			
		||||
@@ -5,6 +5,7 @@ import android.content.Intent;
 | 
			
		||||
import android.content.pm.PackageManager;
 | 
			
		||||
import android.graphics.Bitmap;
 | 
			
		||||
import android.graphics.Color;
 | 
			
		||||
import android.graphics.drawable.ColorDrawable;
 | 
			
		||||
import android.media.MediaScannerConnection;
 | 
			
		||||
import android.net.Uri;
 | 
			
		||||
import android.os.Bundle;
 | 
			
		||||
@@ -85,17 +86,21 @@ public class MainActivity extends SimpleActivity implements MyCanvas.PathsChange
 | 
			
		||||
                startActivity(new Intent(getApplicationContext(), SettingsActivity.class));
 | 
			
		||||
                return true;
 | 
			
		||||
            case R.id.clear:
 | 
			
		||||
                AmbilWarnaDialog dialog = new AmbilWarnaDialog(this, mMyCanvas.getBackgroundColor(),
 | 
			
		||||
                mMyCanvas.clearCanvas();
 | 
			
		||||
                return true;
 | 
			
		||||
            case R.id.change_background:
 | 
			
		||||
                int oldColor = ((ColorDrawable)mMyCanvas.getBackground()).getColor();
 | 
			
		||||
                AmbilWarnaDialog dialog = new AmbilWarnaDialog(this, oldColor,
 | 
			
		||||
                        new AmbilWarnaDialog.OnAmbilWarnaListener() {
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void onCancel(AmbilWarnaDialog dialog) {
 | 
			
		||||
                    }
 | 
			
		||||
                            @Override
 | 
			
		||||
                            public void onCancel(AmbilWarnaDialog dialog) {
 | 
			
		||||
                            }
 | 
			
		||||
 | 
			
		||||
                    @Override
 | 
			
		||||
                    public void onOk(AmbilWarnaDialog dialog, int pickedColor) {
 | 
			
		||||
                        mMyCanvas.clearCanvas(pickedColor);
 | 
			
		||||
                    }
 | 
			
		||||
                });
 | 
			
		||||
                            @Override
 | 
			
		||||
                            public void onOk(AmbilWarnaDialog dialog, int pickedColor) {
 | 
			
		||||
                                mMyCanvas.setBackgroundColor(pickedColor);
 | 
			
		||||
                            }
 | 
			
		||||
                        });
 | 
			
		||||
 | 
			
		||||
                dialog.show();
 | 
			
		||||
                return true;
 | 
			
		||||
 
 | 
			
		||||
@@ -15,6 +15,10 @@
 | 
			
		||||
        android:id="@+id/clear"
 | 
			
		||||
        android:title="@string/clear"
 | 
			
		||||
        app:showAsAction="never"/>
 | 
			
		||||
    <item
 | 
			
		||||
        android:id="@+id/change_background"
 | 
			
		||||
        android:title="@string/change_background"
 | 
			
		||||
        app:showAsAction="never"/>
 | 
			
		||||
    <item
 | 
			
		||||
        android:id="@+id/settings"
 | 
			
		||||
        android:title="@string/settings"
 | 
			
		||||
 
 | 
			
		||||
@@ -17,6 +17,7 @@
 | 
			
		||||
    <string name="settings">Ajustes</string>
 | 
			
		||||
    <string name="dark_theme">Tema oscuro</string>
 | 
			
		||||
    <string name="clear">Limpiar</string>
 | 
			
		||||
    <string name="change_background">Cambiar fondo</string>
 | 
			
		||||
 | 
			
		||||
    <!-- About -->
 | 
			
		||||
    <string name="about">Acerca de</string>
 | 
			
		||||
 
 | 
			
		||||
@@ -17,6 +17,7 @@
 | 
			
		||||
    <string name="settings">Settings</string>
 | 
			
		||||
    <string name="dark_theme">Dark theme</string>
 | 
			
		||||
    <string name="clear">Clear</string>
 | 
			
		||||
    <string name="change_background">Change background</string>
 | 
			
		||||
 | 
			
		||||
    <!-- About -->
 | 
			
		||||
    <string name="about">About</string>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user