public override void ModelToView() { IsPopulated = false; //Make sure this field makes sense in the selected context GISADataset.TipoNivelRelacionadoRow CurrentTnrRow = TipoNivelRelacionado.GetTipoNivelRelacionadoDaPrimeiraRelacaoEncontrada(CurrentFRDBase.NivelRow); this.panel1.Visible = (CurrentTnrRow.ID == TipoNivelRelacionado.SR || CurrentTnrRow.ID == TipoNivelRelacionado.SSR); if (DragDropHandlerProdutor == null) { DragDropHandlerProdutor = new NivelOrganicoDragDrop(lstVwProdutores, CurrentFRDBase, ((frmMain)TopLevelControl).MasterPanel); DragDropHandlerProdutor.AddControloAut += AddControloAutProdutor; } else DragDropHandlerProdutor.FRDBase = CurrentFRDBase; if (DragDropHandlerAutor == null) { DragDropHandlerAutor = new ControloAutAutorDragDrop(lstVwAutor, new TipoNoticiaAut[] { TipoNoticiaAut.EntidadeProdutora }, CurrentFRDBase); DragDropHandlerAutor.AddControloAut += AddControloAutAutor; } else DragDropHandlerAutor.FRDBase = CurrentFRDBase; byte[] Versao = null; string QueryFilter = "IDFRDBase=" + CurrentFRDBase.ID.ToString(); if (GisaDataSetHelper.GetInstance().SFRDContexto. Select(QueryFilter).Length != 0) CurrentSFRDContexto = (GISADataset.SFRDContextoRow)(GisaDataSetHelper.GetInstance().SFRDContexto. Select(QueryFilter)[0]); else CurrentSFRDContexto = GisaDataSetHelper.GetInstance().SFRDContexto.AddSFRDContextoRow(CurrentFRDBase, "", "", "", false, Versao, 0); if (mpSeries == null) mpSeries = (MasterPanelSeries)(((frmMain)TopLevelControl).MasterPanel); // Se estivermos em modo de utilização de níveis temático-funcionais // não é possível a especificação de EPs if (GisaDataSetHelper.UsingNiveisOrganicos()) { lstVwProdutores.Enabled = true; PopulateProdutores(); } else lstVwProdutores.Enabled = false; PopulateAutor(); txtDescricoesEPs.ReadOnly = true; // para os niveis estruturais orgânicos if (! (TipoNivel.isNivelDocumental(CurrentFRDBase.NivelRow)) && Nivel.isNivelOrganico(CurrentFRDBase.NivelRow)) { //conteudo do campo txtHistoriaAdministrativaBibliografica //já foi populado txtHistoriaAdministrativaBibliografica.Visible = false; TabControlHistoriaAdministrativa.Visible = true; } else // para os niveis documentais e para os níveis estruturais temático-funcionais { txtHistoriaAdministrativaBibliografica.Visible = true; TabControlHistoriaAdministrativa.Visible = false; if (CurrentSFRDContexto.IsHistoriaAdministrativaNull()) txtHistoriaAdministrativaBibliografica.Text = ""; else txtHistoriaAdministrativaBibliografica.Text = CurrentSFRDContexto.HistoriaAdministrativa; } if (TipoNivel.isNivelDocumental(CurrentFRDBase.NivelRow)) { var rhRow = CurrentFRDBase.NivelRow.GetRelacaoHierarquicaRowsByNivelRelacaoHierarquica().First(); lstVwAutor.Enabled = rhRow.IDTipoNivelRelacionado == TipoNivelRelacionado.D || rhRow.IDTipoNivelRelacionado == TipoNivelRelacionado.SD; } if (CurrentSFRDContexto.IsHistoriaCustodialNull()) txtHistoriaArquivista.Text = ""; else txtHistoriaArquivista.Text = CurrentSFRDContexto.HistoriaCustodial; if (CurrentSFRDContexto.IsFonteImediataDeAquisicaoNull()) txtFonteImediataAquisicTransf.Text = ""; else txtFonteImediataAquisicTransf.Text = CurrentSFRDContexto.FonteImediataDeAquisicao; rbSerieAberta.Checked = CurrentSFRDContexto.SerieAberta; rbSerieFechada.Checked = ! rbSerieAberta.Checked; UpdateButtonsState(); IsPopulated = true; }
public override void Deactivate() { // limpar o campo (quer tenha databindings quer não tenha) GUIHelper.GUIHelper.clearField(txtHistoriaAdministrativaBibliografica); GUIHelper.GUIHelper.clearField(txtHistoriaArquivista); GUIHelper.GUIHelper.clearField(txtFonteImediataAquisicTransf); GUIHelper.GUIHelper.clearField(txtDataExistencia); GUIHelper.GUIHelper.clearField(txtHistoria); GUIHelper.GUIHelper.clearField(txtZonaGeografica); GUIHelper.GUIHelper.clearField(txtEstatutoLegal); GUIHelper.GUIHelper.clearField(txtFuncoesOcupacoesActividades); GUIHelper.GUIHelper.clearField(txtEnquadramentoLegal); GUIHelper.GUIHelper.clearField(txtEstruturaInterna); GUIHelper.GUIHelper.clearField(txtContextoGeral); GUIHelper.GUIHelper.clearField(txtOutraInformRelevante); GUIHelper.GUIHelper.clearField(rbSerieAberta); CurrentFRDBase = null; CurrentSFRDContexto = null; // só é realmente necessário quando se muda da vista documental para a estrutural para esconder // o botão que mostra o painel de apoio OnHidePanel(); }