git-svn-id: svn://db.shs.com.ru/pip@232 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5

This commit is contained in:
2016-08-19 19:58:54 +00:00
parent 4ceabcd22d
commit 0133533ac2
7 changed files with 120 additions and 108 deletions

View File

@@ -2,7 +2,6 @@
#include "shared.h"
#include "pisysteminfo.h"
const char pisd_prefix[] = "_pisd_";
const char self_name[] = "__self__";
extern PIScreen screen;
//bool Daemon::inited__ = false;
@@ -198,7 +197,7 @@ void Daemon::TileFileProgress::tileEvent(PIScreenTile * t, TileEvent e) {
Daemon::Daemon(): inited__(false), PIPeer(pisd_prefix + PISystemInfo::instance()->hostname + "_" + PIString(rand() % 100)), fm(this) {
setName("Daemon");
// setName("Daemon");
dtimer.setName("__S__Daemon_timer");
mode = offset = cur = height = 0;
CONNECTU(&screen, keyPressed, this, keyEvent)

View File

@@ -44,7 +44,7 @@ bool FileManager::TileDir::keyEvent(PIKbdListener::KeyEvent key) {
}
break;
case PIKbdListener::F7:
nd = askNewDir();
nd = askUserInput("Enter new directory name:");
setFocus();
if (nd.isEmpty()) return true;
if (is_right && remote_mode)

View File

@@ -41,12 +41,11 @@ class MainMenu: public PITimer {
public:
MainMenu() {
cur_peer = -1;
TileSimple * tile = new TileSimple("title");
tile->content << TileSimple::Row("pisd (PI System Daemon, PIP version " + PIPVersion() + ")", CellFormat(Black, Transparent));
tile->content << TileSimple::Row("This daemon: \"" + daemon_.thisDaemonName() + "\"", CellFormat(Black, Transparent));
tile->back_format.color_back = Yellow;
tile->size_policy = Fixed;
screen.rootTile()->addTile(tile);
title = new TileSimple("title");
updateTitle(title);
title->back_format.color_back = Yellow;
title->size_policy = Fixed;
screen.rootTile()->addTile(title);
PIScreenTile * center = new PIScreenTile("center");
center->back_format.color_back = Cyan;
@@ -96,6 +95,7 @@ public:
ret->content << TileList::Row("Peer info", CellFormat());
ret->content << TileList::Row("Peer reinit", CellFormat());
ret->content << TileList::Row("Peer diagnostics", CellFormat());
ret->content << TileList::Row("Peer change self name", CellFormat());
ret->content << TileList::Row("Exit", CellFormat());
ret->selection_mode = TileList::NoSelection;
return ret;
@@ -148,6 +148,12 @@ public:
// updatePeerInfo();
return ret;
}
void updateTitle(TileSimple * tl) {
tl->content.clear();
tl->content << TileSimple::Row("pisd (PI System Daemon, PIP version " + PIPVersion() + ")", CellFormat(Black, Transparent));
tl->content << TileSimple::Row("This daemon: \"" + daemon_.thisDaemonName() + "\"", CellFormat(Black, Transparent));
}
void updatePeerDiag(TileSimple * tl, const PIDiagnostics & diag) {
tl->content.clear();
tl->content << TileSimple::Row(diag.name() + " diagnostics", CellFormat(PIScreenTypes::Default, PIScreenTypes::Default, PIScreenTypes::Bold));
@@ -224,7 +230,8 @@ public:
case 3: tpeer->show(); peers_tl->setFocus(); break;
case 4: daemon_.reinit(); tmenu->show(); break;
case 5: tpeerdiag->show(); break;
case 6: PIKbdListener::exiting = true; break;
case 6: daemon_.changeName(pisd_prefix + askUserInput("Peer name:")); updateTitle(title); menuRequest(); break;
case 7: PIKbdListener::exiting = true; break;
}
}
return;
@@ -249,6 +256,7 @@ public:
}
PIScreenTile * tmenu, * tinfo, * tfm, * tdaemon, * tpeer, * tpeerdiag;
TileList * peers_tl, * addrs_tl, * peermap_tl;
TileSimple * title;
TileSimple * peerinfo_tl;
TileSimple * peerdiagdata_tl, * peerdiagservice_tl;
PIVector<PIScreenTile * > mtiles;

View File

@@ -38,7 +38,7 @@ PIString readableTime(const PITime & t) {
}
PIString askNewDir() {
PIString askUserInput(const PIString & desc) {
PIScreenTile dlg;
dlg.setMargins(1, 1, 1, 1);
dlg.spacing = 1;
@@ -48,7 +48,7 @@ PIString askNewDir() {
TileButtons * btns = new TileButtons();
lbl->back_format.color_back = Yellow;
btns->back_format.color_back = Yellow;
lbl->content << TileSimple::Row("Enter new directory name:", CellFormat(Black, Transparent));
lbl->content << TileSimple::Row(desc, CellFormat(Black, Transparent));
btns->content << TileButtons::Button(" Ok ", CellFormat());
btns->content << TileButtons::Button("Cancel", CellFormat());
dlg.addTile(lbl);

View File

@@ -5,11 +5,13 @@
#include "piscreen.h"
#include "piscreentiles.h"
static const char pisd_prefix[] = "_pisd_";
using namespace PIScreenTypes;
PIString readableTime(const PITime & t);
PIString askNewDir();
PIString askUserInput(const PIString &desc);
bool askQuestion(const PIString & t);
void showInfo(const PIString & t);
void removeFiles(const PIDir & dir, PIStringList l);