projects
/
quassel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
453ccab
)
don't draw using the higlight colors in the away log
author
Marcus Eggenberger
<egs@quassel-irc.org>
Thu, 5 Feb 2009 14:56:22 +0000
(15:56 +0100)
committer
Marcus Eggenberger
<egs@quassel-irc.org>
Thu, 5 Feb 2009 14:56:22 +0000
(15:56 +0100)
src/core/core.cpp
patch
|
blob
|
history
src/core/corenetwork.cpp
patch
|
blob
|
history
src/core/sessionthread.cpp
patch
|
blob
|
history
src/core/sessionthread.h
patch
|
blob
|
history
src/qtui/awaylogfilter.cpp
patch
|
blob
|
history
src/qtui/awaylogfilter.h
patch
|
blob
|
history
src/qtui/awaylogview.cpp
patch
|
blob
|
history
src/qtui/mainwin.cpp
patch
|
blob
|
history
diff --git
a/src/core/core.cpp
b/src/core/core.cpp
index
4e7632f
..
aa1b7d4
100644
(file)
--- a/
src/core/core.cpp
+++ b/
src/core/core.cpp
@@
-158,21
+158,10
@@
void Core::init() {
}
Core::~Core() {
}
Core::~Core() {
- _server.close();
- _v6server.close();
foreach(QTcpSocket *socket, blocksizes.keys()) {
socket->disconnectFromHost(); // disconnect non authed clients
}
foreach(QTcpSocket *socket, blocksizes.keys()) {
socket->disconnectFromHost(); // disconnect non authed clients
}
-
-
- foreach(SessionThread *session, sessions) {
- session->stopSession();
- session->wait();
- delete session;
- qDebug() << "next";
- }
-
-// qDeleteAll(sessions);
+ qDeleteAll(sessions);
qDeleteAll(_storageBackends);
}
qDeleteAll(_storageBackends);
}
diff --git
a/src/core/corenetwork.cpp
b/src/core/corenetwork.cpp
index
f056183
..
a40b546
100644
(file)
--- a/
src/core/corenetwork.cpp
+++ b/
src/core/corenetwork.cpp
@@
-82,8
+82,6
@@
CoreNetwork::CoreNetwork(const NetworkId &networkid, CoreSession *session)
CoreNetwork::~CoreNetwork() {
if(connectionState() != Disconnected && connectionState() != Network::Reconnecting)
disconnectFromIrc(false); // clean up, but this does not count as requested disconnect!
CoreNetwork::~CoreNetwork() {
if(connectionState() != Disconnected && connectionState() != Network::Reconnecting)
disconnectFromIrc(false); // clean up, but this does not count as requested disconnect!
- else
- socket.close();
disconnect(&socket, 0, this, 0); // this keeps the socket from triggering events during clean up
delete _ircServerHandler;
delete _userInputHandler;
disconnect(&socket, 0, this, 0); // this keeps the socket from triggering events during clean up
delete _ircServerHandler;
delete _userInputHandler;
diff --git
a/src/core/sessionthread.cpp
b/src/core/sessionthread.cpp
index
c29d1ff
..
35caf13
100644
(file)
--- a/
src/core/sessionthread.cpp
+++ b/
src/core/sessionthread.cpp
@@
-36,12
+36,9
@@
SessionThread::SessionThread(UserId uid, bool restoreState, QObject *parent)
}
SessionThread::~SessionThread() {
}
SessionThread::~SessionThread() {
- if(_session) {
- _session->setParent(0);
- _session->moveToThread(thread());
- _session->deleteLater();
- _session = 0;
- }
+ // shut down thread gracefully
+ quit();
+ wait();
}
CoreSession *SessionThread::session() {
}
CoreSession *SessionThread::session() {
@@
-106,13
+103,5
@@
void SessionThread::run() {
emit initialized();
exec();
delete _session;
emit initialized();
exec();
delete _session;
- _session = 0;
}
}
-void SessionThread::stopSession() {
- if(_session) {
- connect(_session, SIGNAL(destroyed()), this, SLOT(quit()));
- _session->deleteLater();
- _session = 0;
- }
-}
diff --git
a/src/core/sessionthread.h
b/src/core/sessionthread.h
index
f9280f0
..
810e858
100644
(file)
--- a/
src/core/sessionthread.h
+++ b/
src/core/sessionthread.h
@@
-44,7
+44,6
@@
public:
public slots:
void addClient(QObject *peer);
public slots:
void addClient(QObject *peer);
- void stopSession();
private slots:
void setSessionInitialized();
private slots:
void setSessionInitialized();
diff --git
a/src/qtui/awaylogfilter.cpp
b/src/qtui/awaylogfilter.cpp
index
09964a4
..
8e5366b
100644
(file)
--- a/
src/qtui/awaylogfilter.cpp
+++ b/
src/qtui/awaylogfilter.cpp
@@
-30,17
+30,27
@@
bool AwayLogFilter::filterAcceptsRow(int sourceRow, const QModelIndex &sourcePar
QModelIndex source_index = sourceModel()->index(sourceRow, 0);
QModelIndex source_index = sourceModel()->index(sourceRow, 0);
- Message::Flags flags = (Message::Flags)source
_index.data(
MessageModel::FlagsRole).toInt();
+ Message::Flags flags = (Message::Flags)source
Model()->data(source_index,
MessageModel::FlagsRole).toInt();
if(!(flags & Message::Backlog && flags & Message::Highlight))
return false;
if(!(flags & Message::Backlog && flags & Message::Highlight))
return false;
- BufferId bufferId = source
_index.data(
MessageModel::BufferIdRole).value<BufferId>();
+ BufferId bufferId = source
Model()->data(source_index,
MessageModel::BufferIdRole).value<BufferId>();
if(!bufferId.isValid()) {
return false;
}
if(!bufferId.isValid()) {
return false;
}
- if(Client::networkModel()->lastSeenMsgId(bufferId) >= source
_index.data(
MessageModel::MsgIdRole).value<MsgId>())
+ if(Client::networkModel()->lastSeenMsgId(bufferId) >= source
Model()->data(source_index,
MessageModel::MsgIdRole).value<MsgId>())
return false;
return true;
}
return false;
return true;
}
+
+QVariant AwayLogFilter::data(const QModelIndex &index, int role) const {
+ if(role != MessageModel::FlagsRole)
+ return ChatMonitorFilter::data(index, role);
+
+ QModelIndex source_index = mapToSource(index);
+ Message::Flags flags = (Message::Flags)sourceModel()->data(source_index, MessageModel::FlagsRole).toInt();
+ flags &= ~Message::Highlight;
+ return (int)flags;
+}
diff --git
a/src/qtui/awaylogfilter.h
b/src/qtui/awaylogfilter.h
index
bb80011
..
d188cab
100644
(file)
--- a/
src/qtui/awaylogfilter.h
+++ b/
src/qtui/awaylogfilter.h
@@
-31,6
+31,7
@@
public:
virtual bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
virtual QString idString() const { return "AwayLog"; }
virtual bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
virtual QString idString() const { return "AwayLog"; }
+ virtual QVariant data(const QModelIndex &index, int role) const;
};
#endif //AWAYLOGFILTER_H
};
#endif //AWAYLOGFILTER_H
diff --git
a/src/qtui/awaylogview.cpp
b/src/qtui/awaylogview.cpp
index
cb26792
..
ed87085
100644
(file)
--- a/
src/qtui/awaylogview.cpp
+++ b/
src/qtui/awaylogview.cpp
@@
-30,6
+30,7
@@
AwayLogView::AwayLogView(AwayLogFilter *filter, QWidget *parent)
: ChatMonitorView(filter, parent)
{
AwayLogView::AwayLogView(AwayLogFilter *filter, QWidget *parent)
: ChatMonitorView(filter, parent)
{
+ setWindowTitle(tr("Away Log"));
}
void AwayLogView::addActionsToMenu(QMenu *menu, const QPointF &pos) {
}
void AwayLogView::addActionsToMenu(QMenu *menu, const QPointF &pos) {
diff --git
a/src/qtui/mainwin.cpp
b/src/qtui/mainwin.cpp
index
555ac5d
..
b6a21ea
100644
(file)
--- a/
src/qtui/mainwin.cpp
+++ b/
src/qtui/mainwin.cpp
@@
-275,7
+275,11
@@
void MainWin::setupMenus() {
_bufferViewsMenu->addAction(coll->action("ConfigureBufferViews"));
_viewMenu->addSeparator();
_viewMenu->addAction(coll->action("ToggleSearchBar"));
_bufferViewsMenu->addAction(coll->action("ConfigureBufferViews"));
_viewMenu->addSeparator();
_viewMenu->addAction(coll->action("ToggleSearchBar"));
- _viewMenu->addAction(coll->action("ShowAwayLog"));
+
+ coreAction = coll->action("ShowAwayLog");
+ flagRemoteCoreOnly(coreAction);
+ _viewMenu->addAction(coreAction);
+
_viewMenu->addAction(coll->action("ToggleStatusBar"));
_viewMenu->addSeparator();
_viewMenu->addAction(coll->action("LockDockPositions"));
_viewMenu->addAction(coll->action("ToggleStatusBar"));
_viewMenu->addSeparator();
_viewMenu->addAction(coll->action("LockDockPositions"));