Ejemplo n.º 1
0
TEST_F(PrinterTests, test_generate_separator) {
  std::map<std::string, size_t> lengths;
  for (const auto& row : q) {
    computeRowLengths(row, lengths);
  }

  auto results = generateToken(lengths, order);
  auto expected = "+------------+------+-------------------------+----+\n";
  EXPECT_EQ(results, expected);
}
Ejemplo n.º 2
0
void I2PControlSession::handleAuthenticate(const PropertyTree& pt, Response& response)
{
    const int api = pt.get<int>(I2P_CONTROL_PARAM_API);
    const std::string given_pass = pt.get<std::string>(I2P_CONTROL_PARAM_PASSWORD);
    LogPrint(eLogDebug, "I2PControl Authenticate API = ", api, " Password = "******"I2PControl Authenticate Invalid password ", given_pass,
            " expected ", password
        );
        response.setError(ErrorCode::InvalidPassword);
        return;
    }
    const std::string token = generateToken();
    response.setParam(I2P_CONTROL_PARAM_API, api);
    response.setParam(I2P_CONTROL_PARAM_TOKEN, token);

    std::lock_guard<std::mutex> lock(tokensMutex);
    tokens.insert(std::make_pair(token, util::GetSecondsSinceEpoch()));
}
Ejemplo n.º 3
0
void prettyPrint(const QueryData& results,
                 const std::vector<std::string>& columns,
                 std::map<std::string, size_t>& lengths) {
  if (results.size() == 0) {
    return;
  }

  // Call a final compute using the column names as minimum lengths.
  computeRowLengths(results.front(), lengths, true);

  // Output a nice header wrapping the column names.
  auto separator = generateToken(lengths, columns);
  auto header = separator + generateHeader(lengths, columns) + separator;
  printf("%s", header.c_str());

  // Iterate each row and pretty print.
  for (const auto& row : results) {
    printf("%s", generateRow(row, lengths, columns).c_str());
  }
  printf("%s", separator.c_str());
}
Ejemplo n.º 4
0
MaraSettingsDialog::MaraSettingsDialog(QWidget *pParent) : QDialog(pParent),
		_tempSettings(new QSettings::SettingsMap()),
		_colorButtonMapper(new QSignalMapper(this)),
		_fontButtonMapper(new QSignalMapper(this)),
		_templateUpdateMapper(new QSignalMapper(this))
{
	setupUi(this);

	MaraClientSettings::settings().loadIntoMap(_tempSettings);

	connect(qpbSave, SIGNAL(clicked()), this, SLOT(validateAndAccept()));

	connect(qpbGenerateToken, SIGNAL(clicked()), this, SLOT(generateToken()));
	connect(qleUserName, SIGNAL(textChanged(const QString&)), this, SLOT(updateNames(const QString&)));
	connect(qleLogFile, SIGNAL(textChanged(const QString&)), this, SLOT(updateLogFile()));
	connect(qleTimestampFormat, SIGNAL(textChanged(const QString&)), this, SLOT(updateTimestamp()));

	qleDataPort->setValidator(new QIntValidator(0, 65535, this));
	qleHeartbeatTimeout->setValidator(new QIntValidator(0, 600000, this));

	qlwPages->setViewMode(QListView::IconMode);
	qlwPages->setFlow(QListView::LeftToRight);
	qlwPages->setIconSize(QSize(60, 60));
	qlwPages->setMovement(QListView::Static);
	qlwPages->setMaximumHeight(85);
	qlwPages->setSpacing(2);
	
	QListWidgetItem *qliConnection = new QListWidgetItem(qlwPages);
	qliConnection->setIcon(QIcon(":/images/config.png"));
	qliConnection->setText(tr("Connection"));
	qliConnection->setTextAlignment(Qt::AlignHCenter);
	qliConnection->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);

	QListWidgetItem *qliFonts = new QListWidgetItem(qlwPages);
	qliFonts->setIcon(QIcon(":/images/fonts.png"));
	qliFonts->setText(tr("Fonts"));
	qliFonts->setTextAlignment(Qt::AlignHCenter);
	qliFonts->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);

	QListWidgetItem *qliMacros = new QListWidgetItem(qlwPages);
	qliMacros->setIcon(QIcon(":/images/macros.png"));
	qliMacros->setText(tr("Macros"));
	qliMacros->setTextAlignment(Qt::AlignHCenter);
	qliMacros->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);

	QListWidgetItem *qliTemplates = new QListWidgetItem(qlwPages);
	qliTemplates->setIcon(QIcon(":/images/templates.png"));
	qliTemplates->setText(tr("Templates"));
	qliTemplates->setTextAlignment(Qt::AlignHCenter);
	qliTemplates->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);

	connect(qlwPages,
			SIGNAL(currentItemChanged(QListWidgetItem *, QListWidgetItem *)),
			this,
			SLOT(changeSettingPage(QListWidgetItem *, QListWidgetItem*)));

	qlwPages->setCurrentItem(qliConnection);

	connect(qpbUserColor, SIGNAL(clicked()), _colorButtonMapper, SLOT(map()));
	connect(qpbDefaultColor, SIGNAL(clicked()), _colorButtonMapper, SLOT(map()));
	connect(qpbMessageColor, SIGNAL(clicked()), _colorButtonMapper, SLOT(map()));
	connect(qpbSystemColor, SIGNAL(clicked()), _colorButtonMapper, SLOT(map()));
	connect(qpbLinkColor, SIGNAL(clicked()), _colorButtonMapper, SLOT(map()));
	connect(qpbBackgroundColor, SIGNAL(clicked()), _colorButtonMapper, SLOT(map()));
	_colorButtonMapper->setMapping(qpbUserColor, MaraClientSettings::Color::User);
	_colorButtonMapper->setMapping(qpbDefaultColor, MaraClientSettings::Color::Default);
	_colorButtonMapper->setMapping(qpbMessageColor, MaraClientSettings::Color::Message);
	_colorButtonMapper->setMapping(qpbSystemColor, MaraClientSettings::Color::System);
	_colorButtonMapper->setMapping(qpbLinkColor, MaraClientSettings::Color::Link);
	_colorButtonMapper->setMapping(qpbBackgroundColor, MaraClientSettings::Color::Background);

	connect(qpbUserFont, SIGNAL(clicked()), _fontButtonMapper, SLOT(map()));
	connect(qpbDefaultFont, SIGNAL(clicked()), _fontButtonMapper, SLOT(map()));
	connect(qpbMessageFont, SIGNAL(clicked()), _fontButtonMapper, SLOT(map()));
	connect(qpbSystemFont, SIGNAL(clicked()), _fontButtonMapper, SLOT(map()));
	_fontButtonMapper->setMapping(qpbUserFont, MaraClientSettings::Font::User);
	_fontButtonMapper->setMapping(qpbDefaultFont, MaraClientSettings::Font::Default);
	_fontButtonMapper->setMapping(qpbMessageFont, MaraClientSettings::Font::Message);
	_fontButtonMapper->setMapping(qpbSystemFont, MaraClientSettings::Font::System);

	connect(qleChatTemplate, SIGNAL(textChanged(const QString&)), _templateUpdateMapper, SLOT(map()));
	connect(qleEmoteTemplate, SIGNAL(textChanged(const QString&)), _templateUpdateMapper, SLOT(map()));
	connect(qleMessageTemplate, SIGNAL(textChanged(const QString&)), _templateUpdateMapper, SLOT(map()));
	connect(qlePlainTemplate, SIGNAL(textChanged(const QString&)), _templateUpdateMapper, SLOT(map()));
	_templateUpdateMapper->setMapping(qleChatTemplate, MaraClientSettings::Template::Chat);
	_templateUpdateMapper->setMapping(qleEmoteTemplate, MaraClientSettings::Template::Emote);
	_templateUpdateMapper->setMapping(qleMessageTemplate, MaraClientSettings::Template::Message);
	_templateUpdateMapper->setMapping(qlePlainTemplate, MaraClientSettings::Template::Plain);

	connect(_colorButtonMapper, SIGNAL(mapped(const QString&)), this, SLOT(selectColor(const QString&)));
	connect(_fontButtonMapper, SIGNAL(mapped(const QString&)), this, SLOT(selectFont(const QString&)));
	connect(_templateUpdateMapper, SIGNAL(mapped(const QString&)), this, SLOT(updateTemplatePreview(const QString&)));

	// Do a one-time load for settings edited in-place on the control.
	qleUserName->setText(getSetting<QString>(MaraClientSettings::User::Name));

	qleUserToken->setText(getSetting<QString>(MaraClientSettings::User::Token));

	qcbAllowUserFonts->setChecked(getSetting<bool>(MaraClientSettings::Chat::AllowUserFonts));
	qcbTimestamps->setChecked(getSetting<bool>(MaraClientSettings::Chat::Timestamps));
	qleTimestampFormat->setText(getSetting<QString>(MaraClientSettings::Chat::TimestampFormat));
	qcbShowJoinLeave->setChecked(getSetting<bool>(MaraClientSettings::Chat::ShowJoinLeave));
	qcbLocalEcho->setChecked(getSetting<bool>(MaraClientSettings::Chat::LocalEcho));
	qcbLogging->setChecked(getSetting<bool>(MaraClientSettings::Chat::LogChat));
	qleLogFile->setText(getSetting<QString>(MaraClientSettings::Chat::LogFile));
	qcbMessageWindows->setChecked(getSetting<bool>(MaraClientSettings::Chat::MessageWindows));

	qcbHeartbeat->setChecked(getSetting<bool>(MaraClientSettings::Connection::EnableHeartbeat));
	qleHeartbeatTimeout->setText(QString().setNum(getSetting<int>(MaraClientSettings::Connection::HeartbeatTimeout)));
	qleDataPort->setText(QString().setNum(getSetting<quint16>(MaraClientSettings::Connection::DataPort)));
	qleServer->setText(getSetting<QString>(MaraClientSettings::Connection::Server));
	qleBackupServer->setText(getSetting<QString>(MaraClientSettings::Connection::BackupServer));

	qcbUserFontInEdit->setChecked(getSetting<bool>(MaraClientSettings::Chat::UserFontForEditBox));

	qleMacroF1->setText(getSetting<QString>(MaraClientSettings::Macro::F1));
	qleMacroF2->setText(getSetting<QString>(MaraClientSettings::Macro::F2));
	qleMacroF3->setText(getSetting<QString>(MaraClientSettings::Macro::F3));
	qleMacroF4->setText(getSetting<QString>(MaraClientSettings::Macro::F4));
	qleMacroF5->setText(getSetting<QString>(MaraClientSettings::Macro::F5));
	qleMacroF6->setText(getSetting<QString>(MaraClientSettings::Macro::F6));
	qleMacroF7->setText(getSetting<QString>(MaraClientSettings::Macro::F7));
	qleMacroF8->setText(getSetting<QString>(MaraClientSettings::Macro::F8));
	qleMacroF9->setText(getSetting<QString>(MaraClientSettings::Macro::F9));
	qleMacroF10->setText(getSetting<QString>(MaraClientSettings::Macro::F10));
	qleMacroF11->setText(getSetting<QString>(MaraClientSettings::Macro::F11));
	qleMacroF12->setText(getSetting<QString>(MaraClientSettings::Macro::F12));

	_defaultStyle.setName("DEFAULT");
	_systemStyle.setName("SYSTEM");
	_userStyle.setName("USER");
	_messageStyle.setName("MESSAGE");

	loadSettings();

	qleChatTemplate->setText(getSetting<QString>(MaraClientSettings::Template::Chat));
	qleEmoteTemplate->setText(getSetting<QString>(MaraClientSettings::Template::Emote));
	qleMessageTemplate->setText(getSetting<QString>(MaraClientSettings::Template::Message));
	qlePlainTemplate->setText(getSetting<QString>(MaraClientSettings::Template::Plain));

	qleImageMaxWidth->setText(getSetting<QString>(MaraClientSettings::Image::MaxWidth));
	qleImageMaxHeight->setText(getSetting<QString>(MaraClientSettings::Image::MaxHeight));
}