diff options
Diffstat (limited to 'Software/Android_Studio')
38 files changed, 633 insertions, 5 deletions
diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ApplicationComponent.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ApplicationComponent.java index 63852f2bc..fbb524754 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ApplicationComponent.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ApplicationComponent.java @@ -6,7 +6,9 @@ import com.twine.colorcapture.dialogs.processing.ProcessingDialog; import com.twine.colorcapture.dialogs.progress.ProgressDialog; import com.twine.colorcapture.dialogs.success.SuccessDialog; import com.twine.colorcapture.dialogs.welcome.WelcomeDialog; +import com.twine.colorcapture.views.about.AboutFragment; import com.twine.colorcapture.views.capture.CaptureFragment; +import com.twine.colorcapture.views.card.CardFragment; import com.twine.colorcapture.views.mycolors.MyColorsFragment; import com.twine.colorcapture.views.loading.LoadingActivity; import com.twine.colorcapture.views.main.MainActivity; @@ -15,6 +17,7 @@ import com.twine.colorcapture.views.rename.RenameFragment; import com.twine.colorcapture.views.result.ResultFragment; import com.twine.colorcapture.views.sendtoemail.SendToEmailFragment; import com.twine.colorcapture.views.sendtomachine.SendToMachineFragment; +import com.twine.colorcapture.views.twine.TwineFragment; import javax.inject.Singleton; @@ -57,4 +60,10 @@ public interface ApplicationComponent void inject(RenameFragment renameFragment); void inject(SendToEmailFragment sendToEmailFragment); + + void inject(AboutFragment aboutFragment); + + void inject(TwineFragment twineFragment); + + void inject(CardFragment cardFragment); } diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ViewModelsModule.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ViewModelsModule.java index 8b43a5cec..0a161bd7b 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ViewModelsModule.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/dagger/ViewModelsModule.java @@ -9,7 +9,9 @@ import com.twine.colorcapture.dialogs.success.SuccessDialogVM; import com.twine.colorcapture.dialogs.welcome.WelcomeDialogVM; import com.twine.colorcapture.navigation.INavigationProvider; import com.twine.colorcapture.notification.INotificationProvider; +import com.twine.colorcapture.views.about.AboutFragmentVM; import com.twine.colorcapture.views.capture.CaptureFragmentVM; +import com.twine.colorcapture.views.card.CardFragmentVM; import com.twine.colorcapture.views.loading.LoadingActivityVM; import com.twine.colorcapture.views.mycolors.MyColorsFragmentVM; import com.twine.colorcapture.views.main.MainActivityVM; @@ -18,6 +20,7 @@ import com.twine.colorcapture.views.rename.RenameFragmentVM; import com.twine.colorcapture.views.result.ResultFragmentVM; import com.twine.colorcapture.views.sendtoemail.SendToEmailFragmentVM; import com.twine.colorcapture.views.sendtomachine.SendToMachineFragmentVM; +import com.twine.colorcapture.views.twine.TwineFragmentVM; import com.twine.colorcapture.web.ITCCService; import javax.inject.Singleton; @@ -105,6 +108,27 @@ public class ViewModelsModule @Provides @Singleton + public AboutFragmentVM provideAboutFragmentVM() + { + return new AboutFragmentVM(); + } + + @Provides + @Singleton + public TwineFragmentVM provideTwineFragmentVM() + { + return new TwineFragmentVM(); + } + + @Provides + @Singleton + public CardFragmentVM provideCardFragmentVM(INavigationProvider navigationProvider) + { + return new CardFragmentVM(navigationProvider); + } + + @Provides + @Singleton public ProgressDialogVM provideProgressDialogVM() { return new ProgressDialogVM(); diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/navigation/NavigationFragment.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/navigation/NavigationFragment.java index 0d54f2bf4..64b7ba9f9 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/navigation/NavigationFragment.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/navigation/NavigationFragment.java @@ -14,4 +14,12 @@ public enum NavigationFragment @PreventHistory @HideHeader SendToEmail, + @PreventHistory + About, + @PreventHistory + Twine, + @PreventHistory + Card, + @PreventHistory + CardOrder, } diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/AboutFragment.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/AboutFragment.java new file mode 100644 index 000000000..bdd82b50e --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/AboutFragment.java @@ -0,0 +1,30 @@ +package com.twine.colorcapture.views.about; + +import android.app.Fragment; + +import com.twine.colorcapture.App; +import com.twine.colorcapture.R; +import com.twine.colorcapture.databinding.FragmentAboutBinding; +import com.twine.colorcapture.mvvm.FragmentBase; + +public class AboutFragment extends FragmentBase<FragmentAboutBinding,AboutFragmentVM> implements IAboutFragment +{ + + @Override + protected int getLayoutId() + { + return R.layout.fragment_about; + } + + @Override + protected void inject() + { + App.getComponent().inject(this); + } + + @Override + public String getTitle() + { + return "About"; + } +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/AboutFragmentVM.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/AboutFragmentVM.java new file mode 100644 index 000000000..d7e4a6704 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/AboutFragmentVM.java @@ -0,0 +1,53 @@ +package com.twine.colorcapture.views.about; + +import android.content.Intent; +import android.content.pm.PackageInfo; +import android.content.pm.PackageManager; +import android.net.Uri; + +import com.twine.colorcapture.App; +import com.twine.colorcapture.mvvm.DependencyProperty; +import com.twine.colorcapture.mvvm.RelayCommand; +import com.twine.colorcapture.mvvm.ViewModelBase; +import com.twine.colorcapture.navigation.TabState; +import com.twine.colorcapture.navigation.TabStateManager; + +public class AboutFragmentVM extends ViewModelBase<IAboutFragment> +{ + public RelayCommand contactCommand; + public RelayCommand termsOfUseCommand; + public RelayCommand privacyPolicyCommand; + + public DependencyProperty<String> version; + + public AboutFragmentVM() + { + contactCommand = new RelayCommand(() -> openBrowser("http://twine-s.com/contact/contact-us")); + termsOfUseCommand = new RelayCommand(() -> openBrowser("http://twine-s.com/privacy-policy")); + privacyPolicyCommand = new RelayCommand(() -> openBrowser("http://twine-s.com/privacy-policy")); + version = new DependencyProperty<>(""); + + try + { + PackageInfo pInfo = App.getContext().getPackageManager().getPackageInfo(App.getContext().getPackageName(), 0); + version.set(Integer.toString(pInfo.versionCode)); + } + catch (PackageManager.NameNotFoundException e) + { + e.printStackTrace(); + } + } + + private void openBrowser(String url) + { + Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); + App.getContext().startActivity(browserIntent); + } + + @Override + protected void onNavigatedTo() + { + super.onNavigatedTo(); + TabStateManager.getInstance().state.set(TabState.More); + } +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/IAboutFragment.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/IAboutFragment.java new file mode 100644 index 000000000..2343421c3 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/about/IAboutFragment.java @@ -0,0 +1,7 @@ +package com.twine.colorcapture.views.about; + +import com.twine.colorcapture.mvvm.IView; + +public interface IAboutFragment extends IView +{ +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/CardFragment.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/CardFragment.java new file mode 100644 index 000000000..bdcac205d --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/CardFragment.java @@ -0,0 +1,29 @@ +package com.twine.colorcapture.views.card; + +import android.app.Fragment; + +import com.twine.colorcapture.App; +import com.twine.colorcapture.R; +import com.twine.colorcapture.databinding.FragmentCardBinding; +import com.twine.colorcapture.mvvm.FragmentBase; + +public class CardFragment extends FragmentBase<FragmentCardBinding,CardFragmentVM> implements ICardFragment +{ + @Override + protected int getLayoutId() + { + return R.layout.fragment_card; + } + + @Override + protected void inject() + { + App.getComponent().inject(this); + } + + @Override + public String getTitle() + { + return "Card"; + } +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/CardFragmentVM.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/CardFragmentVM.java new file mode 100644 index 000000000..357a94e23 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/CardFragmentVM.java @@ -0,0 +1,15 @@ +package com.twine.colorcapture.views.card; + +import com.twine.colorcapture.mvvm.ViewModelBase; +import com.twine.colorcapture.navigation.INavigationProvider; + +import javax.inject.Inject; + +public class CardFragmentVM extends ViewModelBase<ICardFragment> +{ + @Inject + public CardFragmentVM(INavigationProvider navigationProvider) + { + + } +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/ICardFragment.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/ICardFragment.java new file mode 100644 index 000000000..464bf4fab --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/card/ICardFragment.java @@ -0,0 +1,8 @@ +package com.twine.colorcapture.views.card; + +import com.twine.colorcapture.mvvm.IView; + +public interface ICardFragment extends IView +{ + +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/main/MainActivityVM.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/main/MainActivityVM.java index c7c8eb7a1..72a088fa2 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/main/MainActivityVM.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/main/MainActivityVM.java @@ -32,6 +32,8 @@ public class MainActivityVM extends ViewModelBase<IMainActivity> public RelayCommand moreCommand; public RelayCommand howToUseCommand; + public RelayCommand aboutCommand; + public RelayCommand aboutTwineCommand; @Inject public MainActivityVM(Bus eventBus, INotificationProvider notificationProvider, INavigationProvider navigationProvider) @@ -44,6 +46,8 @@ public class MainActivityVM extends ViewModelBase<IMainActivity> navigationProvider.addFragmentNavigationListener(this::onNavigation); howToUseCommand = new RelayCommand(this::handleHowToUseCommand); + aboutCommand = new RelayCommand(this::handleAboutCommand); + aboutTwineCommand = new RelayCommand(this::handleAboutTwineCommand); captureCommand = new RelayCommand(this::handleCaptureCommand); myColorsCommand = new RelayCommand(this::handleMyColorsCommand); @@ -81,7 +85,21 @@ public class MainActivityVM extends ViewModelBase<IMainActivity> private void handleHowToUseCommand() { view.closeMenu(); - notificationProvider.showDialog(new WelcomeDialog(), (vm) -> { }); + notificationProvider.showDialog(new WelcomeDialog(), (vm) -> + { + }); + } + + private void handleAboutCommand() + { + view.closeMenu(); + navigationProvider.navigateTo(NavigationFragment.About, true, false); + } + + private void handleAboutTwineCommand() + { + view.closeMenu(); + navigationProvider.navigateTo(NavigationFragment.Twine, true, false); } private void onNavigation(NavigationFragment navigationFragment) diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/ITwineFragment.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/ITwineFragment.java new file mode 100644 index 000000000..f915eb8e3 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/ITwineFragment.java @@ -0,0 +1,7 @@ +package com.twine.colorcapture.views.twine; + +import com.twine.colorcapture.mvvm.IView; + +public interface ITwineFragment extends IView +{ +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/TwineFragment.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/TwineFragment.java new file mode 100644 index 000000000..5f2c722df --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/TwineFragment.java @@ -0,0 +1,29 @@ +package com.twine.colorcapture.views.twine; + +import android.app.Fragment; + +import com.twine.colorcapture.App; +import com.twine.colorcapture.R; +import com.twine.colorcapture.databinding.FragmentTwineBinding; +import com.twine.colorcapture.mvvm.FragmentBase; + +public class TwineFragment extends FragmentBase<FragmentTwineBinding,TwineFragmentVM> implements ITwineFragment +{ + @Override + protected int getLayoutId() + { + return R.layout.fragment_twine; + } + + @Override + protected void inject() + { + App.getComponent().inject(this); + } + + @Override + public String getTitle() + { + return "Twine"; + } +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/TwineFragmentVM.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/TwineFragmentVM.java new file mode 100644 index 000000000..2afe56b0d --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/twine/TwineFragmentVM.java @@ -0,0 +1,33 @@ +package com.twine.colorcapture.views.twine; + +import android.content.Intent; +import android.net.Uri; + +import com.twine.colorcapture.App; +import com.twine.colorcapture.mvvm.RelayCommand; +import com.twine.colorcapture.mvvm.ViewModelBase; +import com.twine.colorcapture.navigation.TabState; +import com.twine.colorcapture.navigation.TabStateManager; + +public class TwineFragmentVM extends ViewModelBase<ITwineFragment> +{ + public RelayCommand contactCommand; + + public TwineFragmentVM() + { + contactCommand = new RelayCommand(() -> openBrowser("http://twine-s.com/contact/contact-us")); + } + + private void openBrowser(String url) + { + Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); + App.getContext().startActivity(browserIntent); + } + + @Override + protected void onNavigatedTo() + { + super.onNavigatedTo(); + TabStateManager.getInstance().state.set(TabState.More); + } +} diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-hdpi/icon.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-hdpi/icon.png Binary files differindex 5920654e4..35367194d 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-hdpi/icon.png +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-hdpi/icon.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-hdpi/logo_twine.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-hdpi/logo_twine.png Binary files differnew file mode 100644 index 000000000..363924f69 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-hdpi/logo_twine.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-mdpi/icon.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-mdpi/icon.png Binary files differindex f0889f9a3..27b1e5f35 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-mdpi/icon.png +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-mdpi/icon.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-mdpi/logo_twine.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-mdpi/logo_twine.png Binary files differnew file mode 100644 index 000000000..7df280515 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-mdpi/logo_twine.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-sw600dp-mdpi/icon.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-sw600dp-mdpi/icon.png Binary files differindex 40e46cd1f..6bc4398b2 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-sw600dp-mdpi/icon.png +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-sw600dp-mdpi/icon.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-sw600dp-mdpi/logo_twine.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-sw600dp-mdpi/logo_twine.png Binary files differnew file mode 100644 index 000000000..633caaad5 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-sw600dp-mdpi/logo_twine.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xhdpi/icon.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xhdpi/icon.png Binary files differindex 40e46cd1f..6bc4398b2 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xhdpi/icon.png +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xhdpi/icon.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xhdpi/logo_twine.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xhdpi/logo_twine.png Binary files differnew file mode 100644 index 000000000..633caaad5 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xhdpi/logo_twine.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxhdpi/icon.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxhdpi/icon.png Binary files differindex 968ebf639..4247642f9 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxhdpi/icon.png +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxhdpi/icon.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxhdpi/logo_twine.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxhdpi/logo_twine.png Binary files differnew file mode 100644 index 000000000..011679c81 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxhdpi/logo_twine.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxxhdpi/icon.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxxhdpi/icon.png Binary files differindex 25650a2ff..3c0905522 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxxhdpi/icon.png +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxxhdpi/icon.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxxhdpi/logo_twine.png b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxxhdpi/logo_twine.png Binary files differnew file mode 100644 index 000000000..955e28e25 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable-xxxhdpi/logo_twine.png diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/drawable/dark_gradient.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable/dark_gradient.xml new file mode 100644 index 000000000..336cd7f4b --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/drawable/dark_gradient.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8"?> +<shape xmlns:android="http://schemas.android.com/apk/res/android"> + <gradient + android:type="linear" + android:angle="-90" + android:startColor="#0e2340" + android:endColor="#07101e" /> +</shape>
\ No newline at end of file diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/activity_main.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/activity_main.xml index 9830c53db..cfe7878ff 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/activity_main.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/activity_main.xml @@ -28,7 +28,8 @@ <LinearLayout android:id="@+id/header" android:layout_width="match_parent" - android:layout_height="80dp" + android:layout_height="wrap_content" + android:paddingBottom="10dp" android:background="@color/colorPrimaryBackground" android:gravity="center_vertical" android:elevation="20dp" diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_error.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_error.xml index 4e172c584..64bfee94d 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_error.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_error.xml @@ -19,6 +19,7 @@ android:layout_height="@dimen/dialog_height" android:layout_centerVertical="true" android:layout_centerHorizontal="true" + android:elevation="10dp" android:background="@drawable/border_primary_background"> <FrameLayout diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_progress.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_progress.xml index b0cd8215a..0bd706518 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_progress.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_progress.xml @@ -18,6 +18,7 @@ android:layout_width="@dimen/dialog_width" android:layout_height="@dimen/dialog_height" android:layout_centerVertical="true" + android:elevation="10dp" android:layout_centerHorizontal="true" android:background="@drawable/border_primary_background"> diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_success.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_success.xml index 8e6bfb3fc..4c099af9f 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_success.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_success.xml @@ -18,6 +18,7 @@ android:layout_width="@dimen/dialog_width" android:layout_height="@dimen/dialog_height" android:layout_centerVertical="true" + android:elevation="10dp" android:layout_centerHorizontal="true" android:background="@drawable/border_primary_background"> diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_welcome.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_welcome.xml index 44bc25f51..e9dc5d0b9 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_welcome.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/dialog_welcome.xml @@ -25,6 +25,7 @@ android:background="@drawable/welcome_dialog_border" android:foregroundGravity="center" android:layout_marginLeft="30dp" + android:layout_marginRight="30dp" android:layout_marginTop="50dp" android:layout_marginBottom="100dp" diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_about.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_about.xml new file mode 100644 index 000000000..923feca18 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_about.xml @@ -0,0 +1,173 @@ +<layout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:bind="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools"> + + <data> + + <variable + name="vm" + type="com.twine.colorcapture.views.about.AboutFragmentVM" /> + </data> + + <RelativeLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@color/colorDarkBackground" + android:layoutDirection="ltr" + android:paddingLeft="20dp" + android:paddingRight="20dp" + tools:context="com.twine.colorcapture.views.about.AboutFragment"> + + <android.support.v7.widget.AppCompatTextView + android:id="@+id/txtTitle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_centerHorizontal="true" + android:layout_gravity="center" + android:layout_marginTop="15dp" + android:fontFamily="@font/flexo_bold" + android:letterSpacing="0.07" + android:text="About SnapMatch" + android:textSize="@dimen/large_font_size" /> + + <android.support.v7.widget.AppCompatTextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@id/txtTitle" + android:layout_centerHorizontal="true" + android:layout_marginTop="40dp" + android:lineSpacingExtra="4dp" + android:fontFamily="@font/flexo_light" + android:gravity="center" + android:letterSpacing="0.07" + android:text="@string/about_info" + android:textAlignment="center" + android:textSize="@dimen/medium_font_size" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_centerVertical="true" + android:layout_margin="20dp" + android:orientation="vertical"> + + <FrameLayout + android:layout_width="match_parent" + android:layout_height="wrap_content"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="2dp" + android:background="@drawable/accent_gradient" /> + + <android.support.v7.widget.AppCompatTextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center" + android:layout_margin="20dp" + android:fontFamily="@font/flexo_medium" + android:letterSpacing="0.06" + android:text="Terms of use" + android:textSize="@dimen/medium_font_size" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="2dp" + android:background="@drawable/accent_gradient" /> + + </LinearLayout> + + <Button + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@drawable/button_transparent_fill_ripple" + bind:command="@{vm.termsOfUseCommand}"/> + </FrameLayout> + + <FrameLayout + android:layout_width="match_parent" + android:layout_height="wrap_content"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical"> + + <android.support.v7.widget.AppCompatTextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center" + android:layout_margin="20dp" + android:fontFamily="@font/flexo_medium" + android:letterSpacing="0.06" + android:text="Privacy Policy" + android:textSize="@dimen/medium_font_size" /> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="2dp" + android:background="@drawable/accent_gradient" /> + + </LinearLayout> + + <Button + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@drawable/button_transparent_fill_ripple" + bind:command="@{vm.privacyPolicyCommand}"/> + </FrameLayout> + + </LinearLayout> + + + <com.twine.colorcapture.controls.CircleActionButton + android:layout_width="@dimen/result_button_width" + android:layout_centerHorizontal="true" + android:layout_height="wrap_content" + android:layout_alignParentBottom="true" + android:layout_marginLeft="40dp" + android:layout_marginRight="40dp" + android:layout_marginBottom="60dp" + bind:text=" Contact us" + bind:textSize="@dimen/medium_font_size" + bind:src="@drawable/email" + bind:command="@{vm.contactCommand}" + android:clickable="true" /> + + <LinearLayout + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_alignParentBottom="true" + android:layout_centerHorizontal="true" + android:layout_margin="20dp" + android:layout_gravity="center" + android:orientation="horizontal"> + + <android.support.v7.widget.AppCompatTextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:fontFamily="@font/flexo_medium" + android:textColor="@color/text_gray" + android:letterSpacing="0.06" + android:text="Version" + android:textSize="@dimen/small_font_size" /> + + <android.support.v7.widget.AppCompatTextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:fontFamily="@font/flexo_medium" + android:layout_marginLeft="10dp" + android:letterSpacing="0.06" + android:textColor="@color/text_gray" + android:text="@{vm.version}" + android:textSize="@dimen/small_font_size" /> + + </LinearLayout> + + </RelativeLayout> +</layout> diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_card.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_card.xml new file mode 100644 index 000000000..04160c140 --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_card.xml @@ -0,0 +1,50 @@ +<layout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:bind="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools"> + + <data> + + <variable + name="vm" + type="com.twine.colorcapture.views.card.CardFragmentVM" /> + </data> + + <RelativeLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@color/colorDarkBackground" + android:layoutDirection="ltr" + android:paddingLeft="20dp" + android:paddingRight="20dp" + tools:context="com.twine.colorcapture.views.card.CardFragment"> + + <android.support.v7.widget.AppCompatTextView + android:id="@+id/txtTitle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_centerHorizontal="true" + android:layout_gravity="center" + android:layout_marginTop="15dp" + android:fontFamily="@font/flexo_bold" + android:letterSpacing="0.07" + android:text="Get a twine TTC™ card " + android:textSize="@dimen/large_font_size" /> + + <android.support.v7.widget.AppCompatTextView + android:id="@+id/txtPro" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@id/txtTitle" + android:layout_centerHorizontal="true" + android:layout_marginTop="40dp" + android:lineSpacingExtra="4dp" + android:fontFamily="@font/flexo_light" + android:gravity="center" + android:letterSpacing="0.07" + android:text="@string/order_card_pro" + android:textAlignment="center" + android:textSize="@dimen/medium_font_size" /> + + + </RelativeLayout> +</layout> diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_twine.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_twine.xml new file mode 100644 index 000000000..02b15004f --- /dev/null +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/fragment_twine.xml @@ -0,0 +1,104 @@ +<layout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:bind="http://schemas.android.com/apk/res-auto" + xmlns:tools="http://schemas.android.com/tools"> + + <data> + + <variable + name="vm" + type="com.twine.colorcapture.views.twine.TwineFragmentVM" /> + </data> + + <RelativeLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="@drawable/dark_gradient" + android:layoutDirection="ltr" + android:paddingLeft="20dp" + android:paddingRight="20dp" + tools:context="com.twine.colorcapture.views.twine.TwineFragment"> + + <android.support.v7.widget.AppCompatTextView + android:id="@+id/txtTitle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_centerHorizontal="true" + android:layout_gravity="center" + android:layout_marginTop="15dp" + android:fontFamily="@font/flexo_bold" + android:letterSpacing="0.07" + android:text="About Twine" + android:textSize="@dimen/large_font_size" /> + + <ImageView + android:id="@+id/img" + android:layout_below="@id/txtTitle" + android:layout_centerHorizontal="true" + android:layout_marginTop="40dp" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@drawable/logo_twine"/> + + <android.support.v7.widget.AppCompatTextView + android:id="@+id/txt_desc" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@id/img" + android:layout_centerHorizontal="true" + android:layout_marginTop="40dp" + android:lineSpacingExtra="4dp" + android:fontFamily="@font/flexo_light" + android:gravity="center" + android:letterSpacing="0.07" + android:text="@string/about_twine" + android:textAlignment="center" + android:textSize="@dimen/medium_font_size" /> + + <android.support.v7.widget.AppCompatTextView + android:id="@+id/txt3" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@id/txt_desc" + android:layout_centerHorizontal="true" + android:layout_marginTop="40dp" + android:lineSpacingExtra="4dp" + android:fontFamily="@font/flexo_light" + android:gravity="center" + android:letterSpacing="0.07" + android:text="To learn more visit us at:" + android:textAlignment="center" + android:textSize="@dimen/medium_font_size" /> + + <android.support.v7.widget.AppCompatTextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@id/txt3" + android:layout_marginTop="5dp" + android:layout_centerHorizontal="true" + android:lineSpacingExtra="4dp" + android:fontFamily="@font/flexo_light" + android:gravity="center" + android:letterSpacing="0.07" + android:textColorLink="@color/white" + android:text="http://twine-s.com" + android:textAlignment="center" + android:autoLink="web" + android:textSize="@dimen/medium_font_size" /> + + + <com.twine.colorcapture.controls.CircleActionButton + android:layout_width="@dimen/result_button_width" + android:layout_centerHorizontal="true" + android:layout_height="wrap_content" + android:layout_alignParentBottom="true" + android:layout_marginLeft="40dp" + android:layout_marginRight="40dp" + android:layout_marginBottom="60dp" + bind:text=" Contact us" + bind:textSize="@dimen/medium_font_size" + bind:src="@drawable/email" + bind:command="@{vm.contactCommand}" + android:clickable="true" /> + + </RelativeLayout> +</layout> diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/side_menu.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/side_menu.xml index 3ee18a1b7..e5e15f4b7 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/layout/side_menu.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/layout/side_menu.xml @@ -75,6 +75,7 @@ <Button android:layout_width="match_parent" android:layout_height="match_parent" + bind:command="@{vm.aboutTwineCommand}" android:background="@drawable/button_transparent_fill_ripple"/> </FrameLayout> @@ -120,6 +121,7 @@ <Button android:layout_width="match_parent" android:layout_height="match_parent" + bind:command="@{vm.aboutCommand}" android:background="@drawable/button_transparent_fill_ripple"/> </FrameLayout> diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/values/colors.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/values/colors.xml index f3be907a5..22828c302 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/values/colors.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/values/colors.xml @@ -12,7 +12,7 @@ <color name="colorPrimaryBackground">#0e2340</color> <color name="colorDarkBackground">#07101e</color> - <color name="colorBlueMask">#EB09172A</color> + <color name="colorBlueMask">#EB071220</color> <color name="colorWhiteMask">#B71D3150</color> <color name="colorGradientAccent1">#26d440</color> diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/values/sizes.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/values/sizes.xml index 825ac5312..6b64e2eb1 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/values/sizes.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/values/sizes.xml @@ -3,6 +3,6 @@ <dimen name="dialog_width">313.9dp</dimen> <dimen name="dialog_height">202.6dp</dimen> <dimen name="progress_size">80dp</dimen> - <dimen name="result_color_size">67dp</dimen> - <dimen name="result_button_width">-1</dimen> + <dimen name="result_color_size">63dp</dimen> + <dimen name="result_button_width">-1px</dimen> </resources>
\ No newline at end of file diff --git a/Software/Android_Studio/ColorCapture/app/src/main/res/values/strings.xml b/Software/Android_Studio/ColorCapture/app/src/main/res/values/strings.xml index ebb9cfd4c..f187544db 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/res/values/strings.xml +++ b/Software/Android_Studio/ColorCapture/app/src/main/res/values/strings.xml @@ -17,4 +17,20 @@ <string name="my_color">My Color</string> <string name="have_a_twine_system"><u>Have a Twine system?</u></string> + + <string name="about_info"> + <![CDATA[SnapMatch is a simple and easy to use color matching application based on Twine’s TCC™ technology. Just place the card on an object and it will match the color!]]> + </string> + + <string name="about_twine"> + <![CDATA[Twine is revolutionizing the textile industry with its digital thread technology.]]> + </string> + + <string name="order_card_pro"> + <![CDATA[For optimal color matching, we highly recommend to order an official Twine TTC™ card]]> + </string> + + <string name="order_card_home"> + <![CDATA[Want to use the application right away? No problem. You can print the card using your office/home color printer.]]> + </string> </resources> |
