#21 style button to add subjects/tasks
This commit is contained in:
		
							parent
							
								
									1e359b9e37
								
							
						
					
					
						commit
						4bbc3af4b2
					
				
					 3 changed files with 56 additions and 12 deletions
				
			
		|  | @ -2,10 +2,25 @@ package be.ugent.sel.studeez.common.composable | |||
| 
 | ||||
| import androidx.annotation.StringRes | ||||
| import androidx.compose.foundation.BorderStroke | ||||
| import androidx.compose.foundation.layout.Arrangement | ||||
| import androidx.compose.foundation.layout.Row | ||||
| import androidx.compose.foundation.layout.fillMaxWidth | ||||
| import androidx.compose.foundation.layout.height | ||||
| import androidx.compose.foundation.layout.padding | ||||
| import androidx.compose.foundation.shape.RoundedCornerShape | ||||
| import androidx.compose.material.* | ||||
| import androidx.compose.material.Button | ||||
| import androidx.compose.material.ButtonColors | ||||
| import androidx.compose.material.ButtonDefaults | ||||
| import androidx.compose.material.Icon | ||||
| import androidx.compose.material.MaterialTheme | ||||
| import androidx.compose.material.Text | ||||
| import androidx.compose.material.TextButton | ||||
| import androidx.compose.material.icons.Icons | ||||
| import androidx.compose.material.icons.filled.Add | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.ui.Alignment | ||||
| import androidx.compose.ui.Modifier | ||||
| import androidx.compose.ui.graphics.Color | ||||
| import androidx.compose.ui.res.stringResource | ||||
| import androidx.compose.ui.tooling.preview.Preview | ||||
| import androidx.compose.ui.unit.dp | ||||
|  | @ -94,3 +109,39 @@ fun DialogCancelButton(@StringRes text: Int, action: () -> Unit) { | |||
|         Text(text = stringResource(text)) | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @Composable | ||||
| fun NewTaskSubjectButton( | ||||
|     onClick: () -> Unit, | ||||
|     @StringRes text: Int, | ||||
| ) { | ||||
|     Button( | ||||
|         onClick = onClick, | ||||
|         modifier = Modifier | ||||
|             .fillMaxWidth() | ||||
|             .height(60.dp) | ||||
|             .padding(10.dp, 5.dp), | ||||
|         colors = ButtonDefaults.buttonColors( | ||||
|             backgroundColor = Color.Transparent, | ||||
|             contentColor = Color.Gray, | ||||
|         ), | ||||
|         shape = RoundedCornerShape(2.dp), | ||||
|         border = BorderStroke(1.dp, Color.Gray), | ||||
|         elevation = null, | ||||
|     ) { | ||||
|         Row( | ||||
|             modifier = Modifier.fillMaxWidth(), | ||||
|             horizontalArrangement = Arrangement.SpaceBetween, | ||||
|             verticalAlignment = Alignment.CenterVertically, | ||||
|         ) { | ||||
|             Text(text = stringResource(id = text)) | ||||
|             Icon(imageVector = Icons.Default.Add, contentDescription = stringResource(id = text)) | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @Preview | ||||
| @Composable | ||||
| fun NewTaskButtonPreview() { | ||||
|     NewTaskSubjectButton(onClick = {}, text = R.string.new_task) | ||||
| } | ||||
|  | @ -3,12 +3,11 @@ package be.ugent.sel.studeez.screens.tasks | |||
| import androidx.compose.foundation.layout.Column | ||||
| import androidx.compose.foundation.lazy.LazyColumn | ||||
| import androidx.compose.foundation.lazy.items | ||||
| import androidx.compose.material.Button | ||||
| import androidx.compose.material.Text | ||||
| import androidx.compose.runtime.Composable | ||||
| import androidx.compose.runtime.collectAsState | ||||
| import androidx.compose.ui.tooling.preview.Preview | ||||
| import be.ugent.sel.studeez.R | ||||
| import be.ugent.sel.studeez.common.composable.NewTaskSubjectButton | ||||
| import be.ugent.sel.studeez.common.composable.PrimaryScreenTemplate | ||||
| import be.ugent.sel.studeez.common.composable.SubjectEntry | ||||
| import be.ugent.sel.studeez.common.composable.drawer.DrawerActions | ||||
|  | @ -52,19 +51,11 @@ fun TaskScreen( | |||
|                     SubjectEntry(subject = it) | ||||
|                 } | ||||
|             } | ||||
|             AddSubjectButton(onClick = addSubject) | ||||
|             NewTaskSubjectButton(onClick = addSubject, R.string.new_subject) | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @Composable | ||||
| fun AddSubjectButton( | ||||
|     onClick: () -> Unit, | ||||
| ) { | ||||
|     Button(onClick = onClick) { | ||||
|         Text(text = "Add Subject") | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @Preview | ||||
| @Composable | ||||
|  |  | |||
|  | @ -42,6 +42,8 @@ | |||
| 
 | ||||
|     <!-- Tasks --> | ||||
|     <string name="tasks">Tasks</string> | ||||
|     <string name="new_subject">New Subject</string> | ||||
|     <string name="new_task">New Task</string> | ||||
| 
 | ||||
|     <!-- Sessions --> | ||||
|     <string name="sessions">Sessions</string> | ||||
|  |  | |||
		Reference in a new issue
	
	 brreynie
						brreynie