{ RoboLinex 1.51 Programa de control de dispositivos RCX de Lego en entorno grfico. Copyright (C) 2003 Prodel S.A Programador: Daniel Pascual Dominguez Este programa es software libre. Puede redistribuirlo y/o modificarlo bajo los términos de la Licencia Pública General de GNU según es publicada por la Free Software Foundation, bien de la versión 2 de dicha Licencia o bien (según su elección) de cualquier versión posterior. Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA GARANTÍA, incluso sin la garantía MERCANTIL implícita o sin garantizar la CONVENIENCIA PARA UN PROPÓSITO PARTICULAR. Véase la Licencia Pública General de GNU para más detalles. Debería haber recibido una copia de la Licencia Pública General junto con este programa. Si no ha sido así, escriba a la Free Software Foundation, Inc., en 675 Mass Ave, Cambridge, MA 02139, EEUU. } unit fpuertos; interface uses SysUtils, Types, Classes, Variants, QTypes, QGraphics, QControls, QForms, QDialogs, QStdCtrls; type TPuertos = class(TForm) Button1: TButton; serie1: TCheckBox; serie2: TCheckBox; usb1: TCheckBox; procedure Button1Click(Sender: TObject); procedure serie1Click(Sender: TObject); procedure serie2Click(Sender: TObject); procedure usb1Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure FormActivate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Puertos: TPuertos; puertoactivo:string; implementation {$R *.xfm} procedure TPuertos.Button1Click(Sender: TObject); begin if serie1.checked=true then puertoactivo:='/dev/ttyS0'; if serie2.checked=true then puertoactivo:='/dev/ttyS1'; if usb1.checked=true then puertoactivo:='usb'; if usb1.enabled=false then if (serie1.checked=false) and (serie2.checked=false) then showmessage('Debe seleccionar un puerto') else hide else if (serie1.checked=false) and (serie2.checked=false) and (usb1.checked=false) then showmessage('Debe seleccionar un puerto') else hide end; procedure TPuertos.serie1Click(Sender: TObject); begin serie2.Checked:=false; usb1.Checked:=false; end; procedure TPuertos.serie2Click(Sender: TObject); begin serie1.Checked:=false; usb1.Checked:=false; end; procedure TPuertos.usb1Click(Sender: TObject); begin serie1.Checked:=false; serie2.Checked:=false; end; procedure TPuertos.FormShow(Sender: TObject); begin if puertoactivo='/dev/ttyS0' then serie1.checked:=true; if puertoactivo='/dev/ttyS1' then serie2.checked:=true; if puertoactivo='usb' then usb1.checked:=true; end; procedure TPuertos.FormActivate(Sender: TObject); begin if FileExists('/dev/usb/lego0') then begin usb1.Enabled:=true; //label1.Enabled:=true; end; end; end.