summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohann Latocha2011-09-28 23:02:23 +0200
committerJohann Latocha2011-09-28 23:02:23 +0200
commit65d9d15130d2d6798f16af011d9fefd39d36b9ce (patch)
treed554a6ad18ee92085ba9360d0a8c20a461e4b278
parentEnhancement #842 (diff)
downloadpvs-65d9d15130d2d6798f16af011d9fefd39d36b9ce.tar.gz
pvs-65d9d15130d2d6798f16af011d9fefd39d36b9ce.tar.xz
pvs-65d9d15130d2d6798f16af011d9fefd39d36b9ce.zip
Enhancement #843
-rw-r--r--CMakeLists.txt1
-rw-r--r--help/icon.pngbin0 -> 393 bytes
-rw-r--r--help/lock.pngbin0 -> 880 bytes
-rw-r--r--help/lockall.pngbin0 -> 819 bytes
-rw-r--r--help/mouse.pngbin0 -> 741 bytes
-rw-r--r--help/passwd.pngbin0 -> 747 bytes
-rw-r--r--help/process.pngbin0 -> 931 bytes
-rw-r--r--help/project.pngbin0 -> 2106 bytes
-rw-r--r--help/pvsmgr_de_DE.html122
-rw-r--r--help/reset.pngbin0 -> 673 bytes
-rw-r--r--help/save.pngbin0 -> 662 bytes
-rw-r--r--help/screenshot.pngbin0 -> 176895 bytes
-rw-r--r--help/tutor.pngbin0 -> 677 bytes
-rw-r--r--help/unlock.pngbin0 -> 869 bytes
-rw-r--r--help/unproject.pngbin0 -> 2194 bytes
-rw-r--r--help/zoom.pngbin0 -> 662 bytes
-rw-r--r--pvsmgr.qrc17
-rw-r--r--src/gui/mainWindow.cpp21
-rw-r--r--src/gui/mainWindow.h1
-rw-r--r--src/gui/ui/mainwindowtouch.ui6
20 files changed, 167 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 758c056..c79f918 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -256,6 +256,7 @@ SET(PVSGUI_TSS
# include Qt modules
SET(QT_USE_QTDBUS TRUE)
SET(QT_USE_QTNETWORK TRUE)
+SET(QT_USE_QTWEBKIT TRUE)
# add some useful macros and variables
# (QT_USE_FILE is a variable defined by FIND_PACKAGE( Qt4 ) that contains
diff --git a/help/icon.png b/help/icon.png
new file mode 100644
index 0000000..2eb4884
--- /dev/null
+++ b/help/icon.png
Binary files differ
diff --git a/help/lock.png b/help/lock.png
new file mode 100644
index 0000000..b752d0e
--- /dev/null
+++ b/help/lock.png
Binary files differ
diff --git a/help/lockall.png b/help/lockall.png
new file mode 100644
index 0000000..d5ccc50
--- /dev/null
+++ b/help/lockall.png
Binary files differ
diff --git a/help/mouse.png b/help/mouse.png
new file mode 100644
index 0000000..96639fa
--- /dev/null
+++ b/help/mouse.png
Binary files differ
diff --git a/help/passwd.png b/help/passwd.png
new file mode 100644
index 0000000..83d5278
--- /dev/null
+++ b/help/passwd.png
Binary files differ
diff --git a/help/process.png b/help/process.png
new file mode 100644
index 0000000..4c193e6
--- /dev/null
+++ b/help/process.png
Binary files differ
diff --git a/help/project.png b/help/project.png
new file mode 100644
index 0000000..9009538
--- /dev/null
+++ b/help/project.png
Binary files differ
diff --git a/help/pvsmgr_de_DE.html b/help/pvsmgr_de_DE.html
new file mode 100644
index 0000000..9252a1e
--- /dev/null
+++ b/help/pvsmgr_de_DE.html
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+<title>Help - PVS</title>
+</head>
+<body>
+
+<h3>Steuerkonsole</h3>
+<ul>
+ <li>Übersicht</li>
+ <p><img src="qrc:/help/screenshot.png"></p>
+ <li>Profile auswählen und verwalten</li>
+ <p><ul>
+ <li>Ein neues Profil kann über File→Manage Profiles→Add angelegt werden.
+ Als Profilname kann z.B. die Raumnummer eingetragen werden. Nun können
+ sämtliche Clients in der Hauptansicht nach Belieben angeordnet werden.
+ Durch einem Klick auf <img src="qrc:/help/save.png"> werden die gemachten
+ Änderungen gespeichert.</li>
+ <li>Ein bereits angelegtes Profil kann einfach über die Funktion
+ File→Manage Profiles→Load geladen werden. Dieses kann natürlich
+ nachträglich verändert werden, wobei die Änderungen ebenfalls erst nach
+ einem Klick <img src="qrc:/help/save.png"> auf gespeichert werden.</li>
+ </ul></p>
+ <li>Verbindung aufbauen</li>
+ <p><ul>
+ <li>Vor dem Verbindungsaufbau sollte der Dozent entscheiden ob er die
+ Sitzung mit einem Passwort absichern will. Dies kann einfach durch Drücken
+ der Schaltfläche <img src="qrc:/help/passwd.png"> erledigt werden. Das
+ Passwort wird in diesem Fall automatisch generiert und besteht in der Regel
+ aus vier Ziffern.</li>
+ <li>Als nächstes gilt es, den Namen der Steuerkonsole herauszufinden. Dies
+ kann durch den Menüaufruf File→Info erledigt werden. Der nun sichtbare
+ Dialog zeigt den Namen und, falls gesetzt, das Passwort in der Form
+ PVSmgr - [Name : Passwort] an.</li>
+ <li>Nachdem der Dozent seinen eigenen Client mit der Steuerkonsole
+ verbunden hat (s. Client - Verbindung aufbauen), muss dieser noch als
+ „Tutor PC“ markiert werden. Dies ist wichtig, damit der Dozent nicht
+ ungewollt seinen eigenen Rechner sperrt. Hierzu muss zunächst der Client in
+ der Hauptansicht ausgewählt (rote Umrandung) und danach die Schaltfläche
+ <img src="qrc:/help/tutor.png"> betätigt werden.</li>
+ </ul></p>
+ <li>Client steuern</li>
+ <p><ul>
+ <li>Um einen bestimmten Client steuern zu können, sollte die Darstellung
+ seines Bildschirms in der Steuerkonsole durch einen Klick auf
+ <img src="qrc:/help/zoom.png"> vergrößert werden.</li>
+ <li>Durch einen weiteren Klick auf <img src="qrc:/help/mouse.png"> kann nun
+ die Kontrolle übernommen werden. Bitte beachten Sie, dass diese Funktion
+ nur zur Verfügung steht, wenn der Benutzer des Client dies auch erlaubt
+ hat.</li>
+ </ul></p>
+ <li>Projektion</li>
+ <p><ul>
+ <li>Das Bild des Dozenten an alle Clients exportieren: Zunächst muss der
+ Client des Dozenten als Quelle ausgewählt werden (rote Umrandung). Nach
+ einem Klick auf <img src="qrc:/help/project.png"> kann nun das Ziel der
+ Projektion bestimmt werden. Hier kann nun einfach Select all aktiviert und
+ nach einem Klick auf Projekt die Projektion gestartet werden.</li>
+ <li>Um das Bild eines beliebigen Teilnehmers auf dem Rechner des Dozenten
+ anzuzeigen, müssen ebenfalls zwei Schritte durchgeführt werden. Zunächst
+ muss der Teilnehmer als Quelle markiert werden und ein weiterer Klick auf
+ <img src="qrc:/help/project.png"> öffnet den Dialog zur Zielauswahl. In dem
+ nun erscheinenden Dialog kann der Rechner des Dozenten als Ziel gewählt
+ werden. Falls der PC des Dozenten an einen Beamer angeschlossen ist, wird
+ dort das Bild des ausgewählten Teilnehmers ebenfalls dargestellt.</li>
+ <li>Eine einzelne Projektion kann durch einen Klick auf
+ <img src="qrc:/help/unproject.png"> beendet werden. Falls sämtliche
+ Projektionen abgebrochen werden sollen und der Anfangszustand der
+ Steuerkonsole wiederhergestellt werden soll, kann auch die Schaltfläche
+ <img src="qrc:/help/reset.png"> benutzt werden.</li>
+ </ul></p>
+ <li>Schwarzschalten und Sperren</li>
+ <p><ul>
+ <li>Die Tastatur eines ausgewählten Clients kann durch einen Klick auf
+ <img src="qrc:/help/lock.png"> gesperrt werden. Hierbei wird das Bild des
+ Teilnehmers zusätzlich schwarz geschaltet. Ein Klick auf
+ <img src="qrc:/help/unlock.png"> macht diese Sperre wieder rückgängig.</li>
+ <li>Durch einen Klick auf <img src="qrc:/help/lockall.png"> können auch
+ alle Clients (außer dem des Dozenten) gesperrt werden.</li>
+ </ul></p>
+ <li>Prozesse steuern</li>
+ <p><ul>
+ <li>Die Schaltfläche <img src="qrc:/help/process.png"> öffnet einen Dialog,
+ in dem die laufenden Prozesse eines Clients gesteuert werden können. Hier
+ hat der Dozent die Möglichkeit ein bestimmtes Programm zu starten oder zu
+ beenden. Bitte beachten Sie, dass dies nur mit Prozessen des laufenden
+ Linux-Systems möglich ist. Auf Programme einer Windows Instanz, die z.B. in
+ einer virtuellen Maschine läuft, kann kein Zugriff erfolgen.</li>
+ </ul></p>
+</ul>
+
+<h3>Client</h3>
+<ul>
+ <li>Menüzugriff</li>
+ <p><ul>
+ <li>Unter Linux öffnet sich das Menü durch einen Rechtsklick auf das Icon
+ <img src="qrc:/help/icon.png"> im Systemabschnitt der Kontrollleiste.</li>
+ <li>Für Windows existiert eine Toolbar mit der Schaltfläche Menu. Die
+ Position dieser Toolbar kann auf jedem Client unabhängig eingestellt werden,
+ standardmäßig ist diese jedoch in der rechten oberen Ecke.</li>
+ </ul></p>
+ <li>Verbindung aufbauen</li>
+ <p><ul>
+ <li>Eine Verbindung zu einer laufenden Steuerkonsole kann über
+ Menu→Connect→[Name der Steuerkonsole] hergestellt werden. Falls vom
+ Dozenten kein Sitzungspasswort gesetzt worden ist, sollte in der folgenden
+ Abfrage das Eingabefeld leer belassen werden.</li>
+ </ul></p>
+ <li>Rechte setzen</li>
+ <p><ul>
+ <li>Jeder Client hat die Möglichkeit, selbst zu entscheiden, ob der Dozent
+ das Recht hat, auf den Bildschirm zuzugreifen. Diese Einstellung befindet
+ sich unter Menu→Config→Permissions. Dabei bedeutet Full access, dass der
+ Dozent das Bild sehen und den Client steuern darf. Die Einstellung View
+ only hingegen erlaubt nur das Mitsehen.</li>
+ </ul></p>
+</ul>
+
+</body>
+</html> \ No newline at end of file
diff --git a/help/reset.png b/help/reset.png
new file mode 100644
index 0000000..81e9d3a
--- /dev/null
+++ b/help/reset.png
Binary files differ
diff --git a/help/save.png b/help/save.png
new file mode 100644
index 0000000..db9ee24
--- /dev/null
+++ b/help/save.png
Binary files differ
diff --git a/help/screenshot.png b/help/screenshot.png
new file mode 100644
index 0000000..1e9cadc
--- /dev/null
+++ b/help/screenshot.png
Binary files differ
diff --git a/help/tutor.png b/help/tutor.png
new file mode 100644
index 0000000..974aabe
--- /dev/null
+++ b/help/tutor.png
Binary files differ
diff --git a/help/unlock.png b/help/unlock.png
new file mode 100644
index 0000000..ea7f75b
--- /dev/null
+++ b/help/unlock.png
Binary files differ
diff --git a/help/unproject.png b/help/unproject.png
new file mode 100644
index 0000000..d281318
--- /dev/null
+++ b/help/unproject.png
Binary files differ
diff --git a/help/zoom.png b/help/zoom.png
new file mode 100644
index 0000000..e9d8e05
--- /dev/null
+++ b/help/zoom.png
Binary files differ
diff --git a/pvsmgr.qrc b/pvsmgr.qrc
index 591553d..433835e 100644
--- a/pvsmgr.qrc
+++ b/pvsmgr.qrc
@@ -36,4 +36,21 @@
<file>icons/unlocksingle.png</file>
<file>icons/locksingle.png</file>
</qresource>
+ <qresource prefix="/">
+ <file>help/pvsmgr_de_DE.html</file>
+ <file>help/icon.png</file>
+ <file>help/lockall.png</file>
+ <file>help/lock.png</file>
+ <file>help/mouse.png</file>
+ <file>help/passwd.png</file>
+ <file>help/process.png</file>
+ <file>help/project.png</file>
+ <file>help/reset.png</file>
+ <file>help/save.png</file>
+ <file>help/screenshot.png</file>
+ <file>help/tutor.png</file>
+ <file>help/unlock.png</file>
+ <file>help/unproject.png</file>
+ <file>help/zoom.png</file>
+ </qresource>
</RCC>
diff --git a/src/gui/mainWindow.cpp b/src/gui/mainWindow.cpp
index 7e2efc3..8604bc2 100644
--- a/src/gui/mainWindow.cpp
+++ b/src/gui/mainWindow.cpp
@@ -18,6 +18,7 @@
#include <QFileDialog>
#include <QBuffer>
#include <QDataStream>
+#include <QWebView>
#include <src/gui/mainWindow.h>
#include <src/net/mcast/McastConfiguration.h>
using namespace std;
@@ -204,7 +205,7 @@ MainWindow::MainWindow(QWidget *parent, Qt::WindowFlags flags) :
ui->actionView->setStatusTip(tr("Show the selected client in the whole window"));
connect(ui->actionFoto, SIGNAL(triggered()), this, SLOT(foto()));
connect(ui->actionLock, SIGNAL(triggered()), this, SLOT(lockalltoolbar()));
- connect(ui->actionChat, SIGNAL(triggered()), this, SLOT(startChatDialog()));
+ connect(ui->actionChat, SIGNAL(triggered()),this, SLOT(startChatDialog()));
ui->actionFoto->setStatusTip(tr("Make a screenshot for the selected client(s)"));
ui->actionLock->setStatusTip(tr("Lock or Unlock all Clients"));
connect(ui->actionCreate_profile, SIGNAL(triggered()), this, SLOT(createProfile()));
@@ -243,6 +244,24 @@ MainWindow::MainWindow(QWidget *parent, Qt::WindowFlags flags) :
_serverSocket->listen(QHostAddress::Any, 29481);
connect(_serverSocket, SIGNAL(newConnection()), this, SLOT(incomingFile()));
+#ifdef MAINWINDOW_USE_TOUCHGUI
+ // Setup Help Dialog
+ QWidget *_helpDialog = new QWidget;
+
+ QWebView *helpView = new QWebView;
+ helpView->load(QUrl("qrc:/help/pvsmgr_de_DE.html"));
+
+ QPushButton *exitButton = new QPushButton("Exit");
+
+ QVBoxLayout *layout = new QVBoxLayout;
+ layout->addWidget(helpView);
+ layout->addWidget(exitButton);
+
+ _helpDialog->setLayout(layout);
+
+ connect(ui->action_Howto, SIGNAL(triggered()), _helpDialog, SLOT(show()));
+ connect(exitButton, SIGNAL(clicked()), _helpDialog, SLOT(close()));
+#endif
}
MainWindow::~MainWindow()
diff --git a/src/gui/mainWindow.h b/src/gui/mainWindow.h
index cf618f0..f3e9f18 100644
--- a/src/gui/mainWindow.h
+++ b/src/gui/mainWindow.h
@@ -136,6 +136,7 @@ private:
ConnectionDialog* messageDiag;*/
AboutDialog *_aboutDialog;
+ QWidget *_helpDialog;
profileDialog *_profileDialog;
QString msgDialog;
diff --git a/src/gui/ui/mainwindowtouch.ui b/src/gui/ui/mainwindowtouch.ui
index 5b6498d..94baeb3 100644
--- a/src/gui/ui/mainwindowtouch.ui
+++ b/src/gui/ui/mainwindowtouch.ui
@@ -64,6 +64,7 @@
<string>&amp;Help</string>
</property>
<addaction name="action_About"/>
+ <addaction name="action_Howto"/>
</widget>
<widget class="QMenu" name="menu_View">
<property name="title">
@@ -497,6 +498,11 @@
<string>&amp;Info</string>
</property>
</action>
+ <action name="action_Howto">
+ <property name="text">
+ <string>Howto</string>
+ </property>
+ </action>
</widget>
<resources>
<include location="../../../pvsmgr.qrc"/>