Settings
This commit is contained in:
parent
32d04f785e
commit
ce4c388580
|
|
@ -9,6 +9,8 @@ import 'package:invoiceninja_flutter/ui/app/forms/decorated_form_field.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/forms/discount_field.dart';
|
import 'package:invoiceninja_flutter/ui/app/forms/discount_field.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/app/forms/user_picker.dart';
|
import 'package:invoiceninja_flutter/ui/app/forms/user_picker.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_details_vm.dart';
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_details_vm.dart';
|
||||||
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_vm.dart';
|
||||||
|
import 'package:invoiceninja_flutter/ui/quote/edit/quote_edit_items_vm.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/completers.dart';
|
import 'package:invoiceninja_flutter/utils/completers.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/formatting.dart';
|
import 'package:invoiceninja_flutter/utils/formatting.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/localization.dart';
|
import 'package:invoiceninja_flutter/utils/localization.dart';
|
||||||
|
|
@ -126,6 +128,7 @@ class InvoiceEditDesktopState extends State<InvoiceEditDesktop> {
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Row(
|
Row(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Expanded(
|
Expanded(
|
||||||
child: FormCard(
|
child: FormCard(
|
||||||
|
|
@ -254,7 +257,8 @@ class InvoiceEditDesktopState extends State<InvoiceEditDesktop> {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
)
|
),
|
||||||
|
widget.isQuote ? QuoteEditItemsScreen() : InvoiceEditItemsScreen()
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,8 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_vm.dart';
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_vm.dart';
|
||||||
import 'package:invoiceninja_flutter/utils/localization.dart';
|
import 'package:invoiceninja_flutter/utils/localization.dart';
|
||||||
|
|
||||||
class InvoiceEditItemsTable extends StatelessWidget {
|
class InvoiceEditItemsDesktop extends StatelessWidget {
|
||||||
const InvoiceEditItemsTable({this.viewModel});
|
const InvoiceEditItemsDesktop({this.viewModel});
|
||||||
|
|
||||||
final EntityEditItemsVM viewModel;
|
final EntityEditItemsVM viewModel;
|
||||||
|
|
||||||
|
|
@ -12,6 +12,35 @@ class InvoiceEditItemsTable extends StatelessWidget {
|
||||||
final localization = AppLocalization.of(context);
|
final localization = AppLocalization.of(context);
|
||||||
final invoice = viewModel.invoice;
|
final invoice = viewModel.invoice;
|
||||||
|
|
||||||
|
return DataTable(
|
||||||
|
columns: [
|
||||||
|
DataColumn(
|
||||||
|
label: Text(localization.item),
|
||||||
|
),
|
||||||
|
DataColumn(
|
||||||
|
label: Text(localization.description),
|
||||||
|
),
|
||||||
|
DataColumn(
|
||||||
|
label: Text(localization.unitCost),
|
||||||
|
),
|
||||||
|
DataColumn(
|
||||||
|
label: Text(localization.quantity),
|
||||||
|
),
|
||||||
|
DataColumn(
|
||||||
|
label: Text(localization.lineTotal),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
rows: invoice.lineItems.map((item) => DataRow(
|
||||||
|
cells: [
|
||||||
|
DataCell(Text(item.productKey)),
|
||||||
|
DataCell(Text('')),
|
||||||
|
DataCell(Text('')),
|
||||||
|
DataCell(Text('')),
|
||||||
|
DataCell(Text('')),
|
||||||
|
],
|
||||||
|
)).toList(),
|
||||||
|
);
|
||||||
|
|
||||||
return SingleChildScrollView(
|
return SingleChildScrollView(
|
||||||
scrollDirection: Axis.horizontal,
|
scrollDirection: Axis.horizontal,
|
||||||
child: DataTable(
|
child: DataTable(
|
||||||
|
|
@ -2,6 +2,7 @@ import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_redux/flutter_redux.dart';
|
import 'package:flutter_redux/flutter_redux.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items.dart';
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items.dart';
|
||||||
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_desktop.dart';
|
||||||
import 'package:redux/redux.dart';
|
import 'package:redux/redux.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/invoice/invoice_actions.dart';
|
import 'package:invoiceninja_flutter/redux/invoice/invoice_actions.dart';
|
||||||
import 'package:invoiceninja_flutter/data/models/models.dart';
|
import 'package:invoiceninja_flutter/data/models/models.dart';
|
||||||
|
|
@ -17,9 +18,15 @@ class InvoiceEditItemsScreen extends StatelessWidget {
|
||||||
return InvoiceEditItemsVM.fromStore(store);
|
return InvoiceEditItemsVM.fromStore(store);
|
||||||
},
|
},
|
||||||
builder: (context, viewModel) {
|
builder: (context, viewModel) {
|
||||||
|
if (viewModel.state.prefState.isDesktop) {
|
||||||
|
return InvoiceEditItemsDesktop(
|
||||||
|
viewModel: viewModel,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
return InvoiceEditItems(
|
return InvoiceEditItems(
|
||||||
viewModel: viewModel,
|
viewModel: viewModel,
|
||||||
);
|
);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_redux/flutter_redux.dart';
|
import 'package:flutter_redux/flutter_redux.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items.dart';
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_table.dart';
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_desktop.dart';
|
||||||
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_vm.dart';
|
import 'package:invoiceninja_flutter/ui/invoice/edit/invoice_edit_items_vm.dart';
|
||||||
import 'package:redux/redux.dart';
|
import 'package:redux/redux.dart';
|
||||||
import 'package:invoiceninja_flutter/redux/quote/quote_actions.dart';
|
import 'package:invoiceninja_flutter/redux/quote/quote_actions.dart';
|
||||||
|
|
@ -20,7 +20,7 @@ class QuoteEditItemsScreen extends StatelessWidget {
|
||||||
},
|
},
|
||||||
builder: (context, viewModel) {
|
builder: (context, viewModel) {
|
||||||
if (viewModel.state.prefState.isDesktop) {
|
if (viewModel.state.prefState.isDesktop) {
|
||||||
return InvoiceEditItemsTable(
|
return InvoiceEditItemsDesktop(
|
||||||
viewModel: viewModel,
|
viewModel: viewModel,
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue