private void RedimensionaSimbolos() { //--Inicio da linha //iTabStop = 0; iTabStop++; simboloInicioLinha.TabIndex = iTabStop; simboloInicioLinha.TabStop = true; int indiceInsereSaida = 0; if (saida.Count > 0) { indiceInsereSaida = simbolos.Count; simbolos.AddRange(saida); } int i = 0; foreach (ControleLivre _simbAux in simbolos) { iTabStop++; _simbAux.TabIndex = iTabStop; _simbAux.TabStop = true; _simbAux.Size = new Size(Convert.ToInt32(Convert.ToDouble(_simbAux.tamanhoXY.Width) * percReducaoSimbolo), _simbAux.tamanhoXY.Height); if (i >= indiceInsereSaida && (saida.Count > 0)) { _simbAux.Location = new Point(_simbAux.posicaoXY.X + (_simbAux.tamanhoXY.Width - (Convert.ToInt32(Convert.ToDouble(_simbAux.tamanhoXY.Width) * percReducaoSimbolo))) / 2 + posX2primeiroSimbSaida, _simbAux.posicaoXY.Y); } else { _simbAux.Location = new Point(_simbAux.posicaoXY.X + (_simbAux.tamanhoXY.Width - (Convert.ToInt32(Convert.ToDouble(_simbAux.tamanhoXY.Width) * percReducaoSimbolo))) / 2, _simbAux.posicaoXY.Y); } _simbAux.Visible = true; _simbAux.Invalidate(); i++; } if (saida.Count > 0) { simbolos.RemoveRange(indiceInsereSaida, saida.Count); } //--Fim da linha //iTabStop = 0; simboloFimLinha.TabIndex = 0; simboloFimLinha.TabStop = false; //--Desenho de fundo //iTabStop = 0; simboloDesenhoFundo.TabIndex = 0; simboloDesenhoFundo.TabStop = false; simboloDesenhoFundo.Invalidate(); }
public void ControleSelecionado_SolicitaMudarEndereco(ControleLivre sender, Rectangle rect, Type tipo, int valorMax, int valorMin, params object[] faixa) { AlteraTemporizadorContador Altera = new AlteraTemporizadorContador(sender.getCI()); if (sender.getOperandos(0) == null) { MessageBox.Show("Favor selecionar um endereço primeiro", "Alterar configuração", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } switch (sender.getCI()) { case CodigosInterpretaveis.TEMPORIZADOR: Altera.Tipo = (Int32)((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Tipo; Altera.Preset = (Int32)((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Preset; Altera.Acumulado = (Int32)((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Acumulado; Altera.BaseTempo = (Int32)((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.BaseTempo; break; case CodigosInterpretaveis.CONTADOR: Altera.Tipo = (Int32)((EnderecamentoLadder)sender.getOperandos(0)).Contador.Tipo; Altera.Preset = (Int32)((EnderecamentoLadder)sender.getOperandos(0)).Contador.Preset; Altera.Acumulado = (Int32)((EnderecamentoLadder)sender.getOperandos(0)).Contador.Acumulado; break; default: break; } DialogResult _result = Altera.ShowDialog(); if (_result == DialogResult.OK) { /// mantem os parametros do ci atualizados sender.setOperando(1, Altera.Tipo); sender.setOperando(2, Altera.Preset); sender.setOperando(3, Altera.Acumulado); switch (sender.getCI()) { case CodigosInterpretaveis.TEMPORIZADOR: /// mantem os parametros do ci atualizados sender.setOperando(4, Altera.BaseTempo); ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Tipo = Altera.Tipo; ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Preset = Altera.Preset; ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Acumulado = Altera.Acumulado; ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.BaseTempo = Altera.BaseTempo; sender.setOperando(1, ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Tipo); sender.setOperando(2, ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Preset); sender.setOperando(3, ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.Acumulado); sender.setOperando(4, ((EnderecamentoLadder)sender.getOperandos(0)).Temporizador.BaseTempo); break; case CodigosInterpretaveis.CONTADOR: ((EnderecamentoLadder)sender.getOperandos(0)).Contador.Tipo = Altera.Tipo; ((EnderecamentoLadder)sender.getOperandos(0)).Contador.Preset = Altera.Preset; ((EnderecamentoLadder)sender.getOperandos(0)).Contador.Acumulado = Altera.Acumulado; sender.setOperando(1, ((EnderecamentoLadder)sender.getOperandos(0)).Contador.Tipo); sender.setOperando(2, ((EnderecamentoLadder)sender.getOperandos(0)).Contador.Preset); sender.setOperando(3, ((EnderecamentoLadder)sender.getOperandos(0)).Contador.Acumulado); break; default: break; } sender.Invalidate(); } }