Files
seweb/instructions_specifications.md

3.6 KiB

Installation

python virtual env machen:

python3 -m venv myenv

aktivieren dieser venv (wiederholen bei jeder session):

source myenv/activate

seweb git repo klonen (token ist max. ein Jahr gueltig):

git clone https://dm:krChVHhLuAntP-sG1T1g@gitlab.psi.ch/samenv/seweb.git

cd seweb

in deinen Entwicklungsbranch wechseln:

git switch daniel

noetige packages installieren (wird in myenv gepackt!)

pip3 install -r requirements.txt

First Run

demo frappy server starten

frappy-server cryo,test -p 5000

dieses Terminal offen lassen, neues Terminal starten

source myenv/activate cd seweb

dummy webserver starten, verbindet mit obigem frappy server

./dummy-webserver port=8888 instrument=test hostport=localhost:5000

webclient im browser starten mit http://localhost:8888/

git

Branches anzeigen:

git branch

In deinen Branch gehen, wenn nicht schon da:

git switch daniel

Aenderungen pushen

fuer jede thematisch zusammenhaenge Aenderung einen Commit machen:

git add git commit -a -m "repalce icons by nicer ones"

Wenn Du den teil beginnend mit -m weglaesst, oeffnet sich der default Editor, dann kannst Du auch mehrzeilige Kommentare machen. 1. Zeile: Titel, 2. Zeile leer ab 3. Zeile: Text, nicht breiter als ca. 72 Zeichen

git push

Aenderungen vom repo uebernehmen

Wenn noch offene Aenderungen da sind, die Du noch nicht committen willst, kannst Du diese Aenderungen zwischenlagern (ist ein Stapel!)

git stash

Zum master branch wechseln, und diesen runterziehen vom Repo:

git switch master git pull

Die Aenderungen vom master in Deinen branch uebernehmen:

git switch daniel git rebase

Falls Konflikte entstehen, bekommst Du eine entsprechende Meldung

Wenn diese geloest sind, Deine vorher zwischengespeicherten offenen Aenderungen zurueckholen

git stash pop

Tile Layout

4 types of blocks/tiles: graphics moduleblock (list of modules with main values), (goodie: foldable groups) parblock (editable list of parameters) (goodie: foldable groups) logblock (log messages) placed in right bottom quarter

console is no longer used!

(x) means a button in the top right corner

for narrow windows < 2w: show moduleblock by default (x) on graphics: go to moduleblock (x) on modules: go to graphics clicking on moduleblock: open parblock (x) on parblock: go to moduleblock logblock is shown by clicking on right bottom icon (not available with graphics) and hidden with (x) allow to swipe when touch device is available (do we need this?)

for broader windows: show graphics + moduleblock by default (x) not shown on graphics by default (x) on modules: full screen graphics click on a module row (or a 'details' icon): add parblock, do not overwrite moduleblock when window is broad enough (width > 3.5w) (x) on parblock (close parblock and reveal moduleblock if hidden) logblock is shown by clicking on right bottom icon and hidden with (x) swipe not possible

moduleblocks

on each row: colored indicator depending on status (yellow: driving, orange: warn, red: error) red also when value is in error edit icon for changing the target parameter of the module, if available 'details' icon for open the corresponding parblock

parblocks

orange when parameter is in error (update message with error instead of value: show a little icon with hover revealing error text)

logging

use logging feature of SECoP - needs some work on the server (Markus)

resizing window

hide parameters when size < 3.5w hide graphics when size < 2w show graphics when size > 2w it is not needed to show the parblock again when increasing width nderungen wieder zur