valve

Funkce

Zobrazení symbolu ventilu pro sestavování technologických schémat. Přístroj nepřekresluje celou plochu své obdélníkové oblasti. Pro správnou činnost musí být umístěn v panelu, který zajistí správné kreslení pozadí. Díky této vlastnosti může být elegantně umístěn např. nad obrázek.


Syntax

  valve valve_name;
    rem = string;
    bubble = string;
    timer = timer_name;
    owner = owner_name;
    position = integer, integer, integer, integer;
    win_disable = [identifier, . . . ];
    win_title = string;
    access = integer;
    tab_select = integer;
    send_same_data;
    expression = boolean_expression;
    blink = boolean_expression;
    blink_rate = identifier;
    mode = identifier;
    colors
      border_ink = color;
      run = color;
      stop = color;
    end_colors;
    blink_colors
      border_ink = color;
      run = color;
      stop = color;
    end_blink_colors;
  end_valve;


Specifické parametry přístroje


Poznámka

  1. mode = valve_horizontal
    DataView
  2. mode = valve_vertical
    DataView

Implicitně jsou nastaveny parametry:

  position = 0, 0, 25, 25;
  access = 4294967295;
  tab_select = 4294967295;
  mode = knee_left_up;
  colors
    border_ink = black;
    run = lgreen;
    stop = lred;
  end_colors;

Příklad

Příklad nastavení parametrů přístroje valve:

  valve id_1;
    timer = time_step;
    owner = panel_1;
    position = 57, 264, 35, 35;
    expression = is_flowing;
  end_valve;

Nativní procedury přístroje valve

SetValue( Value : boolean )
Zápis nové hodnoty do přístroje včetně případného nastavení výstupního datového elementu.

MoveTo( XPosition, YPosition : real )
Posunutí přístroje na pozici XPosition, YPosition. Velikosti hodnot XPosition a YPosition jsou v bodech obrazovky.

Hide()
Skrytí viditelného přístroje

Show()
Zobrazení skrytého přístroje.

SetBorderColor( Red, Green, Blue : number )
Nastavení barvy orámování ventilu.

SetRunColor( Red, Green, Blue : number )
Nastavení barvy ventilu v aktivním stavu.

SetStopColor( Red, Green, Blue : number )
Nastavení barvy ventilu v pasivním stavu.

Blink( BlinkingActive : boolean )
Zapnutí a vypnutí blikání. Voláním procedury Blink s parametrem BlinkingActive nastaveným na true začne přístroj blikat (tj. střídavě se překreslovat s použitím barevných sad colors a blink_colors). Blikání je možno zastavit voláním procedury Blink s parametrem BlinkingActive nastaveném na hodnotu false. Frekvence blikání je dána parametrem přístroje blink_rate.


ToggleBlink()
Přepnutí vzhledu přístroje do alternativní sady barev, tedy z colors do blink_colors nebo naopak podle okamžitého stavu. Po zastavení blikání se přístroj vždy vrátí do standardní barevné sady bez ohledu na předchozí volání procedury ToggleBlink.

Událostní procedury přístroje valve

Přístroj může volat standardní událostní procedury:


OnActivate()
OnMouseDown( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
OnMouseDoubleClick( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
OnMouseUp( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
OnMouseMove( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
OnKeyDown( Character : cardinal )
OnKeyRepeat( Character : cardinal )
OnKeyUp( Character : cardinal )
OnSelect()
OnDeselect()
OnShow()
OnHide()
OnNewPosition( RectX, RectY, RectW, RectD : integer )
OnWindowMinimize()
OnWindowMaximize()
OnWindowRestore( WasMinimized, WasMaximized : boolean )
OnWindowClose()

Specifické událostní procedury přístroje valve

OnOutput( Output : boolean )
Procedura je zavolána po každém vyhodnocení logického výrazu před každým případným zápisem do výstupního datového elementu. V proměnné Output je hodnota, která bude přístrojem zobrazena a která bude případně po dokončení procedury zapsána do výstupního datového elementu. Tuto hodnotu je možno v proceduře změnit.