summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
ea13d09)
-new and better recognizable tray icon for activity/highlight
-status bar displays if the connection to the core is secure or not
emit coreConnectionStateChanged(true);
}
emit coreConnectionStateChanged(true);
}
+void Client::setSecuredConnection() {
+ emit securedConnection();
+}
+
void Client::disconnectFromCore() {
if(!isConnected())
return;
void Client::disconnectFromCore() {
if(!isConnected())
return;
void showConfigWizard(const QVariantMap &coredata);
void connected();
void showConfigWizard(const QVariantMap &coredata);
void connected();
+ void securedConnection();
void disconnected();
void coreConnectionStateChanged(bool);
void disconnected();
void coreConnectionStateChanged(bool);
void setConnectedToCore(QIODevice *socket, AccountId id);
void setSyncedToCore();
void setConnectedToCore(QIODevice *socket, AccountId id);
void setSyncedToCore();
+ void setSecuredConnection();
+
private:
Client(QObject *parent = 0);
private:
Client(QObject *parent = 0);
connect(sslSocket, SIGNAL(sslErrors(const QList<QSslError> &)), this, SLOT(sslErrors(const QList<QSslError> &)));
sslSocket->startClientEncryption();
emit encrypted(true);
connect(sslSocket, SIGNAL(sslErrors(const QList<QSslError> &)), this, SLOT(sslErrors(const QList<QSslError> &)));
sslSocket->startClientEncryption();
emit encrypted(true);
+ Client::instance()->setSecuredConnection();
} else {
emit connectionError(tr("<b>The Quassel Core you are trying to connect to does not support SSL!</b><br />If you want to connect anyways, disable the usage of SSL in the account settings."));
emit encrypted(false);
} else {
emit connectionError(tr("<b>The Quassel Core you are trying to connect to does not support SSL!</b><br />If you want to connect anyways, disable the usage of SSL in the account settings."));
emit encrypted(false);
<file>oxygen/22x22/actions/zoom-original.png</file>
<file>oxygen/22x22/actions/zoom-out.png</file>
</qresource>
<file>oxygen/22x22/actions/zoom-original.png</file>
<file>oxygen/22x22/actions/zoom-out.png</file>
</qresource>
+ <qresource prefix="/16x16/status" >
+ <file alias="no-ssl">oxygen/16x16/status/object-unlocked.png</file>
+ <file alias="ssl">oxygen/16x16/status/object-locked.png</file>
+ </qresource>
<qresource prefix="/22x22/status" >
<file alias="dialog-error">oxygen/22x22/status/dialog-error.png</file>
<file>oxygen/22x22/status/dialog-information.png</file>
<qresource prefix="/22x22/status" >
<file alias="dialog-error">oxygen/22x22/status/dialog-error.png</file>
<file>oxygen/22x22/status/dialog-information.png</file>
<qresource prefix="/icons" >
<file>quassel-icon.png</file>
<file>quassel-icon-active.png</file>
<qresource prefix="/icons" >
<file>quassel-icon.png</file>
<file>quassel-icon-active.png</file>
+ <file>quassel-icon-offline.png</file>
MainWin::MainWin(QtUi *_gui, QWidget *parent)
: QMainWindow(parent),
gui(_gui),
MainWin::MainWin(QtUi *_gui, QWidget *parent)
: QMainWindow(parent),
gui(_gui),
+ sslLabel(new QLabel()),
systray(new QSystemTrayIcon(this)),
activeTrayIcon(":/icons/quassel-icon-active.png"),
systray(new QSystemTrayIcon(this)),
activeTrayIcon(":/icons/quassel-icon-active.png"),
- inactiveTrayIcon(":/icons/quassel-icon.png"),
+ onlineTrayIcon(":/icons/quassel-icon.png"),
+ offlineTrayIcon(":/icons/quassel-icon-offline.png"),
trayIconActive(false),
timer(new QTimer(this)),
settingsDlg(new SettingsDlg(this)),
trayIconActive(false),
timer(new QTimer(this)),
settingsDlg(new SettingsDlg(this)),
{
ui.setupUi(this);
setWindowTitle("Quassel IRC");
{
ui.setupUi(this);
setWindowTitle("Quassel IRC");
- setWindowIcon(inactiveTrayIcon);
+ setWindowIcon(offlineTrayIcon);
+ systray->setIcon(offlineTrayIcon);
setWindowIconText("Quassel IRC");
statusBar()->showMessage(tr("Waiting for core..."));
setWindowIconText("Quassel IRC");
statusBar()->showMessage(tr("Waiting for core..."));
if(style != "") {
QApplication::setStyle(style);
}
if(style != "") {
QApplication::setStyle(style);
}
+
+ connect(Client::instance(), SIGNAL(securedConnection()), this, SLOT(securedConnection()));
+ sslLabel->setPixmap(QPixmap::fromImage(QImage(":/16x16/status/no-ssl")));
+ statusBar()->addPermanentWidget(sslLabel);
+
// attach the BufferWidget to the BufferModel and the default selection
ui.bufferWidget->setModel(Client::bufferModel());
ui.bufferWidget->setSelectionModel(Client::bufferModel()->standardSelectionModel());
// attach the BufferWidget to the BufferModel and the default selection
ui.bufferWidget->setModel(Client::bufferModel());
ui.bufferWidget->setSelectionModel(Client::bufferModel()->standardSelectionModel());
if(Global::SPUTDEV) {
//showSettingsDlg();
//showAboutDlg();
if(Global::SPUTDEV) {
//showSettingsDlg();
//showAboutDlg();
connect(timer, SIGNAL(timeout()), this, SLOT(makeTrayIconBlink()));
connect(Client::instance(), SIGNAL(messageReceived(const Message &)), this, SLOT(receiveMessage(const Message &)));
connect(timer, SIGNAL(timeout()), this, SLOT(makeTrayIconBlink()));
connect(Client::instance(), SIGNAL(messageReceived(const Message &)), this, SLOT(receiveMessage(const Message &)));
- systray->setIcon(inactiveTrayIcon);
-// systray->setToolTip("left click to minimize the quassel client to tray");
-// systray->setToolTip(toolTip);
-
systrayMenu = new QMenu(this);
systrayMenu->addAction(ui.actionAboutQuassel);
systrayMenu->addSeparator();
systrayMenu = new QMenu(this);
systrayMenu->addAction(ui.actionAboutQuassel);
systrayMenu->addSeparator();
//ui.actionNetworkList->setEnabled(true);
ui.bufferWidget->show();
statusBar()->showMessage(tr("Connected to core."));
//ui.actionNetworkList->setEnabled(true);
ui.bufferWidget->show();
statusBar()->showMessage(tr("Connected to core."));
+ setWindowIcon(onlineTrayIcon);
+ systray->setIcon(onlineTrayIcon);
+}
+
+void MainWin::securedConnection() {
+ // todo: make status bar entry
+ qDebug() << "secured the connection";
+
+ sslLabel->setPixmap(QPixmap::fromImage(QImage(":/16x16/status/ssl")));
}
void MainWin::disconnectedFromCore() {
}
void MainWin::disconnectedFromCore() {
ui.actionConnectCore->setEnabled(true);
// nickListWidget->reset();
statusBar()->showMessage(tr("Not connected to core."));
ui.actionConnectCore->setEnabled(true);
// nickListWidget->reset();
statusBar()->showMessage(tr("Not connected to core."));
+ setWindowIcon(offlineTrayIcon);
+ systray->setIcon(offlineTrayIcon);
+ sslLabel->setPixmap(QPixmap::fromImage(QImage(":/16x16/status/no-ssl")));
}
AbstractUiMsg *MainWin::layoutMsg(const Message &msg) {
}
AbstractUiMsg *MainWin::layoutMsg(const Message &msg) {
timer->start(500);
} else {
timer->stop();
timer->start(500);
} else {
timer->stop();
- systray->setIcon(inactiveTrayIcon);
+ systray->setIcon(onlineTrayIcon);
}
}
void MainWin::makeTrayIconBlink() {
if(trayIconActive) {
}
}
void MainWin::makeTrayIconBlink() {
if(trayIconActive) {
- systray->setIcon(inactiveTrayIcon);
+ systray->setIcon(onlineTrayIcon);
trayIconActive = false;
} else {
systray->setIcon(activeTrayIcon);
trayIconActive = false;
} else {
systray->setIcon(activeTrayIcon);
protected slots:
void connectedToCore();
protected slots:
void connectedToCore();
+ void securedConnection();
void disconnectedFromCore();
void systrayActivated( QSystemTrayIcon::ActivationReason );
void disconnectedFromCore();
void systrayActivated( QSystemTrayIcon::ActivationReason );
QtUi *gui;
QMenu *systrayMenu;
QtUi *gui;
QMenu *systrayMenu;
void setupMenus();
void setupViews();
void setupMenus();
void setupViews();
QSystemTrayIcon *systray;
QIcon activeTrayIcon;
QSystemTrayIcon *systray;
QIcon activeTrayIcon;
- QIcon inactiveTrayIcon;
+ QIcon onlineTrayIcon;
+ QIcon offlineTrayIcon;
bool trayIconActive;
QTimer *timer;
bool trayIconActive;
QTimer *timer;
quasselVersion = "0.2.0-alpha5-pre";
quasselDate = "2008-04-03";
quasselVersion = "0.2.0-alpha5-pre";
quasselDate = "2008-04-03";
//! Minimum client build number the core needs
clientBuildNeeded = 642;
//! Minimum client build number the core needs
clientBuildNeeded = 642;