Add desktop state/status filters
This commit is contained in:
parent
7ddea4386a
commit
cef117088f
|
|
@ -25,7 +25,7 @@ class _SelectRow extends StatelessWidget {
|
|||
selected: selected,
|
||||
title: child,
|
||||
dense: true,
|
||||
contentPadding: EdgeInsets.symmetric(horizontal: 2),
|
||||
contentPadding: EdgeInsets.symmetric(horizontal: 4),
|
||||
onTap: () {
|
||||
onChange(!selected);
|
||||
_theState.notify();
|
||||
|
|
|
|||
|
|
@ -46,6 +46,9 @@ class CreditScreen extends StatelessWidget {
|
|||
onFilterChanged: (value) {
|
||||
store.dispatch(FilterCredits(value));
|
||||
},
|
||||
onSelectedState: (EntityState state, value) {
|
||||
store.dispatch(FilterCreditsByState(state));
|
||||
},
|
||||
),
|
||||
onCheckboxPressed: () {
|
||||
if (store.state.creditListState.isInMultiselect()) {
|
||||
|
|
|
|||
|
|
@ -46,6 +46,9 @@ class DesignScreen extends StatelessWidget {
|
|||
onFilterChanged: (value) {
|
||||
store.dispatch(FilterDesigns(value));
|
||||
},
|
||||
onSelectedState: (EntityState state, value) {
|
||||
store.dispatch(FilterDesignsByState(state));
|
||||
},
|
||||
),
|
||||
onCheckboxPressed: () {
|
||||
if (store.state.designListState.isInMultiselect()) {
|
||||
|
|
|
|||
|
|
@ -44,6 +44,9 @@ class DocumentScreen extends StatelessWidget {
|
|||
onFilterChanged: (value) {
|
||||
store.dispatch(FilterDocuments(value));
|
||||
},
|
||||
onSelectedState: (EntityState state, value) {
|
||||
store.dispatch(FilterDocumentsByState(state));
|
||||
},
|
||||
),
|
||||
onCheckboxPressed: () {
|
||||
if (store.state.documentListState.isInMultiselect()) {
|
||||
|
|
|
|||
|
|
@ -36,6 +36,22 @@ class ExpenseScreen extends StatelessWidget {
|
|||
final userCompany = state.userCompany;
|
||||
final localization = AppLocalization.of(context);
|
||||
|
||||
final statuses = [
|
||||
ExpenseStatusEntity().rebuild((b) => b
|
||||
..id = kExpenseStatusLogged
|
||||
..name = localization.logged),
|
||||
ExpenseStatusEntity().rebuild(
|
||||
(b) => b
|
||||
..id = kExpenseStatusPending
|
||||
..name = localization.pending,
|
||||
),
|
||||
ExpenseStatusEntity().rebuild(
|
||||
(b) => b
|
||||
..id = kExpenseStatusInvoiced
|
||||
..name = localization.invoiced,
|
||||
),
|
||||
];
|
||||
|
||||
return ListScaffold(
|
||||
entityType: EntityType.expense,
|
||||
onHamburgerLongPress: () => store.dispatch(StartExpenseMultiselect()),
|
||||
|
|
@ -47,6 +63,13 @@ class ExpenseScreen extends StatelessWidget {
|
|||
onFilterChanged: (value) {
|
||||
store.dispatch(FilterExpenses(value));
|
||||
},
|
||||
statuses: statuses,
|
||||
onSelectedState: (EntityState state, value) {
|
||||
store.dispatch(FilterExpensesByState(state));
|
||||
},
|
||||
onSelectedStatus: (EntityStatus status, value) {
|
||||
store.dispatch(FilterExpensesByStatus(status));
|
||||
},
|
||||
),
|
||||
onCheckboxPressed: () {
|
||||
if (store.state.expenseListState.isInMultiselect()) {
|
||||
|
|
@ -86,21 +109,7 @@ class ExpenseScreen extends StatelessWidget {
|
|||
onSelectedState: (EntityState state, value) {
|
||||
store.dispatch(FilterExpensesByState(state));
|
||||
},
|
||||
statuses: [
|
||||
ExpenseStatusEntity().rebuild((b) => b
|
||||
..id = kExpenseStatusLogged
|
||||
..name = localization.logged),
|
||||
ExpenseStatusEntity().rebuild(
|
||||
(b) => b
|
||||
..id = kExpenseStatusPending
|
||||
..name = localization.pending,
|
||||
),
|
||||
ExpenseStatusEntity().rebuild(
|
||||
(b) => b
|
||||
..id = kExpenseStatusInvoiced
|
||||
..name = localization.invoiced,
|
||||
),
|
||||
],
|
||||
statuses: statuses,
|
||||
onSelectedStatus: (EntityStatus status, value) {
|
||||
store.dispatch(FilterExpensesByStatus(status));
|
||||
},
|
||||
|
|
|
|||
|
|
@ -56,6 +56,9 @@ class ExpenseCategoryScreen extends StatelessWidget {
|
|||
onFilterChanged: (value) {
|
||||
store.dispatch(FilterExpenseCategories(value));
|
||||
},
|
||||
onSelectedState: (EntityState state, value) {
|
||||
store.dispatch(FilterExpenseCategoriesByState(state));
|
||||
},
|
||||
),
|
||||
body: ExpenseCategoryListBuilder(),
|
||||
bottomNavigationBar: AppBottomBar(
|
||||
|
|
|
|||
Loading…
Reference in New Issue