Esempio n. 1
0
        public static void OnHabilitarOpcao(this IAbstractViewModel vm, AbstractOpcao opcao,
                                            bool isExibirConsulta, bool isExibirCadastro,
                                            bool isExibirFiltro, bool isExibirRelatorio)
        {
            var mainCommand = vm.ElementType.GetMainCommand();

            var commands = new List <ICommand>
            {
                mainCommand.GetCommand(CommandTipo.Voltar),
                mainCommand.GetCommand(CommandTipo.Limpar),

                isExibirConsulta ? mainCommand.GetCommand(CommandTipo.Listar) : null,
                isExibirConsulta ? mainCommand.GetCommand(CommandTipo.Exportar) : null,
                isExibirConsulta ? mainCommand.GetCommand(CommandTipo.Importar) : null,
                isExibirConsulta || isExibirRelatorio?mainCommand.GetCommand(CommandTipo.Imprimir) : null,

                    isExibirCadastro ? mainCommand.GetCommand(CommandTipo.Consultar) : null,
                    isExibirCadastro ? mainCommand.GetCommand(CommandTipo.Salvar) : null,
                    isExibirCadastro ? mainCommand.GetCommand(CommandTipo.Excluir) : null,

                    isExibirFiltro ? mainCommand.GetCommand(CommandTipo.Confirmar) : null,
                    isExibirFiltro ? mainCommand.GetCommand(CommandTipo.Cancelar) : null,
            }
            .Where(c => c != null)
            .ToArray()
            ;

            vm.Commands = commands;

            opcao.CreateComps(commands);
        }
Esempio n. 2
0
        private void CreateComps(IAbstractViewModel vm, object filtro = null,
                                 AbstractSelecao selecao = null)
        {
            DataContext = vm;

            this.AddPainel(new DockPanel());

            if (filtro != null)
            {
                this.AddPainel(filtro, dock: Dock.Top);
            }

            var dataGrid = new AbstractDataGrid(isReadOnly: !selecao?.IsSelecao ?? true);

            dataGrid.SetBindingDataGridLista(vm);
            dataGrid.SetBindingDataGridModel(vm);
            this.AddPainel(dataGrid);

            vm.Grade = dataGrid; // para uso de report

            //var style = FindResource("DataGridCellStyle") as Style;

            GetMetadata(vm, selecao)
            .GetCamposIgnore()
            .ForEach(campo =>
            {
                campo.IsEditar = selecao.IsEditavel(campo.Prop.Name);
                dataGrid.Columns.Add(GetDataGridColumn(campo));
            });
        }
Esempio n. 3
0
        public static void SetBindingDataGridModel(this DataGrid dataGrid, IAbstractViewModel vm)
        {
            var binding = new Binding(nameof(vm.Model))
            {
                Source = vm
            };

            dataGrid.SetBindingDataGrid(binding, isSelectedItem: true);
        }
Esempio n. 4
0
        public static void SetBindingDataGridLista(this DataGrid dataGrid, IAbstractViewModel vm)
        {
            var binding = new Binding(nameof(vm.Lista))
            {
                Source = vm
            };

            dataGrid.SetBindingDataGrid(binding, isItemSource: true);
        }
Esempio n. 5
0
 protected void SetDataContext(IAbstractViewModel vm)
 {
     DataContext = vm;
     if (vm != null)
     {
         vm.FecharAction    += () => btnFechar_Click(null, null);
         vm.ConfirmarAction += () => btnConfirmar_Click(null, null);
         vm.CancelarAction  += () => btnCancelar_Click(null, null);
     }
 }
Esempio n. 6
0
        private void CreateComps(IAbstractViewModel vm)
        {
            DataContext = vm;

            this.AddPainel(new AbstractScrollViewer());

            var source = new AbstractSource(vm, nameof(vm.Filtro));

            vm.ElementType
            .GetMetadata()
            .GetCamposIgnore()
            .ForEach(campo =>
            {
                this.AddCampo(source, campo, AbstractCampoTipo.Intervalo);
            });
        }
Esempio n. 7
0
        public static object GetFiltro(this IAbstractViewModel vm)
        {
            // expressao filtro por nome ou descricao
            // clausula comando where
            // lista de filtros (inicial, final, lista)
            // objeto campos diferente de nulos

            var filterObjeto = !string.IsNullOrWhiteSpace(vm.Expressao)
                ? new FilterObjeto(FilterTipo.Expressao, vm.ElementType, vm.Expressao)
                : !string.IsNullOrWhiteSpace(vm.Clausula) ? new FilterObjeto(FilterTipo.Clausula, vm.ElementType, vm.Clausula)
                : vm.Filtro != null ? new FilterObjeto(FilterTipo.Filtro, vm.ElementType, vm.Filtro)
                : new FilterObjeto(FilterTipo.Model, vm.ElementType, vm.Model)
            ;

            return(filterObjeto);
        }
Esempio n. 8
0
 public static bool IsModelChavePreenchida(this IAbstractViewModel vm)
 {
     return(IsModelChavePreenchida(vm.Model));
 }
Esempio n. 9
0
 public AbstractFiltro(IAbstractViewModel vm) : this()
 {
     CreateComps(vm);
 }
Esempio n. 10
0
 public AbstractBusca(IAbstractViewModel vm) : this()
 {
     DataContext = vm;
 }
Esempio n. 11
0
 public AbstractLista(IAbstractViewModel vm, object filtro = null,
                      AbstractSelecao selecao = null) : this()
 {
     CreateComps(vm, filtro, selecao);
 }
Esempio n. 12
0
 public AbstractRelatorio(IAbstractViewModel vm, object filtro = null) : this()
 {
     CreateComps(vm);
 }
Esempio n. 13
0
        private void CreateComps(IAbstractViewModel vm, object filtro = null)
        {
            DataContext = vm;

            // ReportViewer
        }
Esempio n. 14
0
 public AbstractManut(IAbstractViewModel vm) : this()
 {
     CreateComps(vm);
 }
Esempio n. 15
0
 private Metadata GetMetadata(IAbstractViewModel vm,
                              AbstractSelecao selecao = null)
 {
     return(selecao != null?selecao.GetMetadata(vm) :
                vm.ElementType.GetMetadata());
 }
Esempio n. 16
0
 public AbstractView(IAbstractViewModel vm)
 {
     SetDataContext(vm);
 }
Esempio n. 17
0
 public AbstractOpcao(IAbstractViewModel vm) : this()
 {
     DataContext = vm;
     CreateComps(vm.Commands);
 }