From db39ec0f4b2d8a6bbbb09ebea951bee4fb7d1743 Mon Sep 17 00:00:00 2001 From: Tristan Krause Date: Tue, 18 Jun 2019 10:51:58 +0200 Subject: [PATCH] docu aktualisiert --- control/bin/b15fcli | Bin 89800 -> 0 bytes docs/html/annotated.html | 2 +- docs/html/b15f_8cpp_source.html | 2 +- docs/html/b15f_8h_source.html | 2 +- docs/html/classB15F-members.html | 2 +- docs/html/classB15F.html | 2 +- docs/html/classDot-members.html | 2 +- docs/html/classDot.html | 2 +- docs/html/classDriverException-members.html | 2 +- docs/html/classDriverException.html | 2 +- docs/html/classPlottyFile-members.html | 2 +- docs/html/classPlottyFile.html | 2 +- docs/html/classTimeoutException-members.html | 2 +- docs/html/classTimeoutException.html | 2 +- docs/html/classUSART-members.html | 2 +- docs/html/classUSART.html | 2 +- docs/html/classUSARTException-members.html | 2 +- docs/html/classUSARTException.html | 2 +- docs/html/classView-members.html | 2 +- docs/html/classView.html | 2 +- docs/html/classViewInfo-members.html | 2 +- docs/html/classViewInfo.html | 2 +- docs/html/classViewMonitor-members.html | 2 +- docs/html/classViewMonitor.html | 2 +- docs/html/classViewPromt-members.html | 2 +- docs/html/classViewPromt.html | 2 +- docs/html/classViewSelection-members.html | 2 +- docs/html/classViewSelection.html | 2 +- docs/html/classes.html | 2 +- docs/html/cli_8cpp_source.html | 2 +- .../dir_1788f8309b1a812dcb800a185471cf6c.html | 2 +- .../dir_587c94d866dbb2f408f78cf41f9b2f8d.html | 2 +- docs/html/dot_8cpp_source.html | 2 +- docs/html/dot_8h_source.html | 2 +- docs/html/driverexception_8h_source.html | 2 +- docs/html/files.html | 2 +- docs/html/functions.html | 2 +- docs/html/functions_func.html | 2 +- docs/html/functions_vars.html | 2 +- docs/html/hierarchy.html | 2 +- docs/html/index.html | 42 +++++++++++------- docs/html/plottyfile_8cpp_source.html | 2 +- docs/html/plottyfile_8h_source.html | 2 +- docs/html/timeoutexception_8h_source.html | 2 +- docs/html/ui_8cpp_source.html | 2 +- docs/html/ui_8h_source.html | 2 +- docs/html/usart_8cpp_source.html | 2 +- docs/html/usart_8h_source.html | 2 +- docs/html/usartexception_8h_source.html | 2 +- docs/html/view_8cpp_source.html | 2 +- docs/html/view_8h_source.html | 2 +- docs/html/view__info_8cpp_source.html | 2 +- docs/html/view__info_8h_source.html | 2 +- docs/html/view__monitor_8cpp_source.html | 2 +- docs/html/view__monitor_8h_source.html | 2 +- docs/html/view__promt_8cpp_source.html | 2 +- docs/html/view__promt_8h_source.html | 2 +- docs/html/view__selection_8cpp_source.html | 2 +- docs/html/view__selection_8h_source.html | 2 +- 59 files changed, 83 insertions(+), 73 deletions(-) delete mode 100755 control/bin/b15fcli diff --git a/control/bin/b15fcli b/control/bin/b15fcli deleted file mode 100755 index 7e000fbeb2b4cd5cf1cf1e3892cf9b3a58e3e839..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89800 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 E7yc~BzW@LL diff --git a/docs/html/annotated.html b/docs/html/annotated.html index 33c79a7..c28d73c 100644 --- a/docs/html/annotated.html +++ b/docs/html/annotated.html @@ -85,7 +85,7 @@ $(function() {

diff --git a/docs/html/b15f_8cpp_source.html b/docs/html/b15f_8cpp_source.html index 60ba293..d724e1c 100644 --- a/docs/html/b15f_8cpp_source.html +++ b/docs/html/b15f_8cpp_source.html @@ -112,7 +112,7 @@ $(function() { diff --git a/docs/html/b15f_8h_source.html b/docs/html/b15f_8h_source.html index 8dc0368..df71aee 100644 --- a/docs/html/b15f_8h_source.html +++ b/docs/html/b15f_8h_source.html @@ -107,7 +107,7 @@ $(function() {
bool testIntConv(void)
Definition: b15f.cpp:114
diff --git a/docs/html/classB15F-members.html b/docs/html/classB15F-members.html index 91afe72..8aeabd0 100644 --- a/docs/html/classB15F-members.html +++ b/docs/html/classB15F-members.html @@ -105,7 +105,7 @@ $(function() { diff --git a/docs/html/classB15F.html b/docs/html/classB15F.html index 161f989..0ea683f 100644 --- a/docs/html/classB15F.html +++ b/docs/html/classB15F.html @@ -1030,7 +1030,7 @@ constexpr static uint32_t  diff --git a/docs/html/classDot-members.html b/docs/html/classDot-members.html index 61e76be..eedadde 100644 --- a/docs/html/classDot-members.html +++ b/docs/html/classDot-members.html @@ -76,7 +76,7 @@ $(function() { diff --git a/docs/html/classDot.html b/docs/html/classDot.html index bb4e27e..82af1d1 100644 --- a/docs/html/classDot.html +++ b/docs/html/classDot.html @@ -196,7 +196,7 @@ Public Member Functions diff --git a/docs/html/classDriverException-members.html b/docs/html/classDriverException-members.html index 00f93a8..2273eb8 100644 --- a/docs/html/classDriverException-members.html +++ b/docs/html/classDriverException-members.html @@ -77,7 +77,7 @@ $(function() { diff --git a/docs/html/classDriverException.html b/docs/html/classDriverException.html index 5e86a4a..01801d1 100644 --- a/docs/html/classDriverException.html +++ b/docs/html/classDriverException.html @@ -109,7 +109,7 @@ std::string msg_< diff --git a/docs/html/classPlottyFile-members.html b/docs/html/classPlottyFile-members.html index dfa3390..41aeb9c 100644 --- a/docs/html/classPlottyFile-members.html +++ b/docs/html/classPlottyFile-members.html @@ -100,7 +100,7 @@ $(function() { diff --git a/docs/html/classPlottyFile.html b/docs/html/classPlottyFile.html index 36f4d57..33c7a54 100644 --- a/docs/html/classPlottyFile.html +++ b/docs/html/classPlottyFile.html @@ -811,7 +811,7 @@ Public Member Functions diff --git a/docs/html/classTimeoutException-members.html b/docs/html/classTimeoutException-members.html index 6e2774c..d664b77 100644 --- a/docs/html/classTimeoutException-members.html +++ b/docs/html/classTimeoutException-members.html @@ -77,7 +77,7 @@ $(function() { diff --git a/docs/html/classTimeoutException.html b/docs/html/classTimeoutException.html index 150e795..81bbca1 100644 --- a/docs/html/classTimeoutException.html +++ b/docs/html/classTimeoutException.html @@ -239,7 +239,7 @@ std::string  diff --git a/docs/html/classUSART-members.html b/docs/html/classUSART-members.html index 10208a9..c927b17 100644 --- a/docs/html/classUSART-members.html +++ b/docs/html/classUSART-members.html @@ -86,7 +86,7 @@ $(function() { diff --git a/docs/html/classUSART.html b/docs/html/classUSART.html index 66d1112..7e3440f 100644 --- a/docs/html/classUSART.html +++ b/docs/html/classUSART.html @@ -523,7 +523,7 @@ Public Member Functions diff --git a/docs/html/classUSARTException-members.html b/docs/html/classUSARTException-members.html index e81d522..4d4345f 100644 --- a/docs/html/classUSARTException-members.html +++ b/docs/html/classUSARTException-members.html @@ -77,7 +77,7 @@ $(function() { diff --git a/docs/html/classUSARTException.html b/docs/html/classUSARTException.html index d16b136..31432e3 100644 --- a/docs/html/classUSARTException.html +++ b/docs/html/classUSARTException.html @@ -239,7 +239,7 @@ std::string  diff --git a/docs/html/classView-members.html b/docs/html/classView-members.html index 84fcce8..1deec26 100644 --- a/docs/html/classView-members.html +++ b/docs/html/classView-members.html @@ -89,7 +89,7 @@ $(function() { diff --git a/docs/html/classView.html b/docs/html/classView.html index 1c57794..b866a7e 100644 --- a/docs/html/classView.html +++ b/docs/html/classView.html @@ -157,7 +157,7 @@ constexpr static int KEY_E diff --git a/docs/html/classViewInfo-members.html b/docs/html/classViewInfo-members.html index ba0b611..e78520e 100644 --- a/docs/html/classViewInfo-members.html +++ b/docs/html/classViewInfo-members.html @@ -99,7 +99,7 @@ $(function() { diff --git a/docs/html/classViewInfo.html b/docs/html/classViewInfo.html index f73713f..61fb65b 100644 --- a/docs/html/classViewInfo.html +++ b/docs/html/classViewInfo.html @@ -185,7 +185,7 @@ static std::vector< std::string >  diff --git a/docs/html/classViewMonitor-members.html b/docs/html/classViewMonitor-members.html index 5504a2e..6cccd84 100644 --- a/docs/html/classViewMonitor-members.html +++ b/docs/html/classViewMonitor-members.html @@ -103,7 +103,7 @@ $(function() { diff --git a/docs/html/classViewMonitor.html b/docs/html/classViewMonitor.html index 4990c1b..ef3b62e 100644 --- a/docs/html/classViewMonitor.html +++ b/docs/html/classViewMonitor.html @@ -197,7 +197,7 @@ constexpr static int KEY_E diff --git a/docs/html/classViewPromt-members.html b/docs/html/classViewPromt-members.html index af18106..1fe0c2d 100644 --- a/docs/html/classViewPromt-members.html +++ b/docs/html/classViewPromt-members.html @@ -105,7 +105,7 @@ $(function() { diff --git a/docs/html/classViewPromt.html b/docs/html/classViewPromt.html index 562b130..ffaf075 100644 --- a/docs/html/classViewPromt.html +++ b/docs/html/classViewPromt.html @@ -205,7 +205,7 @@ static std::vector< std::string >  diff --git a/docs/html/classViewSelection-members.html b/docs/html/classViewSelection-members.html index 3cfccb5..f2ee65f 100644 --- a/docs/html/classViewSelection-members.html +++ b/docs/html/classViewSelection-members.html @@ -94,7 +94,7 @@ $(function() { diff --git a/docs/html/classViewSelection.html b/docs/html/classViewSelection.html index 6e4fcf6..72c4806 100644 --- a/docs/html/classViewSelection.html +++ b/docs/html/classViewSelection.html @@ -172,7 +172,7 @@ static std::vector< std::string >  diff --git a/docs/html/classes.html b/docs/html/classes.html index db7e3bd..9f365fe 100644 --- a/docs/html/classes.html +++ b/docs/html/classes.html @@ -105,7 +105,7 @@ $(function() { diff --git a/docs/html/cli_8cpp_source.html b/docs/html/cli_8cpp_source.html index 8758410..9a80fb3 100644 --- a/docs/html/cli_8cpp_source.html +++ b/docs/html/cli_8cpp_source.html @@ -72,7 +72,7 @@ $(function() {
static void setAbortHandler(errorhandler_t func)
Definition: b15f.cpp:485
diff --git a/docs/html/dir_1788f8309b1a812dcb800a185471cf6c.html b/docs/html/dir_1788f8309b1a812dcb800a185471cf6c.html index 46575f2..cd7a66c 100644 --- a/docs/html/dir_1788f8309b1a812dcb800a185471cf6c.html +++ b/docs/html/dir_1788f8309b1a812dcb800a185471cf6c.html @@ -73,7 +73,7 @@ $(function() { diff --git a/docs/html/dir_587c94d866dbb2f408f78cf41f9b2f8d.html b/docs/html/dir_587c94d866dbb2f408f78cf41f9b2f8d.html index 55521b7..4e435ed 100644 --- a/docs/html/dir_587c94d866dbb2f408f78cf41f9b2f8d.html +++ b/docs/html/dir_587c94d866dbb2f408f78cf41f9b2f8d.html @@ -73,7 +73,7 @@ $(function() { diff --git a/docs/html/dot_8cpp_source.html b/docs/html/dot_8cpp_source.html index 94cfcb6..17fcf96 100644 --- a/docs/html/dot_8cpp_source.html +++ b/docs/html/dot_8cpp_source.html @@ -77,7 +77,7 @@ $(function() {
Dot(uint16_t x, uint16_t y, uint8_t curve)
Definition: dot.cpp:3
diff --git a/docs/html/dot_8h_source.html b/docs/html/dot_8h_source.html index 161e454..6189383 100644 --- a/docs/html/dot_8h_source.html +++ b/docs/html/dot_8h_source.html @@ -78,7 +78,7 @@ $(function() {
Dot(uint16_t x, uint16_t y, uint8_t curve)
Definition: dot.cpp:3
diff --git a/docs/html/driverexception_8h_source.html b/docs/html/driverexception_8h_source.html index 60b7477..089f53c 100644 --- a/docs/html/driverexception_8h_source.html +++ b/docs/html/driverexception_8h_source.html @@ -74,7 +74,7 @@ $(function() { diff --git a/docs/html/files.html b/docs/html/files.html index 643985f..c870eee 100644 --- a/docs/html/files.html +++ b/docs/html/files.html @@ -99,7 +99,7 @@ $(function() { diff --git a/docs/html/functions.html b/docs/html/functions.html index bb37798..dd18d39 100644 --- a/docs/html/functions.html +++ b/docs/html/functions.html @@ -380,7 +380,7 @@ $(function() { diff --git a/docs/html/functions_func.html b/docs/html/functions_func.html index a4ed467..dde0281 100644 --- a/docs/html/functions_func.html +++ b/docs/html/functions_func.html @@ -347,7 +347,7 @@ $(function() { diff --git a/docs/html/functions_vars.html b/docs/html/functions_vars.html index 9164842..af25da6 100644 --- a/docs/html/functions_vars.html +++ b/docs/html/functions_vars.html @@ -92,7 +92,7 @@ $(function() { diff --git a/docs/html/hierarchy.html b/docs/html/hierarchy.html index 3556e16..a364a17 100644 --- a/docs/html/hierarchy.html +++ b/docs/html/hierarchy.html @@ -86,7 +86,7 @@ $(function() { diff --git a/docs/html/index.html b/docs/html/index.html index 2c85dd5..c873b84 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -81,17 +81,22 @@ Außerdem wird eine Bibliothek (b15fdrv) installiert, die eine einfache

Installation

-1. Abhängigkeiten installieren

+Installation mit Installationsscript (empfohlen) +

(a) Laden Sie das Installationsscript herunter (b) Setzen Sie die Ausführungsberechtigung (c) Starten Sie das Script

+

+Installation von Hand (falls Installationsscript mit Fehler abbricht)

+

+1. Abhängigkeiten installieren

(a) sudo apt-get update
(b) sudo apt-get install git avr-libc avrdude libncurses5-dev g++ astyle

-

-2. Das Repository klonen

+

+2. Das Repository klonen

(a) cd /home/famulus/
(b) git clone "https://github.com/devfix/b15f.git"

-

-3. Die Firmware installieren

+

+3. Die Firmware installieren

(a) cd "/home/famulus/b15f/firmware"
(b) Passen Sie in der Datei Makefile die Option "MCU = ..." an die MCU des vorliegenden Boards an
(atmega1284 und atmega1284p sind nicht identisch!)
@@ -101,41 +106,46 @@ Installation Sonst:
(d II) sudo make upload

-

-4. Die Steuersoftware (Bibliothek & CLI) installieren

+

+4. Die Steuersoftware (Bibliothek & CLI) installieren

(a) cd "/home/famulus/b15f/control/src"
(b) make
(Die Warnungen durch doxygen können ignoriert werden.)

(c) sudo make install

-

+

Aktualisierung

+

+Aktualisierung mit Installationsscript (empfohlen)

+

Wiederholen Sie den Schritt "Installation mit Installationsscript". Das Script erkennt die bereits installierte Version und aktualisiert diese.

+

+Aktualisierung von Hand (falls Installationsscript mit Fehler abbricht)

(a) cd /home/famulus/b15f/
(b) git pull –prune
(c) cd "/home/famulus/b15f/firmware"
(d) make clean
(e) cd "/home/famulus/b15f/control/src"
(f) make clean
- (g) Installation ab Schritt 3 wiederholen

-

+ (g) "Installation von Hand" ab Schritt 3 durchführen

+

Die CommandLineInterface (CLI) benutzen

(a) Öffnen Sie ein Terminal und maximieren Sie das Fenster
(b) Start des CLI erfolgt durch b15fcli
(c) Die Navigation erfolgt durch <Tab>, die Pfeiltasten und <Enter> oder die Maus
(d) Mit <Strg + c> kann das Programm sofort verlassen werden

-

+

Eigene Programme mit B15F schreiben

-

+

Grundsätzliches

Verwendet wird die Bibliothekt b15fdrv. Die wichtigste Klasse für die Steuerung des Board 15 ist B15F.
Dort befindet sich auch eine Übersicht der verfügbaren Befehle.

-

+

Beispiele

In dem Verzeichnis b15f/control/examples sind einige Beispiele für die Verwendung einzelner B15F Funktionen.
Zu jedem Beispiel gehört eine main.cpp mit dem Quellcode und eine Makefile-Datei. Durch das Makefile wird beim Kompilieren und Linken die Bibliothek b15fdrv automatisch einbezogen.
Das Beispiel muss durch Sie also nur mit make kompiliert und mit .**/main.elf** gestartet werden.

-

+

Den B15F Treiber verwenden

Benötigt wird der B15F-Header:
#include <b15f/b15f.h>
@@ -146,7 +156,7 @@ und der Header für die plottyfile-Generierung, falls mit Kennlinien gearbeitet Falls noch keine existiert, wird automatisch eine erzeugt und Verbindung zum Board hergestellt.
Ab jetzt können auf dem Object drv verschiedene Methoden angewand werden, siehe B15F.

-

+

Kennlinien mit plottyfile generieren

Die Beschreibung zu Plottyfile befindet sich hier.
Nach dem Include von plottyfile kann ein neues Objekt erzeugt und konfiguriert werden:
@@ -157,7 +167,7 @@ Dabei gehören Punkte mit dem gleichen Index für curve (uint8_

diff --git a/docs/html/plottyfile_8cpp_source.html b/docs/html/plottyfile_8cpp_source.html index 8d7f9c8..9b1cfde 100644 --- a/docs/html/plottyfile_8cpp_source.html +++ b/docs/html/plottyfile_8cpp_source.html @@ -101,7 +101,7 @@ $(function() {
std::string getUnitX(void) const
Definition: plottyfile.cpp:105
diff --git a/docs/html/plottyfile_8h_source.html b/docs/html/plottyfile_8h_source.html index 2b84090..7903c9b 100644 --- a/docs/html/plottyfile_8h_source.html +++ b/docs/html/plottyfile_8h_source.html @@ -102,7 +102,7 @@ $(function() {
std::string getUnitX(void) const
Definition: plottyfile.cpp:105
diff --git a/docs/html/timeoutexception_8h_source.html b/docs/html/timeoutexception_8h_source.html index 8f0aed1..428a563 100644 --- a/docs/html/timeoutexception_8h_source.html +++ b/docs/html/timeoutexception_8h_source.html @@ -79,7 +79,7 @@ $(function() {
TimeoutException(const std::string &message)
diff --git a/docs/html/ui_8cpp_source.html b/docs/html/ui_8cpp_source.html index fdd3380..cfbe36f 100644 --- a/docs/html/ui_8cpp_source.html +++ b/docs/html/ui_8cpp_source.html @@ -88,7 +88,7 @@ $(function() {
bool analogWrite0(uint16_t port)
Definition: b15f.cpp:249
diff --git a/docs/html/ui_8h_source.html b/docs/html/ui_8h_source.html index 346c472..04f2df3 100644 --- a/docs/html/ui_8h_source.html +++ b/docs/html/ui_8h_source.html @@ -73,7 +73,7 @@ $(function() {
1 #ifndef UI_H
2 #define UI_H
3 
4 #include <vector>
5 #include "view_selection.h"
6 #include "view_info.h"
7 #include "view_monitor.h"
8 #include "view_promt.h"
9 
10 void show_main(int);
11 void input(int);
12 void view_back(int);
13 void finish(int);
14 void cleanup();
15 
16 void show_info(int);
17 void show_monitor(int);
18 void show_invalid_port_input(int);
19 void show_invalid_dac_input(int);
20 void write_digital_output0(int);
21 void write_digital_output1(int);
22 void write_analog_output0(int);
23 void write_analog_output1(int);
24 void show_digital_output0(int);
25 void show_digital_output1(int);
26 void show_analog_output0(int);
27 void show_analog_output1(int);
28 
29 // selftest group
30 void show_selftest_info(int);
31 void start_selftest(int);
32 void stop_selftest(int);
33 
34 
35 extern std::vector<View*> win_stack;
36 extern std::thread t_refresh;
37 
38 #endif // UI_H
diff --git a/docs/html/usart_8cpp_source.html b/docs/html/usart_8cpp_source.html index 9e6bb1f..2e0a51c 100644 --- a/docs/html/usart_8cpp_source.html +++ b/docs/html/usart_8cpp_source.html @@ -88,7 +88,7 @@ $(function() { diff --git a/docs/html/usart_8h_source.html b/docs/html/usart_8h_source.html index 6bcef40..80a7a4e 100644 --- a/docs/html/usart_8h_source.html +++ b/docs/html/usart_8h_source.html @@ -88,7 +88,7 @@ $(function() {
void flushOutputBuffer(void)
Definition: usart.cpp:68
diff --git a/docs/html/usartexception_8h_source.html b/docs/html/usartexception_8h_source.html index f0740bd..f7e044a 100644 --- a/docs/html/usartexception_8h_source.html +++ b/docs/html/usartexception_8h_source.html @@ -79,7 +79,7 @@ $(function() {
virtual ~USARTException()=default
diff --git a/docs/html/view_8cpp_source.html b/docs/html/view_8cpp_source.html index ee2712f..335ec15 100644 --- a/docs/html/view_8cpp_source.html +++ b/docs/html/view_8cpp_source.html @@ -74,7 +74,7 @@ $(function() {
static void abort(std::string msg)
Definition: b15f.cpp:467
diff --git a/docs/html/view_8h_source.html b/docs/html/view_8h_source.html index 0a6c680..e92660b 100644 --- a/docs/html/view_8h_source.html +++ b/docs/html/view_8h_source.html @@ -74,7 +74,7 @@ $(function() {
Definition: view.h:19
diff --git a/docs/html/view__info_8cpp_source.html b/docs/html/view__info_8cpp_source.html index 8148056..8baebb1 100644 --- a/docs/html/view__info_8cpp_source.html +++ b/docs/html/view__info_8cpp_source.html @@ -73,7 +73,7 @@ $(function() {
1 #include "view_info.h"
2 
3 ViewInfo::ViewInfo()
4 {
5  calls.push_back(nullptr);
6 }
7 
8 void ViewInfo::setText(std::string text)
9 {
10  this->text = text;
11 }
12 
13 void ViewInfo::setLabelClose(std::string label)
14 {
15  this->label_close = label;
16 }
17 
18 void ViewInfo::setCall(call_t call)
19 {
20  calls[0] = call;
21 }
22 
23 void ViewInfo::draw()
24 {
25  int li = 0;
26  for(std::string line : str_split(text, "\n"))
27  mvwprintw(win, text_offset_y + li++, text_offset_x, "%s", line.c_str());
28 
29  close_offset_x = (width - label_close.length()) / 2;
30  close_offset_y = height - 2;
31 
32  wattron(win, A_REVERSE);
33  mvwprintw(win, close_offset_y, close_offset_x, "%s", label_close.c_str());
34  wattroff(win, A_REVERSE);
35 }
36 
37 call_t ViewInfo::keypress(int& key)
38 {
39  switch(key)
40  {
41 
42  case KEY_MOUSE:
43  {
44  // http://pronix.linuxdelta.de/C/Linuxprogrammierung/Linuxsystemprogrammieren_C_Kurs_Kapitel10b.shtml
45  MEVENT event;
46  if(getmouse(&event) == OK && event.bstate & (BUTTON1_CLICKED | BUTTON1_DOUBLE_CLICKED))
47  {
48  size_t column = start_x + close_offset_x;
49  size_t row = start_y + close_offset_y;
50  size_t mouse_x = event.x, mouse_y = event.y;
51  if(mouse_y == row && mouse_x >= column && mouse_x < column + label_close.length())
52  key = -1; // do return from view
53  }
54  break;
55  }
56  case KEY_ENT:
57  key = -1; // do return from view
58  break;
59  default:
60  break;
61  }
62  return calls[0];
63 }
diff --git a/docs/html/view__info_8h_source.html b/docs/html/view__info_8h_source.html index fe6e550..820e386 100644 --- a/docs/html/view__info_8h_source.html +++ b/docs/html/view__info_8h_source.html @@ -75,7 +75,7 @@ $(function() {
Definition: view.h:19
diff --git a/docs/html/view__monitor_8cpp_source.html b/docs/html/view__monitor_8cpp_source.html index 39901ce..642ae14 100644 --- a/docs/html/view__monitor_8cpp_source.html +++ b/docs/html/view__monitor_8cpp_source.html @@ -84,7 +84,7 @@ $(function() { diff --git a/docs/html/view__monitor_8h_source.html b/docs/html/view__monitor_8h_source.html index fb412fc..0544bf9 100644 --- a/docs/html/view__monitor_8h_source.html +++ b/docs/html/view__monitor_8h_source.html @@ -75,7 +75,7 @@ $(function() { diff --git a/docs/html/view__promt_8cpp_source.html b/docs/html/view__promt_8cpp_source.html index da449ff..2190eec 100644 --- a/docs/html/view__promt_8cpp_source.html +++ b/docs/html/view__promt_8cpp_source.html @@ -73,7 +73,7 @@ $(function() {
1 #include "view_promt.h"
2 
3 void ViewPromt::draw()
4 {
5  curs_set(1); // show cursor
6 
7  int li = text_offset_y;
8  int ci = 0;
9  for(std::string line : str_split(message + input, "\n"))
10  {
11  mvwprintw(win, ++li, text_offset_x, "%s", line.c_str());
12  ci = line.length() + text_offset_x;
13  }
14 
15  button_offset_x = (width - label_cancel.length() - sep.length() - label_confirm.length()) / 2;
16  button_offset_y = height - text_offset_y;
17 
18  if(selection == 0)
19  {
20  wattron(win, A_REVERSE);
21  mvwprintw(win, button_offset_y, button_offset_x, "%s", label_cancel.c_str());
22  wattroff(win, A_REVERSE);
23  mvwprintw(win, button_offset_y, button_offset_x + label_cancel.length(), "%s", sep.c_str());
24  mvwprintw(win, button_offset_y, button_offset_x + label_cancel.length() + sep.length(), "%s", label_confirm.c_str());
25  }
26  else
27  {
28  mvwprintw(win, button_offset_y, button_offset_x, "%s", label_cancel.c_str());
29  mvwprintw(win, button_offset_y, button_offset_x + label_cancel.length(), "%s", sep.c_str());
30  wattron(win, A_REVERSE);
31  mvwprintw(win, button_offset_y, button_offset_x + label_cancel.length() + sep.length(), "%s", label_confirm.c_str());
32  wattroff(win, A_REVERSE);
33  }
34  wmove(win, li, ci);
35 }
36 
37 void ViewPromt::setMessage(std::string message)
38 {
39  this->message = message;
40 }
41 
42 void ViewPromt::setConfirm(std::string name, std::function<void(int)> call)
43 {
44  label_confirm = name;
45  call_confirm = call;
46 }
47 
48 void ViewPromt::setCancel(std::string name, bool cancelable)
49 {
50  label_cancel = name;
51  this->cancelable = cancelable;
52 }
53 
54 std::string ViewPromt::getInput()
55 {
56  return input;
57 }
58 
59 std::function<void(int)> ViewPromt::keypress(int& key)
60 {
61  std::function<void(int)> ret = nullptr;
62  switch(key)
63  {
64  case KEY_BACKSPACE:
65  if(input.length())
66  input.pop_back();
67  break;
68  case '\t':
69  case KEY_LEFT:
70  case KEY_RIGHT:
71  selection = (selection + 1 ) % 2;
72  break;
73  case KEY_MOUSE:
74  {
75  // http://pronix.linuxdelta.de/C/Linuxprogrammierung/Linuxsystemprogrammieren_C_Kurs_Kapitel10b.shtml
76  MEVENT event;
77  bool hit = false;
78  if(getmouse(&event) == OK && event.bstate & (BUTTON1_CLICKED | BUTTON1_DOUBLE_CLICKED))
79  {
80  size_t column_start = start_x + button_offset_x;
81  size_t row_start = start_y + button_offset_y;
82  size_t mouse_x = event.x, mouse_y = event.y;
83  if(mouse_y == row_start)
84  {
85  if(cancelable && mouse_x >= column_start && mouse_x < column_start + label_cancel.length())
86  {
87  if(selection == 0 || event.bstate & BUTTON1_DOUBLE_CLICKED)
88  hit = true;
89  selection = 0;
90  }
91  if(mouse_x >= column_start + label_cancel.length() + sep.length() && mouse_x < column_start + label_cancel.length() + sep.length() + label_confirm.length())
92  {
93  if(selection == 1 || event.bstate & BUTTON1_DOUBLE_CLICKED)
94  hit = true;
95  selection = 1;
96  }
97  }
98  }
99  if(!hit)
100  break;
101 
102  // fall through to next case
103  [[fallthrough]];
104  }
105  case KEY_ENT:
106  if(selection == 0) // exit
107  key = -1; // do return from view
108  else
109  ret = call_confirm;
110  break;
111  default:
112  break;
113  }
114 
115  if(key >= ' ' && key <= '~')
116  input += (char) key;
117 
118  if(key != KEY_ENT)
119  repaint();
120  return ret;
121 }
diff --git a/docs/html/view__promt_8h_source.html b/docs/html/view__promt_8h_source.html index 8d0b6aa..718268c 100644 --- a/docs/html/view__promt_8h_source.html +++ b/docs/html/view__promt_8h_source.html @@ -75,7 +75,7 @@ $(function() { diff --git a/docs/html/view__selection_8cpp_source.html b/docs/html/view__selection_8cpp_source.html index a36d18b..b6e26d2 100644 --- a/docs/html/view__selection_8cpp_source.html +++ b/docs/html/view__selection_8cpp_source.html @@ -73,7 +73,7 @@ $(function() {
1 #include "view_selection.h"
2 
3 void ViewSelection::draw()
4 {
5  //curs_set(0); // hide cursor
6  for(size_t i = 0; i < choices.size(); i++)
7  {
8  if(selection == i)
9  wattron(win, A_REVERSE);
10  mvwprintw(win, i + choice_offset_y, choice_offset_x, "%s", choices[i].c_str());
11  if(selection == i)
12  wattroff(win, A_REVERSE);
13  }
14 }
15 
16 void ViewSelection::addChoice(std::string name, call_t call)
17 {
18  choices.push_back(name);
19  calls.push_back(call);
20 }
21 
22 call_t ViewSelection::keypress(int& key)
23 {
24  call_t ret = nullptr;
25  switch(key)
26  {
27  case KEY_UP:
28  do
29  selection = (selection - 1 + choices.size()) % choices.size();
30  while(!choices[selection].length() && choices.size());
31  break;
32 
33  case '\t':
34  case KEY_DOWN:
35  do
36  selection = (selection + 1) % choices.size();
37  while(!choices[selection].length() && choices.size());
38  break;
39 
40  case KEY_MOUSE:
41  {
42  // http://pronix.linuxdelta.de/C/Linuxprogrammierung/Linuxsystemprogrammieren_C_Kurs_Kapitel10b.shtml
43  MEVENT event;
44  bool hit = false;
45  if(getmouse(&event) == OK && event.bstate & (BUTTON1_CLICKED | BUTTON1_DOUBLE_CLICKED))
46  {
47  size_t column_start = start_x + choice_offset_x;
48  size_t row_start = start_y + choice_offset_y;
49  size_t mouse_x = event.x, mouse_y = event.y;
50  for(size_t i = 0; i < choices.size(); i++)
51  if(choices[i].length() && mouse_y == row_start + i && mouse_x >= column_start && mouse_x < column_start + choices[i].length())
52  {
53  if(selection == i || event.bstate & BUTTON1_DOUBLE_CLICKED)
54  hit = true;
55  selection = i;
56  }
57  }
58  if(!hit)
59  break;
60 
61  // fall through to next case
62  [[fallthrough]];
63  }
64 
65  case KEY_ENT:
66  if(selection == choices.size() - 1) // exit
67  key = -1; // do return from view
68  else
69  ret = calls[selection];
70  break;
71  default:
72  break;
73  }
74  repaint();
75  return ret;
76 }
diff --git a/docs/html/view__selection_8h_source.html b/docs/html/view__selection_8h_source.html index 917d22d..781db44 100644 --- a/docs/html/view__selection_8h_source.html +++ b/docs/html/view__selection_8h_source.html @@ -75,7 +75,7 @@ $(function() {