From 209846f2b60dbbd965763c227f206c4f23604dde Mon Sep 17 00:00:00 2001 From: Xlythe Date: Sun, 29 Jun 2014 19:09:50 -0400 Subject: [PATCH] more glass improvements --- Calculator/build.gradle | 1 + .../calculator3/GlassHomeActivity.java | 125 ++++--- .../calculator3/GlassResultActivity.java | 32 +- .../main/res/drawable-hdpi/ic_warning_150.png | Bin 0 -> 2791 bytes Calculator/src/main/res/layout/glass_home.xml | 35 ++ .../src/main/res/layout/glass_result.xml | 5 +- GDK-ProgressBar/.gitignore | 1 + GDK-ProgressBar/build.gradle | 29 ++ GDK-ProgressBar/proguard-rules.txt | 17 + GDK-ProgressBar/src/main/AndroidManifest.xml | 9 + .../w9jds/gdk_progress_widget/SliderView.java | 330 ++++++++++++++++++ .../main/res/drawable-hdpi/bar_candy0000.png | Bin 0 -> 171 bytes .../main/res/drawable-hdpi/bar_candy0001.png | Bin 0 -> 202 bytes .../main/res/drawable-hdpi/bar_candy0002.png | Bin 0 -> 209 bytes .../main/res/drawable-hdpi/bar_candy0003.png | Bin 0 -> 220 bytes .../main/res/drawable-hdpi/bar_candy0004.png | Bin 0 -> 229 bytes .../main/res/drawable-hdpi/bar_candy0005.png | Bin 0 -> 202 bytes .../main/res/drawable-hdpi/bar_candy0006.png | Bin 0 -> 226 bytes .../main/res/drawable-hdpi/bar_candy0007.png | Bin 0 -> 205 bytes .../main/res/drawable-hdpi/bar_candy0008.png | Bin 0 -> 194 bytes .../main/res/drawable-hdpi/bar_candy0009.png | Bin 0 -> 189 bytes .../main/res/drawable-hdpi/bar_candy0010.png | Bin 0 -> 216 bytes .../main/res/drawable-hdpi/bar_candy0011.png | Bin 0 -> 219 bytes .../main/res/drawable-hdpi/bar_candy0012.png | Bin 0 -> 210 bytes .../main/res/drawable-hdpi/bar_candy0013.png | Bin 0 -> 236 bytes .../main/res/drawable-hdpi/bar_candy0014.png | Bin 0 -> 189 bytes .../main/res/drawable-hdpi/bar_candy0015.png | Bin 0 -> 210 bytes .../main/res/drawable-hdpi/bar_candy0016.png | Bin 0 -> 223 bytes .../main/res/drawable-hdpi/bar_candy0017.png | Bin 0 -> 225 bytes .../main/res/drawable-hdpi/bar_candy0018.png | Bin 0 -> 213 bytes .../main/res/drawable-hdpi/bar_candy0019.png | Bin 0 -> 176 bytes .../main/res/drawable-hdpi/bar_candy0020.png | Bin 0 -> 171 bytes .../main/res/drawable-hdpi/bar_candy0021.png | Bin 0 -> 195 bytes .../main/res/drawable-hdpi/bar_candy0022.png | Bin 0 -> 211 bytes .../main/res/drawable-hdpi/bar_candy0023.png | Bin 0 -> 207 bytes .../main/res/drawable-hdpi/bar_candy0024.png | Bin 0 -> 233 bytes .../main/res/drawable-hdpi/bar_candy0025.png | Bin 0 -> 223 bytes .../main/res/drawable-hdpi/bar_candy0026.png | Bin 0 -> 219 bytes .../main/res/drawable-hdpi/bar_candy0027.png | Bin 0 -> 197 bytes .../main/res/drawable-hdpi/bar_candy0028.png | Bin 0 -> 163 bytes .../main/res/drawable-hdpi/bar_candy0029.png | Bin 0 -> 220 bytes .../main/res/drawable-hdpi/bar_candy0030.png | Bin 0 -> 227 bytes .../main/res/drawable-hdpi/bar_candy0031.png | Bin 0 -> 227 bytes .../main/res/drawable-hdpi/bar_candy0032.png | Bin 0 -> 201 bytes .../main/res/drawable-hdpi/bar_candy0033.png | Bin 0 -> 189 bytes .../main/res/drawable-hdpi/bar_candy0034.png | Bin 0 -> 184 bytes .../main/res/drawable-hdpi/bar_candy0035.png | Bin 0 -> 220 bytes .../main/res/drawable-hdpi/bar_candy0036.png | Bin 0 -> 225 bytes .../main/res/drawable-hdpi/bar_candy0037.png | Bin 0 -> 212 bytes .../main/res/drawable-hdpi/bar_candy0038.png | Bin 0 -> 190 bytes .../main/res/drawable-hdpi/bar_candy0039.png | Bin 0 -> 154 bytes .../main/res/drawable-hdpi/bar_candy0040.png | Bin 0 -> 185 bytes .../main/res/drawable-hdpi/bar_candy0041.png | Bin 0 -> 223 bytes .../main/res/drawable-hdpi/bar_candy0042.png | Bin 0 -> 220 bytes .../main/res/drawable-hdpi/bar_candy0043.png | Bin 0 -> 225 bytes .../main/res/drawable-hdpi/bar_candy0044.png | Bin 0 -> 227 bytes .../main/res/drawable-hdpi/bar_candy0045.png | Bin 0 -> 226 bytes .../main/res/drawable-hdpi/bar_candy0046.png | Bin 0 -> 228 bytes .../main/res/drawable-hdpi/bar_candy0047.png | Bin 0 -> 190 bytes .../main/res/drawable-hdpi/bar_candy0048.png | Bin 0 -> 198 bytes .../main/res/drawable-hdpi/bar_candy0049.png | Bin 0 -> 188 bytes .../main/res/drawable-hdpi/bar_candy0050.png | Bin 0 -> 224 bytes .../main/res/drawable-hdpi/bar_candy0051.png | Bin 0 -> 209 bytes .../main/res/drawable-hdpi/bar_candy0052.png | Bin 0 -> 204 bytes .../main/res/drawable-hdpi/bar_candy0053.png | Bin 0 -> 216 bytes .../main/res/drawable-hdpi/bar_candy0054.png | Bin 0 -> 215 bytes .../main/res/drawable-hdpi/bar_candy0055.png | Bin 0 -> 199 bytes .../main/res/drawable-hdpi/bar_candy0056.png | Bin 0 -> 231 bytes .../main/res/drawable-hdpi/bar_candy0057.png | Bin 0 -> 222 bytes .../main/res/drawable-hdpi/bar_candy0058.png | Bin 0 -> 188 bytes .../main/res/drawable-hdpi/bar_candy0059.png | Bin 0 -> 221 bytes .../res/drawable/progress_bar_determinate.xml | 8 + .../res/drawable/slider_indeterminate.xml | 66 ++++ .../src/main/res/layout/menu_layout.xml | 40 +++ .../src/main/res/layout/slider.xml | 19 + .../src/main/res/values/dimens.xml | 9 + GDK-ProgressBar/src/main/res/values/ids.xml | 8 + .../src/main/res/values/integers.xml | 7 + settings.gradle | 2 +- 79 files changed, 688 insertions(+), 55 deletions(-) create mode 100644 Calculator/src/main/res/drawable-hdpi/ic_warning_150.png create mode 100644 Calculator/src/main/res/layout/glass_home.xml create mode 100644 GDK-ProgressBar/.gitignore create mode 100644 GDK-ProgressBar/build.gradle create mode 100644 GDK-ProgressBar/proguard-rules.txt create mode 100644 GDK-ProgressBar/src/main/AndroidManifest.xml create mode 100644 GDK-ProgressBar/src/main/java/com/w9jds/gdk_progress_widget/SliderView.java create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0000.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0001.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0002.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0003.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0004.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0005.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0006.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0007.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0008.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0009.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0010.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0011.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0012.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0013.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0014.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0015.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0016.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0017.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0018.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0019.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0020.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0021.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0022.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0023.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0024.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0025.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0026.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0027.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0028.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0029.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0030.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0031.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0032.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0033.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0034.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0035.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0036.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0037.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0038.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0039.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0040.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0041.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0042.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0043.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0044.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0045.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0046.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0047.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0048.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0049.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0050.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0051.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0052.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0053.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0054.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0055.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0056.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0057.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0058.png create mode 100644 GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0059.png create mode 100644 GDK-ProgressBar/src/main/res/drawable/progress_bar_determinate.xml create mode 100644 GDK-ProgressBar/src/main/res/drawable/slider_indeterminate.xml create mode 100644 GDK-ProgressBar/src/main/res/layout/menu_layout.xml create mode 100644 GDK-ProgressBar/src/main/res/layout/slider.xml create mode 100644 GDK-ProgressBar/src/main/res/values/dimens.xml create mode 100644 GDK-ProgressBar/src/main/res/values/ids.xml create mode 100644 GDK-ProgressBar/src/main/res/values/integers.xml diff --git a/Calculator/build.gradle b/Calculator/build.gradle index 4d5f9e5d8..a72ca59c6 100644 --- a/Calculator/build.gradle +++ b/Calculator/build.gradle @@ -26,4 +26,5 @@ dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':ThemeEngine') compile project(':FloatingView') + compile project(':GDK-ProgressBar') } diff --git a/Calculator/src/main/java/com/android2/calculator3/GlassHomeActivity.java b/Calculator/src/main/java/com/android2/calculator3/GlassHomeActivity.java index 498ef9253..18c0e5b6c 100644 --- a/Calculator/src/main/java/com/android2/calculator3/GlassHomeActivity.java +++ b/Calculator/src/main/java/com/android2/calculator3/GlassHomeActivity.java @@ -1,70 +1,68 @@ package com.android2.calculator3; +import android.animation.Animator; import android.app.Activity; import android.content.Intent; +import android.media.AudioManager; import android.os.Bundle; import android.speech.RecognizerIntent; import android.util.Log; +import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; +import android.widget.ImageView; +import android.widget.TextView; import com.google.android.glass.app.Card; +import com.google.android.glass.media.Sounds; +import com.google.android.glass.touchpad.Gesture; +import com.google.android.glass.touchpad.GestureDetector; import com.google.android.glass.widget.CardScrollAdapter; import com.google.android.glass.widget.CardScrollView; +import com.w9jds.gdk_progress_widget.SliderView; import org.javia.arity.SyntaxException; import java.util.ArrayList; import java.util.List; import java.util.Locale; +import java.util.regex.Matcher; +import java.util.regex.Pattern; public class GlassHomeActivity extends Activity { private static final int SPEECH_REQUEST = 1000; - private List mCards = new ArrayList(); - private CardScrollView mCardScrollView; - ; - - private class ExampleCardScrollAdapter extends CardScrollAdapter { - @Override - public int getCount() { - return mCards.size(); - } - - @Override - public Object getItem(int position) { - return mCards.get(position); - } + private GestureDetector mGestureDetector; - @Override - public View getView(int position, View convertView, ViewGroup parent) { - return mCards.get(position).getView(); - } - - @Override - public int getPosition(Object obj) { - return mCards.indexOf(obj); - } - } @Override + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + setContentView(R.layout.glass_home); + + if(savedInstanceState == null) displaySpeechRecognizer(); - mCardScrollView = new CardScrollView(this); - ExampleCardScrollAdapter adapter = new ExampleCardScrollAdapter(); - mCardScrollView.setAdapter(adapter); - mCardScrollView.setOnItemClickListener(new OnItemClickListener() { + mGestureDetector = new GestureDetector(this); + mGestureDetector.setBaseListener(new GestureDetector.BaseListener() { @Override - public void onItemClick(AdapterView av, View v, int position, long id) { - mCards.clear(); - mCardScrollView.getAdapter().notifyDataSetChanged(); - displaySpeechRecognizer(); + public boolean onGesture(Gesture gesture) { + if (gesture == Gesture.TAP) { + ((AudioManager) getSystemService(AUDIO_SERVICE)).playSoundEffect(Sounds.TAP); + displaySpeechRecognizer(); + return true; + } + + return false; } }); - mCardScrollView.activate(); - setContentView(mCardScrollView); + } - if(savedInstanceState == null) displaySpeechRecognizer(); + @Override + public boolean onGenericMotionEvent(MotionEvent event) { + if (mGestureDetector != null) { + return mGestureDetector.onMotionEvent(event); + } + return false; } @Override @@ -84,14 +82,17 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(requestCode == SPEECH_REQUEST) { if(resultCode == RESULT_OK) { List results = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS); - String spokenText = results.get(0).toLowerCase(Locale.US).replace("point", ".").replace("minus", "-").replace("plus", "+").replace("divided by", "/").replace("times", "*").replace("x", "*").replace(" ", ""); - spokenText = SpellContext.replaceAllWithNumbers(spokenText); - spokenText = spokenText.replaceAll("[a-z]", ""); + String spokenText = parseText(results.get(0)); + + if(spokenText.isEmpty()) { + detectionFailed(); + return; + } Log.v("Calculator", "Glass user queried \"" + spokenText + "\""); Logic logic = new Logic(getBaseContext()); - logic.setLineLength(100); + logic.setLineLength(10); String result; try { @@ -112,13 +113,47 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { } private void detectionFailed() { - mCards.clear(); - - Card card = new Card(this); - card.setText(R.string.voice_detection_failed); - mCards.add(card); - mCardScrollView.getAdapter().notifyDataSetChanged(); + findViewById(R.id.layout).setVisibility(View.VISIBLE); } + private String parseText(String text) { + EquationFormatter formatter = new EquationFormatter(); + text = text.toLowerCase(Locale.US); + text = text.replace("point", "."); + text = text.replace("minus", "-"); + text = text.replace("plus", "+"); + text = text.replace("divided", "/"); + text = text.replace("over", "/"); + text = text.replace("times", "*"); + text = text.replace("x", "*"); + text = text.replace("multiplied", "*"); + text = text.replace(" ", ""); + text = text.replace("sign", "sin("); + text = text.replace("cosine", "cos("); + text = text.replace("tangent", "tan("); + text = text.replace("pie", getString(R.string.pi)); + text = text.replace("pi", getString(R.string.pi)); + text = SpellContext.replaceAllWithNumbers(text); + text = removeChars(text); + text = formatter.appendParenthesis(text); + return text; + } + private String removeChars(String input) { + Pattern pattern = Pattern.compile("[a-z]"); + String text = ""; + for(int i = 0; i < input.length(); i++) { + if(input.substring(i).startsWith("sin(") + || input.substring(i).startsWith("cos(") + || input.substring(i).startsWith("tan(")) { + text += input.substring(i, i+4); + i+=3; + } + else { + Matcher matcher = pattern.matcher(input.substring(i, i+1)); + if(!matcher.matches()) text += input.substring(i, i+1); + } + } + return text; + } } diff --git a/Calculator/src/main/java/com/android2/calculator3/GlassResultActivity.java b/Calculator/src/main/java/com/android2/calculator3/GlassResultActivity.java index 14449b263..96b295eab 100644 --- a/Calculator/src/main/java/com/android2/calculator3/GlassResultActivity.java +++ b/Calculator/src/main/java/com/android2/calculator3/GlassResultActivity.java @@ -8,6 +8,7 @@ import android.speech.tts.TextToSpeech.OnInitListener; import android.view.Menu; import android.view.MenuItem; +import android.view.MotionEvent; import android.widget.TextView; import com.google.android.glass.media.Sounds; @@ -15,13 +16,14 @@ import com.google.android.glass.touchpad.GestureDetector; public class GlassResultActivity extends Activity { - public static String EXTRA_QUESTION; - public static String EXTRA_RESULT; + public static final String EXTRA_QUESTION = "question"; + public static final String EXTRA_RESULT = "result"; private String mQuestion; private String mResult; private boolean mIsTextToSpeechInit = false; private TextToSpeech mTextToSpeech; + private GestureDetector mGestureDetector; @Override protected void onCreate(Bundle savedInstanceState) { @@ -33,8 +35,8 @@ protected void onCreate(Bundle savedInstanceState) { TextView resultView = (TextView) findViewById(R.id.result); resultView.setText(mQuestion + " = " + mResult); - GestureDetector detector = new GestureDetector(this); - detector.setBaseListener(new GestureDetector.BaseListener() { + mGestureDetector = new GestureDetector(this); + mGestureDetector.setBaseListener(new GestureDetector.BaseListener() { @Override public boolean onGesture(Gesture gesture) { if (gesture == Gesture.TAP) { @@ -48,6 +50,14 @@ public boolean onGesture(Gesture gesture) { }); } + @Override + public boolean onGenericMotionEvent(MotionEvent event) { + if (mGestureDetector != null) { + return mGestureDetector.onMotionEvent(event); + } + return false; + } + private void askNewQuestion() { startActivity(new Intent(getBaseContext(), GlassHomeActivity.class)); finish(); @@ -98,7 +108,19 @@ private void speakResult() { // Speech can't say "-1". It says "1" instead. mResult = getString(R.string.speech_helper_negative, mResult.substring(1)); } - mTextToSpeech.speak(getString(R.string.speech_helper_equals, mQuestion, mResult), TextToSpeech.QUEUE_ADD, null); + String question = formatQuestion(mQuestion); + mTextToSpeech.speak(getString(R.string.speech_helper_equals, question, mResult), TextToSpeech.QUEUE_ADD, null); } } + + private String formatQuestion(String question) { + String text = question; + text = text.replace("-", " minus "); + text = text.replace("*", " times "); + text = text.replace("*", " times "); + text = text.replace("sin", " sine of "); + text = text.replace("cos", " cosine of "); + text = text.replace("tan", " tangent of "); + return text; + } } diff --git a/Calculator/src/main/res/drawable-hdpi/ic_warning_150.png b/Calculator/src/main/res/drawable-hdpi/ic_warning_150.png new file mode 100644 index 0000000000000000000000000000000000000000..48d7c6f5f54435a19b8a297cc8e7651928155bf0 GIT binary patch literal 2791 zcmbVOX;>5I7LHof>H`!6ji3aWFZL{K&=-lAVh6V zMP!v&5D=lMfTCRYKqx@+}H`0lnW;Sv1UD5W!{VZvDHK9(3lc(R2t5Xz6wih~#s zi=CX%3b`Q=D>&S6rj!{JNCky_EKBEumGMPzGz{Y*6R|)ZBt^wQaa;j_etz{j8pUM; z=p9Z$_#lxt#NlpB5kp}q!Qo&E52Ucs9_}bN85IWLLsAw>#*Y_Bs4@Wk4wnksx@jC5 z_0C1g1JHkwVg`kxyoF*2<%D%~0PzF@icH25NKRxj0fQpq2}B$oKFJOQ64i-JB|4+t zA80t6m>o-H(0tzKf=2+FBbAD%INZK{`>^{Qu|jbijzFPMbQnaU1MJ}-Nft<1G6#X= z( zB4t4TrSXs6lJH~^gkwMwVWJp>*CY1RrC?aQ4=2(&!fdD^VlKQWtazFbOyolXsUHnM z!*8%`E}M!cxWFnplkm<&JlTZ+k6aunPL3ox#S`xY3%i8zPqB2mrxS@pAd!d^GJ!yM z^l~APT}XH$!HMkSg2$7VV*LaXDN6uCOL@6)-uJPNAB?4Xiy@X&C=M42TaZWl@p1c zF5X^59~#}$g+?Kx-^a55AJuR$8Jw;?{-<4*rr;jbnSVDwJotP2KmvHrh~dpKHn!&g z0ukp|{GBmGzpd^5sT_LM!>A`_J`^84f$Km{FP^vs})Cl&OMjZmadGwOIdhYKOcQ+(D2W# zznlgZs^>fg2U3gbd#;00>2HY3W2^HK`1N}*H<$?ITAhKA>*)+c^KzYm0GH{EbrOa4 zfaak6;@fso+lUmeskJIn?x6FmU%lcf6O~5!d)>k~X&FtOH^Q6$tUlYyyKHjH<(csX z{!rq4@4e-xZk2Dcf4z%zUVZN^hPr#!CdgO4_f8ij5PHfh`Tl+d^QhMJz!s|A_;dZ7 zu_GBAFS{PvY(2}aEMV5S-B+ETWly&>d3k{U%Xyk5L-p`2pAb5mZubCst7eMwx|Mnc z$1dKm$O*8@6Sy{sPMjTH6a30lRND;dao{l%0 z84R!f;lB3U%I_#j-wGy6(xf$4I801`9A%f3q1|8?nHN9P5#C(fMTX5U_E=830>Jfj zWe%+*Om)jVT08sl4HevcFzY_^QdaItQE^+~*Spc`6k9jO?BUjH1#6crKAYaJ@d(FU z-)Z?xrAZNE<`dI4VQkhl)47k52CnDaHCgmgPbP}{l+KgwpI}SYycZqpk zzta18*6$73PjN4cr4A2W^?qeFa=)V7H(9XA4O6`tO3_@^J6jk!(0O_j7o~ulp^JMq; z41U^Nl~-iF5RH#4&yT+tC6BPWmnCqTy69E+5g6fJHcZy2N>6=t!?!~k> z?v%&vYQEZJVR;lL=K6=fpy~CMHeZlW>>h)2?Fi|(w($vVc?WJ0yab(i2U^cJ`4T<=|Q|K1;whJR$@f*LMOY^yNkZ7!ca!I(+;xrPZO$*jKHc4AR^ zZ>@#*4q+xy_+=cR&3j~7x-md#Y-y+s+tgckI&y&{*>=inbJp%(OiVmAxv#cnTj+%w*9rWtZ-!RGAZ&gEOZC7(76`mHnjP_{>&`$bXqcim8*T~ zrnX-Wi9!a<*P+L)-PerHnK-SdI45)^9rE4|@(Ck-cLIBp0eX2mC!_7m5&ILg@hzrN zA72>$95AYHU8ea$bFE5V-^)%g|HR|!%z&_-2UC8PXLFMss=yde+Rj+y4C!T9`V(?v z8@`b!EKU_{N(Pc~hpBzFS93q{J7Imr`g7+E8)}iZ>!J)*KpFO|F@Bh%p=8y^jdZxXx azkwLOKrIv7DhqYLo__RTT8-D9wEqByuCK2E literal 0 HcmV?d00001 diff --git a/Calculator/src/main/res/layout/glass_home.xml b/Calculator/src/main/res/layout/glass_home.xml new file mode 100644 index 000000000..17836132e --- /dev/null +++ b/Calculator/src/main/res/layout/glass_home.xml @@ -0,0 +1,35 @@ + + + + + + + + + + diff --git a/Calculator/src/main/res/layout/glass_result.xml b/Calculator/src/main/res/layout/glass_result.xml index 1231da843..884132f40 100644 --- a/Calculator/src/main/res/layout/glass_result.xml +++ b/Calculator/src/main/res/layout/glass_result.xml @@ -1,11 +1,8 @@ + android:layout_margin="40dp" > + + + + + diff --git a/GDK-ProgressBar/src/main/java/com/w9jds/gdk_progress_widget/SliderView.java b/GDK-ProgressBar/src/main/java/com/w9jds/gdk_progress_widget/SliderView.java new file mode 100644 index 000000000..6ee19c638 --- /dev/null +++ b/GDK-ProgressBar/src/main/java/com/w9jds/gdk_progress_widget/SliderView.java @@ -0,0 +1,330 @@ +package com.w9jds.gdk_progress_widget; + +import android.animation.Animator; +import android.animation.ObjectAnimator; +import android.animation.TimeInterpolator; +import android.content.Context; +import android.graphics.drawable.AnimationDrawable; +import android.util.AttributeSet; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewPropertyAnimator; +import android.view.animation.AccelerateDecelerateInterpolator; +import android.widget.FrameLayout; +import android.widget.ImageView; + +public class SliderView extends FrameLayout +{ + private float animatedCount = 0.0F; + private int count = 0; + private ObjectAnimator countAnimator; + + private Runnable hideSliderRunnable = new Runnable() + { + public void run() + { + SliderView.this.hideSlider(true); + } + }; + + private final ImageView indeterminateSlider; + private float index = 0.0F; + private ViewPropertyAnimator progressAnimator; + private float slideableScale = 1.0F; + private final View slider; + private boolean sliderShowing = true; + private boolean sliderWasShowing = false; + + public SliderView(Context paramContext) + { + this(paramContext, null); + } + + public SliderView(Context paramContext, AttributeSet paramAttributeSet) + { + this(paramContext, paramAttributeSet, 0); + } + + public SliderView(Context paramContext, AttributeSet paramAttributeSet, int paramInt) + { + super(paramContext, paramAttributeSet, paramInt); + LayoutInflater.from(getContext()).inflate(R.layout.slider, this); + this.slider = findViewById(R.id.slider_control); + this.indeterminateSlider = ((ImageView)findViewById(R.id.indeterminate_slider)); + hideSlider(false); + hideIndeterminateSlider(false); + } + + private void animateCountTo(float paramFloat) + { + if ((this.countAnimator != null) && (this.countAnimator.isRunning())) + this.countAnimator.cancel(); + + float[] arrayOfFloat = new float[2]; + arrayOfFloat[0] = this.animatedCount; + arrayOfFloat[1] = paramFloat; + this.countAnimator = ObjectAnimator.ofFloat(this, "animatedCount", arrayOfFloat); + this.countAnimator.setDuration(300L); + this.countAnimator.start(); + } + + private int getBaseSliderWidth() + { + return Math.max((int)(getResources().getDisplayMetrics().widthPixels / this.animatedCount), 40); + } + + private void hideIndeterminateSlider(boolean paramBoolean) + { + int i = getResources().getDimensionPixelSize(R.dimen.slider_bar_height); + + if (paramBoolean) + { + this.indeterminateSlider.animate().translationY(i).setDuration(getResources().getInteger(R.integer.slider_in_out_animation_duration_ms)); + return; + } + + this.indeterminateSlider.setTranslationY(i); + } + + private void hideSlider(boolean paramBoolean) + { + if (!this.sliderShowing) + return; + + int i = getResources().getDimensionPixelSize(R.dimen.slider_bar_height); + this.slider.animate().cancel(); + + if (paramBoolean) + this.slider.animate().translationY(i).setDuration(getResources().getInteger(R.integer.slider_in_out_animation_duration_ms)); + + while (true) + { + this.sliderShowing = false; + this.slider.setTranslationY(i); + return; + } + } + + private void hideSliderAfterTimeout() + { + removeCallbacks(this.hideSliderRunnable); + postDelayed(this.hideSliderRunnable, 2000L); + } + + private void setProportionalIndex(float paramFloat, int paramInt, boolean paramBoolean) + { + if (this.count < 2) + hideSlider(true); + + while (true) + { + this.index = paramFloat; + float f1 = 1.0F / this.slideableScale; + float f2 = (0.5F + this.index - f1 / 2.0F) * (getResources().getDisplayMetrics().widthPixels / this.count); + if (paramInt != 0) + this.slider.animate().translationX(f2).setDuration(paramInt).setInterpolator(new AccelerateDecelerateInterpolator()); + + while (paramBoolean) + { + showSlider(true); + hideSliderAfterTimeout(); + this.slider.setTranslationX(f2); + } + } + } + + private void showIndeterminateSlider(boolean paramBoolean) + { + if (paramBoolean) + { + this.indeterminateSlider.animate().translationY(0.0F).setDuration(getResources().getInteger(R.integer.slider_in_out_animation_duration_ms)); + return; + } + + this.indeterminateSlider.setTranslationY(0.0F); + } + + private void showSlider(boolean paramBoolean) + { + removeCallbacks(this.hideSliderRunnable); + + if (this.sliderShowing) + return; + + this.slider.animate().cancel(); + + if (paramBoolean) + this.slider.animate().translationY(0.0F).setDuration(getResources().getInteger(R.integer.slider_in_out_animation_duration_ms)); + + while (true) + { + this.sliderShowing = true; + this.slider.setTranslationY(0.0F); + return; + } + } + + private void updateSliderWidth(boolean paramBoolean) + { + if (this.count < 2) + { + hideSlider(true); + return; + } + + FrameLayout.LayoutParams localLayoutParams = (FrameLayout.LayoutParams)this.slider.getLayoutParams(); + localLayoutParams.width = ((int)(1.0F / this.slideableScale * getBaseSliderWidth())); + localLayoutParams.leftMargin = 0; + this.slider.setLayoutParams(localLayoutParams); + + if (paramBoolean) + showSlider(true); + + setProportionalIndex(this.index, 0, paramBoolean); + } + + public void dismissManualProgress() + { + hideSlider(true); + } + + float getAnimatedCount() + { + return this.animatedCount; + } + + void setAnimatedCount(float paramFloat) + { + setAnimatedCount(paramFloat, true); + } + + void setAnimatedCount(float paramFloat, boolean paramBoolean) + { + this.animatedCount = paramFloat; + updateSliderWidth(paramBoolean); + } + + public void setCount(int paramInt) + { + setCount(paramInt, true); + } + + public void setCount(int paramInt, boolean paramBoolean) + { + hideIndeterminateSlider(true); + hideSlider(true); + this.count = paramInt; + this.index = Math.max(Math.min(this.index, paramInt - 1), 0.0F); + + if (paramBoolean) + { + animateCountTo(paramInt); + return; + } + + setAnimatedCount(paramInt, false); + } + + public void setManualProgress(float paramFloat) + { + setManualProgress(paramFloat, false); + } + + public void setManualProgress(float paramFloat, boolean paramBoolean) + { + hideIndeterminateSlider(true); + showSlider(false); + int i = getResources().getDisplayMetrics().widthPixels; + FrameLayout.LayoutParams localLayoutParams = (FrameLayout.LayoutParams)this.slider.getLayoutParams(); + localLayoutParams.width = i; + localLayoutParams.setMargins(-i, 0, 0, 0); + this.slider.setLayoutParams(localLayoutParams); + + if (paramBoolean) + { + this.slider.animate().translationX(paramFloat * i); + return; + } + + this.slider.setTranslationX(paramFloat * i); + } + + public void setProportionalIndex(float paramFloat) + { + setProportionalIndex(paramFloat, 0, true); + } + + public void setProportionalIndex(float paramFloat, int paramInt) + { + setProportionalIndex(paramFloat, paramInt, true); + } + + public void setScale(float paramFloat) + { + this.slideableScale = paramFloat; + updateSliderWidth(true); + } + + public void startIndeterminate() + { + int i = getResources().getDisplayMetrics().widthPixels; + FrameLayout.LayoutParams localLayoutParams = (FrameLayout.LayoutParams)this.slider.getLayoutParams(); + localLayoutParams.width = i; + localLayoutParams.setMargins(0, 0, 0, 0); + this.slider.setLayoutParams(localLayoutParams); + + if (this.sliderShowing) + { + this.sliderWasShowing = true; + hideSlider(true); + } + + showIndeterminateSlider(true); + ((AnimationDrawable)this.indeterminateSlider.getBackground()).start(); + } + + public void startProgress(long paramLong) + { + startProgress(paramLong, new AccelerateDecelerateInterpolator()); + } + + public void startProgress(long paramLong, Animator.AnimatorListener paramAnimatorListener) + { + startProgress(paramLong, new AccelerateDecelerateInterpolator(), paramAnimatorListener); + } + + public void startProgress(long paramLong, TimeInterpolator paramTimeInterpolator) + { + startProgress(paramLong, paramTimeInterpolator, null); + } + + public void startProgress(long paramLong, TimeInterpolator paramTimeInterpolator, Animator.AnimatorListener paramAnimatorListener) + { + hideIndeterminateSlider(true); + this.slider.setTranslationX(0.0F); + showSlider(false); + int i = getResources().getDisplayMetrics().widthPixels; + FrameLayout.LayoutParams localLayoutParams = (FrameLayout.LayoutParams)this.slider.getLayoutParams(); + localLayoutParams.width = i; + localLayoutParams.setMargins(-i, 0, 0, 0); + this.slider.setLayoutParams(localLayoutParams); + this.progressAnimator = this.slider.animate().translationX(i).setDuration(paramLong).setInterpolator(paramTimeInterpolator).setListener(paramAnimatorListener); + } + + public void stopIndeterminate() + { + if (this.sliderWasShowing) + showSlider(true); + + ((AnimationDrawable)this.indeterminateSlider.getBackground()).stop(); + hideIndeterminateSlider(true); + } + + public void stopProgress() + { + if (this.progressAnimator != null) + this.progressAnimator.cancel(); + + hideSlider(true); + } +} \ No newline at end of file diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0000.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0000.png new file mode 100644 index 0000000000000000000000000000000000000000..64d91fcd0e60f6d749914702010bc47b25a51685 GIT binary patch literal 171 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXM^?&e+69&tow_0jH4?WYs8 z7?lnLuWHwRuj3#sz^LTF_$js_&w-IkV1EKj2D6d_i^hR&GyV*QcXPfbCj(7o@O1Ta JS?83{1OOsAKf3?` literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0001.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0001.png new file mode 100644 index 0000000000000000000000000000000000000000..17b52fd0976af40ce70797998c0b90ca79f2f277 GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGX>Naq{|` zS*TgddxKe0ayz%h^@hvqf|VE@56CikIf$-l`WVL~6u`7h-~z9Q1Jfg0#@d5<4xAjK gJ`S8Oxb04}$E;@(E|j>k6KD~Gr>mdKI;Vst0C@#W&j0`b literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0002.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0002.png new file mode 100644 index 0000000000000000000000000000000000000000..bf5f80c40b5a9ffc0f69bae528f92905b26228ab GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!&cx|JUng=xxYuSbrQSmf-2)7!q;#?KMZP0}4DY7cKaLreJ0q3=| m?vgAj3ykxd{x)c`)-XgYwVKMwyS)Wy7lWs(pUXO@geCyQty+x$ literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0003.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0003.png new file mode 100644 index 0000000000000000000000000000000000000000..db660265586d068ad4137bf59f5ba472e6615a6a GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>5B8P;cJ=xyM&o%0qbmhI`{7!q;#?e&YI4GKKY7gs6#&Og(>=E22FvpHu?c8^k0 z>ic|A^nYly@wXc>l808j*tuSEw!yc{b2%J%Piz*A*~_~oA+e%F-ZVjyp`ERSnX5Tn xdxt=SGGl|(1zrw^{SV4*vK<&c@f?U^@GIEF%sk^`vOUmR22WQ%mvv4FO#qGaUE=@% literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0004.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0004.png new file mode 100644 index 0000000000000000000000000000000000000000..c6d26685cb5c58c340083df2923a4f8011d4edde GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>5B88&3D&(J&d(`z?Sti;pBF(l&f+v%Qs2NZainG=8h@3)-r?F6sO>yO+rnJLH9 z`h(^b?T%Kh5&OMA>&`5eyjsRJ(|_kY+|0>%gK+{2%Yn16d?eg;ohKbLh* G2~7az=3S}) literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0005.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0005.png new file mode 100644 index 0000000000000000000000000000000000000000..3ce59b3bff3ba5e7999d4837f2ed557b177a389e GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGX_xr(pP@Uz#22WQ%mvv4FO#lvTP-OrB literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0006.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0006.png new file mode 100644 index 0000000000000000000000000000000000000000..845822da47724dd09dee1df45d4d1779cb9961ce GIT binary patch literal 226 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>4YFzBt<&CHN}oc|0cR_N*C7!q;#?M*|W1_d6MiwhLK@88%uMQmEz9$QAqe{a;C zk3`@4_@qbXF literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0008.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0008.png new file mode 100644 index 0000000000000000000000000000000000000000..811e95b6470e61a36c933fd047e22a8031a47e8c GIT binary patch literal 194 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXgn2-GUPi^woQey~!~`}O ZOHVn?7{2Lmo*~c@22WQ%mvv4FO#rv%Nk;$x literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0009.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0009.png new file mode 100644 index 0000000000000000000000000000000000000000..29798fe98441e754046453c1ab1c0616137e0373 GIT binary patch literal 189 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXbvFV zyL|o|{$pn-Gi%^=P(SdWS%H=L0$a#~BYYBdjG7UgN(>A^1`Kl<9=kJn9AtQ+z`zv1 bzDJGwfEr`1m1kfw&>jX)S3j3^P6XH5?^D ze!>44GIiHyY|wji^Wq(#Sh}Z+V@Sl|w>J**9#G(6*)YZFX8q&3O$_TzR^>NwM2ags zG6`3!N_+A{xo);~f5JBzc?SkY7J&oHmhUh6!}@?(p+V{b7n{HVrUoei2i}OuybG)s sux)8F1&VJFT97}(t0C^-{fqFVdQ&MBb@07{`+Z2$lO literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0011.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0011.png new file mode 100644 index 0000000000000000000000000000000000000000..84e11eabd157e9d6b3666dcac6fdb29ad65c5649 GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXgl?y zq60_xA|6Pm6*))-u$8dNziu!}cxLdFVaoF5O!er&v1d`UM|aWL7oMCKO`3Lae$Dvgad=D qBE!7$7KRLVlP1P3%uE~)R>v$dXF9$i`R75Pr3{{~elF{r5}E*lR#eyk literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0013.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0013.png new file mode 100644 index 0000000000000000000000000000000000000000..6a2ec2e75211ff3ef5fd882d8df03f67c42e0e2e GIT binary patch literal 236 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>5B8P;cH>TTHKJaIoztlHDXF(l&f+ZhLW8w_}ugFO!YlWt}alAmXj_1(rXJ2rW_ z;Qx%A?cXMZ+l8NWSTAk*)ABa|fu?=ls*l<(vgk1UDNuH0u<1xR&oS?A@3+|v3@buB z*klD57zG%npKVU#T*z$180j>P{XzzJ8k5#j$IraZ>?%z!8;Z_-{3TX#yOla#-7BmE886J>k-S zrsf>i%D{r)hS@d@^-mZ$7RU!2WSGRhKy*z410%}?t}ufJhFSa$tjrt>e#$6L<=&?f W!I;tSZsGzopTX1B&t;ucLK6TPK}OdA literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0015.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0015.png new file mode 100644 index 0000000000000000000000000000000000000000..e959261654d10e0fee2869beeaba4eda2ec65c66 GIT binary patch literal 210 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>44bk}EO>TOskeV-dBmgwo?7!q;#?e&Yi4GKIC2Nx;)&VS>7n2qH~weX6aTTGMu zRJ)6JeVY32!is0^D|g#UH2hz|$f3}{5Ot7&X-5&083UsUBV!3Olf_zg2Zr()4YJnS mH@MgY9DZ__G1vWNt6?;`#<=Tu%q?%AWelFKelF{r5}E*ul2yR~ literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0016.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0016.png new file mode 100644 index 0000000000000000000000000000000000000000..9f3f9688d2d4aa0dd81e9610484ec2f7cfd39dfe GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>6s7}o1<$jq3-xo#U!EYH)$F(l&f+v|>e4GIFz7ac|3)hCN@GQ7ByvuC}z#-A;h zJMu%fd7B1h%5UpiF#A@;47=O@s;nEF-bo&Kw)_TD!aXiMh8P{j$+F%;A6#QuH>b9E z9JsH(K=ch;$U(ObK_y1U6-|s8EesRZS_*$)(cZ?a<$1>D3(#f;Pgg&ebxsLQ0K*?$ AeEXH5?^D ze!>4YFz97wtk+%K6mkG4R^aL47!q;#?R87B1_K^v$9A1N|Bs0*S-K#x(_OvbOUhr1 zN0L+DhV(wY^6YZdg{78%-#Q+XNqJtV^>uwtdZc+nEJJ<5xrPK@j)PJLwG7(*iV@6Q z3AeO&L=|ydYhar3&Z!wB*Ii%y;Gn2aIdcVr$b061+lR}Z0_|q-boFyt=akR{0RH!5 APXGV_ literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0018.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0018.png new file mode 100644 index 0000000000000000000000000000000000000000..85771e6cd987a4974f63eb819814c2b7d5ead20c GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXQ__X}#iv5zmYu#?LFyzdQyv0C) o*+_xmx11tS0UOJMbgc@;@Iy>{EY3Er0NTmm>FVdQ&MBb@0Iv~ImH+?% literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0019.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0019.png new file mode 100644 index 0000000000000000000000000000000000000000..b114d5572a67cc06c0095df8edc888874e4c10e7 GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXpc!Y0dG$i$B>A_Z*QFDWl-R7Ir#N*{n@xRj+`^EGbSEtd=mb6+P1US z54*V77BH{~9QenuJ(c+d6PE)c#{veC1_mY|Rl|5en$1CcLl%2WCBx@w$v36}jb-q3 L^>bP0l+XkKzd}Mw literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0020.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0020.png new file mode 100644 index 0000000000000000000000000000000000000000..5d57e775ad0f980192a55b048f8920eb0cb29c3b GIT binary patch literal 171 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXe0(h%hy~; zWz=BkXY}D_FIdDR;K1;dCEB8a;gq-z1LG8R7X~Jd1;T$arL`Y1yxYFe^#;&X22WQ% Jmvv4FO#m_^Ksx{c literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0021.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0021.png new file mode 100644 index 0000000000000000000000000000000000000000..0b3f4eb9c64f5f8e06599c9e780895bb63264a20 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXNc+Za4u{an^LB{Ts5yMsy( literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0022.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0022.png new file mode 100644 index 0000000000000000000000000000000000000000..b2ec1ef16bfb0db36e402b05705c8c40130f0a94 GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXM--aeaqvw>mD%yQ-lqG!4p65i}#sVYISVfqbW+j{xy&(Q){VkTq q49__v{2k&A_zLEEAK=q|z+HNoX;a7Y$df=D89ZJ6T-G@yGywntKvUlU literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0024.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0024.png new file mode 100644 index 0000000000000000000000000000000000000000..02005d2bf0db1a6c33c6d70e89510783ff839fea GIT binary patch literal 233 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>4U7&15Lt=Ii$HtQBptisd9F(l&f+vx`d8yt9;nl1PKv;LN7C-#6x*_+j<-Froq z_i^Q^)2sHa*7nSfnQuAmwn@V}`(xX89s7E2qfYQ8jY$m$8ATYEH0|8F;(-NI5wjJW zK}W;7(CZT!Q&^oHv}UxYv9jN5=n>GG!Ej8tz|cuyfipvW%t7XH5?^D ze!>4YFz9Ax=&e7>lPU%j%ky+`42d}WcKSxa0}4Dxd=4c3?+s?z#q&VnFUy~~I4#{#wz*2ix7{|+>)OJHb-XH5?^D ze!>5B8P;cJ=xyM&o%0qbmgVW<7!q;#?G10fh5!!dz$@Qx{_m50abxDm%k$PTO!DRq zvCX)xFS~Wgt=PELE~+K}1sSSU8f+K*W<2nf@ks;2lLmcei(JQJ{w(fQ4IE+z8CVn; wj2UJAHS`JaaX5r;;9y(8(RZh*j{gDYgy+oi2U<9;0&QjRboFyt=akR{0C(zJbN~PV literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0027.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0027.png new file mode 100644 index 0000000000000000000000000000000000000000..ba993b2c5f5ac864b256abf3286befd1ab6dc1f8 GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXhxy`%+x4llzHD)rr{3YGZY}tHi%-n# zdE$L5X8km7EN6*HW&Ja&f$d5Ii;4mxXGRm}3wD(SY$gX;t~5vq)Uj}QI0(OCcUiEb f;WEp9uLS1zI~bQT9?kdxw1>gd)z4*}Q$iB}_$^J! literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0028.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0028.png new file mode 100644 index 0000000000000000000000000000000000000000..d3cfd1d8816251d3db5a2cd6644536b883b2ee80 GIT binary patch literal 163 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGX2?DzAkWLw#W5t}@Y_opc^Moym>llZXU>*?;B9)G#X;|<-`MYjs<~HRg4Y{=}Q=+y%`lld-iJpO=a+O^>bP0 Hl+XkKo`f{F literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0029.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0029.png new file mode 100644 index 0000000000000000000000000000000000000000..fd0d4acabf3a20cc1b8944dc72a1f8647420502c GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>44*6U?t>TU=o_>o&_YxK}c`$1P$OXozPz!5Dv)^FTC9v4gBYgHi+wP%zAZ v!BT;t)PXO9^?IR$atkw)K!eo-pIr>ITNy8T99O#rw3fls)z4*}Q$iB}^gdXL literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0030.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0030.png new file mode 100644 index 0000000000000000000000000000000000000000..0008a753a99b8f4957f14811487ca02893f6871e GIT binary patch literal 227 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>6s7}jU%W^8z~T=51_tjN>FF(l&f+vz6-4=C_3KP_1DzwdJcTSA3PT4XH5?^D ze!>4YFz9Bi&(u3}{ly`mSdpiTV@Sl|w=)h3GAME!`4IAAf3kc~qurjXOPJbD>a0tv zo{}Hr+cJ&WyxH??Z^_A*PgzP>_IMpwH>;tq(({QM7iULT#kJ=FIgf)SJiKt zH#^qyX8d!#lk-#>nlH^{u$FkRNUxrm$%6O6$20+R#G3zUzrnRqg+JiWh(aSP*B kHUS6uiwvuH6V9o`Piyd$c1SP7PGLwk&l~#Hylv z|MTrHyN=W4Of?|=Q1#@xRK8|D}jMAWDTbn!`~)R?gb1lcvnQ^J1{WrF*?Y=l+iR_zl>RY WF=I%$q5p576%3xPelF{r5}E*)LPUlD literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0035.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0035.png new file mode 100644 index 0000000000000000000000000000000000000000..86a3d82fdfc2fdd8b60d4501af4d38c4b75ac99f GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>6s7}o1%WNw%~d%_K%ShlB&V@Sl|x7RI&8Vq=x12?PO`F~6#;BsoygO@CFzxz`{ zd#`SayQLLW{q4u&tM6D##ZCVCFwEvQDq!e(aDU};mk*2%_78m6c~}Ejels$jVBDI( yz%+q*-_DkfgvZ$j<#iMvs>X2&9#r}fsm^?rS)yj~)89aA89ZJ6T-G@yGywp?RbSo! literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0036.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0036.png new file mode 100644 index 0000000000000000000000000000000000000000..c8609b4e29dc105610e5565d8a1e62e62ae64f69 GIT binary patch literal 225 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>6OGw5dMZOCN(a^D;%R^aL47!q;#?R7`K1_d4#2Z0Iy|KDh~&9af;ees6d%Q*7V zlzX0W-=>)4df6zdTl)5@UcJc1Ea1TKekr4c;Q>>&Y^e{IUv6Boj*;<713NFr1AB(7 z1J4=O&4{f(*eAfdf{~F0sF;!Ef+&wdLo(AH1~FNthYnUtrUC6{@O1TaS?83{1OQzC BSy=!8 literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0037.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0037.png new file mode 100644 index 0000000000000000000000000000000000000000..f087f88df124fa430048a06700558126802d49a3 GIT binary patch literal 212 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>5B88)oX%+TZcD>xY_mh9=`7!q;#?KMZf1_d6Mi&_Ei>XXG@T|07Q!Ljf8245~` z9!Z&2y7gLHI-BD<4F7l*u!J1cl4uYTXkhqLy8cGPJOKtT2k8mR%@i0yH*m2nU|~^U c2xqonII)efdh$A751>U1p00i_>zopr0MWQa&;S4c literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0039.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0039.png new file mode 100644 index 0000000000000000000000000000000000000000..8cab6f0976bb5d7856a1f88465b5407bbcd36d0c GIT binary patch literal 154 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGX2?DzAkWd$#W5t}@Y_p{ybK0BhY$4FzpOiz7*v&(aPwsOy-94VQu-1cGTe?e xq%4q>WS-QRmcrw~HcRpXkUx`=*JIg4#)TId4jS~Nb^#4z@O1TaS?83{1OR@}Hyi)} literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0040.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0040.png new file mode 100644 index 0000000000000000000000000000000000000000..fd266e36e83a788f4ac10ed456ca5ac8d3078cab GIT binary patch literal 185 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXEaj?aro_xlbj3+JPZdbzTV$7U*v)FhlFL#4}^|(R8J9^ zzrxa=d!B*=%Z|YFm2Hbf7w~p42tMd!h&{-(g>fUJ-~t9g1*R`-PyRF1y6Df4F=u4- Ti@o#}Xf}hVtDnm{r-UW|R4+=z literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0041.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0041.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf6066e29d689310a8129f63b1c6875f72ea2ef GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!&cx|8>`A=xuoZ&8QV9mgni>7!q;#?e&Aa4GIFRfesV@S(~}>$?e!2dB22V=9%^& zxh(FZfpO=iwcDM)BE7F=&(t2KYn97R?QCt}TG7Duqn}AAfN{In1s358EVC2l3ur9h zR8wH&lqhJ@&v#&Q(|GWK&E%jp_Y6-5;XTjTj(xW3)ro!i31~Ber>mdKI;Vst0JlC} A+W-In literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0042.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0042.png new file mode 100644 index 0000000000000000000000000000000000000000..bab824e7bee95a0989802526f68af147df18a1ff GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>5B8P@A%W^7m^Uw0QMmhI`{7!q;#?e&wq2NZZ%9E8{Xvp%OhWr9cBnXrT<7p2@? zro8s-%~_efNi2Qo`tsfhx(s3rj4U5&8)Wy{GR)i7)XsLLLCU~)78{FzgSLc&b_DY; w=6{?E*h*NLXRtr;F~3>Tk^z)Bz+cS#FOBI><@a5lKx-L1UHx3vIVCg!00whfU;qFB literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0043.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0043.png new file mode 100644 index 0000000000000000000000000000000000000000..04d82327972afddee3bf29cb4b1203c9a19a3c2b GIT binary patch literal 225 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>6s7}jU%W^8z~T=51_tiaR7F(l&f+v%2k42nF=XGQ=0Pv%;1Cr?#Da=(JdV#8@= zLGv_s8J5O|Kh;aM)zvJMVwlIef$_mn1}TQB^U|U@AqH$m8ul+sKG6QJ;hFe>7i=l4 z$qo!DEddATa}+D6$XH5?^D ze!>4U88UP?=&k>=B0d@@R^;j87!q;#?aYmW2Mjov6^kDIHTM&gx}I6`VHQK*c9!QI z!IiZ^J5KFC6d!fXH5?^D ze!>6OGw5by>TO7P(>V<&R_N*C7!q;#?R7_?1_d7Hi>n&G@88HB`RY)su}GYs!?K6w zy%m?X-M30gnfmXP&}OaUGSf`servC`Jd?F&DaV67EHGwj+GvW=e!ZdyFiqO zrRQ~n6^O38r_CsRTCJL6qxERvu-wI`j*V246>ZT)78&qol`;+0K1c4 Awg3PC literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0046.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0046.png new file mode 100644 index 0000000000000000000000000000000000000000..1581c2c78f385feeacd1bc833098df77d1f62d26 GIT binary patch literal 228 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>5B8P;d$ZOFVBeOwMGR_y8G7!q;#?R9Ui1_J?>i=993{y(O7=Frpy3T&TWv2cpq zwG|X!@>b#alP4c9h}19ZiJunHYE^fK!(wtntt6wW0wbr#fl}6xgDg`T%30R*2{3sb z*#6=)*NUdl56h(knEa+Tm@VMVU>5q|6MT?GWr6Y&M(YxOreF8sk2V9XXYh3Ob6Mw< G&;$Tr!eO-l literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0047.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0047.png new file mode 100644 index 0000000000000000000000000000000000000000..6e7c04d897903bc6f25964391bfeefe1cddad8d1 GIT binary patch literal 190 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGX7{jPKuXc2>_tDnm{r-UW|K?6OPqB|&Ty_FVB+K}rdBygKs-hi{??K5^21vB9_D#AVvIcgD}YBL&c^!XVuZWIgvvCpS4 Y@Z~c4bLBF%0XH5?^D ze!>5B88&2OuGdSx)3y{Smhb7}7!q;#?Mz3Z0}33>nSy`+_uFcG_sgGfmit7C>f%{{ zuY8u%YVSojpsY6eeNKbLh*2~7Z(m|nX8 literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0051.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0051.png new file mode 100644 index 0000000000000000000000000000000000000000..c2e373d33f8bf685642a7e186d53ad44d392ddfa GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXnIF zA7ARJd-bN)_47XKatk%a8)64G9yXlo?8Cq`;rsVcHHikP4-W;n8yG~C81^v tVDL3~uNJ|~^ue6rSI4`>zb>)Nzx0@C<0tR6H9$KVJYD@<);T3K0RZ@VS%Lrn literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0052.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0052.png new file mode 100644 index 0000000000000000000000000000000000000000..6d1b7eb49ed68315a56d768c5b2a1ccc1b03d82c GIT binary patch literal 204 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>44GBWkn>u#8_`guK2EZx(^F(l&f+Z!i&4=C`kI25aVxnF3fr>LYfZ!Lqjvb@Wl z+0#0UFK=!UR5jlG=k=NA|2Y!a1sr4xs^96`dgSv3Fv literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0054.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0054.png new file mode 100644 index 0000000000000000000000000000000000000000..70a1ef5e1d3caa5ce996789072445a662d39eaa9 GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>44bT?#VuGcGTIUxuXOY?Mb42d}W_WDKM1_d701B(=X=fClHKOpdCFK0tcT;>t; z%$XL};c<`qR=xbm^ms$@f1U@yVh>J;zhGe6v6+#PMZkgKbzegL0o|DlSq{7zEX)yd s3j}!-8W@;37N{N(TEwWUxcU>5tp(%FOAmyn0c~XPboFyt=akR{0JyDK#{d8T literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0055.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0055.png new file mode 100644 index 0000000000000000000000000000000000000000..24dd98f7c293a17467eef3eac80bb9305c73a00f GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXitB3b?&0*b_Wx;TbJ9DaNKAnySM9+nLb3IC`5&X8nWB66RN@imiR_2pl) zdp<=j?%82^U$JC+nT_y)Lkyqo8H61erdl>!f2+&;f_KFk#w|^ZEEl-gE~v9OFqkSd hFfef}2t379!ys48G(}=Z%_g8t44$rjF6*2UngBh5PJ{pe literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0056.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0056.png new file mode 100644 index 0000000000000000000000000000000000000000..56c1c36f2fb6f513db710a0898b6b7df479c0d9c GIT binary patch literal 231 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>6OGw5b!Y|vADK35nhR_5vA7!q;#?Tp*J3=A05n03%+q3V~jk=u%n3Cib2S! zz=7cj8;gU?1W}%b-7+6$3MjEDFVdQ I&MBb@09o8y@&Et; literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0057.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0057.png new file mode 100644 index 0000000000000000000000000000000000000000..5b2a7ea46106a63ade920103c68a48b1c6cb9288 GIT binary patch literal 222 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>5B8P;cJY|#7a(P{-0%k^||42d}W_QpZM1_d6Miz_<6-QUQrd0?{Bvs~5>&(Avv zeJtGe_oQI#q{nWOLZ%5bP0l+XkK(Zfg5 literal 0 HcmV?d00001 diff --git a/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0059.png b/GDK-ProgressBar/src/main/res/drawable-hdpi/bar_candy0059.png new file mode 100644 index 0000000000000000000000000000000000000000..a1bd8a5af8f5991fdf6a5d3caf56932fb6c89c59 GIT binary patch literal 221 zcmeAS@N?(olHy`uVBq!ia0y~yU}^xec{rGXXH5?^D ze!>44Ht1!n*UdbeI^io&EXUKuF(l&f+v|=(4F()6j#o1N{ZH0kE&l#k*Is>wtgMDr z4x3#VDONJVL2ey<03$ + + + + + + \ No newline at end of file diff --git a/GDK-ProgressBar/src/main/res/drawable/slider_indeterminate.xml b/GDK-ProgressBar/src/main/res/drawable/slider_indeterminate.xml new file mode 100644 index 000000000..7bc4618dd --- /dev/null +++ b/GDK-ProgressBar/src/main/res/drawable/slider_indeterminate.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/GDK-ProgressBar/src/main/res/layout/menu_layout.xml b/GDK-ProgressBar/src/main/res/layout/menu_layout.xml new file mode 100644 index 000000000..73ad0d294 --- /dev/null +++ b/GDK-ProgressBar/src/main/res/layout/menu_layout.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + diff --git a/GDK-ProgressBar/src/main/res/layout/slider.xml b/GDK-ProgressBar/src/main/res/layout/slider.xml new file mode 100644 index 000000000..de6616434 --- /dev/null +++ b/GDK-ProgressBar/src/main/res/layout/slider.xml @@ -0,0 +1,19 @@ + + + + + + + + \ No newline at end of file diff --git a/GDK-ProgressBar/src/main/res/values/dimens.xml b/GDK-ProgressBar/src/main/res/values/dimens.xml new file mode 100644 index 000000000..74ad11b57 --- /dev/null +++ b/GDK-ProgressBar/src/main/res/values/dimens.xml @@ -0,0 +1,9 @@ + + + 40.0px + 70.0px + 20.0px + 50.0px + 12.0px + + diff --git a/GDK-ProgressBar/src/main/res/values/ids.xml b/GDK-ProgressBar/src/main/res/values/ids.xml new file mode 100644 index 000000000..b20b25c17 --- /dev/null +++ b/GDK-ProgressBar/src/main/res/values/ids.xml @@ -0,0 +1,8 @@ + + + false + false + false + false + false + diff --git a/GDK-ProgressBar/src/main/res/values/integers.xml b/GDK-ProgressBar/src/main/res/values/integers.xml new file mode 100644 index 000000000..23c239940 --- /dev/null +++ b/GDK-ProgressBar/src/main/res/values/integers.xml @@ -0,0 +1,7 @@ + + + 300 + 200 + 50 + + diff --git a/settings.gradle b/settings.gradle index c366a7d20..a9766cd5f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1 @@ -include ':Calculator', ':ThemeEngine', ':FloatingView' +include ':Calculator', ':ThemeEngine', ':FloatingView', ':GDK-ProgressBar'