コード例 #1
0
    public MainWindow() : base(Gtk.WindowType.Toplevel)
    {
        Build();

        /*
         * //Codigo para testear el nlog [errores controlados]
         * try {
         *      throw new Exception("Error controlado!!!");
         * } catch (Exception ex) {
         *      Logger logger = LogManager.GetCurrentClassLogger();
         *      logger.Error(ex,ex.Message);
         * }
         */

        paned.Position = 338;

        this.tablePortInit();
        tblPorts.CursorChanged += ontblPortsCursorChanged;

        this.tableBitacoraInit();

        //seleccionar el primer elemento del treeview
        TreeIter iter;

        PortsModel.getModel().GetIterFirst(out iter);
        tblPorts.SetCursor(PortsModel.getModel().GetPath(iter), tblPorts.GetColumn(0), false);
    }
コード例 #2
0
    private void populateTablePorts()
    {
        PortsModel.clearModel();

        string[] portList = SerialPort.GetPortNames();
        if (portList.Length > 0)
        {
            foreach (string port in SerialPort.GetPortNames())
            {
                CnnPort cnnPort;
                if (cnnPortList.TryGetValue(port, out cnnPort))
                {
                    PortsModel.addItem(port.ToString(), new Gdk.Pixbuf(Directory.GetCurrentDirectory() + @"/Assets/Images/on.png"), "Conectado");
                }
                else
                {
                    PortsModel.addItem(port.ToString(), new Gdk.Pixbuf(Directory.GetCurrentDirectory() + @"/Assets/Images/off.png"), "Desconectado");
                }
                cnnPort = null;
                BitacoraModel.addItem("Detectar puerto", string.Format("Puerto {0}", port.ToString()));
            }
            GtkScrolledWindow.Visible = true;
        }
        else
        {
            lblPortsNotFound.Visible  = true;
            GtkScrolledWindow.Visible = false;
            BitacoraModel.addItem("Detectar puerto", "No se detectaron puertos", "", "AVISO");
        }
    }
コード例 #3
0
    protected void OnBtnconnectClicked(object sender, EventArgs e)
    {
        string   port     = lblPuerto.Text.ToString();
        int      baudRate = Convert.ToInt32(cmbBaudRate.ActiveText.ToString());
        Parity   parity   = (Parity)Enum.Parse(typeof(Parity), cmbParity.ActiveText.ToString());
        int      databits = Convert.ToInt32(cmbDatabits.ActiveText.ToString());
        StopBits stopbits = (StopBits)Enum.Parse(typeof(StopBits), cmbStopbits.ActiveText.ToString());

        string messageResponse;

        if (
            this.connectToPort(port,
                               baudRate,
                               parity,
                               databits,
                               stopbits,
                               new SerialDataReceivedEventHandler(sport_DataReceived),
                               new SerialErrorReceivedEventHandler(sport_ErrorReceived),
                               out messageResponse)
            )
        {
            PortsModel.editItem(iterSelected, new Gdk.Pixbuf(Directory.GetCurrentDirectory() + @"/Assets/Images/on.png"), "Conectado");
            BitacoraModel.addItem("Abrir puerto", string.Format("Puerto {0}", port.ToString()));
        }
        else
        {
            PortsModel.editItem(iterSelected, new Gdk.Pixbuf(Directory.GetCurrentDirectory() + @"/Assets/Images/err.png"), "Error al intentar conectar");
            BitacoraModel.addItem("Abrir puerto", string.Format("Puerto {0}", port.ToString()), string.Format("Error al intentar conectar [ {0} ]", messageResponse), "ERROR");
        }
        tblPorts.SetCursor(PortsModel.getModel().GetPath(iterSelected), tblPorts.GetColumn(0), false);
    }
コード例 #4
0
 private void tablePortInit()
 {
     tblPorts.AppendColumn("Puerto", new CellRendererText(), "text", 0);
     tblPorts.AppendColumn("Estado", new CellRendererPixbuf(), "pixbuf", 1);
     tblPorts.AppendColumn("Descripción", new CellRendererText(), "text", 2);
     tblPorts.Model = PortsModel.getModel();
     this.populateTablePorts();
     this.AutoConnectPorts();
 }
コード例 #5
0
    protected void OnBtndisconnectClicked(object sender, EventArgs e)
    {
        CnnPort cnnPort;
        string  port = lblPuerto.Text.ToString();

        if (cnnPortList.TryGetValue(port, out cnnPort))
        {
            if (cnnPort.Close(sport_DataReceived,
                              sport_ErrorReceived))
            {
                PortsModel.editItem(iterSelected, new Gdk.Pixbuf(Directory.GetCurrentDirectory() + @"/Assets/Images/off.png"), "Desconectado");
                tblPorts.SetCursor(PortsModel.getModel().GetPath(iterSelected), tblPorts.GetColumn(0), false);
                cnnPortList.Remove(port);
                BitacoraModel.addItem("Cerrar puerto", string.Format("Puerto {0}", port.ToString()));
            }
            else
            {
                BitacoraModel.addItem("Cerrar puerto", string.Format("Puerto {0}", port.ToString()), "Error al intentar cerrar puerto", "ERROR");
            }
        }
    }
コード例 #6
0
    private void AutoConnectPorts()
    {
        ListStore autoConnectPortsList = AutoConnectPrtsModel.getModel();
        TreeIter  autocnnportiter;

        if (autoConnectPortsList.GetIterFirst(out autocnnportiter))
        {
            do
            {
                string    autocnnport = autoConnectPortsList.GetValue(autocnnportiter, 0).ToString();
                ListStore portsList   = PortsModel.getModel();
                TreeIter  iter;
                Boolean   portGetConnected = false;
                if (portsList.GetIterFirst(out iter))
                {
                    do
                    {
                        string port = portsList.GetValue(iter, 0).ToString();
                        if (port.Trim().Equals(autocnnport.Trim(), StringComparison.CurrentCultureIgnoreCase))
                        {
                            string   sport    = lblPuerto.Text.ToString();
                            int      baudRate = Convert.ToInt32(cmbBaudRate.ActiveText.ToString());
                            Parity   parity   = (Parity)Enum.Parse(typeof(Parity), cmbParity.ActiveText.ToString());
                            int      databits = Convert.ToInt32(cmbDatabits.ActiveText.ToString());
                            StopBits stopbits = (StopBits)Enum.Parse(typeof(StopBits), cmbStopbits.ActiveText.ToString());

                            CnnPort cnnPort;
                            if (!cnnPortList.TryGetValue(port, out cnnPort))
                            {
                                string messageResponse;
                                if (
                                    this.connectToPort(port,
                                                       baudRate,
                                                       parity,
                                                       databits,
                                                       stopbits,
                                                       new SerialDataReceivedEventHandler(sport_DataReceived),
                                                       new SerialErrorReceivedEventHandler(sport_ErrorReceived),
                                                       out messageResponse)
                                    )
                                {
                                    PortsModel.editItem(iter, new Gdk.Pixbuf(Directory.GetCurrentDirectory() + @"/Assets/Images/on.png"), "Conectado");
                                    BitacoraModel.addItem("Auto abrir puerto", string.Format("Puerto {0}", port.ToString()));
                                }
                                else
                                {
                                    PortsModel.editItem(iter, new Gdk.Pixbuf(Directory.GetCurrentDirectory() + @"/Assets/Images/err.png"), "Error al intentar conectar");
                                    BitacoraModel.addItem("Auto abrir puerto", string.Format("Puerto {0}", port.ToString()), string.Format("Error al intentar conectar [ {0} ]", messageResponse), "ERROR");
                                }
                            }
                            cnnPort          = null;
                            portGetConnected = true;
                        }
                    } while (portsList.IterNext(ref iter));
                }

                if (!portGetConnected)
                {
                    BitacoraModel.addItem("Auto abrir puerto", string.Format("Puerto {0}", autocnnport), string.Format("No se encontró el puerto disponible"), "ERROR");
                }
            } while(autoConnectPortsList.IterNext(ref autocnnportiter));
        }
    }
コード例 #7
0
 public HttpResponseMessage Put(Guid id, [FromBody] PortsModel item)
 {
     _process.Save(item.Token, item.Name, item.Address, item.Phone, item.City, item.Ifo, item.Mgo, item.Terms, item.IsActive, UpdatedId, item.Draft, item.Dwt);
     return(new HttpResponseMessage(HttpStatusCode.OK));
 }