diff --git a/.idea/.gitignore b/.idea/.gitignore
deleted file mode 100644
index 26d3352..0000000
--- a/.idea/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-# Default ignored files
-/shelf/
-/workspace.xml
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 993c0db..1cb7932 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -3,14 +3,66 @@
+
+
+
+
diff --git a/.idea/render.experimental.xml b/.idea/render.experimental.xml
new file mode 100644
index 0000000..8ec256a
--- /dev/null
+++ b/.idea/render.experimental.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 92ccd38..b751441 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,7 +1,11 @@
plugins {
id 'com.android.application'
-}
+ id 'kotlin-android'
+}
+apply plugin: 'com.android.application'
+apply plugin: 'kotlin-android'
+apply plugin: 'kotlin-kapt'
android {
compileSdk 31
@@ -11,13 +15,13 @@ android {
targetSdk 31
versionCode 1
versionName "1.0"
-
+ vectorDrawables.useSupportLibrary = true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
- minifyEnabled false
+ minifyEnabled = false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
@@ -25,22 +29,35 @@ android {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
+ viewBinding{
+ enabled = true
+ }
buildFeatures {
viewBinding true
}
}
dependencies {
+ implementation 'com.google.android.material:material:'
+ implementation 'androidx.appcompat:appcompat:1.3.1'
+ implementation 'com.google.android.material:material:1.4.0'
+ implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
+ implementation 'androidx.legacy:legacy-support-v4:1.0.0'
+ implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.4.0'
+ implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0'
+ implementation 'androidx.recyclerview:recyclerview:1.2.1'
+ testImplementation 'junit:junit:4.13.2'
+ androidTestImplementation 'androidx.test.ext:junit:1.1.3'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
+ implementation 'androidx.appcompat:appcompat:1.3.1'
+ implementation 'com.google.android.material:material:1.4.0'
+ implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
+ implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
+ implementation 'androidx.core:core-ktx:1.7.0'
+ implementation 'androidx.appcompat:appcompat:1.3.1'
+ implementation 'com.google.android.material:material:1.4.0'
+ implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
+ implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
+ implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
- implementation 'androidx.appcompat:appcompat:1.2.0'
- implementation 'com.google.android.material:material:1.3.0'
- implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
- implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.1'
- implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
- implementation 'androidx.navigation:navigation-fragment:2.3.5'
- implementation 'androidx.navigation:navigation-ui:2.3.5'
- implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0'
- testImplementation 'junit:junit:4.+'
- androidTestImplementation 'androidx.test.ext:junit:1.1.2'
- androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5a269ff..c9c14cd 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -5,7 +5,7 @@
diff --git a/app/src/main/java/com/example/geometry/BottomSheet.kt b/app/src/main/java/com/example/geometry/BottomSheet.kt
new file mode 100644
index 0000000..5228c5e
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/BottomSheet.kt
@@ -0,0 +1,22 @@
+package com.example.geometry
+
+import android.os.Bundle
+import androidx.appcompat.app.AppCompatActivity
+import androidx.navigation.Navigation.findNavController
+import androidx.navigation.findNavController
+import androidx.navigation.ui.NavigationUI
+import androidx.navigation.ui.NavigationUI.setupWithNavController
+import androidx.navigation.ui.setupWithNavController
+import com.google.android.material.bottomnavigation.BottomNavigationView
+
+class BottomSheet : AppCompatActivity() {
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+ setContentView(R.layout.bottom_sheet
+ )
+ val navView = findViewById(R.id.bottom_navigation_view)
+ val navController = findNavController(R.id.navigation_host_fragment)
+
+ navView.setupWithNavController(navController)
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ButtonActivity.java b/app/src/main/java/com/example/geometry/ButtonActivity.java
new file mode 100644
index 0000000..b991449
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ButtonActivity.java
@@ -0,0 +1,7 @@
+package com.example.geometry;
+
+import androidx.appcompat.app.AppCompatActivity;
+
+public class ButtonActivity extends AppCompatActivity {
+
+}
diff --git a/app/src/main/java/com/example/geometry/Draw2D.kt b/app/src/main/java/com/example/geometry/Draw2D.kt
new file mode 100644
index 0000000..be19eec
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/Draw2D.kt
@@ -0,0 +1,68 @@
+package com.example.geometry
+
+import android.content.Context
+import android.content.res.Resources
+import android.graphics.*
+import android.view.View
+import android.graphics.BitmapFactory
+
+class Draw2D(context: Context?) : View(context) {
+
+private val paint: Paint = Paint()
+private val rect: Rect = Rect()
+ val res: Resources = this.resources
+private var bitmap: Bitmap = BitmapFactory.decodeResource(res, R.drawable.ic_cursor)
+
+ override fun onDraw(canvas: Canvas?) {
+ super.onDraw(canvas)
+
+ paint.apply {
+ style = Paint.Style.FILL // стиль Заливка
+ color = Color.WHITE // закрашиваем холст белым цветом
+ }
+ canvas?.drawPaint(paint)
+
+ // Солнце
+ paint.apply {
+ isAntiAlias = true
+ color = Color.YELLOW
+ }
+ canvas?.drawCircle(width - 30F, 30F, 25F, paint)
+
+ // Лужайка
+ paint.color = Color.GREEN
+ canvas?.drawRect(0F, height - 30F, width.toFloat(), height.toFloat(), paint)
+
+ // Текст над лужайкой
+ paint.apply {
+ color = Color.BLUE
+ style = Paint.Style.FILL
+ isAntiAlias = true
+ textSize = 32F
+ }
+ canvas?.drawText("Лужайка только для котов", 30F, height - 32F, paint)
+
+ // Лучик солнца
+ val x = width - 170F
+ val y = 190F
+
+ paint.apply {
+ color = Color.GRAY
+ style = Paint.Style.FILL
+ textSize = 27F
+ }
+
+ val beam = "Лучик солнца!"
+
+ canvas?.save()
+ canvas?.rotate(-45F, x + rect.exactCenterX(), y + rect.exactCenterY())
+ canvas?.drawText(beam, x, y, paint)
+
+ canvas?.restore()
+
+ canvas?.drawBitmap(
+ bitmap, (width - bitmap.width).toFloat(), (height - bitmap.height
+ - 10).toFloat(), paint
+ )
+ }
+ }
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/MainActivity.java b/app/src/main/java/com/example/geometry/MainActivity.java
deleted file mode 100644
index 6ae9d43..0000000
--- a/app/src/main/java/com/example/geometry/MainActivity.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.example.geometry;
-
-import android.os.Bundle;
-
-import com.google.android.material.bottomnavigation.BottomNavigationView;
-
-import androidx.annotation.Nullable;
-import androidx.appcompat.app.AppCompatActivity;
-import androidx.navigation.NavController;
-import androidx.navigation.Navigation;
-import androidx.navigation.ui.AppBarConfiguration;
-import androidx.navigation.ui.NavigationUI;
-
-import com.example.geometry.databinding.ActivityMainBinding;
-
-public class MainActivity extends AppCompatActivity {
-
- private ActivityMainBinding binding;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- binding = ActivityMainBinding.inflate(getLayoutInflater());
- setContentView(binding.getRoot());
-
- //BottomNavigationView navView = findViewById(R.id.nav_view);
- //// 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)
- // .build();
- //NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_activity_main);
- //NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
- //NavigationUI.setupWithNavController(binding.navView, navController);
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/MainActivity.kt b/app/src/main/java/com/example/geometry/MainActivity.kt
new file mode 100644
index 0000000..1aa12c3
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/MainActivity.kt
@@ -0,0 +1,44 @@
+package com.example.geometry
+
+import android.content.res.ColorStateList
+import android.database.CrossProcessCursor
+import android.os.Bundle
+import android.view.View
+import android.widget.ImageButton
+import android.widget.TextView
+import com.google.android.material.bottomnavigation.BottomNavigationView
+import androidx.appcompat.app.AppCompatActivity
+import androidx.core.widget.ImageViewCompat
+import androidx.navigation.findNavController
+import androidx.navigation.ui.setupWithNavController
+import com.example.geometry.databinding.ActivityMainBinding
+import com.google.android.material.bottomsheet.BottomSheetBehavior
+import androidx.coordinatorlayout.widget.CoordinatorLayout
+import androidx.core.content.ContextCompat
+import androidx.core.widget.ImageViewCompat.setImageTintList
+import androidx.core.widget.TextViewCompat
+
+
+class MainActivity: AppCompatActivity() {
+
+ private lateinit var binding: ActivityMainBinding
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+
+ binding = ActivityMainBinding.inflate(layoutInflater)
+ setContentView(binding.root)
+
+ val llBottomSheet = findViewById(R.id.bottom_sheet)
+
+ val bottomSheetBehavior = BottomSheetBehavior.from(llBottomSheet)
+ bottomSheetBehavior.state = BottomSheetBehavior.STATE_EXPANDED
+ bottomSheetBehavior.isHideable = false
+
+
+ val navView = findViewById(R.id.bottom_navigation_view)
+ val navController = findNavController(R.id.navigation_host_fragment)
+ navView.setupWithNavController(navController)
+ }
+}
+
diff --git a/app/src/main/java/com/example/geometry/ui/camera/CameraViewModel.kt b/app/src/main/java/com/example/geometry/ui/camera/CameraViewModel.kt
new file mode 100644
index 0000000..b2f17b5
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/camera/CameraViewModel.kt
@@ -0,0 +1,13 @@
+package com.example.geometry.ui.camera
+
+import androidx.lifecycle.LiveData
+import androidx.lifecycle.MutableLiveData
+import androidx.lifecycle.ViewModel
+
+class CameraViewModel : ViewModel() {
+ // TODO: Implement the ViewModel
+ private val _text = MutableLiveData().apply {
+ value = "This is camera Fragment"
+ }
+ val text: LiveData = _text
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/camera/camera.kt b/app/src/main/java/com/example/geometry/ui/camera/camera.kt
new file mode 100644
index 0000000..e0289b7
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/camera/camera.kt
@@ -0,0 +1,26 @@
+package com.example.geometry.ui.camera
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.geometry.R
+
+class camera : Fragment() {
+
+
+ companion object {
+ fun newInstance() = camera()
+ }
+
+ private lateinit var viewModel: CameraViewModel
+
+ override fun onCreateView(
+
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ return inflater.inflate(R.layout.fragment_camera, container, false)
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/figures/Figures.kt b/app/src/main/java/com/example/geometry/ui/figures/Figures.kt
new file mode 100644
index 0000000..74d6b5c
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/figures/Figures.kt
@@ -0,0 +1,68 @@
+package com.example.geometry.ui.figures
+
+
+import android.annotation.SuppressLint
+import android.content.res.ColorStateList
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.MotionEvent
+import android.view.View
+import android.view.ViewGroup
+import android.view.animation.AnimationUtils
+import android.widget.ImageButton
+import android.widget.TextView
+import androidx.core.widget.ImageViewCompat
+import androidx.fragment.app.Fragment
+import com.example.geometry.R
+import java.util.ArrayList
+
+
+class Figures : Fragment(), View.OnTouchListener {
+
+ companion object {
+ fun newInstance() = Figures()
+ }
+
+ private val buttonHashMap: HashMap = linkedMapOf()
+ private val buttonList = listOf("button_cursor","button_point_with_letter","button_segment","button_line","button_polygon","button_circle")
+ private val textList = listOf("text_cursor","text_point_with_letter","text_segment","text_line","text_polygon","text_circle")
+ private lateinit var viewModel: FiguresViewModel
+
+ @SuppressLint("ClickableViewAccessibility")
+ override fun onViewCreated(view: View , savedInstanceState: Bundle?) {
+ super.onViewCreated(view, savedInstanceState)
+
+ buttonHashMap[view.findViewById(R.id.button_cursor)]=view.findViewById(R.id.text_cursor)
+ buttonHashMap[view.findViewById(R.id.button_point_with_letter)]=view.findViewById(R.id.text_point_with_letter)
+ buttonHashMap[view.findViewById(R.id.button_segment)]=view.findViewById(R.id.text_segment)
+ buttonHashMap[view.findViewById(R.id.button_line)]=view.findViewById(R.id.text_line)
+ buttonHashMap[view.findViewById(R.id.button_polygon)]=view.findViewById(R.id.text_polygon)
+ buttonHashMap[view.findViewById(R.id.button_circle)]=view.findViewById(R.id.text_circle)
+
+ buttonHashMap.forEach { (key) -> key.setOnTouchListener(this) }
+ }
+ @SuppressLint("ClickableViewAccessibility")
+ override fun onTouch(v: View , p1: MotionEvent?): Boolean {
+
+ buttonHashMap.forEach { (key, value) ->
+ ImageViewCompat.setImageTintList(
+ key, ColorStateList.valueOf(resources.getColor(R.color.black)))
+ value.setTextColor(resources.getColor(R.color.black))}
+
+ val animAlpha = AnimationUtils.loadAnimation(this.context, R.anim.alpha)
+ v.startAnimation(animAlpha)
+ buttonHashMap[v]?.startAnimation(animAlpha)
+ ImageViewCompat.setImageTintList(
+ v as ImageButton , ColorStateList.valueOf(
+ resources.getColor(R.color.red)))
+ buttonHashMap[v]?.setTextColor(resources.getColor(R.color.red))
+ return false
+ }
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ return inflater.inflate(R.layout.fragment_figures, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/figures/FiguresViewModel.kt b/app/src/main/java/com/example/geometry/ui/figures/FiguresViewModel.kt
new file mode 100644
index 0000000..a00d906
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/figures/FiguresViewModel.kt
@@ -0,0 +1,7 @@
+package com.example.geometry.ui.figures
+
+import androidx.lifecycle.ViewModel
+
+class FiguresViewModel : ViewModel() {
+ // TODO: Implement the ViewModel
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/gallery/GalleryViewModel.kt b/app/src/main/java/com/example/geometry/ui/gallery/GalleryViewModel.kt
new file mode 100644
index 0000000..b05fc36
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/gallery/GalleryViewModel.kt
@@ -0,0 +1,13 @@
+package com.example.geometry.ui.gallery
+
+import androidx.lifecycle.LiveData
+import androidx.lifecycle.MutableLiveData
+import androidx.lifecycle.ViewModel
+
+class GalleryViewModel : ViewModel() {
+
+ private val _text = MutableLiveData().apply {
+ value = "This is gallery Fragment"
+ }
+ val text: LiveData = _text
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/gallery/gallery.kt b/app/src/main/java/com/example/geometry/ui/gallery/gallery.kt
new file mode 100644
index 0000000..49951b9
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/gallery/gallery.kt
@@ -0,0 +1,27 @@
+package com.example.geometry.ui.gallery
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.geometry.R
+import com.example.geometry.ui.camera.CameraViewModel
+
+ class gallery: Fragment() {
+
+
+ companion object {
+ fun newInstance() = gallery()
+ }
+
+ private lateinit var viewModel: CameraViewModel
+
+ override fun onCreateView(
+
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ return inflater.inflate(R.layout.fragment_settings, container, false)
+ }
+ }
diff --git a/app/src/main/java/com/example/geometry/ui/home/HomeFragment.kt b/app/src/main/java/com/example/geometry/ui/home/HomeFragment.kt
new file mode 100644
index 0000000..caef7d2
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/home/HomeFragment.kt
@@ -0,0 +1,26 @@
+package com.example.geometry.ui.home
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.Fragment
+import com.example.geometry.R
+import com.example.geometry.ui.camera.CameraViewModel
+
+
+class HomeFragment : Fragment() {
+
+ companion object {
+ fun newInstance() = HomeFragment()
+ }
+
+ private lateinit var viewModel: CameraViewModel
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ return inflater.inflate(R.layout.fragment_home, container, false)
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/home/HomeViewModel.kt b/app/src/main/java/com/example/geometry/ui/home/HomeViewModel.kt
new file mode 100644
index 0000000..7f49d02
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/home/HomeViewModel.kt
@@ -0,0 +1,13 @@
+package com.example.geometry.ui.home
+
+import androidx.lifecycle.LiveData
+import androidx.lifecycle.MutableLiveData
+import androidx.lifecycle.ViewModel
+
+class HomeViewModel : ViewModel() {
+
+ private val _text = MutableLiveData().apply {
+ value = "This is home Fragment"
+ }
+ val text: LiveData = _text
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/maths/MathsViewModel.kt b/app/src/main/java/com/example/geometry/ui/maths/MathsViewModel.kt
new file mode 100644
index 0000000..3cb7d12
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/maths/MathsViewModel.kt
@@ -0,0 +1,7 @@
+package com.example.geometry.ui.maths
+
+import androidx.lifecycle.ViewModel
+
+class MathsViewModel : ViewModel() {
+ // TODO: Implement the ViewModel
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/maths/maths.kt b/app/src/main/java/com/example/geometry/ui/maths/maths.kt
new file mode 100644
index 0000000..e324d65
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/maths/maths.kt
@@ -0,0 +1,25 @@
+package com.example.geometry.ui.maths
+
+import android.os.Bundle
+import androidx.fragment.app.Fragment
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import com.example.geometry.R
+
+class maths : Fragment() {
+
+ companion object {
+ fun newInstance() = maths()
+ }
+
+ private lateinit var viewModel: MathsViewModel
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ return inflater.inflate(R.layout.fragment_maths, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/send/SendViewModel.kt b/app/src/main/java/com/example/geometry/ui/send/SendViewModel.kt
new file mode 100644
index 0000000..1e06dec
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/send/SendViewModel.kt
@@ -0,0 +1,7 @@
+package com.example.geometry.ui.send
+
+import androidx.lifecycle.ViewModel
+
+class SendViewModel : ViewModel() {
+ // TODO: Implement the ViewModel
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/send/send.kt b/app/src/main/java/com/example/geometry/ui/send/send.kt
new file mode 100644
index 0000000..1552652
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/send/send.kt
@@ -0,0 +1,25 @@
+package com.example.geometry.ui.send
+
+import android.os.Bundle
+import androidx.fragment.app.Fragment
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import com.example.geometry.R
+
+class send : Fragment() {
+
+ companion object {
+ fun newInstance() = send()
+ }
+
+ private lateinit var viewModel: SendViewModel
+
+ override fun onCreateView(
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ return inflater.inflate(R.layout.fragment_send, container, false)
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/slideshow/SlideshowViewModel.kt b/app/src/main/java/com/example/geometry/ui/slideshow/SlideshowViewModel.kt
new file mode 100644
index 0000000..f8fe102
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/slideshow/SlideshowViewModel.kt
@@ -0,0 +1,13 @@
+package com.example.geometry.ui.slideshow
+
+import androidx.lifecycle.ViewModel
+import androidx.lifecycle.LiveData
+import androidx.lifecycle.MutableLiveData
+
+class SlideshowViewModel : ViewModel() {
+
+ private val _text = MutableLiveData().apply {
+ value = "This is slideshow Fragment"
+ }
+ val text: LiveData = _text
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/example/geometry/ui/slideshow/slideshow.kt b/app/src/main/java/com/example/geometry/ui/slideshow/slideshow.kt
new file mode 100644
index 0000000..373cb0b
--- /dev/null
+++ b/app/src/main/java/com/example/geometry/ui/slideshow/slideshow.kt
@@ -0,0 +1,31 @@
+package com.example.geometry.ui.slideshow
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import android.widget.TextView
+import androidx.fragment.app.Fragment
+import androidx.lifecycle.Observer
+import androidx.lifecycle.ViewModelProvider
+import com.example.geometry.R
+import com.example.geometry.databinding.FragmentSlideshowBinding
+import com.example.geometry.ui.camera.CameraViewModel
+
+class slideshow : Fragment() {
+
+
+ companion object {
+ fun newInstance() = slideshow()
+ }
+
+ private lateinit var viewModel: CameraViewModel
+
+ override fun onCreateView(
+
+ inflater: LayoutInflater, container: ViewGroup?,
+ savedInstanceState: Bundle?
+ ): View? {
+ return inflater.inflate(R.layout.fragment_slideshow, container, false)
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/res/anim/alpha.xml b/app/src/main/res/anim/alpha.xml
new file mode 100644
index 0000000..a42fbac
--- /dev/null
+++ b/app/src/main/res/anim/alpha.xml
@@ -0,0 +1,10 @@
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/ic_camera.xml b/app/src/main/res/drawable/ic_camera.xml
new file mode 100644
index 0000000..8cbab30
--- /dev/null
+++ b/app/src/main/res/drawable/ic_camera.xml
@@ -0,0 +1,14 @@
+
+
+
+
diff --git a/app/src/main/res/drawable/ic_circle.xml b/app/src/main/res/drawable/ic_circle.xml
new file mode 100644
index 0000000..3e8a317
--- /dev/null
+++ b/app/src/main/res/drawable/ic_circle.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_cursor.xml b/app/src/main/res/drawable/ic_cursor.xml
new file mode 100644
index 0000000..4461e91
--- /dev/null
+++ b/app/src/main/res/drawable/ic_cursor.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_figures.xml b/app/src/main/res/drawable/ic_figures.xml
new file mode 100644
index 0000000..e0a870c
--- /dev/null
+++ b/app/src/main/res/drawable/ic_figures.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_line.xml b/app/src/main/res/drawable/ic_line.xml
new file mode 100644
index 0000000..1a3014f
--- /dev/null
+++ b/app/src/main/res/drawable/ic_line.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_maths.xml b/app/src/main/res/drawable/ic_maths.xml
new file mode 100644
index 0000000..1c85c73
--- /dev/null
+++ b/app/src/main/res/drawable/ic_maths.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_menu_camera.xml b/app/src/main/res/drawable/ic_menu_camera.xml
new file mode 100644
index 0000000..634fe92
--- /dev/null
+++ b/app/src/main/res/drawable/ic_menu_camera.xml
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/app/src/main/res/drawable/ic_home_black_24dp.xml b/app/src/main/res/drawable/ic_menu_gallery.xml
similarity index 55%
rename from app/src/main/res/drawable/ic_home_black_24dp.xml
rename to app/src/main/res/drawable/ic_menu_gallery.xml
index f8bb0b5..03c7709 100644
--- a/app/src/main/res/drawable/ic_home_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_menu_gallery.xml
@@ -5,5 +5,5 @@
android:viewportHeight="24.0">
+ android:pathData="M22,16V4c0,-1.1 -0.9,-2 -2,-2H8c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2zm-11,-4l2.03,2.71L16,11l4,5H8l3,-4zM2,6v14c0,1.1 0.9,2 2,2h14v-2H4V6H2z" />
diff --git a/app/src/main/res/drawable/ic_dashboard_black_24dp.xml b/app/src/main/res/drawable/ic_menu_slideshow.xml
similarity index 57%
rename from app/src/main/res/drawable/ic_dashboard_black_24dp.xml
rename to app/src/main/res/drawable/ic_menu_slideshow.xml
index 46fc8de..5e9e163 100644
--- a/app/src/main/res/drawable/ic_dashboard_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_menu_slideshow.xml
@@ -5,5 +5,5 @@
android:viewportHeight="24.0">
+ android:pathData="M4,6H2v14c0,1.1 0.9,2 2,2h14v-2H4V6zm16,-4H8c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2V4c0,-1.1 -0.9,-2 -2,-2zm-8,12.5v-9l6,4.5 -6,4.5z" />
diff --git a/app/src/main/res/drawable/ic_notifications_black_24dp.xml b/app/src/main/res/drawable/ic_notifications_black_24dp.xml
deleted file mode 100644
index 78b75c3..0000000
--- a/app/src/main/res/drawable/ic_notifications_black_24dp.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
diff --git a/app/src/main/res/drawable/ic_plus.xml b/app/src/main/res/drawable/ic_plus.xml
new file mode 100644
index 0000000..aa88be4
--- /dev/null
+++ b/app/src/main/res/drawable/ic_plus.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_point_with_letter.xml b/app/src/main/res/drawable/ic_point_with_letter.xml
new file mode 100644
index 0000000..7534671
--- /dev/null
+++ b/app/src/main/res/drawable/ic_point_with_letter.xml
@@ -0,0 +1,14 @@
+
+
+
+
diff --git a/app/src/main/res/drawable/ic_polygon.xml b/app/src/main/res/drawable/ic_polygon.xml
new file mode 100644
index 0000000..bcc9aa8
--- /dev/null
+++ b/app/src/main/res/drawable/ic_polygon.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_segment.xml b/app/src/main/res/drawable/ic_segment.xml
new file mode 100644
index 0000000..347e271
--- /dev/null
+++ b/app/src/main/res/drawable/ic_segment.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_send.xml b/app/src/main/res/drawable/ic_send.xml
new file mode 100644
index 0000000..3bf9ad2
--- /dev/null
+++ b/app/src/main/res/drawable/ic_send.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/drawable/line_above_bottom_sheet.png b/app/src/main/res/drawable/line_above_bottom_sheet.png
new file mode 100644
index 0000000..fe2c04d
Binary files /dev/null and b/app/src/main/res/drawable/line_above_bottom_sheet.png differ
diff --git a/app/src/main/res/drawable/round_main.xml b/app/src/main/res/drawable/round_main.xml
new file mode 100644
index 0000000..6fe04f6
--- /dev/null
+++ b/app/src/main/res/drawable/round_main.xml
@@ -0,0 +1,14 @@
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/round_shadow.xml b/app/src/main/res/drawable/round_shadow.xml
new file mode 100644
index 0000000..07efbdb
--- /dev/null
+++ b/app/src/main/res/drawable/round_shadow.xml
@@ -0,0 +1,17 @@
+
+
+ -
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/selector.xml b/app/src/main/res/drawable/selector.xml
new file mode 100644
index 0000000..9025fe3
--- /dev/null
+++ b/app/src/main/res/drawable/selector.xml
@@ -0,0 +1,28 @@
+
+
+ -
+
+
+
+
+
+ -
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/shape_gradient_top_shadow.xml b/app/src/main/res/drawable/shape_gradient_top_shadow.xml
new file mode 100644
index 0000000..4423cff
--- /dev/null
+++ b/app/src/main/res/drawable/shape_gradient_top_shadow.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/side_nav_bar.xml b/app/src/main/res/drawable/side_nav_bar.xml
new file mode 100644
index 0000000..6d81870
--- /dev/null
+++ b/app/src/main/res/drawable/side_nav_bar.xml
@@ -0,0 +1,9 @@
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 5651199..6623d96 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -1,31 +1,58 @@
-
-
-
+
-
-
-
-
-
-
-
\ No newline at end of file
+ android:layout_height="match_parent">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/app_bar_main.xml b/app/src/main/res/layout/app_bar_main.xml
new file mode 100644
index 0000000..e013266
--- /dev/null
+++ b/app/src/main/res/layout/app_bar_main.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/bottom_sheet.xml b/app/src/main/res/layout/bottom_sheet.xml
index 9abd41c..f1840d8 100644
--- a/app/src/main/res/layout/bottom_sheet.xml
+++ b/app/src/main/res/layout/bottom_sheet.xml
@@ -1,46 +1,39 @@
-
+ android:layout_height="wrap_content"
-
+ android:orientation="vertical">
-
-
-
-
-
-
-
-
+ android:layout_height="340dp"
+ android:background="@drawable/round_main">
-
+
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/constraint_maths_1.xml b/app/src/main/res/layout/constraint_maths_1.xml
new file mode 100644
index 0000000..1ce102c
--- /dev/null
+++ b/app/src/main/res/layout/constraint_maths_1.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/content_main.xml b/app/src/main/res/layout/content_main.xml
new file mode 100644
index 0000000..77d9ef6
--- /dev/null
+++ b/app/src/main/res/layout/content_main.xml
@@ -0,0 +1,6 @@
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_camera.xml b/app/src/main/res/layout/fragment_camera.xml
new file mode 100644
index 0000000..c5f3635
--- /dev/null
+++ b/app/src/main/res/layout/fragment_camera.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_dashboard.xml b/app/src/main/res/layout/fragment_dashboard.xml
deleted file mode 100644
index 5c22d62..0000000
--- a/app/src/main/res/layout/fragment_dashboard.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_figures.xml b/app/src/main/res/layout/fragment_figures.xml
new file mode 100644
index 0000000..64860e5
--- /dev/null
+++ b/app/src/main/res/layout/fragment_figures.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
index 38e7d2c..d83b77c 100644
--- a/app/src/main/res/layout/fragment_home.xml
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -1,13 +1,13 @@
-
-
-
\ No newline at end of file
+ android:text="Hello" />
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_maths.xml b/app/src/main/res/layout/fragment_maths.xml
new file mode 100644
index 0000000..c60a022
--- /dev/null
+++ b/app/src/main/res/layout/fragment_maths.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_notifications.xml b/app/src/main/res/layout/fragment_notifications.xml
deleted file mode 100644
index 7792eab..0000000
--- a/app/src/main/res/layout/fragment_notifications.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_send.xml b/app/src/main/res/layout/fragment_send.xml
new file mode 100644
index 0000000..6a9db6b
--- /dev/null
+++ b/app/src/main/res/layout/fragment_send.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_settings.xml b/app/src/main/res/layout/fragment_settings.xml
new file mode 100644
index 0000000..799e2f8
--- /dev/null
+++ b/app/src/main/res/layout/fragment_settings.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_slideshow.xml b/app/src/main/res/layout/fragment_slideshow.xml
new file mode 100644
index 0000000..6252170
--- /dev/null
+++ b/app/src/main/res/layout/fragment_slideshow.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/nav_header_main.xml b/app/src/main/res/layout/nav_header_main.xml
new file mode 100644
index 0000000..c145545
--- /dev/null
+++ b/app/src/main/res/layout/nav_header_main.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/scetches.xml b/app/src/main/res/layout/scetches.xml
new file mode 100644
index 0000000..639d1ac
--- /dev/null
+++ b/app/src/main/res/layout/scetches.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/scroll_figures.xml b/app/src/main/res/layout/scroll_figures.xml
new file mode 100644
index 0000000..7852f92
--- /dev/null
+++ b/app/src/main/res/layout/scroll_figures.xml
@@ -0,0 +1,87 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/scroll_maths.xml b/app/src/main/res/layout/scroll_maths.xml
new file mode 100644
index 0000000..fc29351
--- /dev/null
+++ b/app/src/main/res/layout/scroll_maths.xml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/table_row_figures_1.xml b/app/src/main/res/layout/table_row_figures_1.xml
new file mode 100644
index 0000000..033c12d
--- /dev/null
+++ b/app/src/main/res/layout/table_row_figures_1.xml
@@ -0,0 +1,150 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/table_row_figures_2.xml b/app/src/main/res/layout/table_row_figures_2.xml
new file mode 100644
index 0000000..899b94e
--- /dev/null
+++ b/app/src/main/res/layout/table_row_figures_2.xml
@@ -0,0 +1,91 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/menu/activity_main_drawer.xml b/app/src/main/res/menu/activity_main_drawer.xml
new file mode 100644
index 0000000..94af31f
--- /dev/null
+++ b/app/src/main/res/menu/activity_main_drawer.xml
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/app/src/main/res/menu/bottom_nav_menu.xml b/app/src/main/res/menu/bottom_nav_menu.xml
index fb6d040..982c160 100644
--- a/app/src/main/res/menu/bottom_nav_menu.xml
+++ b/app/src/main/res/menu/bottom_nav_menu.xml
@@ -1,19 +1,24 @@
-