diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/MainActivity.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/MainActivity.java index 65818e3..184a6f7 100644 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/MainActivity.java +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/MainActivity.java @@ -20,7 +20,8 @@ public class MainActivity extends AppCompatActivity { // Passing each menu ID as a set of Ids because each // menu should be considered as top level destinations. AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder( - R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications) + R.id.navigation_tacnet, R.id.navigation_editor, R.id.navigation_settings, + R.id.navigation_search) .build(); NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment); NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration); diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/TACNETFragment.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/TACNETFragment.java deleted file mode 100644 index 005dde5..0000000 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/TACNETFragment.java +++ /dev/null @@ -1,64 +0,0 @@ -package org.timecrafters.TimeCraftersConfigurationTool; - -import android.os.Bundle; - -import androidx.fragment.app.Fragment; - -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; - -/** - * A simple {@link Fragment} subclass. - * Use the {@link TACNETFragment#newInstance} factory method to - * create an instance of this fragment. - */ -public class TACNETFragment extends Fragment { - - // TODO: Rename parameter arguments, choose names that match - // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER - private static final String ARG_PARAM1 = "param1"; - private static final String ARG_PARAM2 = "param2"; - - // TODO: Rename and change types of parameters - private String mParam1; - private String mParam2; - - public TACNETFragment() { - // Required empty public constructor - } - - /** - * Use this factory method to create a new instance of - * this fragment using the provided parameters. - * - * @param param1 Parameter 1. - * @param param2 Parameter 2. - * @return A new instance of fragment TACNETFragment. - */ - // TODO: Rename and change types and number of parameters - public static TACNETFragment newInstance(String param1, String param2) { - TACNETFragment fragment = new TACNETFragment(); - Bundle args = new Bundle(); - args.putString(ARG_PARAM1, param1); - args.putString(ARG_PARAM2, param2); - fragment.setArguments(args); - return fragment; - } - - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - if (getArguments() != null) { - mParam1 = getArguments().getString(ARG_PARAM1); - mParam2 = getArguments().getString(ARG_PARAM2); - } - } - - @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, - Bundle savedInstanceState) { - // Inflate the layout for this fragment - return inflater.inflate(R.layout.fragment_tacnet, container, false); - } -} \ No newline at end of file diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/home/HomeFragment.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/editor/EditorFragment.java similarity index 58% rename from app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/home/HomeFragment.java rename to app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/editor/EditorFragment.java index 7819042..6dcf113 100644 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/home/HomeFragment.java +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/editor/EditorFragment.java @@ -1,4 +1,4 @@ -package org.timecrafters.TimeCraftersConfigurationTool.ui.home; +package org.timecrafters.TimeCraftersConfigurationTool.ui.editor; import android.os.Bundle; import android.view.LayoutInflater; @@ -14,17 +14,17 @@ import androidx.lifecycle.ViewModelProviders; import org.timecrafters.TimeCraftersConfigurationTool.R; -public class HomeFragment extends Fragment { +public class EditorFragment extends Fragment { - private HomeViewModel homeViewModel; + private EditorViewModel editorViewModel; public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - homeViewModel = - ViewModelProviders.of(this).get(HomeViewModel.class); - View root = inflater.inflate(R.layout.fragment_home, container, false); - final TextView textView = root.findViewById(R.id.text_home); - homeViewModel.getText().observe(getViewLifecycleOwner(), new Observer() { + editorViewModel = + ViewModelProviders.of(this).get(EditorViewModel.class); + View root = inflater.inflate(R.layout.fragment_editor, container, false); + final TextView textView = root.findViewById(R.id.text_editor); + editorViewModel.getText().observe(getViewLifecycleOwner(), new Observer() { @Override public void onChanged(@Nullable String s) { textView.setText(s); diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/home/HomeViewModel.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/editor/EditorViewModel.java similarity index 58% rename from app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/home/HomeViewModel.java rename to app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/editor/EditorViewModel.java index 99d13a2..7616a28 100644 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/home/HomeViewModel.java +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/editor/EditorViewModel.java @@ -1,16 +1,16 @@ -package org.timecrafters.TimeCraftersConfigurationTool.ui.home; +package org.timecrafters.TimeCraftersConfigurationTool.ui.editor; import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; import androidx.lifecycle.ViewModel; -public class HomeViewModel extends ViewModel { +public class EditorViewModel extends ViewModel { private MutableLiveData mText; - public HomeViewModel() { + public EditorViewModel() { mText = new MutableLiveData<>(); - mText.setValue("This is home fragment"); + mText.setValue("This is editor fragment"); } public LiveData getText() { diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/dashboard/DashboardFragment.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/search/SearchFragment.java similarity index 57% rename from app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/dashboard/DashboardFragment.java rename to app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/search/SearchFragment.java index fd0bea5..83c87c4 100644 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/dashboard/DashboardFragment.java +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/search/SearchFragment.java @@ -1,4 +1,4 @@ -package org.timecrafters.TimeCraftersConfigurationTool.ui.dashboard; +package org.timecrafters.TimeCraftersConfigurationTool.ui.search; import android.os.Bundle; import android.view.LayoutInflater; @@ -14,17 +14,17 @@ import androidx.lifecycle.ViewModelProviders; import org.timecrafters.TimeCraftersConfigurationTool.R; -public class DashboardFragment extends Fragment { +public class SearchFragment extends Fragment { - private DashboardViewModel dashboardViewModel; + private SearchViewModel searchViewModel; public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - dashboardViewModel = - ViewModelProviders.of(this).get(DashboardViewModel.class); - View root = inflater.inflate(R.layout.fragment_dashboard, container, false); - final TextView textView = root.findViewById(R.id.text_dashboard); - dashboardViewModel.getText().observe(getViewLifecycleOwner(), new Observer() { + searchViewModel = + ViewModelProviders.of(this).get(SearchViewModel.class); + View root = inflater.inflate(R.layout.fragment_search, container, false); + final TextView textView = root.findViewById(R.id.text_search); + searchViewModel.getText().observe(getViewLifecycleOwner(), new Observer() { @Override public void onChanged(@Nullable String s) { textView.setText(s); diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/dashboard/DashboardViewModel.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/search/SearchViewModel.java similarity index 57% rename from app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/dashboard/DashboardViewModel.java rename to app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/search/SearchViewModel.java index fce8a33..030a594 100644 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/dashboard/DashboardViewModel.java +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/search/SearchViewModel.java @@ -1,16 +1,16 @@ -package org.timecrafters.TimeCraftersConfigurationTool.ui.dashboard; +package org.timecrafters.TimeCraftersConfigurationTool.ui.search; import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; import androidx.lifecycle.ViewModel; -public class DashboardViewModel extends ViewModel { +public class SearchViewModel extends ViewModel { private MutableLiveData mText; - public DashboardViewModel() { + public SearchViewModel() { mText = new MutableLiveData<>(); - mText.setValue("This is dashboard fragment"); + mText.setValue("This is search fragment"); } public LiveData getText() { diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/notifications/NotificationsFragment.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/settings/SettingsFragment.java similarity index 56% rename from app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/notifications/NotificationsFragment.java rename to app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/settings/SettingsFragment.java index 2b8fb5a..11ebe88 100644 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/notifications/NotificationsFragment.java +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/settings/SettingsFragment.java @@ -1,4 +1,4 @@ -package org.timecrafters.TimeCraftersConfigurationTool.ui.notifications; +package org.timecrafters.TimeCraftersConfigurationTool.ui.settings; import android.os.Bundle; import android.view.LayoutInflater; @@ -14,17 +14,17 @@ import androidx.lifecycle.ViewModelProviders; import org.timecrafters.TimeCraftersConfigurationTool.R; -public class NotificationsFragment extends Fragment { +public class SettingsFragment extends Fragment { - private NotificationsViewModel notificationsViewModel; + private SettingsViewModel settingsViewModel; public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - notificationsViewModel = - ViewModelProviders.of(this).get(NotificationsViewModel.class); - View root = inflater.inflate(R.layout.fragment_notifications, container, false); - final TextView textView = root.findViewById(R.id.text_notifications); - notificationsViewModel.getText().observe(getViewLifecycleOwner(), new Observer() { + settingsViewModel = + ViewModelProviders.of(this).get(SettingsViewModel.class); + View root = inflater.inflate(R.layout.fragment_settings, container, false); + final TextView textView = root.findViewById(R.id.text_settings); + settingsViewModel.getText().observe(getViewLifecycleOwner(), new Observer() { @Override public void onChanged(@Nullable String s) { textView.setText(s); diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/notifications/NotificationsViewModel.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/settings/SettingsViewModel.java similarity index 55% rename from app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/notifications/NotificationsViewModel.java rename to app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/settings/SettingsViewModel.java index cc7aa27..adab8d9 100644 --- a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/notifications/NotificationsViewModel.java +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/settings/SettingsViewModel.java @@ -1,16 +1,16 @@ -package org.timecrafters.TimeCraftersConfigurationTool.ui.notifications; +package org.timecrafters.TimeCraftersConfigurationTool.ui.settings; import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; import androidx.lifecycle.ViewModel; -public class NotificationsViewModel extends ViewModel { +public class SettingsViewModel extends ViewModel { private MutableLiveData mText; - public NotificationsViewModel() { + public SettingsViewModel() { mText = new MutableLiveData<>(); - mText.setValue("This is notifications fragment"); + mText.setValue("This is settings fragment"); } public LiveData getText() { diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/tacnet/TACNETFragment.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/tacnet/TACNETFragment.java new file mode 100644 index 0000000..9932e2d --- /dev/null +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/tacnet/TACNETFragment.java @@ -0,0 +1,35 @@ +package org.timecrafters.TimeCraftersConfigurationTool.ui.tacnet; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Observer; +import androidx.lifecycle.ViewModelProviders; + +import org.timecrafters.TimeCraftersConfigurationTool.R; + +public class TACNETFragment extends Fragment { + + private TACNETViewModel TACNETViewModel; + + public View onCreateView(@NonNull LayoutInflater inflater, + ViewGroup container, Bundle savedInstanceState) { + TACNETViewModel = + ViewModelProviders.of(this).get(TACNETViewModel.class); + View root = inflater.inflate(R.layout.fragment_tacnet, container, false); + final TextView textView = root.findViewById(R.id.text_tacnet); + TACNETViewModel.getText().observe(getViewLifecycleOwner(), new Observer() { + @Override + public void onChanged(@Nullable String s) { + textView.setText(s); + } + }); + return root; + } +} \ No newline at end of file diff --git a/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/tacnet/TACNETViewModel.java b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/tacnet/TACNETViewModel.java new file mode 100644 index 0000000..5f721e6 --- /dev/null +++ b/app/src/main/java/org/timecrafters/TimeCraftersConfigurationTool/ui/tacnet/TACNETViewModel.java @@ -0,0 +1,19 @@ +package org.timecrafters.TimeCraftersConfigurationTool.ui.tacnet; + +import androidx.lifecycle.LiveData; +import androidx.lifecycle.MutableLiveData; +import androidx.lifecycle.ViewModel; + +public class TACNETViewModel extends ViewModel { + + private MutableLiveData mText; + + public TACNETViewModel() { + mText = new MutableLiveData<>(); + mText.setValue("This is TACNET fragment"); + } + + public LiveData getText() { + return mText; + } +} \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_dashboard.xml b/app/src/main/res/layout/fragment_editor.xml similarity index 90% rename from app/src/main/res/layout/fragment_dashboard.xml rename to app/src/main/res/layout/fragment_editor.xml index 166ab0e..90b5b6b 100644 --- a/app/src/main/res/layout/fragment_dashboard.xml +++ b/app/src/main/res/layout/fragment_editor.xml @@ -4,10 +4,10 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context=".ui.dashboard.DashboardFragment"> + tools:context=".ui.editor.EditorFragment"> + tools:context=".ui.search.SearchFragment"> + tools:context=".ui.settings.SettingsFragment"> - + tools:context=".ui.tacnet.TACNETFragment"> - - - \ No newline at end of file + android:layout_height="wrap_content" + android:layout_marginStart="8dp" + android:layout_marginTop="8dp" + android:layout_marginEnd="8dp" + android:textAlignment="center" + android:textSize="20sp" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + \ No newline at end of file diff --git a/app/src/main/res/navigation/mobile_navigation.xml b/app/src/main/res/navigation/mobile_navigation.xml index fda9e78..973cec5 100644 --- a/app/src/main/res/navigation/mobile_navigation.xml +++ b/app/src/main/res/navigation/mobile_navigation.xml @@ -3,28 +3,28 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/mobile_navigation" - app:startDestination="@+id/navigation_home"> + app:startDestination="@+id/navigation_editor"> + + + android:name="org.timecrafters.TimeCraftersConfigurationTool.ui.editor.EditorFragment" + android:label="@string/title_editor" + tools:layout="@layout/fragment_editor" /> - + android:id="@+id/navigation_settings" + android:name="org.timecrafters.TimeCraftersConfigurationTool.ui.settings.SettingsFragment" + android:label="@string/title_settings" + tools:layout="@layout/fragment_settings" /> - + android:id="@+id/navigation_search" + android:name="org.timecrafters.TimeCraftersConfigurationTool.ui.search.SearchFragment" + android:label="@string/title_search" + tools:layout="@layout/fragment_search" /> \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 9976da3..9ced1ce 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,9 +1,5 @@ TimeCraftersConfigurationTool - Home - Dashboard - Notifications - Hello blank fragment Editor Search