diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..39fb081
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,9 @@
+*.iml
+.gradle
+/local.properties
+/.idea/workspace.xml
+/.idea/libraries
+.DS_Store
+/build
+/captures
+.externalNativeBuild
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..96cc43e
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
new file mode 100644
index 0000000..e7bedf3
--- /dev/null
+++ b/.idea/copyright/profiles_settings.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
new file mode 100644
index 0000000..d7351b0
--- /dev/null
+++ b/.idea/gradle.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..13e6014
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..35fa8db
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
new file mode 100644
index 0000000..7f68460
--- /dev/null
+++ b/.idea/runConfigurations.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/.gitignore b/app/.gitignore
new file mode 100644
index 0000000..796b96d
--- /dev/null
+++ b/app/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/app/build.gradle b/app/build.gradle
new file mode 100644
index 0000000..6464658
--- /dev/null
+++ b/app/build.gradle
@@ -0,0 +1,31 @@
+apply plugin: 'com.android.application'
+
+android {
+ compileSdkVersion 25
+ buildToolsVersion "25.0.2"
+ defaultConfig {
+ applicationId "naseem.ali.atoast"
+ minSdkVersion 16
+ targetSdkVersion 25
+ versionCode 1
+ versionName "1.0"
+ testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
+ }
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ }
+ }
+}
+
+dependencies {
+ compile fileTree(dir: 'libs', include: ['*.jar'])
+ androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
+ exclude group: 'com.android.support', module: 'support-annotations'
+ })
+ compile 'com.android.support:appcompat-v7:25.3.1'
+ compile 'com.android.support.constraint:constraint-layout:1.0.2'
+ compile project(':flexibletoast')
+ testCompile 'junit:junit:4.12'
+}
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
new file mode 100644
index 0000000..2a08cee
--- /dev/null
+++ b/app/proguard-rules.pro
@@ -0,0 +1,25 @@
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in C:\Users\hp\AppData\Local\Android\Sdk/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the proguardFiles
+# directive in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
diff --git a/app/src/androidTest/java/naseem/ali/atoast/ExampleInstrumentedTest.java b/app/src/androidTest/java/naseem/ali/atoast/ExampleInstrumentedTest.java
new file mode 100644
index 0000000..9faa6b9
--- /dev/null
+++ b/app/src/androidTest/java/naseem/ali/atoast/ExampleInstrumentedTest.java
@@ -0,0 +1,26 @@
+package naseem.ali.atoast;
+
+import android.content.Context;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.runner.AndroidJUnit4;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import static org.junit.Assert.*;
+
+/**
+ * Instrumentation test, which will execute on an Android device.
+ *
+ * @see Testing documentation
+ */
+@RunWith(AndroidJUnit4.class)
+public class ExampleInstrumentedTest {
+ @Test
+ public void useAppContext() throws Exception {
+ // Context of the app under test.
+ Context appContext = InstrumentationRegistry.getTargetContext();
+
+ assertEquals("naseem.ali.atoast", appContext.getPackageName());
+ }
+}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..a700cc6
--- /dev/null
+++ b/app/src/main/AndroidManifest.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/naseem/ali/atoast/MainActivity.java b/app/src/main/java/naseem/ali/atoast/MainActivity.java
new file mode 100644
index 0000000..b92c4ae
--- /dev/null
+++ b/app/src/main/java/naseem/ali/atoast/MainActivity.java
@@ -0,0 +1,44 @@
+package naseem.ali.atoast;
+
+import android.graphics.Color;
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.view.View;
+import android.widget.Button;
+
+import naseem.ali.flexibletoast.EasyToast;
+import naseem.ali.flexibletoast.FA;
+import naseem.ali.flexibletoast.ToastBuilder;
+
+public class MainActivity extends AppCompatActivity {
+
+ private int i=0;
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_main);
+ Button button=(Button)findViewById(R.id.button);
+ button.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ showToast((i++)%6);
+ }
+ });
+ }
+
+ public void showToast(int number){
+ String text="Just Some Text";
+ EasyToast.makeText(this,text,EasyToast.LENGTH_SHORT,number,false).show();
+ EasyToast.makeText(this,text,EasyToast.LENGTH_SHORT,number).show();
+ EasyToast easyToast=new ToastBuilder(this)
+ .textSize(16)
+ .leftIcon(R.drawable.confusing_shape)
+ .textColor(Color.WHITE)
+ .showTopIcon(true)
+ .topIcon(FA.FA_ANGELLIST)
+ .text("That's An Easy Toast")
+ .type(EasyToast.SUCCESS)
+ .build();
+ easyToast.show();
+ }
+}
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
new file mode 100644
index 0000000..bd35868
--- /dev/null
+++ b/app/src/main/res/layout/activity_main.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/toast_layout.xml b/app/src/main/res/layout/toast_layout.xml
new file mode 100644
index 0000000..3875ea3
--- /dev/null
+++ b/app/src/main/res/layout/toast_layout.xml
@@ -0,0 +1,88 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 0000000..cde69bc
Binary files /dev/null and b/app/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
new file mode 100644
index 0000000..9a078e3
Binary files /dev/null and b/app/src/main/res/mipmap-hdpi/ic_launcher_round.png differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 0000000..c133a0c
Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
new file mode 100644
index 0000000..efc028a
Binary files /dev/null and b/app/src/main/res/mipmap-mdpi/ic_launcher_round.png differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 0000000..bfa42f0
Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..3af2608
Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000..324e72c
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..9bec2e6
Binary files /dev/null and b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 0000000..aee44e1
Binary files /dev/null and b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
new file mode 100644
index 0000000..34947cd
Binary files /dev/null and b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
new file mode 100644
index 0000000..3ab3e9c
--- /dev/null
+++ b/app/src/main/res/values/colors.xml
@@ -0,0 +1,6 @@
+
+
+ #3F51B5
+ #303F9F
+ #FF4081
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
new file mode 100644
index 0000000..9ceff54
--- /dev/null
+++ b/app/src/main/res/values/strings.xml
@@ -0,0 +1,3 @@
+
+ AToast
+
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
new file mode 100644
index 0000000..5885930
--- /dev/null
+++ b/app/src/main/res/values/styles.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
diff --git a/app/src/test/java/naseem/ali/atoast/ExampleUnitTest.java b/app/src/test/java/naseem/ali/atoast/ExampleUnitTest.java
new file mode 100644
index 0000000..2155756
--- /dev/null
+++ b/app/src/test/java/naseem/ali/atoast/ExampleUnitTest.java
@@ -0,0 +1,17 @@
+package naseem.ali.atoast;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Example local unit test, which will execute on the development machine (host).
+ *
+ * @see Testing documentation
+ */
+public class ExampleUnitTest {
+ @Test
+ public void addition_isCorrect() throws Exception {
+ assertEquals(4, 2 + 2);
+ }
+}
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 0000000..d0aa704
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,23 @@
+// Top-level build file where you can add configuration options common to all sub-projects/modules.
+
+buildscript {
+ repositories {
+ jcenter()
+ }
+ dependencies {
+ classpath 'com.android.tools.build:gradle:2.3.2'
+
+ // NOTE: Do not place your application dependencies here; they belong
+ // in the individual module build.gradle files
+ }
+}
+
+allprojects {
+ repositories {
+ jcenter()
+ }
+}
+
+task clean(type: Delete) {
+ delete rootProject.buildDir
+}
diff --git a/flexibletoast/.gitignore b/flexibletoast/.gitignore
new file mode 100644
index 0000000..796b96d
--- /dev/null
+++ b/flexibletoast/.gitignore
@@ -0,0 +1 @@
+/build
diff --git a/flexibletoast/build.gradle b/flexibletoast/build.gradle
new file mode 100644
index 0000000..04222cc
--- /dev/null
+++ b/flexibletoast/build.gradle
@@ -0,0 +1,31 @@
+apply plugin: 'com.android.library'
+
+android {
+ compileSdkVersion 25
+ buildToolsVersion "25.0.2"
+
+ defaultConfig {
+ minSdkVersion 16
+ targetSdkVersion 25
+ versionCode 1
+ versionName "1.0"
+
+ testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
+
+ }
+ buildTypes {
+ release {
+ minifyEnabled false
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ }
+ }
+}
+
+dependencies {
+ compile fileTree(dir: 'libs', include: ['*.jar'])
+ androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
+ exclude group: 'com.android.support', module: 'support-annotations'
+ })
+ compile 'com.android.support:appcompat-v7:25.3.1'
+ testCompile 'junit:junit:4.12'
+}
diff --git a/flexibletoast/proguard-rules.pro b/flexibletoast/proguard-rules.pro
new file mode 100644
index 0000000..2a08cee
--- /dev/null
+++ b/flexibletoast/proguard-rules.pro
@@ -0,0 +1,25 @@
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in C:\Users\hp\AppData\Local\Android\Sdk/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the proguardFiles
+# directive in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
diff --git a/flexibletoast/src/androidTest/java/naseem/ali/flexibletoast/ExampleInstrumentedTest.java b/flexibletoast/src/androidTest/java/naseem/ali/flexibletoast/ExampleInstrumentedTest.java
new file mode 100644
index 0000000..96b8053
--- /dev/null
+++ b/flexibletoast/src/androidTest/java/naseem/ali/flexibletoast/ExampleInstrumentedTest.java
@@ -0,0 +1,26 @@
+package naseem.ali.flexibletoast;
+
+import android.content.Context;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.runner.AndroidJUnit4;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import static org.junit.Assert.*;
+
+/**
+ * Instrumentation test, which will execute on an Android device.
+ *
+ * @see Testing documentation
+ */
+@RunWith(AndroidJUnit4.class)
+public class ExampleInstrumentedTest {
+ @Test
+ public void useAppContext() throws Exception {
+ // Context of the app under test.
+ Context appContext = InstrumentationRegistry.getTargetContext();
+
+ assertEquals("naseem.ali.flexibletoast.test", appContext.getPackageName());
+ }
+}
diff --git a/flexibletoast/src/main/AndroidManifest.xml b/flexibletoast/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..d34356f
--- /dev/null
+++ b/flexibletoast/src/main/AndroidManifest.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
diff --git a/flexibletoast/src/main/assets/fonts/fontawesome-webfont.ttf b/flexibletoast/src/main/assets/fonts/fontawesome-webfont.ttf
new file mode 100644
index 0000000..35acda2
Binary files /dev/null and b/flexibletoast/src/main/assets/fonts/fontawesome-webfont.ttf differ
diff --git a/flexibletoast/src/main/java/naseem/ali/flexibletoast/EasyToast.java b/flexibletoast/src/main/java/naseem/ali/flexibletoast/EasyToast.java
new file mode 100644
index 0000000..bf30b93
--- /dev/null
+++ b/flexibletoast/src/main/java/naseem/ali/flexibletoast/EasyToast.java
@@ -0,0 +1,442 @@
+package naseem.ali.flexibletoast;
+
+import android.app.Activity;
+import android.app.Application;
+import android.content.Context;
+import android.graphics.Color;
+import android.graphics.Typeface;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.ImageView;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+import android.widget.Toast;
+
+/**
+ * Created by Naseem on 02-03-2018.
+ */
+
+public class EasyToast extends Toast {
+ /**
+ * Construct an empty Toast object. You must call {@link #setView} before you
+ * can call {@link #show}.
+ *
+ * @param context The context to use. Usually your {@link Application}
+ * or {@link Activity} object.
+ */
+ public static final int SUCCESS=0;
+ public static final int WARNING=1;
+ public static final int ERROR=2;
+ public static final int INFO=3;
+ public static final int DEFAULT=4;
+ public static final int CONFUSING=5;
+ private static String defaultSuccess=FA.FA_CHECK;
+ private static String defaultWarning=FA.FA_BELL;
+ private static String defaultError=FA.FA_EXCLAMATION_CIRCLE;
+ private static String defaultDefault=FA.FA_ANDROID;
+ private static String defaultConfusing=FA.FA_BULLSEYE;
+ private static String defaultInfo=FA.FA_INFO_CIRCLE;
+
+ /**
+ * Construct an empty Toast object. You must call {@link #setView} before you
+ * can call {@link #show}.
+ *
+ * @param context The context to use. Usually your {@link Application}
+ * or {@link Activity} object.
+ */
+ public EasyToast(Context context) {
+ super(context);
+ }
+
+ public EasyToast(Context context, String message, int duration, int type, String leftFAICon, String topFAIcon, boolean showTopIcon, float textSize, int textColor, int leftIconColor, Typeface typeface){
+ super(context);
+ super.setView(makeView(context,message,type,leftFAICon,topFAIcon,showTopIcon,textSize,textColor,leftIconColor,typeface));
+ super.setDuration(duration);
+ }
+
+ public EasyToast(Context context, String message, int duration, int type, int leftFAICon, String topFAIcon, boolean showTopIcon, float textSize, int textColor, int leftIconColor, Typeface typeface){
+ super(context);
+ super.setView(makeView(context,message,type,leftFAICon,topFAIcon,showTopIcon,textSize,textColor,leftIconColor,typeface));
+ super.setDuration(duration);
+ }
+ public EasyToast(Context context, String message, int duration, int type, String leftFAICon, int topFAIcon, boolean showTopIcon, float textSize, int textColor, int leftIconColor, Typeface typeface){
+ super(context);
+ super.setView(makeView(context,message,type,leftFAICon,topFAIcon,showTopIcon,textSize,textColor,leftIconColor,typeface));
+ super.setDuration(duration);
+ }
+
+ public EasyToast(Context context, String message, int duration, int type, int leftFAICon, int topFAIcon, boolean showTopIcon, float textSize, int textColor, int leftIconColor, Typeface typeface){
+ super(context);
+ super.setView(makeView(context,message,type,leftFAICon,topFAIcon,showTopIcon,textSize,textColor,leftIconColor,typeface));
+ super.setDuration(duration);
+ }
+
+ public EasyToast(Context context, String message, int duration, int type, boolean showIcon){
+ super(context);
+ super.setView(makeView(context,message,type,showIcon));
+ super.setDuration(duration);
+ }
+
+ public static Toast makeText(Context context,String message,int duration,int type,boolean showIcon){
+ FA.with(context).initialize();
+ Toast toast = new Toast(context);
+ toast.setDuration(duration);
+ View layout = LayoutInflater.from(context).inflate(R.layout.toast_layout, null, false);
+ TextView text = (TextView) layout.findViewById(R.id.toast_text);
+ RelativeLayout linearLayout=(RelativeLayout) layout.findViewById(R.id.toast_type);
+ TextView textImageViewLeft=(TextView)layout.findViewById(R.id.textImageViewLeft);
+ ImageView imgImageVewLeft=(ImageView)layout.findViewById(R.id.imgImageViewLeft);
+ TextView textImageViewTop=(TextView)layout.findViewById(R.id.textImageViewTop);
+ ImageView imgImageViewTop=(ImageView)layout.findViewById(R.id.imgImageViewTop);
+ imgImageViewTop.setVisibility(View.GONE);
+ imgImageVewLeft.setVisibility(View.GONE);
+ FA.addTo(textImageViewTop);
+ FA.addTo(linearLayout);
+ textImageViewTop.setText(FA.FA_ANDROID);
+ text.setText(message);
+ String leftIcon=FA.FA_ANDROID;
+ int topColor=Color.parseColor("#3d3a3a");
+ if(showIcon)
+ textImageViewTop.setVisibility(View.VISIBLE);
+ else
+ textImageViewTop.setVisibility(View.GONE);
+ switch (type){
+ case SUCCESS:
+ linearLayout.setBackgroundResource(R.drawable.success_shape);
+ leftIcon=defaultSuccess;
+ topColor=Color.parseColor("#4CAF50");
+ break;
+ case INFO:
+ linearLayout.setBackgroundResource(R.drawable.info_shape);
+ leftIcon=defaultInfo;
+ topColor=Color.parseColor("#3F51B5");
+ break;
+ case WARNING:
+ linearLayout.setBackgroundResource(R.drawable.warning_shape);
+ leftIcon=defaultWarning;
+ topColor=Color.parseColor("#FF9800");
+ break;
+ case ERROR:
+ linearLayout.setBackgroundResource(R.drawable.error_shape);
+ leftIcon=defaultError;
+ topColor=Color.parseColor("#F44336");
+ break;
+ case CONFUSING:
+ linearLayout.setBackgroundResource(R.drawable.confusing_shape);
+ leftIcon=defaultConfusing;
+ topColor=Color.parseColor("#607D8B");
+ break;
+ default:
+ linearLayout.setBackgroundResource(R.drawable.default_shape);
+ leftIcon=defaultDefault;
+ topColor=Color.parseColor("#3d3a3a");
+ }
+ textImageViewTop.setTextColor(topColor);
+ textImageViewLeft.setText(leftIcon);
+ toast.setView(layout);
+ return toast;
+ }
+ public static Toast makeText(Context context,String message,int duration,int type){
+ FA.with(context).initialize();
+ Toast toast = new Toast(context);
+ toast.setDuration(duration);
+ View layout = LayoutInflater.from(context).inflate(R.layout.toast_layout, null, false);
+ TextView text = (TextView) layout.findViewById(R.id.toast_text);
+ RelativeLayout linearLayout=(RelativeLayout) layout.findViewById(R.id.toast_type);
+ TextView textImageViewLeft=(TextView)layout.findViewById(R.id.textImageViewLeft);
+ ImageView imgImageVewLeft=(ImageView)layout.findViewById(R.id.imgImageViewLeft);
+ TextView textImageViewTop=(TextView)layout.findViewById(R.id.textImageViewTop);
+ ImageView imgImageViewTop=(ImageView)layout.findViewById(R.id.imgImageViewTop);
+ imgImageViewTop.setVisibility(View.GONE);
+ imgImageVewLeft.setVisibility(View.GONE);
+ FA.addTo(textImageViewTop);
+ FA.addTo(linearLayout);
+ textImageViewTop.setText(FA.FA_ANDROID);
+ text.setText(message);
+ String leftIcon=FA.FA_ANDROID;
+ int topColor=Color.parseColor("#3d3a3a");
+ switch (type){
+ case SUCCESS:
+ linearLayout.setBackgroundResource(R.drawable.success_shape);
+ leftIcon=defaultSuccess;
+ topColor=Color.parseColor("#4CAF50");
+ break;
+ case INFO:
+ linearLayout.setBackgroundResource(R.drawable.info_shape);
+ leftIcon=defaultInfo;
+ topColor=Color.parseColor("#3F51B5");
+ break;
+ case WARNING:
+ linearLayout.setBackgroundResource(R.drawable.warning_shape);
+ leftIcon=defaultWarning;
+ topColor=Color.parseColor("#FF9800");
+ break;
+ case ERROR:
+ linearLayout.setBackgroundResource(R.drawable.error_shape);
+ leftIcon=defaultError;
+ topColor=Color.parseColor("#F44336");
+ break;
+ case CONFUSING:
+ linearLayout.setBackgroundResource(R.drawable.confusing_shape);
+ leftIcon=defaultConfusing;
+ topColor=Color.parseColor("#607D8B");
+ break;
+ default:
+ linearLayout.setBackgroundResource(R.drawable.default_shape);
+ leftIcon=defaultDefault;
+ topColor=Color.parseColor("#3d3a3a");
+ }
+ textImageViewTop.setTextColor(topColor);
+ textImageViewLeft.setText(leftIcon);
+ toast.setView(layout);
+ return toast;
+ }
+
+ private View makeView(Context context,String message,int type,String leftFAICon,String topFAIcon,boolean showTopIcon,float textSize,int textColor,int leftIconColor, Typeface typeface){
+ FA.with(context).initialize();
+ View layout = LayoutInflater.from(context).inflate(R.layout.toast_layout, null, false);
+ TextView text = (TextView) layout.findViewById(R.id.toast_text);
+ RelativeLayout linearLayout=(RelativeLayout) layout.findViewById(R.id.toast_type);
+ TextView textImageViewLeft=(TextView)layout.findViewById(R.id.textImageViewLeft);
+ ImageView imgImageVewLeft=(ImageView)layout.findViewById(R.id.imgImageViewLeft);
+ TextView textImageViewTop=(TextView)layout.findViewById(R.id.textImageViewTop);
+ ImageView imgImageViewTop=(ImageView)layout.findViewById(R.id.imgImageViewTop);
+ imgImageViewTop.setVisibility(View.GONE);
+ imgImageVewLeft.setVisibility(View.GONE);
+ FA.addTo(textImageViewTop);
+ FA.addTo(linearLayout);
+ if(!showTopIcon){
+ textImageViewTop.setVisibility(View.GONE);
+ }
+ int topColor=Color.parseColor("#3d3a3a");
+ switch (type){
+ case SUCCESS:
+ linearLayout.setBackgroundResource(R.drawable.success_shape);
+ topColor=Color.parseColor("#4CAF50");
+ break;
+ case INFO:
+ linearLayout.setBackgroundResource(R.drawable.info_shape);
+ topColor=Color.parseColor("#3F51B5");
+ break;
+ case WARNING:
+ linearLayout.setBackgroundResource(R.drawable.warning_shape);
+ topColor=Color.parseColor("#FF9800");
+ break;
+ case ERROR:
+ linearLayout.setBackgroundResource(R.drawable.error_shape);
+ topColor=Color.parseColor("#F44336");
+ break;
+ case CONFUSING:
+ linearLayout.setBackgroundResource(R.drawable.confusing_shape);
+ topColor=Color.parseColor("#607D8B");
+ break;
+ default:
+ linearLayout.setBackgroundResource(R.drawable.default_shape);
+ topColor=Color.parseColor("#3d3a3a");
+ }
+ text.setText(message);
+ textImageViewTop.setText(topFAIcon);
+ textImageViewTop.setTextColor(topColor);
+ textImageViewLeft.setText(leftFAICon);
+ textImageViewLeft.setTextColor(leftIconColor);
+ text.setTextColor(textColor);
+ text.setTextSize(textSize);
+ text.setTypeface(typeface);
+ return layout;
+ }
+
+ private View makeView(Context context,String message,int type,int leftFAICon,String topFAIcon,boolean showTopIcon,float textSize,int textColor,int leftImgColor, Typeface typeface){
+ FA.with(context).initialize();
+ View layout = LayoutInflater.from(context).inflate(R.layout.toast_layout, null, false);
+ TextView text = (TextView) layout.findViewById(R.id.toast_text);
+ RelativeLayout linearLayout=(RelativeLayout) layout.findViewById(R.id.toast_type);
+ TextView textImageViewLeft=(TextView)layout.findViewById(R.id.textImageViewLeft);
+ ImageView imgImageVewLeft=(ImageView)layout.findViewById(R.id.imgImageViewLeft);
+ TextView textImageViewTop=(TextView)layout.findViewById(R.id.textImageViewTop);
+ ImageView imgImageViewTop=(ImageView)layout.findViewById(R.id.imgImageViewTop);
+ imgImageViewTop.setVisibility(View.GONE);
+ textImageViewLeft.setVisibility(View.GONE);
+ FA.addTo(textImageViewTop);
+ FA.addTo(linearLayout);
+ if(!showTopIcon)
+ textImageViewTop.setVisibility(View.GONE);
+ int topColor=Color.parseColor("#3d3a3a");
+ switch (type){
+ case SUCCESS:
+ linearLayout.setBackgroundResource(R.drawable.success_shape);
+ topColor=Color.parseColor("#4CAF50");
+ break;
+ case INFO:
+ linearLayout.setBackgroundResource(R.drawable.info_shape);
+ topColor=Color.parseColor("#3F51B5");
+ break;
+ case WARNING:
+ linearLayout.setBackgroundResource(R.drawable.warning_shape);
+ topColor=Color.parseColor("#FF9800");
+ break;
+ case ERROR:
+ linearLayout.setBackgroundResource(R.drawable.error_shape);
+ topColor=Color.parseColor("#F44336");
+ break;
+ case CONFUSING:
+ linearLayout.setBackgroundResource(R.drawable.confusing_shape);
+ topColor=Color.parseColor("#607D8B");
+ break;
+ default:
+ linearLayout.setBackgroundResource(R.drawable.default_shape);
+ topColor=Color.parseColor("#3d3a3a");
+ }
+ text.setText(message);
+ textImageViewTop.setText(topFAIcon);
+ textImageViewTop.setTextColor(topColor);
+ imgImageVewLeft.setImageResource(leftFAICon);
+ textImageViewLeft.setTextColor(leftImgColor);
+ text.setTextColor(textColor);
+ text.setTextSize(textSize);
+ text.setTypeface(typeface);
+ return layout;
+ }
+
+ private View makeView(Context context,String message,int type,String leftFAICon,int topFAIcon,boolean showTopIcon,float textSize,int textColor,int leftImgColor, Typeface typeface){
+ FA.with(context).initialize();
+ View layout = LayoutInflater.from(context).inflate(R.layout.toast_layout, null, false);
+ TextView text = (TextView) layout.findViewById(R.id.toast_text);
+ RelativeLayout linearLayout=(RelativeLayout) layout.findViewById(R.id.toast_type);
+ TextView textImageViewLeft=(TextView)layout.findViewById(R.id.textImageViewLeft);
+ ImageView imgImageVewLeft=(ImageView)layout.findViewById(R.id.imgImageViewLeft);
+ TextView textImageViewTop=(TextView)layout.findViewById(R.id.textImageViewTop);
+ ImageView imgImageViewTop=(ImageView)layout.findViewById(R.id.imgImageViewTop);
+ textImageViewTop.setVisibility(View.GONE);
+ imgImageVewLeft.setVisibility(View.GONE);
+ FA.addTo(textImageViewTop);
+ FA.addTo(linearLayout);
+ if(!showTopIcon)
+ imgImageViewTop.setVisibility(View.GONE);
+ switch (type){
+ case SUCCESS:
+ linearLayout.setBackgroundResource(R.drawable.success_shape);
+ break;
+ case INFO:
+ linearLayout.setBackgroundResource(R.drawable.info_shape);
+ break;
+ case WARNING:
+ linearLayout.setBackgroundResource(R.drawable.warning_shape);
+ break;
+ case ERROR:
+ linearLayout.setBackgroundResource(R.drawable.error_shape);
+ break;
+ case CONFUSING:
+ linearLayout.setBackgroundResource(R.drawable.confusing_shape);
+ break;
+ default:
+ linearLayout.setBackgroundResource(R.drawable.default_shape);
+ }
+ textImageViewLeft.setText(leftFAICon);
+ imgImageViewTop.setImageResource(topFAIcon);
+ text.setText(message);
+ textImageViewLeft.setTextColor(leftImgColor);
+ text.setTextColor(textColor);
+ text.setTextSize(textSize);
+ text.setTypeface(typeface);
+ return layout;
+ }
+
+ private View makeView(Context context,String message,int type,int leftFAICon,int topFAIcon,boolean showTopIcon,float textSize,int textColor,int leftImgColor, Typeface typeface){
+ FA.with(context).initialize();
+ View layout = LayoutInflater.from(context).inflate(R.layout.toast_layout, null, false);
+ TextView text = (TextView) layout.findViewById(R.id.toast_text);
+ RelativeLayout linearLayout=(RelativeLayout) layout.findViewById(R.id.toast_type);
+ TextView textImageViewLeft=(TextView)layout.findViewById(R.id.textImageViewLeft);
+ ImageView imgImageVewLeft=(ImageView)layout.findViewById(R.id.imgImageViewLeft);
+ TextView textImageViewTop=(TextView)layout.findViewById(R.id.textImageViewTop);
+ ImageView imgImageViewTop=(ImageView)layout.findViewById(R.id.imgImageViewTop);
+ textImageViewTop.setVisibility(View.GONE);
+ textImageViewLeft.setVisibility(View.GONE);
+ FA.addTo(textImageViewTop);
+ FA.addTo(linearLayout);
+ if(!showTopIcon)
+ imgImageViewTop.setVisibility(View.GONE);
+ switch (type){
+ case SUCCESS:
+ linearLayout.setBackgroundResource(R.drawable.success_shape);
+ break;
+ case INFO:
+ linearLayout.setBackgroundResource(R.drawable.info_shape);
+ break;
+ case WARNING:
+ linearLayout.setBackgroundResource(R.drawable.warning_shape);
+ break;
+ case ERROR:
+ linearLayout.setBackgroundResource(R.drawable.error_shape);
+ break;
+ case CONFUSING:
+ linearLayout.setBackgroundResource(R.drawable.confusing_shape);
+ break;
+ default:
+ linearLayout.setBackgroundResource(R.drawable.default_shape);
+ }
+ text.setText(message);
+ imgImageVewLeft.setImageResource(leftFAICon);
+ imgImageViewTop.setImageResource(topFAIcon);
+ textImageViewLeft.setTextColor(leftImgColor);
+ text.setTextColor(textColor);
+ text.setTextSize(textSize);
+ text.setTypeface(typeface);
+ return layout;
+ }
+
+ private View makeView(Context context,String message,int type,boolean showIcon){
+ FA.with(context).initialize();
+ View layout = LayoutInflater.from(context).inflate(R.layout.toast_layout, null, false);
+ TextView text = (TextView) layout.findViewById(R.id.toast_text);
+ RelativeLayout linearLayout=(RelativeLayout) layout.findViewById(R.id.toast_type);
+ TextView textImageViewLeft=(TextView)layout.findViewById(R.id.textImageViewLeft);
+ ImageView imgImageVewLeft=(ImageView)layout.findViewById(R.id.imgImageViewLeft);
+ TextView textImageViewTop=(TextView)layout.findViewById(R.id.textImageViewTop);
+ ImageView imgImageViewTop=(ImageView)layout.findViewById(R.id.imgImageViewTop);
+ imgImageViewTop.setVisibility(View.GONE);
+ imgImageVewLeft.setVisibility(View.GONE);
+ FA.addTo(textImageViewTop);
+ FA.addTo(linearLayout);
+ if(!showIcon)
+ textImageViewTop.setVisibility(View.GONE);
+ String leftIcon=FA.FA_ANDROID;
+ int topColor=Color.parseColor("#4CAF50");
+ switch (type){
+ case SUCCESS:
+ linearLayout.setBackgroundResource(R.drawable.success_shape);
+ leftIcon=defaultSuccess;
+ topColor=Color.parseColor("#4CAF50");
+ break;
+ case INFO:
+ linearLayout.setBackgroundResource(R.drawable.info_shape);
+ leftIcon=defaultInfo;
+ topColor=Color.parseColor("#3F51B5");
+ break;
+ case WARNING:
+ linearLayout.setBackgroundResource(R.drawable.warning_shape);
+ leftIcon=defaultWarning;
+ topColor=Color.parseColor("#FF9800");
+ break;
+ case ERROR:
+ linearLayout.setBackgroundResource(R.drawable.error_shape);
+ leftIcon=defaultError;
+ topColor=Color.parseColor("#F44336");
+ break;
+ case CONFUSING:
+ linearLayout.setBackgroundResource(R.drawable.confusing_shape);
+ leftIcon=defaultConfusing;
+ topColor=Color.parseColor("#607D8B");
+ break;
+ default:
+ linearLayout.setBackgroundResource(R.drawable.default_shape);
+ leftIcon=defaultDefault;
+ topColor=Color.parseColor("#3d3a3a");
+ }
+ text.setText(message);
+ textImageViewLeft.setText(leftIcon);
+ textImageViewTop.setTextColor(topColor);
+ return layout;
+ }
+
+}
diff --git a/flexibletoast/src/main/java/naseem/ali/flexibletoast/FA.java b/flexibletoast/src/main/java/naseem/ali/flexibletoast/FA.java
new file mode 100644
index 0000000..8964682
--- /dev/null
+++ b/flexibletoast/src/main/java/naseem/ali/flexibletoast/FA.java
@@ -0,0 +1,928 @@
+package naseem.ali.flexibletoast;
+
+import android.content.Context;
+import android.graphics.Typeface;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.TextView;
+
+/**
+ * Created by Naseem on 02-03-2018.
+ */
+
+public class FA {
+ private static FA sSoleInstance;
+ private static Typeface typeface;
+ private static Context context;
+ //private constructor.
+ private FA(Context context){
+ this.context=context;
+ //Prevent form the reflection api.
+ if (sSoleInstance != null){
+ throw new RuntimeException("Use with() method to get the single instance of this class.");
+ }
+ }
+
+ public static FA with(Context context){
+ if (sSoleInstance == null){ //if there is no instance available... create new one
+ synchronized (FA.class) {
+ if (sSoleInstance == null) sSoleInstance = new FA(context);
+ }
+ }
+
+ return sSoleInstance;
+ }
+
+ public void initialize(){
+ this.typeface=Typeface.createFromAsset(context.getAssets(), "fonts/fontawesome-webfont.ttf");
+ }
+
+ public static void addTo(TextView textView){
+ if(textView!=null){
+ textView.setTypeface(typeface);
+ }
+ }
+
+ public static void addTo(EditText editText){
+ if(editText!=null){
+ editText.setTypeface(typeface);
+ }
+ }
+ public static void addTo(Button button){
+ if(button!=null){
+ button.setTypeface(typeface);
+ }
+ }
+
+ public static void addTo(ViewGroup group){
+ if (group!=null) {
+ for (int i = 0; i < group.getChildCount(); ++i) {
+ if (group.getChildAt(i) instanceof TextView) {
+ ((TextView) group.getChildAt(i)).setTypeface(typeface);
+ }
+ if (group.getChildAt(i) instanceof Button) {
+ ((Button) group.getChildAt(i)).setTypeface(typeface);
+ }
+ if (group.getChildAt(i) instanceof EditText) {
+ ((EditText) group.getChildAt(i)).setTypeface(typeface);
+ }
+ if(group.getChildAt(i) instanceof ViewGroup){
+ addTo(((ViewGroup) group.getChildAt(i)));
+ }
+ }
+ group.setOnHierarchyChangeListener(new ViewGroup.OnHierarchyChangeListener() {
+ @Override
+ public void onChildViewAdded(View parent, View child) {
+ if (child instanceof TextView) {
+ ((TextView) child).setTypeface(typeface);
+ }
+ if (child instanceof Button) {
+ ((Button) child).setTypeface(typeface);
+ }
+ if (child instanceof EditText) {
+ ((EditText) child).setTypeface(typeface);
+ }
+ }
+
+ @Override
+ public void onChildViewRemoved(View parent, View child) {
+
+ }
+ });
+ }
+ }
+
+ public static String FA_500PX = "\uf26e";
+ public static String FA_ACCESSIBLE_ICON = "\uf368";
+ public static String FA_ACCUSOFT = "\uf369";
+ public static String FA_ADDRESS_BOOK = "\uf2b9";
+ public static String FA_ADDRESS_CARD = "\uf2bb";
+ public static String FA_ADJUST = "\uf042";
+ public static String FA_ADN = "\uf170";
+ public static String FA_ADVERSAL = "\uf36a";
+ public static String FA_AFFILIATETHEME = "\uf36b";
+ public static String FA_ALGOLIA = "\uf36c";
+ public static String FA_ALIGN_CENTER = "\uf037";
+ public static String FA_ALIGN_JUSTIFY = "\uf039";
+ public static String FA_ALIGN_LEFT = "\uf036";
+ public static String FA_ALIGN_RIGHT = "\uf038";
+ public static String FA_AMAZON = "\uf270";
+ public static String FA_AMAZON_PAY = "\uf42c";
+ public static String FA_AMBULANCE = "\uf0f9";
+ public static String FA_AMERICAN_SIGN_LANGUAGE_INTERPRETING = "\uf2a3";
+ public static String FA_AMILIA = "\uf36d";
+ public static String FA_ANCHOR = "\uf13d";
+ public static String FA_ANDROID = "\uf17b";
+ public static String FA_ANGELLIST = "\uf209";
+ public static String FA_ANGLE_DOUBLE_DOWN = "\uf103";
+ public static String FA_ANGLE_DOUBLE_LEFT = "\uf100";
+ public static String FA_ANGLE_DOUBLE_RIGHT = "\uf101";
+ public static String FA_ANGLE_DOUBLE_UP = "\uf102";
+ public static String FA_ANGLE_DOWN = "\uf107";
+ public static String FA_ANGLE_LEFT = "\uf104";
+ public static String FA_ANGLE_RIGHT = "\uf105";
+ public static String FA_ANGLE_UP = "\uf106";
+ public static String FA_ANGRYCREATIVE = "\uf36e";
+ public static String FA_ANGULAR = "\uf420";
+ public static String FA_APPER = "\uf371";
+ public static String FA_APPLE = "\uf179";
+ public static String FA_APPLE_PAY = "\uf415";
+ public static String FA_APP_STORE = "\uf36f";
+ public static String FA_APP_STORE_IOS = "\uf370";
+ public static String FA_ARCHIVE = "\uf187";
+ public static String FA_ARROWS_ALT = "\uf0b2";
+ public static String FA_ARROWS_ALT_H = "\uf337";
+ public static String FA_ARROWS_ALT_V = "\uf338";
+ public static String FA_ARROW_ALT_CIRCLE_DOWN = "\uf358";
+ public static String FA_ARROW_ALT_CIRCLE_LEFT = "\uf359";
+ public static String FA_ARROW_ALT_CIRCLE_RIGHT = "\uf35a";
+ public static String FA_ARROW_ALT_CIRCLE_UP = "\uf35b";
+ public static String FA_ARROW_CIRCLE_DOWN = "\uf0ab";
+ public static String FA_ARROW_CIRCLE_LEFT = "\uf0a8";
+ public static String FA_ARROW_CIRCLE_RIGHT = "\uf0a9";
+ public static String FA_ARROW_CIRCLE_UP = "\uf0aa";
+ public static String FA_ARROW_DOWN = "\uf063";
+ public static String FA_ARROW_LEFT = "\uf060";
+ public static String FA_ARROW_RIGHT = "\uf061";
+ public static String FA_ARROW_UP = "\uf062";
+ public static String FA_ASSISTIVE_LISTENING_SYSTEMS = "\uf2a2";
+ public static String FA_ASTERISK = "\uf069";
+ public static String FA_ASYMMETRIK = "\uf372";
+ public static String FA_AT = "\uf1fa";
+ public static String FA_AUDIBLE = "\uf373";
+ public static String FA_AUDIO_DESCRIPTION = "\uf29e";
+ public static String FA_AUTOPREFIXER = "\uf41c";
+ public static String FA_AVIANEX = "\uf374";
+ public static String FA_AVIATO = "\uf421";
+ public static String FA_AWS = "\uf375";
+ public static String FA_BACKWARD = "\uf04a";
+ public static String FA_BALANCE_SCALE = "\uf24e";
+ public static String FA_BAN = "\uf05e";
+ public static String FA_BANDCAMP = "\uf2d5";
+ public static String FA_BAND_AID = "\uf462";
+ public static String FA_BARCODE = "\uf02a";
+ public static String FA_BARS = "\uf0c9";
+ public static String FA_BASEBALL_BALL = "\uf433";
+ public static String FA_BASKETBALL_BALL = "\uf434";
+ public static String FA_BATH = "\uf2cd";
+ public static String FA_BATTERY_EMPTY = "\uf244";
+ public static String FA_BATTERY_FULL = "\uf240";
+ public static String FA_BATTERY_HALF = "\uf242";
+ public static String FA_BATTERY_QUARTER = "\uf243";
+ public static String FA_BATTERY_THREE_QUARTERS = "\uf241";
+ public static String FA_BED = "\uf236";
+ public static String FA_BEER = "\uf0fc";
+ public static String FA_BEHANCE = "\uf1b4";
+ public static String FA_BEHANCE_SQUARE = "\uf1b5";
+ public static String FA_BELL = "\uf0f3";
+ public static String FA_BELL_SLASH = "\uf1f6";
+ public static String FA_BICYCLE = "\uf206";
+ public static String FA_BIMOBJECT = "\uf378";
+ public static String FA_BINOCULARS = "\uf1e5";
+ public static String FA_BIRTHDAY_CAKE = "\uf1fd";
+ public static String FA_BITBUCKET = "\uf171";
+ public static String FA_BITCOIN = "\uf379";
+ public static String FA_BITY = "\uf37a";
+ public static String FA_BLACKBERRY = "\uf37b";
+ public static String FA_BLACK_TIE = "\uf27e";
+ public static String FA_BLIND = "\uf29d";
+ public static String FA_BLOGGER = "\uf37c";
+ public static String FA_BLOGGER_B = "\uf37d";
+ public static String FA_BLUETOOTH = "\uf293";
+ public static String FA_BLUETOOTH_B = "\uf294";
+ public static String FA_BOLD = "\uf032";
+ public static String FA_BOLT = "\uf0e7";
+ public static String FA_BOMB = "\uf1e2";
+ public static String FA_BOOK = "\uf02d";
+ public static String FA_BOOKMARK = "\uf02e";
+ public static String FA_BOWLING_BALL = "\uf436";
+ public static String FA_BOX = "\uf466";
+ public static String FA_BOXES = "\uf468";
+ public static String FA_BRAILLE = "\uf2a1";
+ public static String FA_BRIEFCASE = "\uf0b1";
+ public static String FA_BTC = "\uf15a";
+ public static String FA_BUG = "\uf188";
+ public static String FA_BUILDING = "\uf1ad";
+ public static String FA_BULLHORN = "\uf0a1";
+ public static String FA_BULLSEYE = "\uf140";
+ public static String FA_BUROMOBELEXPERTE = "\uf37f";
+ public static String FA_BUS = "\uf207";
+ public static String FA_BUYSELLADS = "\uf20d";
+ public static String FA_CALCULATOR = "\uf1ec";
+ public static String FA_CALENDAR = "\uf133";
+ public static String FA_CALENDAR_ALT = "\uf073";
+ public static String FA_CALENDAR_CHECK = "\uf274";
+ public static String FA_CALENDAR_MINUS = "\uf272";
+ public static String FA_CALENDAR_PLUS = "\uf271";
+ public static String FA_CALENDAR_TIMES = "\uf273";
+ public static String FA_CAMERA = "\uf030";
+ public static String FA_CAMERA_RETRO = "\uf083";
+ public static String FA_CAR = "\uf1b9";
+ public static String FA_CARET_DOWN = "\uf0d7";
+ public static String FA_CARET_LEFT = "\uf0d9";
+ public static String FA_CARET_RIGHT = "\uf0da";
+ public static String FA_CARET_SQUARE_DOWN = "\uf150";
+ public static String FA_CARET_SQUARE_LEFT = "\uf191";
+ public static String FA_CARET_SQUARE_RIGHT = "\uf152";
+ public static String FA_CARET_SQUARE_UP = "\uf151";
+ public static String FA_CARET_UP = "\uf0d8";
+ public static String FA_CART_ARROW_DOWN = "\uf218";
+ public static String FA_CART_PLUS = "\uf217";
+ public static String FA_CC_AMAZON_PAY = "\uf42d";
+ public static String FA_CC_AMEX = "\uf1f3";
+ public static String FA_CC_APPLE_PAY = "\uf416";
+ public static String FA_CC_DINERS_CLUB = "\uf24c";
+ public static String FA_CC_DISCOVER = "\uf1f2";
+ public static String FA_CC_JCB = "\uf24b";
+ public static String FA_CC_MASTERCARD = "\uf1f1";
+ public static String FA_CC_PAYPAL = "\uf1f4";
+ public static String FA_CC_STRIPE = "\uf1f5";
+ public static String FA_CC_VISA = "\uf1f0";
+ public static String FA_CENTERCODE = "\uf380";
+ public static String FA_CERTIFICATE = "\uf0a3";
+ public static String FA_CHART_AREA = "\uf1fe";
+ public static String FA_CHART_BAR = "\uf080";
+ public static String FA_CHART_LINE = "\uf201";
+ public static String FA_CHART_PIE = "\uf200";
+ public static String FA_CHECK = "\uf00c";
+ public static String FA_CHECK_CIRCLE = "\uf058";
+ public static String FA_CHECK_SQUARE = "\uf14a";
+ public static String FA_CHESS = "\uf439";
+ public static String FA_CHESS_BISHOP = "\uf43a";
+ public static String FA_CHESS_BOARD = "\uf43c";
+ public static String FA_CHESS_KING = "\uf43f";
+ public static String FA_CHESS_KNIGHT = "\uf441";
+ public static String FA_CHESS_PAWN = "\uf443";
+ public static String FA_CHESS_QUEEN = "\uf445";
+ public static String FA_CHESS_ROOK = "\uf447";
+ public static String FA_CHEVRON_CIRCLE_DOWN = "\uf13a";
+ public static String FA_CHEVRON_CIRCLE_LEFT = "\uf137";
+ public static String FA_CHEVRON_CIRCLE_RIGHT = "\uf138";
+ public static String FA_CHEVRON_CIRCLE_UP = "\uf139";
+ public static String FA_CHEVRON_DOWN = "\uf078";
+ public static String FA_CHEVRON_LEFT = "\uf053";
+ public static String FA_CHEVRON_RIGHT = "\uf054";
+ public static String FA_CHEVRON_UP = "\uf077";
+ public static String FA_CHILD = "\uf1ae";
+ public static String FA_CHROME = "\uf268";
+ public static String FA_CIRCLE = "\uf111";
+ public static String FA_CIRCLE_NOTCH = "\uf1ce";
+ public static String FA_CLIPBOARD = "\uf328";
+ public static String FA_CLIPBOARD_CHECK = "\uf46c";
+ public static String FA_CLIPBOARD_LIST = "\uf46d";
+ public static String FA_CLOCK = "\uf017";
+ public static String FA_CLONE = "\uf24d";
+ public static String FA_CLOSED_CAPTIONING = "\uf20a";
+ public static String FA_CLOUD = "\uf0c2";
+ public static String FA_CLOUDSCALE = "\uf383";
+ public static String FA_CLOUDSMITH = "\uf384";
+ public static String FA_CLOUDVERSIFY = "\uf385";
+ public static String FA_CLOUD_DOWNLOAD_ALT = "\uf381";
+ public static String FA_CLOUD_UPLOAD_ALT = "\uf382";
+ public static String FA_CODE = "\uf121";
+ public static String FA_CODEPEN = "\uf1cb";
+ public static String FA_CODE_BRANCH = "\uf126";
+ public static String FA_CODIEPIE = "\uf284";
+ public static String FA_COFFEE = "\uf0f4";
+ public static String FA_COG = "\uf013";
+ public static String FA_COGS = "\uf085";
+ public static String FA_COLUMNS = "\uf0db";
+ public static String FA_COMMENT = "\uf075";
+ public static String FA_COMMENTS = "\uf086";
+ public static String FA_COMMENT_ALT = "\uf27a";
+ public static String FA_COMPASS = "\uf14e";
+ public static String FA_COMPRESS = "\uf066";
+ public static String FA_CONNECTDEVELOP = "\uf20e";
+ public static String FA_CONTAO = "\uf26d";
+ public static String FA_COPY = "\uf0c5";
+ public static String FA_COPYRIGHT = "\uf1f9";
+ public static String FA_CPANEL = "\uf388";
+ public static String FA_CREATIVE_COMMONS = "\uf25e";
+ public static String FA_CREDIT_CARD = "\uf09d";
+ public static String FA_CROP = "\uf125";
+ public static String FA_CROSSHAIRS = "\uf05b";
+ public static String FA_CSS3 = "\uf13c";
+ public static String FA_CSS3_ALT = "\uf38b";
+ public static String FA_CUBE = "\uf1b2";
+ public static String FA_CUBES = "\uf1b3";
+ public static String FA_CUT = "\uf0c4";
+ public static String FA_CUTTLEFISH = "\uf38c";
+ public static String FA_DASHCUBE = "\uf210";
+ public static String FA_DATABASE = "\uf1c0";
+ public static String FA_DEAF = "\uf2a4";
+ public static String FA_DELICIOUS = "\uf1a5";
+ public static String FA_DEPLOYDOG = "\uf38e";
+ public static String FA_DESKPRO = "\uf38f";
+ public static String FA_DESKTOP = "\uf108";
+ public static String FA_DEVIANTART = "\uf1bd";
+ public static String FA_DIGG = "\uf1a6";
+ public static String FA_DIGITAL_OCEAN = "\uf391";
+ public static String FA_DISCORD = "\uf392";
+ public static String FA_DISCOURSE = "\uf393";
+ public static String FA_DNA = "\uf471";
+ public static String FA_DOCHUB = "\uf394";
+ public static String FA_DOCKER = "\uf395";
+ public static String FA_DOLLAR_SIGN = "\uf155";
+ public static String FA_DOLLY = "\uf472";
+ public static String FA_DOLLY_FLATBED = "\uf474";
+ public static String FA_DOT_CIRCLE = "\uf192";
+ public static String FA_DOWNLOAD = "\uf019";
+ public static String FA_DRAFT2DIGITAL = "\uf396";
+ public static String FA_DRIBBBLE = "\uf17d";
+ public static String FA_DRIBBBLE_SQUARE = "\uf397";
+ public static String FA_DROPBOX = "\uf16b";
+ public static String FA_DRUPAL = "\uf1a9";
+ public static String FA_DYALOG = "\uf399";
+ public static String FA_D_AND_D = "\uf38d";
+ public static String FA_EARLYBIRDS = "\uf39a";
+ public static String FA_EDGE = "\uf282";
+ public static String FA_EDIT = "\uf044";
+ public static String FA_EJECT = "\uf052";
+ public static String FA_ELEMENTOR = "\uf430";
+ public static String FA_ELLIPSIS_H = "\uf141";
+ public static String FA_ELLIPSIS_V = "\uf142";
+ public static String FA_EMBER = "\uf423";
+ public static String FA_EMPIRE = "\uf1d1";
+ public static String FA_ENVELOPE = "\uf0e0";
+ public static String FA_ENVELOPE_OPEN = "\uf2b6";
+ public static String FA_ENVELOPE_SQUARE = "\uf199";
+ public static String FA_ENVIRA = "\uf299";
+ public static String FA_ERASER = "\uf12d";
+ public static String FA_ERLANG = "\uf39d";
+ public static String FA_ETHEREUM = "\uf42e";
+ public static String FA_ETSY = "\uf2d7";
+ public static String FA_EURO_SIGN = "\uf153";
+ public static String FA_EXCHANGE_ALT = "\uf362";
+ public static String FA_EXCLAMATION = "\uf12a";
+ public static String FA_EXCLAMATION_CIRCLE = "\uf06a";
+ public static String FA_EXCLAMATION_TRIANGLE = "\uf071";
+ public static String FA_EXPAND = "\uf065";
+ public static String FA_EXPAND_ARROWS_ALT = "\uf31e";
+ public static String FA_EXPEDITEDSSL = "\uf23e";
+ public static String FA_EXTERNAL_LINK_ALT = "\uf35d";
+ public static String FA_EXTERNAL_LINK_SQUARE_ALT = "\uf360";
+ public static String FA_EYE = "\uf06e";
+ public static String FA_EYE_DROPPER = "\uf1fb";
+ public static String FA_EYE_SLASH = "\uf070";
+ public static String FA_FACEBOOK = "\uf09a";
+ public static String FA_FACEBOOK_F = "\uf39e";
+ public static String FA_FACEBOOK_MESSENGER = "\uf39f";
+ public static String FA_FACEBOOK_SQUARE = "\uf082";
+ public static String FA_FAST_BACKWARD = "\uf049";
+ public static String FA_FAST_FORWARD = "\uf050";
+ public static String FA_FAX = "\uf1ac";
+ public static String FA_FEMALE = "\uf182";
+ public static String FA_FIGHTER_JET = "\uf0fb";
+ public static String FA_FILE = "\uf15b";
+ public static String FA_FILE_ALT = "\uf15c";
+ public static String FA_FILE_ARCHIVE = "\uf1c6";
+ public static String FA_FILE_AUDIO = "\uf1c7";
+ public static String FA_FILE_CODE = "\uf1c9";
+ public static String FA_FILE_EXCEL = "\uf1c3";
+ public static String FA_FILE_IMAGE = "\uf1c5";
+ public static String FA_FILE_PDF = "\uf1c1";
+ public static String FA_FILE_POWERPOINT = "\uf1c4";
+ public static String FA_FILE_VIDEO = "\uf1c8";
+ public static String FA_FILE_WORD = "\uf1c2";
+ public static String FA_FILM = "\uf008";
+ public static String FA_FILTER = "\uf0b0";
+ public static String FA_FIRE = "\uf06d";
+ public static String FA_FIREFOX = "\uf269";
+ public static String FA_FIRE_EXTINGUISHER = "\uf134";
+ public static String FA_FIRSTDRAFT = "\uf3a1";
+ public static String FA_FIRST_AID = "\uf479";
+ public static String FA_FIRST_ORDER = "\uf2b0";
+ public static String FA_FLAG = "\uf024";
+ public static String FA_FLAG_CHECKERED = "\uf11e";
+ public static String FA_FLASK = "\uf0c3";
+ public static String FA_FLICKR = "\uf16e";
+ public static String FA_FLIPBOARD = "\uf44d";
+ public static String FA_FLY = "\uf417";
+ public static String FA_FOLDER = "\uf07b";
+ public static String FA_FOLDER_OPEN = "\uf07c";
+ public static String FA_FONT = "\uf031";
+ public static String FA_FONTICONS = "\uf280";
+ public static String FA_FONTICONS_FI = "\uf3a2";
+ public static String FA_FONT_AWESOME = "\uf2b4";
+ public static String FA_FONT_AWESOME_ALT = "\uf35c";
+ public static String FA_FONT_AWESOME_FLAG = "\uf425";
+ public static String FA_FOOTBALL_BALL = "\uf44e";
+ public static String FA_FORT_AWESOME = "\uf286";
+ public static String FA_FORT_AWESOME_ALT = "\uf3a3";
+ public static String FA_FORUMBEE = "\uf211";
+ public static String FA_FORWARD = "\uf04e";
+ public static String FA_FOURSQUARE = "\uf180";
+ public static String FA_FREEBSD = "\uf3a4";
+ public static String FA_FREE_CODE_CAMP = "\uf2c5";
+ public static String FA_FROWN = "\uf119";
+ public static String FA_FUTBOL = "\uf1e3";
+ public static String FA_GAMEPAD = "\uf11b";
+ public static String FA_GAVEL = "\uf0e3";
+ public static String FA_GEM = "\uf3a5";
+ public static String FA_GENDERLESS = "\uf22d";
+ public static String FA_GET_POCKET = "\uf265";
+ public static String FA_GG = "\uf260";
+ public static String FA_GG_CIRCLE = "\uf261";
+ public static String FA_GIFT = "\uf06b";
+ public static String FA_GIT = "\uf1d3";
+ public static String FA_GITHUB = "\uf09b";
+ public static String FA_GITHUB_ALT = "\uf113";
+ public static String FA_GITHUB_SQUARE = "\uf092";
+ public static String FA_GITKRAKEN = "\uf3a6";
+ public static String FA_GITLAB = "\uf296";
+ public static String FA_GITTER = "\uf426";
+ public static String FA_GIT_SQUARE = "\uf1d2";
+ public static String FA_GLASS_MARTINI = "\uf000";
+ public static String FA_GLIDE = "\uf2a5";
+ public static String FA_GLIDE_G = "\uf2a6";
+ public static String FA_GLOBE = "\uf0ac";
+ public static String FA_GOFORE = "\uf3a7";
+ public static String FA_GOLF_BALL = "\uf450";
+ public static String FA_GOODREADS = "\uf3a8";
+ public static String FA_GOODREADS_G = "\uf3a9";
+ public static String FA_GOOGLE = "\uf1a0";
+ public static String FA_GOOGLE_DRIVE = "\uf3aa";
+ public static String FA_GOOGLE_PLAY = "\uf3ab";
+ public static String FA_GOOGLE_PLUS = "\uf2b3";
+ public static String FA_GOOGLE_PLUS_G = "\uf0d5";
+ public static String FA_GOOGLE_PLUS_SQUARE = "\uf0d4";
+ public static String FA_GOOGLE_WALLET = "\uf1ee";
+ public static String FA_GRADUATION_CAP = "\uf19d";
+ public static String FA_GRATIPAY = "\uf184";
+ public static String FA_GRAV = "\uf2d6";
+ public static String FA_GRIPFIRE = "\uf3ac";
+ public static String FA_GRUNT = "\uf3ad";
+ public static String FA_GULP = "\uf3ae";
+ public static String FA_HACKER_NEWS = "\uf1d4";
+ public static String FA_HACKER_NEWS_SQUARE = "\uf3af";
+ public static String FA_HANDSHAKE = "\uf2b5";
+ public static String FA_HAND_LIZARD = "\uf258";
+ public static String FA_HAND_PAPER = "\uf256";
+ public static String FA_HAND_PEACE = "\uf25b";
+ public static String FA_HAND_POINTER = "\uf25a";
+ public static String FA_HAND_POINT_DOWN = "\uf0a7";
+ public static String FA_HAND_POINT_LEFT = "\uf0a5";
+ public static String FA_HAND_POINT_RIGHT = "\uf0a4";
+ public static String FA_HAND_POINT_UP = "\uf0a6";
+ public static String FA_HAND_ROCK = "\uf255";
+ public static String FA_HAND_SCISSORS = "\uf257";
+ public static String FA_HAND_SPOCK = "\uf259";
+ public static String FA_HASHTAG = "\uf292";
+ public static String FA_HDD = "\uf0a0";
+ public static String FA_HEADING = "\uf1dc";
+ public static String FA_HEADPHONES = "\uf025";
+ public static String FA_HEART = "\uf004";
+ public static String FA_HEARTBEAT = "\uf21e";
+ public static String FA_HIPS = "\uf452";
+ public static String FA_HIRE_A_HELPER = "\uf3b0";
+ public static String FA_HISTORY = "\uf1da";
+ public static String FA_HOCKEY_PUCK = "\uf453";
+ public static String FA_HOME = "\uf015";
+ public static String FA_HOOLI = "\uf427";
+ public static String FA_HOSPITAL = "\uf0f8";
+ public static String FA_HOSPITAL_SYMBOL = "\uf47e";
+ public static String FA_HOTJAR = "\uf3b1";
+ public static String FA_HOURGLASS = "\uf254";
+ public static String FA_HOURGLASS_END = "\uf253";
+ public static String FA_HOURGLASS_HALF = "\uf252";
+ public static String FA_HOURGLASS_START = "\uf251";
+ public static String FA_HOUZZ = "\uf27c";
+ public static String FA_HTML5 = "\uf13b";
+ public static String FA_HUBSPOT = "\uf3b2";
+ public static String FA_H_SQUARE = "\uf0fd";
+ public static String FA_ID_BADGE = "\uf2c1";
+ public static String FA_ID_CARD = "\uf2c2";
+ public static String FA_IMAGE = "\uf03e";
+ public static String FA_IMAGES = "\uf302";
+ public static String FA_IMDB = "\uf2d8";
+ public static String FA_INBOX = "\uf01c";
+ public static String FA_INDENT = "\uf03c";
+ public static String FA_INDUSTRY = "\uf275";
+ public static String FA_INFO = "\uf129";
+ public static String FA_INFO_CIRCLE = "\uf05a";
+ public static String FA_INSTAGRAM = "\uf16d";
+ public static String FA_INTERNET_EXPLORER = "\uf26b";
+ public static String FA_IOXHOST = "\uf208";
+ public static String FA_ITALIC = "\uf033";
+ public static String FA_ITUNES = "\uf3b4";
+ public static String FA_ITUNES_NOTE = "\uf3b5";
+ public static String FA_I_CURSOR = "\uf246";
+ public static String FA_JENKINS = "\uf3b6";
+ public static String FA_JOGET = "\uf3b7";
+ public static String FA_JOOMLA = "\uf1aa";
+ public static String FA_JS = "\uf3b8";
+ public static String FA_JSFIDDLE = "\uf1cc";
+ public static String FA_JS_SQUARE = "\uf3b9";
+ public static String FA_KEY = "\uf084";
+ public static String FA_KEYBOARD = "\uf11c";
+ public static String FA_KEYCDN = "\uf3ba";
+ public static String FA_KICKSTARTER = "\uf3bb";
+ public static String FA_KICKSTARTER_K = "\uf3bc";
+ public static String FA_KORVUE = "\uf42f";
+ public static String FA_LANGUAGE = "\uf1ab";
+ public static String FA_LAPTOP = "\uf109";
+ public static String FA_LARAVEL = "\uf3bd";
+ public static String FA_LASTFM = "\uf202";
+ public static String FA_LASTFM_SQUARE = "\uf203";
+ public static String FA_LEAF = "\uf06c";
+ public static String FA_LEANPUB = "\uf212";
+ public static String FA_LEMON = "\uf094";
+ public static String FA_LESS = "\uf41d";
+ public static String FA_LEVEL_DOWN_ALT = "\uf3be";
+ public static String FA_LEVEL_UP_ALT = "\uf3bf";
+ public static String FA_LIFE_RING = "\uf1cd";
+ public static String FA_LIGHTBULB = "\uf0eb";
+ public static String FA_LINE = "\uf3c0";
+ public static String FA_LINK = "\uf0c1";
+ public static String FA_LINKEDIN = "\uf08c";
+ public static String FA_LINKEDIN_IN = "\uf0e1";
+ public static String FA_LINODE = "\uf2b8";
+ public static String FA_LINUX = "\uf17c";
+ public static String FA_LIRA_SIGN = "\uf195";
+ public static String FA_LIST = "\uf03a";
+ public static String FA_LIST_ALT = "\uf022";
+ public static String FA_LIST_OL = "\uf0cb";
+ public static String FA_LIST_UL = "\uf0ca";
+ public static String FA_LOCATION_ARROW = "\uf124";
+ public static String FA_LOCK = "\uf023";
+ public static String FA_LOCK_OPEN = "\uf3c1";
+ public static String FA_LONG_ARROW_ALT_DOWN = "\uf309";
+ public static String FA_LONG_ARROW_ALT_LEFT = "\uf30a";
+ public static String FA_LONG_ARROW_ALT_RIGHT = "\uf30b";
+ public static String FA_LONG_ARROW_ALT_UP = "\uf30c";
+ public static String FA_LOW_VISION = "\uf2a8";
+ public static String FA_LYFT = "\uf3c3";
+ public static String FA_MAGENTO = "\uf3c4";
+ public static String FA_MAGIC = "\uf0d0";
+ public static String FA_MAGNET = "\uf076";
+ public static String FA_MALE = "\uf183";
+ public static String FA_MAP = "\uf279";
+ public static String FA_MAP_MARKER = "\uf041";
+ public static String FA_MAP_MARKER_ALT = "\uf3c5";
+ public static String FA_MAP_PIN = "\uf276";
+ public static String FA_MAP_SIGNS = "\uf277";
+ public static String FA_MARS = "\uf222";
+ public static String FA_MARS_DOUBLE = "\uf227";
+ public static String FA_MARS_STROKE = "\uf229";
+ public static String FA_MARS_STROKE_H = "\uf22b";
+ public static String FA_MARS_STROKE_V = "\uf22a";
+ public static String FA_MAXCDN = "\uf136";
+ public static String FA_MEDAPPS = "\uf3c6";
+ public static String FA_MEDIUM = "\uf23a";
+ public static String FA_MEDIUM_M = "\uf3c7";
+ public static String FA_MEDKIT = "\uf0fa";
+ public static String FA_MEDRT = "\uf3c8";
+ public static String FA_MEETUP = "\uf2e0";
+ public static String FA_MEH = "\uf11a";
+ public static String FA_MERCURY = "\uf223";
+ public static String FA_MICROCHIP = "\uf2db";
+ public static String FA_MICROPHONE = "\uf130";
+ public static String FA_MICROPHONE_SLASH = "\uf131";
+ public static String FA_MICROSOFT = "\uf3ca";
+ public static String FA_MINUS = "\uf068";
+ public static String FA_MINUS_CIRCLE = "\uf056";
+ public static String FA_MINUS_SQUARE = "\uf146";
+ public static String FA_MIX = "\uf3cb";
+ public static String FA_MIXCLOUD = "\uf289";
+ public static String FA_MIZUNI = "\uf3cc";
+ public static String FA_MOBILE = "\uf10b";
+ public static String FA_MOBILE_ALT = "\uf3cd";
+ public static String FA_MODX = "\uf285";
+ public static String FA_MONERO = "\uf3d0";
+ public static String FA_MONEY_BILL_ALT = "\uf3d1";
+ public static String FA_MOON = "\uf186";
+ public static String FA_MOTORCYCLE = "\uf21c";
+ public static String FA_MOUSE_POINTER = "\uf245";
+ public static String FA_MUSIC = "\uf001";
+ public static String FA_NAPSTER = "\uf3d2";
+ public static String FA_NEUTER = "\uf22c";
+ public static String FA_NEWSPAPER = "\uf1ea";
+ public static String FA_NINTENDO_SWITCH = "\uf418";
+ public static String FA_NODE = "\uf419";
+ public static String FA_NODE_JS = "\uf3d3";
+ public static String FA_NPM = "\uf3d4";
+ public static String FA_NS8 = "\uf3d5";
+ public static String FA_NUTRITIONIX = "\uf3d6";
+ public static String FA_OBJECT_GROUP = "\uf247";
+ public static String FA_OBJECT_UNGROUP = "\uf248";
+ public static String FA_ODNOKLASSNIKI = "\uf263";
+ public static String FA_ODNOKLASSNIKI_SQUARE = "\uf264";
+ public static String FA_OPENCART = "\uf23d";
+ public static String FA_OPENID = "\uf19b";
+ public static String FA_OPERA = "\uf26a";
+ public static String FA_OPTIN_MONSTER = "\uf23c";
+ public static String FA_OSI = "\uf41a";
+ public static String FA_OUTDENT = "\uf03b";
+ public static String FA_PAGE4 = "\uf3d7";
+ public static String FA_PAGELINES = "\uf18c";
+ public static String FA_PAINT_BRUSH = "\uf1fc";
+ public static String FA_PALFED = "\uf3d8";
+ public static String FA_PALLET = "\uf482";
+ public static String FA_PAPERCLIP = "\uf0c6";
+ public static String FA_PAPER_PLANE = "\uf1d8";
+ public static String FA_PARAGRAPH = "\uf1dd";
+ public static String FA_PASTE = "\uf0ea";
+ public static String FA_PATREON = "\uf3d9";
+ public static String FA_PAUSE = "\uf04c";
+ public static String FA_PAUSE_CIRCLE = "\uf28b";
+ public static String FA_PAW = "\uf1b0";
+ public static String FA_PAYPAL = "\uf1ed";
+ public static String FA_PENCIL_ALT = "\uf303";
+ public static String FA_PEN_SQUARE = "\uf14b";
+ public static String FA_PERCENT = "\uf295";
+ public static String FA_PERISCOPE = "\uf3da";
+ public static String FA_PHABRICATOR = "\uf3db";
+ public static String FA_PHOENIX_FRAMEWORK = "\uf3dc";
+ public static String FA_PHONE = "\uf095";
+ public static String FA_PHONE_SQUARE = "\uf098";
+ public static String FA_PHONE_VOLUME = "\uf2a0";
+ public static String FA_PHP = "\uf457";
+ public static String FA_PIED_PIPER = "\uf2ae";
+ public static String FA_PIED_PIPER_ALT = "\uf1a8";
+ public static String FA_PIED_PIPER_PP = "\uf1a7";
+ public static String FA_PILLS = "\uf484";
+ public static String FA_PINTEREST = "\uf0d2";
+ public static String FA_PINTEREST_P = "\uf231";
+ public static String FA_PINTEREST_SQUARE = "\uf0d3";
+ public static String FA_PLANE = "\uf072";
+ public static String FA_PLAY = "\uf04b";
+ public static String FA_PLAYSTATION = "\uf3df";
+ public static String FA_PLAY_CIRCLE = "\uf144";
+ public static String FA_PLUG = "\uf1e6";
+ public static String FA_PLUS = "\uf067";
+ public static String FA_PLUS_CIRCLE = "\uf055";
+ public static String FA_PLUS_SQUARE = "\uf0fe";
+ public static String FA_PODCAST = "\uf2ce";
+ public static String FA_POUND_SIGN = "\uf154";
+ public static String FA_POWER_OFF = "\uf011";
+ public static String FA_PRINT = "\uf02f";
+ public static String FA_PRODUCT_HUNT = "\uf288";
+ public static String FA_PUSHED = "\uf3e1";
+ public static String FA_PUZZLE_PIECE = "\uf12e";
+ public static String FA_PYTHON = "\uf3e2";
+ public static String FA_QQ = "\uf1d6";
+ public static String FA_QRCODE = "\uf029";
+ public static String FA_QUESTION = "\uf128";
+ public static String FA_QUESTION_CIRCLE = "\uf059";
+ public static String FA_QUIDDITCH = "\uf458";
+ public static String FA_QUINSCAPE = "\uf459";
+ public static String FA_QUORA = "\uf2c4";
+ public static String FA_QUOTE_LEFT = "\uf10d";
+ public static String FA_QUOTE_RIGHT = "\uf10e";
+ public static String FA_RANDOM = "\uf074";
+ public static String FA_RAVELRY = "\uf2d9";
+ public static String FA_REACT = "\uf41b";
+ public static String FA_REBEL = "\uf1d0";
+ public static String FA_RECYCLE = "\uf1b8";
+ public static String FA_REDDIT = "\uf1a1";
+ public static String FA_REDDIT_ALIEN = "\uf281";
+ public static String FA_REDDIT_SQUARE = "\uf1a2";
+ public static String FA_REDO = "\uf01e";
+ public static String FA_REDO_ALT = "\uf2f9";
+ public static String FA_RED_RIVER = "\uf3e3";
+ public static String FA_REGISTERED = "\uf25d";
+ public static String FA_RENDACT = "\uf3e4";
+ public static String FA_RENREN = "\uf18b";
+ public static String FA_REPLY = "\uf3e5";
+ public static String FA_REPLYD = "\uf3e6";
+ public static String FA_REPLY_ALL = "\uf122";
+ public static String FA_RESOLVING = "\uf3e7";
+ public static String FA_RETWEET = "\uf079";
+ public static String FA_ROAD = "\uf018";
+ public static String FA_ROCKET = "\uf135";
+ public static String FA_ROCKETCHAT = "\uf3e8";
+ public static String FA_ROCKRMS = "\uf3e9";
+ public static String FA_RSS = "\uf09e";
+ public static String FA_RSS_SQUARE = "\uf143";
+ public static String FA_RUBLE_SIGN = "\uf158";
+ public static String FA_RUPEE_SIGN = "\uf156";
+ public static String FA_SAFARI = "\uf267";
+ public static String FA_SASS = "\uf41e";
+ public static String FA_SAVE = "\uf0c7";
+ public static String FA_SCHLIX = "\uf3ea";
+ public static String FA_SCRIBD = "\uf28a";
+ public static String FA_SEARCH = "\uf002";
+ public static String FA_SEARCHENGIN = "\uf3eb";
+ public static String FA_SEARCH_MINUS = "\uf010";
+ public static String FA_SEARCH_PLUS = "\uf00e";
+ public static String FA_SELLCAST = "\uf2da";
+ public static String FA_SELLSY = "\uf213";
+ public static String FA_SERVER = "\uf233";
+ public static String FA_SERVICESTACK = "\uf3ec";
+ public static String FA_SHARE = "\uf064";
+ public static String FA_SHARE_ALT = "\uf1e0";
+ public static String FA_SHARE_ALT_SQUARE = "\uf1e1";
+ public static String FA_SHARE_SQUARE = "\uf14d";
+ public static String FA_SHEKEL_SIGN = "\uf20b";
+ public static String FA_SHIELD_ALT = "\uf3ed";
+ public static String FA_SHIP = "\uf21a";
+ public static String FA_SHIPPING_FAST = "\uf48b";
+ public static String FA_SHIRTSINBULK = "\uf214";
+ public static String FA_SHOPPING_BAG = "\uf290";
+ public static String FA_SHOPPING_BASKET = "\uf291";
+ public static String FA_SHOPPING_CART = "\uf07a";
+ public static String FA_SHOWER = "\uf2cc";
+ public static String FA_SIGNAL = "\uf012";
+ public static String FA_SIGN_IN_ALT = "\uf2f6";
+ public static String FA_SIGN_LANGUAGE = "\uf2a7";
+ public static String FA_SIGN_OUT_ALT = "\uf2f5";
+ public static String FA_SIMPLYBUILT = "\uf215";
+ public static String FA_SISTRIX = "\uf3ee";
+ public static String FA_SITEMAP = "\uf0e8";
+ public static String FA_SKYATLAS = "\uf216";
+ public static String FA_SKYPE = "\uf17e";
+ public static String FA_SLACK = "\uf198";
+ public static String FA_SLACK_HASH = "\uf3ef";
+ public static String FA_SLIDERS_H = "\uf1de";
+ public static String FA_SLIDESHARE = "\uf1e7";
+ public static String FA_SMILE = "\uf118";
+ public static String FA_SNAPCHAT = "\uf2ab";
+ public static String FA_SNAPCHAT_GHOST = "\uf2ac";
+ public static String FA_SNAPCHAT_SQUARE = "\uf2ad";
+ public static String FA_SNOWFLAKE = "\uf2dc";
+ public static String FA_SORT = "\uf0dc";
+ public static String FA_SORT_ALPHA_DOWN = "\uf15d";
+ public static String FA_SORT_ALPHA_UP = "\uf15e";
+ public static String FA_SORT_AMOUNT_DOWN = "\uf160";
+ public static String FA_SORT_AMOUNT_UP = "\uf161";
+ public static String FA_SORT_DOWN = "\uf0dd";
+ public static String FA_SORT_NUMERIC_DOWN = "\uf162";
+ public static String FA_SORT_NUMERIC_UP = "\uf163";
+ public static String FA_SORT_UP = "\uf0de";
+ public static String FA_SOUNDCLOUD = "\uf1be";
+ public static String FA_SPACE_SHUTTLE = "\uf197";
+ public static String FA_SPEAKAP = "\uf3f3";
+ public static String FA_SPINNER = "\uf110";
+ public static String FA_SPOTIFY = "\uf1bc";
+ public static String FA_SQUARE = "\uf0c8";
+ public static String FA_SQUARE_FULL = "\uf45c";
+ public static String FA_STACK_EXCHANGE = "\uf18d";
+ public static String FA_STACK_OVERFLOW = "\uf16c";
+ public static String FA_STAR = "\uf005";
+ public static String FA_STAR_HALF = "\uf089";
+ public static String FA_STAYLINKED = "\uf3f5";
+ public static String FA_STEAM = "\uf1b6";
+ public static String FA_STEAM_SQUARE = "\uf1b7";
+ public static String FA_STEAM_SYMBOL = "\uf3f6";
+ public static String FA_STEP_BACKWARD = "\uf048";
+ public static String FA_STEP_FORWARD = "\uf051";
+ public static String FA_STETHOSCOPE = "\uf0f1";
+ public static String FA_STICKER_MULE = "\uf3f7";
+ public static String FA_STICKY_NOTE = "\uf249";
+ public static String FA_STOP = "\uf04d";
+ public static String FA_STOPWATCH = "\uf2f2";
+ public static String FA_STOP_CIRCLE = "\uf28d";
+ public static String FA_STRAVA = "\uf428";
+ public static String FA_STREET_VIEW = "\uf21d";
+ public static String FA_STRIKETHROUGH = "\uf0cc";
+ public static String FA_STRIPE = "\uf429";
+ public static String FA_STRIPE_S = "\uf42a";
+ public static String FA_STUDIOVINARI = "\uf3f8";
+ public static String FA_STUMBLEUPON = "\uf1a4";
+ public static String FA_STUMBLEUPON_CIRCLE = "\uf1a3";
+ public static String FA_SUBSCRIPT = "\uf12c";
+ public static String FA_SUBWAY = "\uf239";
+ public static String FA_SUITCASE = "\uf0f2";
+ public static String FA_SUN = "\uf185";
+ public static String FA_SUPERPOWERS = "\uf2dd";
+ public static String FA_SUPERSCRIPT = "\uf12b";
+ public static String FA_SUPPLE = "\uf3f9";
+ public static String FA_SYNC = "\uf021";
+ public static String FA_SYNC_ALT = "\uf2f1";
+ public static String FA_SYRINGE = "\uf48e";
+ public static String FA_TABLE = "\uf0ce";
+ public static String FA_TABLET = "\uf10a";
+ public static String FA_TABLET_ALT = "\uf3fa";
+ public static String FA_TABLE_TENNIS = "\uf45d";
+ public static String FA_TACHOMETER_ALT = "\uf3fd";
+ public static String FA_TAG = "\uf02b";
+ public static String FA_TAGS = "\uf02c";
+ public static String FA_TASKS = "\uf0ae";
+ public static String FA_TAXI = "\uf1ba";
+ public static String FA_TELEGRAM = "\uf2c6";
+ public static String FA_TELEGRAM_PLANE = "\uf3fe";
+ public static String FA_TENCENT_WEIBO = "\uf1d5";
+ public static String FA_TERMINAL = "\uf120";
+ public static String FA_TEXT_HEIGHT = "\uf034";
+ public static String FA_TEXT_WIDTH = "\uf035";
+ public static String FA_TH = "\uf00a";
+ public static String FA_THEMEISLE = "\uf2b2";
+ public static String FA_THERMOMETER = "\uf491";
+ public static String FA_THERMOMETER_EMPTY = "\uf2cb";
+ public static String FA_THERMOMETER_FULL = "\uf2c7";
+ public static String FA_THERMOMETER_HALF = "\uf2c9";
+ public static String FA_THERMOMETER_QUARTER = "\uf2ca";
+ public static String FA_THERMOMETER_THREE_QUARTERS = "\uf2c8";
+ public static String FA_THUMBS_DOWN = "\uf165";
+ public static String FA_THUMBS_UP = "\uf164";
+ public static String FA_THUMBTACK = "\uf08d";
+ public static String FA_TH_LARGE = "\uf009";
+ public static String FA_TH_LIST = "\uf00b";
+ public static String FA_TICKET_ALT = "\uf3ff";
+ public static String FA_TIMES = "\uf00d";
+ public static String FA_TIMES_CIRCLE = "\uf057";
+ public static String FA_TINT = "\uf043";
+ public static String FA_TOGGLE_OFF = "\uf204";
+ public static String FA_TOGGLE_ON = "\uf205";
+ public static String FA_TRADEMARK = "\uf25c";
+ public static String FA_TRAIN = "\uf238";
+ public static String FA_TRANSGENDER = "\uf224";
+ public static String FA_TRANSGENDER_ALT = "\uf225";
+ public static String FA_TRASH = "\uf1f8";
+ public static String FA_TRASH_ALT = "\uf2ed";
+ public static String FA_TREE = "\uf1bb";
+ public static String FA_TRELLO = "\uf181";
+ public static String FA_TRIPADVISOR = "\uf262";
+ public static String FA_TROPHY = "\uf091";
+ public static String FA_TRUCK = "\uf0d1";
+ public static String FA_TTY = "\uf1e4";
+ public static String FA_TUMBLR = "\uf173";
+ public static String FA_TUMBLR_SQUARE = "\uf174";
+ public static String FA_TV = "\uf26c";
+ public static String FA_TWITCH = "\uf1e8";
+ public static String FA_TWITTER = "\uf099";
+ public static String FA_TWITTER_SQUARE = "\uf081";
+ public static String FA_TYPO3 = "\uf42b";
+ public static String FA_UBER = "\uf402";
+ public static String FA_UIKIT = "\uf403";
+ public static String FA_UMBRELLA = "\uf0e9";
+ public static String FA_UNDERLINE = "\uf0cd";
+ public static String FA_UNDO = "\uf0e2";
+ public static String FA_UNDO_ALT = "\uf2ea";
+ public static String FA_UNIREGISTRY = "\uf404";
+ public static String FA_UNIVERSAL_ACCESS = "\uf29a";
+ public static String FA_UNIVERSITY = "\uf19c";
+ public static String FA_UNLINK = "\uf127";
+ public static String FA_UNLOCK = "\uf09c";
+ public static String FA_UNLOCK_ALT = "\uf13e";
+ public static String FA_UNTAPPD = "\uf405";
+ public static String FA_UPLOAD = "\uf093";
+ public static String FA_USB = "\uf287";
+ public static String FA_USER = "\uf007";
+ public static String FA_USERS = "\uf0c0";
+ public static String FA_USER_CIRCLE = "\uf2bd";
+ public static String FA_USER_MD = "\uf0f0";
+ public static String FA_USER_PLUS = "\uf234";
+ public static String FA_USER_SECRET = "\uf21b";
+ public static String FA_USER_TIMES = "\uf235";
+ public static String FA_USSUNNAH = "\uf407";
+ public static String FA_UTENSILS = "\uf2e7";
+ public static String FA_UTENSIL_SPOON = "\uf2e5";
+ public static String FA_VAADIN = "\uf408";
+ public static String FA_VENUS = "\uf221";
+ public static String FA_VENUS_DOUBLE = "\uf226";
+ public static String FA_VENUS_MARS = "\uf228";
+ public static String FA_VIACOIN = "\uf237";
+ public static String FA_VIADEO = "\uf2a9";
+ public static String FA_VIADEO_SQUARE = "\uf2aa";
+ public static String FA_VIBER = "\uf409";
+ public static String FA_VIDEO = "\uf03d";
+ public static String FA_VIMEO = "\uf40a";
+ public static String FA_VIMEO_SQUARE = "\uf194";
+ public static String FA_VIMEO_V = "\uf27d";
+ public static String FA_VINE = "\uf1ca";
+ public static String FA_VK = "\uf189";
+ public static String FA_VNV = "\uf40b";
+ public static String FA_VOLLEYBALL_BALL = "\uf45f";
+ public static String FA_VOLUME_DOWN = "\uf027";
+ public static String FA_VOLUME_OFF = "\uf026";
+ public static String FA_VOLUME_UP = "\uf028";
+ public static String FA_VUEJS = "\uf41f";
+ public static String FA_WAREHOUSE = "\uf494";
+ public static String FA_WEIBO = "\uf18a";
+ public static String FA_WEIGHT = "\uf496";
+ public static String FA_WEIXIN = "\uf1d7";
+ public static String FA_WHATSAPP = "\uf232";
+ public static String FA_WHATSAPP_SQUARE = "\uf40c";
+ public static String FA_WHEELCHAIR = "\uf193";
+ public static String FA_WHMCS = "\uf40d";
+ public static String FA_WIFI = "\uf1eb";
+ public static String FA_WIKIPEDIA_W = "\uf266";
+ public static String FA_WINDOWS = "\uf17a";
+ public static String FA_WINDOW_CLOSE = "\uf410";
+ public static String FA_WINDOW_MAXIMIZE = "\uf2d0";
+ public static String FA_WINDOW_MINIMIZE = "\uf2d1";
+ public static String FA_WINDOW_RESTORE = "\uf2d2";
+ public static String FA_WON_SIGN = "\uf159";
+ public static String FA_WORDPRESS = "\uf19a";
+ public static String FA_WORDPRESS_SIMPLE = "\uf411";
+ public static String FA_WPBEGINNER = "\uf297";
+ public static String FA_WPEXPLORER = "\uf2de";
+ public static String FA_WPFORMS = "\uf298";
+ public static String FA_WRENCH = "\uf0ad";
+ public static String FA_XBOX = "\uf412";
+ public static String FA_XING = "\uf168";
+ public static String FA_XING_SQUARE = "\uf169";
+ public static String FA_YAHOO = "\uf19e";
+ public static String FA_YANDEX = "\uf413";
+ public static String FA_YANDEX_INTERNATIONAL = "\uf414";
+ public static String FA_YELP = "\uf1e9";
+ public static String FA_YEN_SIGN = "\uf157";
+ public static String FA_YOAST = "\uf2b1";
+ public static String FA_YOUTUBE = "\uf167";
+ public static String FA_YOUTUBE_SQUARE = "\uf431";
+ public static String FA_Y_COMBINATOR = "\uf23b";
+}
+
diff --git a/flexibletoast/src/main/java/naseem/ali/flexibletoast/ToastBuilder.java b/flexibletoast/src/main/java/naseem/ali/flexibletoast/ToastBuilder.java
new file mode 100644
index 0000000..f3a22dc
--- /dev/null
+++ b/flexibletoast/src/main/java/naseem/ali/flexibletoast/ToastBuilder.java
@@ -0,0 +1,139 @@
+package naseem.ali.flexibletoast;
+
+import android.content.Context;
+import android.graphics.Color;
+import android.graphics.Typeface;
+import android.support.annotation.ColorInt;
+
+/**
+ * Created by Naseem on 02-03-2018.
+ */
+
+public class ToastBuilder {
+
+ private String leftIcon=FA.FA_ANDROID;
+ private String topIcon=FA.FA_ANDROID;
+ private int imgLeftIcon;
+ private int imgTopIcon;
+ private String text=null;
+ private int toastType= EasyToast.INFO;
+ private int duration= EasyToast.LENGTH_SHORT;
+ private boolean showTopIcon=true;
+ private Context context;
+ private int whichLeft=0;//even For FA, Odd For Drawable
+ private int whichTop=0;//even For FA, Odd For Drawable
+ private int textColor= Color.parseColor("#FFFFFF");
+ private float textSize=14;
+ private int leftIconColor=Color.parseColor("#FFFFFF");
+ private Typeface typeface;
+
+ public ToastBuilder(Context context,String text,int duration,int toastType,String topIcon,String leftIcon,boolean showTopIcon){
+ this.context=context;
+ this.text=text;
+ this.duration=duration;
+ this.toastType=toastType;
+ this.topIcon=topIcon;
+ this.leftIcon=leftIcon;
+ this.showTopIcon=showTopIcon;
+ }
+
+ public ToastBuilder(Context context){
+ this.context=context;
+ }
+
+ public ToastBuilder text(String text){
+ this.text=text;
+ return this;
+ }
+
+ public ToastBuilder type(int toastType){
+ this.toastType=toastType;
+ switch (toastType){
+ case EasyToast.WARNING:
+ leftIcon=FA.FA_BELL;
+ break;
+ case EasyToast.INFO:
+ leftIcon=FA.FA_INFO_CIRCLE;
+ break;
+ case EasyToast.CONFUSING:
+ leftIcon=FA.FA_BULLSEYE;
+ break;
+ case EasyToast.ERROR:
+ leftIcon=FA.FA_EXCLAMATION_CIRCLE;
+ break;
+ case EasyToast.SUCCESS:
+ leftIcon=FA.FA_CHECK;
+ break;
+ default:
+ leftIcon=FA.FA_ANDROID;
+ }
+ return this;
+ }
+
+ public ToastBuilder duration(int duration){
+ this.duration=duration;
+ return this;
+ }
+
+ public ToastBuilder leftIcon(String leftIcon){
+ this.leftIcon=leftIcon;
+ whichLeft=0;
+ return this;
+ }
+
+ public ToastBuilder topIcon(String topIcon){
+ this.topIcon=topIcon;
+ whichTop=0;
+ return this;
+ }
+
+ public ToastBuilder showTopIcon(boolean showTopIcon){
+ this.showTopIcon=showTopIcon;
+ return this;
+ }
+
+ public ToastBuilder leftIcon(int drawableLeft){
+ this.imgLeftIcon=drawableLeft;
+ whichLeft=1;
+ return this;
+ }
+
+ public ToastBuilder topIcon(int drawableRight){
+ this.imgTopIcon=drawableRight;
+ whichTop=1;
+ return this;
+ }
+
+ public ToastBuilder textSize(int size){
+ this.textSize=size;
+ return this;
+ }
+
+ public ToastBuilder textColor(@ColorInt int textColor){
+ this.textColor=textColor;
+ return this;
+ }
+
+ public ToastBuilder leftIconColor(@ColorInt int leftIconColor){
+ this.leftIconColor=leftIconColor;
+ return this;
+ }
+
+ public ToastBuilder typeface(Typeface typeface){
+ this.typeface=typeface;
+ return this;
+ }
+
+ public EasyToast build(){
+ if(whichLeft==0&&whichTop==0)
+ return new EasyToast(context,text,duration,toastType,leftIcon,topIcon,showTopIcon,textSize,textColor,leftIconColor,typeface);
+ else if(whichLeft==1&&whichTop==0)
+ return new EasyToast(context,text,duration,toastType,imgLeftIcon,topIcon,showTopIcon,textSize,textColor,leftIconColor,typeface);
+ else if(whichLeft==0&&whichTop==1)
+ return new EasyToast(context,text,duration,toastType,leftIcon,imgTopIcon,showTopIcon,textSize,textColor,leftIconColor,typeface);
+ else
+ return new EasyToast(context,text,duration,toastType,imgLeftIcon,imgTopIcon,showTopIcon,textSize,textColor,leftIconColor,typeface);
+
+ }
+
+}
diff --git a/flexibletoast/src/main/res/drawable/confusing_shape.xml b/flexibletoast/src/main/res/drawable/confusing_shape.xml
new file mode 100644
index 0000000..ccc3fd0
--- /dev/null
+++ b/flexibletoast/src/main/res/drawable/confusing_shape.xml
@@ -0,0 +1,19 @@
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/flexibletoast/src/main/res/drawable/default_shape.xml b/flexibletoast/src/main/res/drawable/default_shape.xml
new file mode 100644
index 0000000..96d8994
--- /dev/null
+++ b/flexibletoast/src/main/res/drawable/default_shape.xml
@@ -0,0 +1,19 @@
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/flexibletoast/src/main/res/drawable/error_shape.xml b/flexibletoast/src/main/res/drawable/error_shape.xml
new file mode 100644
index 0000000..8a9b14e
--- /dev/null
+++ b/flexibletoast/src/main/res/drawable/error_shape.xml
@@ -0,0 +1,19 @@
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/flexibletoast/src/main/res/drawable/info_shape.xml b/flexibletoast/src/main/res/drawable/info_shape.xml
new file mode 100644
index 0000000..007ffbb
--- /dev/null
+++ b/flexibletoast/src/main/res/drawable/info_shape.xml
@@ -0,0 +1,19 @@
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/flexibletoast/src/main/res/drawable/success_shape.xml b/flexibletoast/src/main/res/drawable/success_shape.xml
new file mode 100644
index 0000000..e36a4a4
--- /dev/null
+++ b/flexibletoast/src/main/res/drawable/success_shape.xml
@@ -0,0 +1,19 @@
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/flexibletoast/src/main/res/drawable/warning_shape.xml b/flexibletoast/src/main/res/drawable/warning_shape.xml
new file mode 100644
index 0000000..5a61ac9
--- /dev/null
+++ b/flexibletoast/src/main/res/drawable/warning_shape.xml
@@ -0,0 +1,19 @@
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/flexibletoast/src/main/res/layout/toast_layout.xml b/flexibletoast/src/main/res/layout/toast_layout.xml
new file mode 100644
index 0000000..655ee5e
--- /dev/null
+++ b/flexibletoast/src/main/res/layout/toast_layout.xml
@@ -0,0 +1,87 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/flexibletoast/src/main/res/values/strings.xml b/flexibletoast/src/main/res/values/strings.xml
new file mode 100644
index 0000000..178e0dc
--- /dev/null
+++ b/flexibletoast/src/main/res/values/strings.xml
@@ -0,0 +1,3 @@
+
+ FlexibleToast
+
diff --git a/flexibletoast/src/test/java/naseem/ali/flexibletoast/ExampleUnitTest.java b/flexibletoast/src/test/java/naseem/ali/flexibletoast/ExampleUnitTest.java
new file mode 100644
index 0000000..2a27fab
--- /dev/null
+++ b/flexibletoast/src/test/java/naseem/ali/flexibletoast/ExampleUnitTest.java
@@ -0,0 +1,17 @@
+package naseem.ali.flexibletoast;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Example local unit test, which will execute on the development machine (host).
+ *
+ * @see Testing documentation
+ */
+public class ExampleUnitTest {
+ @Test
+ public void addition_isCorrect() throws Exception {
+ assertEquals(4, 2 + 2);
+ }
+}
\ No newline at end of file
diff --git a/gradle.properties b/gradle.properties
new file mode 100644
index 0000000..aac7c9b
--- /dev/null
+++ b/gradle.properties
@@ -0,0 +1,17 @@
+# Project-wide Gradle settings.
+
+# IDE (e.g. Android Studio) users:
+# Gradle settings configured through the IDE *will override*
+# any settings specified in this file.
+
+# For more details on how to configure your build environment visit
+# http://www.gradle.org/docs/current/userguide/build_environment.html
+
+# Specifies the JVM arguments used for the daemon process.
+# The setting is particularly useful for tweaking memory settings.
+org.gradle.jvmargs=-Xmx1536m
+
+# When configured, Gradle will run in incubating parallel mode.
+# This option should only be used with decoupled projects. More details, visit
+# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
+# org.gradle.parallel=true
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
new file mode 100644
index 0000000..13372ae
Binary files /dev/null and b/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..d339c5b
--- /dev/null
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Fri Mar 02 10:04:03 IST 2018
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
diff --git a/gradlew b/gradlew
new file mode 100644
index 0000000..9d82f78
--- /dev/null
+++ b/gradlew
@@ -0,0 +1,160 @@
+#!/usr/bin/env bash
+
+##############################################################################
+##
+## Gradle start up script for UN*X
+##
+##############################################################################
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn ( ) {
+ echo "$*"
+}
+
+die ( ) {
+ echo
+ echo "$*"
+ echo
+ exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+case "`uname`" in
+ CYGWIN* )
+ cygwin=true
+ ;;
+ Darwin* )
+ darwin=true
+ ;;
+ MINGW* )
+ msys=true
+ ;;
+esac
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+else
+ JAVACMD="java"
+ which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ] ; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ] ; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+ fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+ GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+ APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+ CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+ JAVACMD=`cygpath --unix "$JAVACMD"`
+
+ # We build the pattern for arguments to be converted via cygpath
+ ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+ SEP=""
+ for dir in $ROOTDIRSRAW ; do
+ ROOTDIRS="$ROOTDIRS$SEP$dir"
+ SEP="|"
+ done
+ OURCYGPATTERN="(^($ROOTDIRS))"
+ # Add a user-defined pattern to the cygpath arguments
+ if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+ OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+ fi
+ # Now convert the arguments - kludge to limit ourselves to /bin/sh
+ i=0
+ for arg in "$@" ; do
+ CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+ CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
+
+ if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
+ eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+ else
+ eval `echo args$i`="\"$arg\""
+ fi
+ i=$((i+1))
+ done
+ case $i in
+ (0) set -- ;;
+ (1) set -- "$args0" ;;
+ (2) set -- "$args0" "$args1" ;;
+ (3) set -- "$args0" "$args1" "$args2" ;;
+ (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+ (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+ (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+ (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+ (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+ (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+ esac
+fi
+
+# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
+function splitJvmOpts() {
+ JVM_OPTS=("$@")
+}
+eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
+JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+
+exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
diff --git a/gradlew.bat b/gradlew.bat
new file mode 100644
index 0000000..8a0b282
--- /dev/null
+++ b/gradlew.bat
@@ -0,0 +1,90 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windowz variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+if "%@eval[2+2]" == "4" goto 4NT_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+goto execute
+
+:4NT_args
+@rem Get arguments from the 4NT Shell from JP Software
+set CMD_LINE_ARGS=%$
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff --git a/settings.gradle b/settings.gradle
new file mode 100644
index 0000000..89bb0ae
--- /dev/null
+++ b/settings.gradle
@@ -0,0 +1 @@
+include ':app', ':flexibletoast'