Android Open Source - Pimp_my_Z1 Color Control Activity






From Project

Back to project page Pimp_my_Z1.

License

The source code is released under:

GNU General Public License

If you think the Android project Pimp_my_Z1 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/**   Copyright (C) 2013  Louis Teboul (a.k.a Androguide)
 *//  w  w w. j  av a2 s .c  om
 *    admin@pimpmyrom.org  || louisteboul@gmail.com
 *    http://pimpmyrom.org || http://androguide.fr
 *    71 quai Clmenceau, 69300 Caluire-et-Cuire, FRANCE.
 *
 *     This program is free software; you can redistribute it and/or modify
 *     it under the terms of the GNU General Public License as published by
 *     the Free Software Foundation; either version 2 of the License, or
 *     (at your option) any later version.
 *
 *     This program is distributed in the hope that it will be useful,
 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *     GNU General Public License for more details.
 *
 *      You should have received a copy of the GNU General Public License along
 *      with this program; if not, write to the Free Software Foundation, Inc.,
 *      51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 **/

package com.androguide.honamicontrol.kernel.colorcontrol;

import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.view.MenuItem;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.Toast;

import com.androguide.honamicontrol.R;
import com.androguide.honamicontrol.helpers.CMDProcessor.CMDProcessor;
import com.androguide.honamicontrol.helpers.CPUHelper;

public class ColorControlActivity extends ActionBarActivity implements ColorControlInterface {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //noinspection ConstantConditions
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setIcon(getResources().getDrawable(R.drawable.ic_tools_color_calibration));
        setContentView(R.layout.card_color_control);
        final SharedPreferences bootPrefs = getSharedPreferences("BOOT_PREFS", 0);

        final SeekBar brightnessSeek = (SeekBar) findViewById(R.id.brightness_seekbar);
        final SeekBar redSeek = (SeekBar) findViewById(R.id.red_seekbar);
        final SeekBar greenSeek = (SeekBar) findViewById(R.id.green_seekbar);
        final SeekBar blueSeek = (SeekBar) findViewById(R.id.blue_seekbar);

        final TextView brightnessVal = (TextView) findViewById(R.id.brightness_unit);
        final TextView redVal = (TextView) findViewById(R.id.red_unit);
        final TextView greenVal = (TextView) findViewById(R.id.green_unit);
        final TextView blueVal = (TextView) findViewById(R.id.blue_unit);

        brightnessSeek.setMax(255);
        redSeek.setMax(255);
        greenSeek.setMax(255);
        blueSeek.setMax(255);

        String[] rawCalib = CPUHelper.readOneLineNotRoot(GAMMA_KCAL).split("\\s+");
        final int[] currRed = {255};
        final int[] currGreen = {255};
        final int[] currBlue = {255};
        final int[] currBrightness = {255};

        try {
            currRed[0] = Integer.parseInt(rawCalib[0]);
            currGreen[0] = Integer.parseInt(rawCalib[1]);
            currBlue[0] = Integer.parseInt(rawCalib[2]);
        } catch (Exception e) {
            Log.e("GammaControl", e.getMessage());
        }

        if (currRed[0] == currGreen[0] && currRed[0] == currBlue[0]) {
            currBrightness[0] = currRed[0];
            brightnessSeek.setEnabled(true);
            brightnessSeek.setProgress(currBrightness[0]);
            brightnessVal.setText(getString(R.string.color_brightness) + " " + currBrightness[0]);
        } else {
            currBrightness[0] = 255;
            brightnessSeek.setProgress(255);
            brightnessSeek.setEnabled(false);
            brightnessVal.setText(getString(R.string.custom));
        }

        redSeek.setProgress(currRed[0]);
        greenSeek.setProgress(currGreen[0]);
        blueSeek.setProgress(currBlue[0]);

        redVal.setText(getString(R.string.red_val) + " " + currRed[0]);
        greenVal.setText(getString(R.string.green_val) + " " + currGreen[0]);
        blueVal.setText(getString(R.string.blue_val) + " " + currBlue[0]);

        brightnessSeek.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int i, boolean fromUser) {
                currBrightness[0] = i;
                currRed[0] = i;
                currGreen[0] = i;
                currBlue[0] = i;
                brightnessVal.setText(ColorControlActivity.this.getString(R.string.color_brightness) + " " + currBrightness[0]);

                redSeek.setProgress(i);
                blueSeek.setProgress(i);
                greenSeek.setProgress(i);
                redVal.setText(getString(R.string.red_val) + " " + currRed[0]);
                greenVal.setText(getString(R.string.green_val) + " " + currGreen[0]);
                blueVal.setText(getString(R.string.blue_val) + " " + currBlue[0]);
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                if (currBrightness[0] < 2)
                    Toast.makeText(ColorControlActivity.this, getString(R.string.color_brightness_warning), Toast.LENGTH_LONG).show();
                else
                    CMDProcessor.runSuCommand("busybox echo \'" + currRed[0] + " " + currGreen[0] + " " + currBlue[0] + "\' > " + GAMMA_KCAL + "\nbusybox echo 1 > " + GAMMA_OK);
                    bootPrefs.edit().putString("KCAL_CONFIG", currRed[0] + " " + currGreen[0] + " " + currBlue[0]).commit();
            }
        });

        redSeek.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
                currRed[0] = i;
                redVal.setText(getString(R.string.red_val) + " " + currRed[0]);
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                CMDProcessor.runSuCommand("busybox echo \'" + currRed[0] + " " + currGreen[0] + " " + currBlue[0] + "\' > " + GAMMA_KCAL + "\nbusybox echo 1 > " + GAMMA_OK);
                bootPrefs.edit().putString("KCAL_CONFIG", currRed[0] + " " + currGreen[0] + " " + currBlue[0]).commit();

                if (currRed[0] == currGreen[0] && currRed[0] == currBlue[0]) {
                    currBrightness[0] = currRed[0];
                    brightnessSeek.setProgress(currBrightness[0]);
                    brightnessVal.setText(getString(R.string.color_brightness) + " " + currBrightness[0]);
                } else {
                    currBrightness[0] = 255;
                    brightnessSeek.setProgress(255);
                    brightnessSeek.setEnabled(false);
                    brightnessVal.setText(getString(R.string.custom));
                }
            }
        });

        greenSeek.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
                currGreen[0] = i;
                greenVal.setText(getString(R.string.green_val) + " " + currGreen[0]);
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                CMDProcessor.runSuCommand("busybox echo \'" + currRed[0] + " " + currGreen[0] + " " + currBlue[0] + "\' > " + GAMMA_KCAL + "\nbusybox echo 1 > " + GAMMA_OK);
                bootPrefs.edit().putString("KCAL_CONFIG", currRed[0] + " " + currGreen[0] + " " + currBlue[0]).commit();

                if (currRed[0] == currGreen[0] && currRed[0] == currBlue[0]) {
                    currBrightness[0] = currRed[0];
                    brightnessSeek.setProgress(currBrightness[0]);
                    brightnessVal.setText(getString(R.string.color_brightness) + " " + currBrightness[0]);
                } else {
                    currBrightness[0] = 255;
                    brightnessSeek.setProgress(255);
                    brightnessSeek.setEnabled(false);
                    brightnessVal.setText(getString(R.string.custom));
                }
            }
        });

        blueSeek.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
                currBlue[0] = i;
                blueVal.setText(getString(R.string.blue_val) + " " + currBlue[0]);
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                CMDProcessor.runSuCommand("busybox echo \'" + currRed[0] + " " + currGreen[0] + " " + currBlue[0] + "\' > " + GAMMA_KCAL + "\nbusybox echo 1 > " + GAMMA_OK);
                bootPrefs.edit().putString("KCAL_CONFIG", currRed[0] + " " + currGreen[0] + " " + currBlue[0]).commit();

                if (currRed[0] == currGreen[0] && currRed[0] == currBlue[0]) {
                    currBrightness[0] = currRed[0];
                    brightnessSeek.setProgress(currBrightness[0]);
                    brightnessVal.setText(getString(R.string.color_brightness) + " " + currBrightness[0]);
                } else {
                    currBrightness[0] = 255;
                    brightnessSeek.setProgress(255);
                    brightnessSeek.setEnabled(false);
                    brightnessVal.setText(getString(R.string.custom));
                }
            }
        });

    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                onBackPressed();
                break;
        }

        return super.onOptionsItemSelected(item);
    }
}




Java Source Code List

com.androguide.honamicontrol.MainActivity.java
com.androguide.honamicontrol.PresentationActivity.java
com.androguide.honamicontrol.SettingsActivity.java
com.androguide.honamicontrol.bootservice.BootHelper.java
com.androguide.honamicontrol.bootservice.BootReceiver.java
com.androguide.honamicontrol.cards.CardDoubleSeekBarPA.java
com.androguide.honamicontrol.cards.CardDoubleSeekBar.java
com.androguide.honamicontrol.cards.CardImageLocal.java
com.androguide.honamicontrol.cards.CardSeekBarGeneric.java
com.androguide.honamicontrol.cards.CardSeekBarReadahead.java
com.androguide.honamicontrol.cards.CardSeekBarSC.java
com.androguide.honamicontrol.cards.CardSeekBarSysctl.java
com.androguide.honamicontrol.cards.CardSeekBarVibrator.java
com.androguide.honamicontrol.cards.CardSeekBar.java
com.androguide.honamicontrol.cards.CardSpinnerSchedMCDisabled.java
com.androguide.honamicontrol.cards.CardSpinnerSchedMC.java
com.androguide.honamicontrol.cards.CardSpinnerVoltage.java
com.androguide.honamicontrol.cards.CardSpinner.java
com.androguide.honamicontrol.cards.CardSwitchDisabled.java
com.androguide.honamicontrol.cards.CardSwitchPlugin.java
com.androguide.honamicontrol.cards.CardTopImageLocal.java
com.androguide.honamicontrol.fragments.CardsFragment.java
com.androguide.honamicontrol.fragments.HelpFragment.java
com.androguide.honamicontrol.fragments.WelcomeFragment.java
com.androguide.honamicontrol.helpers.CPUHelper.java
com.androguide.honamicontrol.helpers.FileHelper.java
com.androguide.honamicontrol.helpers.Helpers.java
com.androguide.honamicontrol.helpers.NegativeSeekBar.java
com.androguide.honamicontrol.helpers.ShellInterface.java
com.androguide.honamicontrol.helpers.SystemPropertiesReflection.java
com.androguide.honamicontrol.helpers.CMDProcessor.AbstractAsyncSuCMDProcessor.java
com.androguide.honamicontrol.helpers.CMDProcessor.CMDProcessor.java
com.androguide.honamicontrol.helpers.CMDProcessor.ChildProcess.java
com.androguide.honamicontrol.helpers.CMDProcessor.CommandResult.java
com.androguide.honamicontrol.helpers.CMDProcessor.Constants.java
com.androguide.honamicontrol.helpers.CMDProcessor.Shell.java
com.androguide.honamicontrol.kernel.KernelFragment.java
com.androguide.honamicontrol.kernel.colorcontrol.ColorControlActivity.java
com.androguide.honamicontrol.kernel.colorcontrol.ColorControlInterface.java
com.androguide.honamicontrol.kernel.cpucontrol.CPUActivity.java
com.androguide.honamicontrol.kernel.cpucontrol.CPUFragment.java
com.androguide.honamicontrol.kernel.cpucontrol.CPUInterface.java
com.androguide.honamicontrol.kernel.cpucontrol.GovernorDialog.java
com.androguide.honamicontrol.kernel.gpucontrol.GPUActivity.java
com.androguide.honamicontrol.kernel.gpucontrol.GPUInterface.java
com.androguide.honamicontrol.kernel.iotweaks.IOTweaksActivity.java
com.androguide.honamicontrol.kernel.iotweaks.IOTweaksInterface.java
com.androguide.honamicontrol.kernel.memory.MemoryManagementActivity.java
com.androguide.honamicontrol.kernel.memory.MemoryManagementInterface.java
com.androguide.honamicontrol.kernel.misc.MiscActivity.java
com.androguide.honamicontrol.kernel.misc.MiscInterface.java
com.androguide.honamicontrol.kernel.powermanagement.PowerManagementActivity.java
com.androguide.honamicontrol.kernel.powermanagement.PowerManagementInterface.java
com.androguide.honamicontrol.kernel.voltagecontrol.VoltageActivity.java
com.androguide.honamicontrol.kernel.voltagecontrol.VoltageInterface.java
com.androguide.honamicontrol.profiles.BalancedProfile.java
com.androguide.honamicontrol.profiles.BatteryMaxProfile.java
com.androguide.honamicontrol.profiles.BatteryProfile.java
com.androguide.honamicontrol.profiles.BenchmarkProfile.java
com.androguide.honamicontrol.profiles.PerformanceProfile.java
com.androguide.honamicontrol.profiles.ProfileEnabler.java
com.androguide.honamicontrol.profiles.Profile.java
com.androguide.honamicontrol.soundcontrol.SoundControlActivity.java
com.androguide.honamicontrol.soundcontrol.SoundControlFragment.java
com.androguide.honamicontrol.soundcontrol.SoundControlInterface.java
com.androguide.honamicontrol.soundcontrol.SoundFragment.java
com.androguide.honamicontrol.touchscreen.TouchScreenFragment.java
com.androguide.honamicontrol.touchscreen.TouchScreenInterface.java
com.astuetz.viewpager.extensions.PagerSlidingTabStrip.java
com.echo.holographlibrary.BarGraph.java
com.echo.holographlibrary.Bar.java
com.echo.holographlibrary.LineGraph.java
com.echo.holographlibrary.LinePoint.java
com.echo.holographlibrary.Line.java
com.echo.holographlibrary.PieGraph.java
com.echo.holographlibrary.PieSlice.java
com.fima.cardsui.StackAdapter.java
com.fima.cardsui.SwipeDismissTouchListener.java
com.fima.cardsui.Utils.java
com.fima.cardsui.objects.AbstractCard.java
com.fima.cardsui.objects.CardStack.java
com.fima.cardsui.objects.Card.java
com.fima.cardsui.views.CardCategory.java
com.fima.cardsui.views.CardDownload.java
com.fima.cardsui.views.CardEditText.java
com.fima.cardsui.views.CardEdit.java
com.fima.cardsui.views.CardImage.java
com.fima.cardsui.views.CardPresentation.java
com.fima.cardsui.views.CardSeekBar.java
com.fima.cardsui.views.CardSpinner.java
com.fima.cardsui.views.CardTextStripe.java
com.fima.cardsui.views.CardText.java
com.fima.cardsui.views.CardTopImage.java
com.fima.cardsui.views.CardUI.java
com.fima.cardsui.views.QuickReturnListView.java