mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-12-24 23:19:29 -05:00
changes to support i8n in the gui (chat and messages)
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@318 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
bfb0b2be2b
commit
f9d6f1c418
@ -89,6 +89,7 @@ void ChatDialog::msgSendListCostumPopupMenu( QPoint point )
|
|||||||
contextMnu.addAction( privchatAct);
|
contextMnu.addAction( privchatAct);
|
||||||
contextMnu.exec( mevent->globalPos() );
|
contextMnu.exec( mevent->globalPos() );
|
||||||
}
|
}
|
||||||
|
|
||||||
int ChatDialog::loadInitMsg()
|
int ChatDialog::loadInitMsg()
|
||||||
{
|
{
|
||||||
std::ostringstream out;
|
std::ostringstream out;
|
||||||
@ -145,11 +146,6 @@ void ChatDialog::insertChat()
|
|||||||
}
|
}
|
||||||
n = 1 + n / 2; /* shrink it! */
|
n = 1 + n / 2; /* shrink it! */
|
||||||
|
|
||||||
//std::cerr << "Space count : " << n << std::endl;
|
|
||||||
|
|
||||||
std::string spaces(" ");
|
|
||||||
|
|
||||||
|
|
||||||
/* add in lines at the bottom */
|
/* add in lines at the bottom */
|
||||||
int ts = time(NULL);
|
int ts = time(NULL);
|
||||||
for(it = newchat.begin(); it != newchat.end(); it++)
|
for(it = newchat.begin(); it != newchat.end(); it++)
|
||||||
@ -164,6 +160,7 @@ void ChatDialog::insertChat()
|
|||||||
|
|
||||||
std::ostringstream out;
|
std::ostringstream out;
|
||||||
QString currenttxt = msgWidget->toHtml();
|
QString currenttxt = msgWidget->toHtml();
|
||||||
|
QString extraTxt;
|
||||||
|
|
||||||
if ((it->name == lastChatName) && (ts - lastChatTime < 60))
|
if ((it->name == lastChatName) && (ts - lastChatTime < 60))
|
||||||
{
|
{
|
||||||
@ -173,48 +170,39 @@ void ChatDialog::insertChat()
|
|||||||
{
|
{
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
/* nothing */
|
/* nothing */
|
||||||
//out << "<br>" << std::endl;
|
|
||||||
#else
|
#else
|
||||||
out << "<br>" << std::endl;
|
extraTxt += "<br>\n";
|
||||||
#endif
|
#endif
|
||||||
for(int i = 0; i < n; i++)
|
for(int i = 0; i < n; i++)
|
||||||
{
|
{
|
||||||
out << spaces;
|
extraTxt += " ";
|
||||||
}
|
}
|
||||||
QString timestamp = "[" + QDateTime::currentDateTime().toString("hh:mm:ss") + "]";
|
QString timestamp = "[" + QDateTime::currentDateTime().toString("hh:mm:ss") + "]";
|
||||||
QString name = QString::fromStdString(it->name);
|
QString name = QString::fromStdString(it->name);
|
||||||
//QString line = "<span style=\"color:#1D84C9\">" + timestamp +
|
|
||||||
// " " + name + "</span> \n<br>";
|
|
||||||
QString line = "<span style=\"color:#1D84C9\"><strong>" + timestamp +
|
QString line = "<span style=\"color:#1D84C9\"><strong>" + timestamp +
|
||||||
" " + name + "</strong></span> \n<br>";
|
" " + name + "</strong></span> \n<br>";
|
||||||
|
|
||||||
out << line.toStdString();
|
extraTxt += line;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
out << it -> msg;
|
extraTxt += QString::fromStdWString(it->msg);
|
||||||
|
|
||||||
/* This might be WIN32 only - or maybe Qt4.2.2 only - but need it for windows at the mom */
|
/* This might be WIN32 only - or maybe Qt4.2.2 only - but need it for windows at the mom */
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
//out << "<br>";
|
extraTxt += "\n";
|
||||||
//out << "<br>" << std::endl;
|
|
||||||
|
|
||||||
out << std::endl;
|
|
||||||
#else
|
#else
|
||||||
out << std::endl;
|
extraTxt += "\n";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
lastChatName = it -> name;
|
lastChatName = it -> name;
|
||||||
lastChatTime = ts;
|
lastChatTime = ts;
|
||||||
|
|
||||||
/* add it everytime */
|
/* add it everytime */
|
||||||
QString extra = QString::fromStdString(out.str());
|
currenttxt += extraTxt;
|
||||||
currenttxt += extra;
|
|
||||||
|
|
||||||
msgWidget->setHtml(currenttxt);
|
msgWidget->setHtml(currenttxt);
|
||||||
|
|
||||||
//std::cerr << " Added Text: " << std::endl;
|
|
||||||
//std::cerr << out.str() << std::endl;
|
|
||||||
QScrollBar *qsb = msgWidget->verticalScrollBar();
|
QScrollBar *qsb = msgWidget->verticalScrollBar();
|
||||||
qsb -> setValue(qsb->maximum());
|
qsb -> setValue(qsb->maximum());
|
||||||
}
|
}
|
||||||
@ -233,7 +221,7 @@ void ChatDialog::sendMsg()
|
|||||||
//font.setItalic(ui.textitalicChatButton->isChecked());
|
//font.setItalic(ui.textitalicChatButton->isChecked());
|
||||||
|
|
||||||
ChatInfo ci;
|
ChatInfo ci;
|
||||||
ci.msg = lineWidget->text().toStdString();
|
ci.msg = lineWidget->text().toStdWString();
|
||||||
ci.chatflags = RS_CHAT_PUBLIC;
|
ci.chatflags = RS_CHAT_PUBLIC;
|
||||||
//ci.messageFont = font;
|
//ci.messageFont = font;
|
||||||
//ci.messageColor = textColor;
|
//ci.messageColor = textColor;
|
||||||
@ -280,8 +268,8 @@ void ChatDialog::insertSendList()
|
|||||||
/* (0) Person */
|
/* (0) Person */
|
||||||
item -> setText(0, QString::fromStdString(details.name));
|
item -> setText(0, QString::fromStdString(details.name));
|
||||||
|
|
||||||
//item -> setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
|
item -> setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
|
||||||
item -> setFlags(Qt::ItemIsUserCheckable);
|
//item -> setFlags(Qt::ItemIsUserCheckable);
|
||||||
|
|
||||||
item -> setCheckState(0, Qt::Checked);
|
item -> setCheckState(0, Qt::Checked);
|
||||||
/**** NOT SELECTABLE AT THE MOMENT
|
/**** NOT SELECTABLE AT THE MOMENT
|
||||||
|
@ -59,9 +59,11 @@ MessagesDialog::MessagesDialog(QWidget *parent)
|
|||||||
connect( ui.msgWidget, SIGNAL( itemClicked ( QTreeWidgetItem *, int) ), this, SLOT( updateMessages ( QTreeWidgetItem *, int) ) );
|
connect( ui.msgWidget, SIGNAL( itemClicked ( QTreeWidgetItem *, int) ), this, SLOT( updateMessages ( QTreeWidgetItem *, int) ) );
|
||||||
connect( ui.listWidget, SIGNAL( currentRowChanged ( int) ), this, SLOT( changeBox ( int) ) );
|
connect( ui.listWidget, SIGNAL( currentRowChanged ( int) ), this, SLOT( changeBox ( int) ) );
|
||||||
|
|
||||||
|
|
||||||
connect(ui.newmessageButton, SIGNAL(clicked()), this, SLOT(newmessage()));
|
connect(ui.newmessageButton, SIGNAL(clicked()), this, SLOT(newmessage()));
|
||||||
connect(ui.removemessageButton, SIGNAL(clicked()), this, SLOT(removemessage()));
|
connect(ui.removemessageButton, SIGNAL(clicked()), this, SLOT(removemessage()));
|
||||||
|
|
||||||
|
connect(ui.expandFilesButton, SIGNAL(clicked()), this, SLOT(togglefileview()));
|
||||||
|
connect(ui.downloadButton, SIGNAL(clicked()), this, SLOT(getallrecommended()));
|
||||||
|
|
||||||
|
|
||||||
mCurrCertId = "";
|
mCurrCertId = "";
|
||||||
@ -86,8 +88,8 @@ MessagesDialog::MessagesDialog(QWidget *parent)
|
|||||||
|
|
||||||
msglheader->resizeSection ( 0, 125 );
|
msglheader->resizeSection ( 0, 125 );
|
||||||
msglheader->resizeSection ( 1, 100 );
|
msglheader->resizeSection ( 1, 100 );
|
||||||
msglheader->resizeSection ( 2, 100 );
|
msglheader->resizeSection ( 2, 250 );
|
||||||
msglheader->resizeSection ( 3, 200 );
|
msglheader->resizeSection ( 3, 50 );
|
||||||
|
|
||||||
|
|
||||||
/* Hide platform specific features */
|
/* Hide platform specific features */
|
||||||
@ -161,6 +163,64 @@ void MessagesDialog::replytomessage()
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MessagesDialog::togglefileview()
|
||||||
|
{
|
||||||
|
/* if msg header visible -> hide by changing splitter
|
||||||
|
* three widgets...
|
||||||
|
*/
|
||||||
|
|
||||||
|
QList<int> sizeList = ui.msgSplitter->sizes();
|
||||||
|
QList<int>::iterator it;
|
||||||
|
|
||||||
|
int listSize = 0;
|
||||||
|
int msgSize = 0;
|
||||||
|
int recommendSize = 0;
|
||||||
|
int i = 0;
|
||||||
|
|
||||||
|
for(it = sizeList.begin(); it != sizeList.end(); it++, i++)
|
||||||
|
{
|
||||||
|
if (i == 0)
|
||||||
|
{
|
||||||
|
listSize = (*it);
|
||||||
|
}
|
||||||
|
else if (i == 1)
|
||||||
|
{
|
||||||
|
msgSize = (*it);
|
||||||
|
}
|
||||||
|
else if (i == 2)
|
||||||
|
{
|
||||||
|
recommendSize = (*it);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int totalSize = listSize + msgSize + recommendSize;
|
||||||
|
|
||||||
|
bool toShrink = true;
|
||||||
|
if (recommendSize < (int) totalSize / 10)
|
||||||
|
{
|
||||||
|
toShrink = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
QList<int> newSizeList;
|
||||||
|
if (toShrink)
|
||||||
|
{
|
||||||
|
newSizeList.push_back(listSize + recommendSize / 3);
|
||||||
|
newSizeList.push_back(msgSize + recommendSize * 2 / 3);
|
||||||
|
newSizeList.push_back(0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* no change */
|
||||||
|
int nlistSize = (totalSize * 2 / 3) * listSize / (listSize + msgSize);
|
||||||
|
int nMsgSize = (totalSize * 2 / 3) - listSize;
|
||||||
|
newSizeList.push_back(nlistSize);
|
||||||
|
newSizeList.push_back(nMsgSize);
|
||||||
|
newSizeList.push_back(totalSize * 1 / 3);
|
||||||
|
}
|
||||||
|
|
||||||
|
ui.msgSplitter->setSizes(newSizeList);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* download the recommendations... */
|
/* download the recommendations... */
|
||||||
void MessagesDialog::getcurrentrecommended()
|
void MessagesDialog::getcurrentrecommended()
|
||||||
@ -318,7 +378,8 @@ void MessagesDialog::insertMessages()
|
|||||||
item -> setText(1, QString::fromStdString(out.str()));
|
item -> setText(1, QString::fromStdString(out.str()));
|
||||||
}
|
}
|
||||||
|
|
||||||
item -> setText(2, QString::fromStdString(it->title));
|
// Subject
|
||||||
|
item -> setText(2, QString::fromStdWString(it->title));
|
||||||
|
|
||||||
// No of Files.
|
// No of Files.
|
||||||
{
|
{
|
||||||
@ -327,47 +388,11 @@ void MessagesDialog::insertMessages()
|
|||||||
item -> setText(3, QString::fromStdString(out.str()));
|
item -> setText(3, QString::fromStdString(out.str()));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Size.
|
item -> setText(4, QString::fromStdString(it->id));
|
||||||
// Msg.
|
item -> setText(5, QString::fromStdString(it->msgId));
|
||||||
// Rank
|
if ((oldSelected) && (mid == it->msgId))
|
||||||
{
|
{
|
||||||
std::ostringstream out;
|
newSelected = item;
|
||||||
out << it -> size;
|
|
||||||
item -> setText(4, QString::fromStdString(out.str()));
|
|
||||||
}
|
|
||||||
|
|
||||||
/* strip out the \n and \r symbols */
|
|
||||||
std::string tmsg = it -> msg;
|
|
||||||
for(int i = 0; i < tmsg.length(); i++)
|
|
||||||
{
|
|
||||||
if ((tmsg[i] == '\n') ||
|
|
||||||
(tmsg[i] == '\r'))
|
|
||||||
{
|
|
||||||
tmsg[i] = ' ';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
item -> setText(5, QString::fromStdString(tmsg));
|
|
||||||
|
|
||||||
{
|
|
||||||
std::ostringstream out;
|
|
||||||
out << "5"; // RANK
|
|
||||||
item -> setText(6, QString::fromStdString(out.str()));
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
std::ostringstream out;
|
|
||||||
out << it -> id;
|
|
||||||
item -> setText(7, QString::fromStdString(out.str()));
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
std::ostringstream out;
|
|
||||||
out << it -> msgId;
|
|
||||||
item -> setText(8, QString::fromStdString(out.str()));
|
|
||||||
if ((oldSelected) && (mid == out.str()))
|
|
||||||
{
|
|
||||||
newSelected = item;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (it -> msgflags & RS_MSG_NEW)
|
if (it -> msgflags & RS_MSG_NEW)
|
||||||
@ -421,14 +446,21 @@ void MessagesDialog::insertMsgTxtAndFiles()
|
|||||||
if (!qtwi)
|
if (!qtwi)
|
||||||
{
|
{
|
||||||
/* blank it */
|
/* blank it */
|
||||||
|
ui.dateText-> setText("");
|
||||||
|
ui.toText->setText("");
|
||||||
|
ui.fromText->setText("");
|
||||||
|
ui.filesText->setText("");
|
||||||
|
|
||||||
|
ui.subjectText->setText("");
|
||||||
ui.msgText->setText("");
|
ui.msgText->setText("");
|
||||||
ui.msgList->clear();
|
ui.msgList->clear();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
cid = qtwi -> text(7).toStdString();
|
cid = qtwi -> text(4).toStdString();
|
||||||
mid = qtwi -> text(8).toStdString();
|
mid = qtwi -> text(5).toStdString();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Save the Data.... for later */
|
/* Save the Data.... for later */
|
||||||
@ -489,43 +521,55 @@ void MessagesDialog::insertMsgTxtAndFiles()
|
|||||||
/* add the items in! */
|
/* add the items in! */
|
||||||
tree->insertTopLevelItems(0, items);
|
tree->insertTopLevelItems(0, items);
|
||||||
|
|
||||||
|
|
||||||
/* add the Msg */
|
/* add the Msg */
|
||||||
std::ostringstream msgout;
|
|
||||||
std::list<PersonInfo>::const_iterator pit;
|
std::list<PersonInfo>::const_iterator pit;
|
||||||
msgout << "Msg Header ----------------- TS: " << mi->ts;
|
|
||||||
if (mi->msgto.size() > 0)
|
QString msgTxt;
|
||||||
msgout << std::endl << "To: ";
|
|
||||||
for(pit = mi->msgto.begin(); pit != mi->msgto.end(); pit++)
|
for(pit = mi->msgto.begin(); pit != mi->msgto.end(); pit++)
|
||||||
{
|
{
|
||||||
msgout << pit->name << " (" << pit->id << "), ";
|
msgTxt += QString::fromStdString(pit->name);
|
||||||
|
msgTxt += " <";
|
||||||
|
msgTxt += QString::fromStdString(pit->id);
|
||||||
|
msgTxt += ">, ";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mi->msgcc.size() > 0)
|
if (mi->msgcc.size() > 0)
|
||||||
msgout << std::endl << "Cc: ";
|
msgTxt += "\nCc: ";
|
||||||
for(pit = mi->msgcc.begin(); pit != mi->msgcc.end(); pit++)
|
for(pit = mi->msgcc.begin(); pit != mi->msgcc.end(); pit++)
|
||||||
{
|
{
|
||||||
msgout << pit->name << " (" << pit->id << "), ";
|
msgTxt += QString::fromStdString(pit->name);
|
||||||
|
msgTxt += " <";
|
||||||
|
msgTxt += QString::fromStdString(pit->id);
|
||||||
|
msgTxt += ">, ";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mi->msgbcc.size() > 0)
|
if (mi->msgbcc.size() > 0)
|
||||||
msgout << std::endl << "Bcc: ";
|
msgTxt += "\nBcc: ";
|
||||||
for(pit = mi->msgbcc.begin(); pit != mi->msgbcc.end(); pit++)
|
for(pit = mi->msgbcc.begin(); pit != mi->msgbcc.end(); pit++)
|
||||||
{
|
{
|
||||||
msgout << pit->name << " (" << pit->id << "), ";
|
msgTxt += QString::fromStdString(pit->name);
|
||||||
|
msgTxt += " <";
|
||||||
|
msgTxt += QString::fromStdString(pit->id);
|
||||||
|
msgTxt += ">, ";
|
||||||
}
|
}
|
||||||
|
|
||||||
msgout << std::endl;
|
{
|
||||||
msgout << "----------------------------";
|
QDateTime qtime;
|
||||||
msgout << std::endl;
|
qtime.setTime_t(mi->ts);
|
||||||
|
QString timestamp = qtime.toString("yyyy-MM-dd hh:mm:ss");
|
||||||
|
ui.dateText-> setText(timestamp);
|
||||||
|
}
|
||||||
|
ui.toText->setText(msgTxt);
|
||||||
|
ui.fromText->setText(QString::fromStdString(mi->srcname));
|
||||||
|
|
||||||
msgout << "Subject: " << mi -> title << std::endl;
|
ui.subjectText->setText(QString::fromStdWString(mi -> title));
|
||||||
msgout << "Message: " << std::endl;
|
ui.msgText->setText(QString::fromStdWString(mi->msg));
|
||||||
msgout << mi->msg << std::endl;
|
|
||||||
|
|
||||||
|
|
||||||
ui.msgText->setText(QString::fromStdString(msgout.str()));
|
|
||||||
|
|
||||||
|
{
|
||||||
|
std::ostringstream out;
|
||||||
|
out << "(" << mi->count << " Files)";
|
||||||
|
ui.filesText->setText(QString::fromStdString(out.str()));
|
||||||
|
}
|
||||||
rsiface->unlockData(); /* Unlock Interface */
|
rsiface->unlockData(); /* Unlock Interface */
|
||||||
|
|
||||||
|
|
||||||
@ -545,8 +589,8 @@ bool MessagesDialog::getCurrentMsg(std::string &cid, std::string &mid)
|
|||||||
QTreeWidgetItem *qtwi = msglist -> currentItem();
|
QTreeWidgetItem *qtwi = msglist -> currentItem();
|
||||||
if (qtwi)
|
if (qtwi)
|
||||||
{
|
{
|
||||||
cid = qtwi -> text(7).toStdString();
|
cid = qtwi -> text(4).toStdString();
|
||||||
mid = qtwi -> text(8).toStdString();
|
mid = qtwi -> text(5).toStdString();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -60,6 +60,9 @@ void updateMessages ( QTreeWidgetItem * item, int column );
|
|||||||
void getcurrentrecommended();
|
void getcurrentrecommended();
|
||||||
void getallrecommended();
|
void getallrecommended();
|
||||||
|
|
||||||
|
/* handle splitter */
|
||||||
|
void togglefileview();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
bool getCurrentMsg(std::string &cid, std::string &mid);
|
bool getCurrentMsg(std::string &cid, std::string &mid);
|
||||||
|
@ -5,18 +5,22 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>519</width>
|
<width>747</width>
|
||||||
<height>343</height>
|
<height>492</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy" >
|
<property name="sizePolicy" >
|
||||||
<sizepolicy>
|
<sizepolicy vsizetype="Expanding" hsizetype="Preferred" >
|
||||||
<hsizetype>5</hsizetype>
|
|
||||||
<vsizetype>7</vsizetype>
|
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
<verstretch>0</verstretch>
|
<verstretch>0</verstretch>
|
||||||
</sizepolicy>
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>60</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
<property name="palette" >
|
<property name="palette" >
|
||||||
<palette>
|
<palette>
|
||||||
<active>
|
<active>
|
||||||
@ -501,12 +505,105 @@
|
|||||||
<enum>Qt::DefaultContextMenu</enum>
|
<enum>Qt::DefaultContextMenu</enum>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" >
|
<layout class="QGridLayout" >
|
||||||
<property name="margin" >
|
<item row="0" column="0" >
|
||||||
<number>4</number>
|
<widget class="QPushButton" name="newmessageButton" >
|
||||||
</property>
|
<property name="minimumSize" >
|
||||||
<property name="spacing" >
|
<size>
|
||||||
<number>1</number>
|
<width>24</width>
|
||||||
</property>
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>24</width>
|
||||||
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip" >
|
||||||
|
<string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||||
|
p, li { white-space: pre-wrap; }
|
||||||
|
</style></head><body style=" font-family:'Arial'; font-size:8pt; font-weight:400; font-style:normal; text-decoration:none;">
|
||||||
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">New Message</p></body></html></string>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet" >
|
||||||
|
<string>QPushButton
|
||||||
|
{
|
||||||
|
border-image: url(:/images/folder-draft24.png);
|
||||||
|
}
|
||||||
|
QPushButton:hover
|
||||||
|
{
|
||||||
|
border-image: url(:/images/folder-draft24-hover.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
QPushButton:pressed
|
||||||
|
{
|
||||||
|
border-image: url(:/images/folder-draft24-pressed.png);
|
||||||
|
}
|
||||||
|
</string>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="iconSize" >
|
||||||
|
<size>
|
||||||
|
<width>24</width>
|
||||||
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="default" >
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1" >
|
||||||
|
<widget class="QPushButton" name="replymessageButton" >
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>24</width>
|
||||||
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>24</width>
|
||||||
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="toolTip" >
|
||||||
|
<string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||||
|
p, li { white-space: pre-wrap; }
|
||||||
|
</style></head><body style=" font-family:'Arial'; font-size:8pt; font-weight:400; font-style:normal; text-decoration:none;">
|
||||||
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">reply to selected message</p></body></html></string>
|
||||||
|
</property>
|
||||||
|
<property name="styleSheet" >
|
||||||
|
<string>
|
||||||
|
QPushButton
|
||||||
|
{
|
||||||
|
border-image: url(:/images/replymail24.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
QPushButton:hover
|
||||||
|
{
|
||||||
|
border-image: url(:/images/replymail24-hover.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
QPushButton:pressed
|
||||||
|
{
|
||||||
|
border-image: url(:/images/replymail-pressed.png);
|
||||||
|
}
|
||||||
|
</string>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="iconSize" >
|
||||||
|
<size>
|
||||||
|
<width>24</width>
|
||||||
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="0" column="2" >
|
<item row="0" column="2" >
|
||||||
<widget class="QPushButton" name="removemessageButton" >
|
<widget class="QPushButton" name="removemessageButton" >
|
||||||
<property name="minimumSize" >
|
<property name="minimumSize" >
|
||||||
@ -554,15 +651,28 @@ border-image: url(:/images/deletemail-pressed.png);
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="0" column="3" >
|
||||||
|
<spacer>
|
||||||
|
<property name="orientation" >
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" >
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
<item row="1" column="0" colspan="4" >
|
<item row="1" column="0" colspan="4" >
|
||||||
<widget class="QSplitter" name="splitter_3" >
|
<widget class="QSplitter" name="splitter_2" >
|
||||||
<property name="orientation" >
|
<property name="orientation" >
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QListWidget" name="listWidget" >
|
<widget class="QListWidget" name="listWidget" >
|
||||||
<property name="maximumSize" >
|
<property name="maximumSize" >
|
||||||
<size>
|
<size>
|
||||||
<width>160</width>
|
<width>120</width>
|
||||||
<height>16777215</height>
|
<height>16777215</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
@ -626,258 +736,443 @@ border-image: url(:/images/deletemail-pressed.png);
|
|||||||
</property>
|
</property>
|
||||||
</item>
|
</item>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QSplitter" name="splitter_2" >
|
<widget class="QSplitter" name="msgSplitter" >
|
||||||
<property name="orientation" >
|
<property name="orientation" >
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QSplitter" name="splitter" >
|
<widget class="QTreeWidget" name="msgWidget" >
|
||||||
<property name="orientation" >
|
<property name="sizePolicy" >
|
||||||
<enum>Qt::Vertical</enum>
|
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>5</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QTreeWidget" name="msgWidget" >
|
<property name="contextMenuPolicy" >
|
||||||
<property name="contextMenuPolicy" >
|
<enum>Qt::CustomContextMenu</enum>
|
||||||
<enum>Qt::CustomContextMenu</enum>
|
</property>
|
||||||
|
<property name="indentation" >
|
||||||
|
<number>16</number>
|
||||||
|
</property>
|
||||||
|
<property name="sortingEnabled" >
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<property name="columnCount" >
|
||||||
|
<number>4</number>
|
||||||
|
</property>
|
||||||
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>Date</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="indentation" >
|
</column>
|
||||||
<number>16</number>
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>From</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="sortingEnabled" >
|
</column>
|
||||||
<bool>true</bool>
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>Subject</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="columnCount" >
|
</column>
|
||||||
<number>6</number>
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>#Recommendations</string>
|
||||||
</property>
|
</property>
|
||||||
<column>
|
</column>
|
||||||
<property name="text" >
|
|
||||||
<string>Date</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>From</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>Title</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>Count</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>Size</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>Msg</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
</widget>
|
|
||||||
<widget class="QTextBrowser" name="msgText" />
|
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="layoutWidget" >
|
<widget class="QWidget" name="" >
|
||||||
<layout class="QGridLayout" >
|
<layout class="QVBoxLayout" >
|
||||||
<property name="margin" >
|
<item>
|
||||||
<number>0</number>
|
<layout class="QHBoxLayout" >
|
||||||
</property>
|
<item>
|
||||||
<property name="spacing" >
|
<layout class="QVBoxLayout" >
|
||||||
<number>0</number>
|
<item>
|
||||||
</property>
|
<spacer>
|
||||||
<item row="1" column="0" colspan="2" >
|
<property name="orientation" >
|
||||||
<widget class="QTreeWidget" name="msgList" >
|
<enum>Qt::Vertical</enum>
|
||||||
<property name="contextMenuPolicy" >
|
</property>
|
||||||
<enum>Qt::CustomContextMenu</enum>
|
<property name="sizeType" >
|
||||||
|
<enum>QSizePolicy::Preferred</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" >
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>40</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QGridLayout" >
|
||||||
|
<item row="0" column="0" >
|
||||||
|
<widget class="QLabel" name="label_16" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>60</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="font" >
|
||||||
|
<font>
|
||||||
|
<pointsize>10</pointsize>
|
||||||
|
<weight>75</weight>
|
||||||
|
<bold>true</bold>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string>Subject:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1" >
|
||||||
|
<widget class="QLabel" name="subjectText" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
|
||||||
|
<horstretch>2</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0" >
|
||||||
|
<widget class="QLabel" name="label_7" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>60</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="font" >
|
||||||
|
<font>
|
||||||
|
<pointsize>10</pointsize>
|
||||||
|
<weight>75</weight>
|
||||||
|
<bold>true</bold>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string>From:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="1" >
|
||||||
|
<widget class="QLabel" name="fromText" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
|
||||||
|
<horstretch>2</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="0" >
|
||||||
|
<widget class="QLabel" name="label_12" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>60</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="font" >
|
||||||
|
<font>
|
||||||
|
<pointsize>10</pointsize>
|
||||||
|
<weight>75</weight>
|
||||||
|
<bold>true</bold>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string>Date:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="1" >
|
||||||
|
<widget class="QLabel" name="dateText" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
|
||||||
|
<horstretch>2</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="0" >
|
||||||
|
<widget class="QLabel" name="label_14" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Fixed" >
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>60</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="font" >
|
||||||
|
<font>
|
||||||
|
<pointsize>10</pointsize>
|
||||||
|
<weight>75</weight>
|
||||||
|
<bold>true</bold>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string>To:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="1" >
|
||||||
|
<widget class="QLabel" name="toText" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Fixed" hsizetype="Expanding" >
|
||||||
|
<horstretch>2</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize" >
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize" >
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>10</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QTextBrowser" name="msgText" >
|
||||||
|
<property name="sizePolicy" >
|
||||||
|
<sizepolicy vsizetype="Expanding" hsizetype="Expanding" >
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>10</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
<property name="sortingEnabled" >
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>File Name</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>Size</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>Sources</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
<column>
|
|
||||||
<property name="text" >
|
|
||||||
<string>Hash</string>
|
|
||||||
</property>
|
|
||||||
</column>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="0" >
|
<item>
|
||||||
<layout class="QGridLayout" >
|
<layout class="QHBoxLayout" >
|
||||||
<property name="margin" >
|
<item>
|
||||||
<number>0</number>
|
<layout class="QGridLayout" >
|
||||||
</property>
|
<property name="leftMargin" >
|
||||||
<property name="spacing" >
|
<number>0</number>
|
||||||
<number>6</number>
|
|
||||||
</property>
|
|
||||||
<item row="0" column="0" >
|
|
||||||
<widget class="QLabel" name="label_6" >
|
|
||||||
<property name="text" >
|
|
||||||
<string/>
|
|
||||||
</property>
|
</property>
|
||||||
<property name="pixmap" >
|
<property name="topMargin" >
|
||||||
<pixmap resource="images.qrc" >:/images/attachment.png</pixmap>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
<property name="rightMargin" >
|
||||||
</item>
|
<number>0</number>
|
||||||
<item row="0" column="1" >
|
</property>
|
||||||
<widget class="QLabel" name="label_2" >
|
<property name="bottomMargin" >
|
||||||
<property name="text" >
|
<number>0</number>
|
||||||
<string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
</property>
|
||||||
|
<property name="horizontalSpacing" >
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<property name="verticalSpacing" >
|
||||||
|
<number>6</number>
|
||||||
|
</property>
|
||||||
|
<item row="0" column="1" >
|
||||||
|
<widget class="QLabel" name="label_6" >
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="pixmap" >
|
||||||
|
<pixmap resource="images.qrc" >:/images/attachment.png</pixmap>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="2" >
|
||||||
|
<widget class="QLabel" name="label_2" >
|
||||||
|
<property name="text" >
|
||||||
|
<string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||||
p, li { white-space: pre-wrap; }
|
p, li { white-space: pre-wrap; }
|
||||||
</style></head><body style=" font-family:'Arial'; font-size:8pt; font-weight:400; font-style:normal; text-decoration:none;">
|
</style></head><body style=" font-family:'Arial'; font-size:8pt; font-weight:400; font-style:normal; text-decoration:none;">
|
||||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt; font-weight:600;">Recommended Files</span></p></body></html></string>
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:10pt; font-weight:600;">Recommended Files</span></p></body></html></string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="3" >
|
||||||
|
<widget class="QLabel" name="filesText" >
|
||||||
|
<property name="font" >
|
||||||
|
<font>
|
||||||
|
<pointsize>10</pointsize>
|
||||||
|
<italic>true</italic>
|
||||||
|
</font>
|
||||||
|
</property>
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0" >
|
||||||
|
<widget class="QPushButton" name="expandFilesButton" >
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="icon" >
|
||||||
|
<iconset resource="images.qrc" >:/images/add_24x24.png</iconset>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer>
|
||||||
|
<property name="orientation" >
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" >
|
||||||
|
<size>
|
||||||
|
<width>351</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="downloadButton" >
|
||||||
|
<property name="text" >
|
||||||
|
<string/>
|
||||||
|
</property>
|
||||||
|
<property name="icon" >
|
||||||
|
<iconset resource="images.qrc" >:/images/down.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1" >
|
|
||||||
<spacer>
|
|
||||||
<property name="orientation" >
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" >
|
|
||||||
<size>
|
|
||||||
<width>40</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
|
<widget class="QTreeWidget" name="msgList" >
|
||||||
|
<property name="contextMenuPolicy" >
|
||||||
|
<enum>Qt::CustomContextMenu</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sortingEnabled" >
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>File Name</string>
|
||||||
|
</property>
|
||||||
|
</column>
|
||||||
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>Size</string>
|
||||||
|
</property>
|
||||||
|
</column>
|
||||||
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>Sources</string>
|
||||||
|
</property>
|
||||||
|
</column>
|
||||||
|
<column>
|
||||||
|
<property name="text" >
|
||||||
|
<string>Hash</string>
|
||||||
|
</property>
|
||||||
|
</column>
|
||||||
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1" >
|
|
||||||
<widget class="QPushButton" name="replymessageButton" >
|
|
||||||
<property name="minimumSize" >
|
|
||||||
<size>
|
|
||||||
<width>24</width>
|
|
||||||
<height>24</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize" >
|
|
||||||
<size>
|
|
||||||
<width>24</width>
|
|
||||||
<height>24</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip" >
|
|
||||||
<string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
|
||||||
p, li { white-space: pre-wrap; }
|
|
||||||
</style></head><body style=" font-family:'Arial'; font-size:8pt; font-weight:400; font-style:normal; text-decoration:none;">
|
|
||||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">reply to selected message</p></body></html></string>
|
|
||||||
</property>
|
|
||||||
<property name="styleSheet" >
|
|
||||||
<string>
|
|
||||||
QPushButton
|
|
||||||
{
|
|
||||||
border-image: url(:/images/replymail24.png);
|
|
||||||
}
|
|
||||||
|
|
||||||
QPushButton:hover
|
|
||||||
{
|
|
||||||
border-image: url(:/images/replymail24-hover.png);
|
|
||||||
}
|
|
||||||
|
|
||||||
QPushButton:pressed
|
|
||||||
{
|
|
||||||
border-image: url(:/images/replymail-pressed.png);
|
|
||||||
}
|
|
||||||
</string>
|
|
||||||
</property>
|
|
||||||
<property name="text" >
|
|
||||||
<string/>
|
|
||||||
</property>
|
|
||||||
<property name="iconSize" >
|
|
||||||
<size>
|
|
||||||
<width>24</width>
|
|
||||||
<height>24</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="0" >
|
|
||||||
<widget class="QPushButton" name="newmessageButton" >
|
|
||||||
<property name="minimumSize" >
|
|
||||||
<size>
|
|
||||||
<width>24</width>
|
|
||||||
<height>24</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize" >
|
|
||||||
<size>
|
|
||||||
<width>24</width>
|
|
||||||
<height>24</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip" >
|
|
||||||
<string><html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
|
||||||
p, li { white-space: pre-wrap; }
|
|
||||||
</style></head><body style=" font-family:'Arial'; font-size:8pt; font-weight:400; font-style:normal; text-decoration:none;">
|
|
||||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">New Message</p></body></html></string>
|
|
||||||
</property>
|
|
||||||
<property name="styleSheet" >
|
|
||||||
<string>QPushButton
|
|
||||||
{
|
|
||||||
border-image: url(:/images/folder-draft24.png);
|
|
||||||
}
|
|
||||||
QPushButton:hover
|
|
||||||
{
|
|
||||||
border-image: url(:/images/folder-draft24-hover.png);
|
|
||||||
}
|
|
||||||
|
|
||||||
QPushButton:pressed
|
|
||||||
{
|
|
||||||
border-image: url(:/images/folder-draft24-pressed.png);
|
|
||||||
}
|
|
||||||
</string>
|
|
||||||
</property>
|
|
||||||
<property name="text" >
|
|
||||||
<string/>
|
|
||||||
</property>
|
|
||||||
<property name="iconSize" >
|
|
||||||
<size>
|
|
||||||
<width>24</width>
|
|
||||||
<height>24</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="default" >
|
|
||||||
<bool>false</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="3" >
|
|
||||||
<spacer>
|
|
||||||
<property name="orientation" >
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" >
|
|
||||||
<size>
|
|
||||||
<width>40</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<tabstops>
|
<tabstops>
|
||||||
|
@ -336,11 +336,24 @@ void PeersDialog::chatfriend()
|
|||||||
if (!i)
|
if (!i)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
std::string status = (i -> text(1)).toStdString();
|
|
||||||
std::string name = (i -> text(2)).toStdString();
|
std::string name = (i -> text(2)).toStdString();
|
||||||
std::string id = (i -> text(10)).toStdString();
|
std::string id = (i -> text(10)).toStdString();
|
||||||
|
|
||||||
|
RsPeerDetails detail;
|
||||||
|
if (!rsPeers->getPeerDetails(id, detail))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (status != "Online")
|
if (detail.state & RS_PEER_STATE_CONNECTED)
|
||||||
|
{
|
||||||
|
/* must reference ChatDialog */
|
||||||
|
if (chatDialog)
|
||||||
|
{
|
||||||
|
chatDialog->getPrivateChat(id, name, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
/* info dialog */
|
/* info dialog */
|
||||||
QMessageBox::StandardButton sb = QMessageBox::question ( NULL,
|
QMessageBox::StandardButton sb = QMessageBox::question ( NULL,
|
||||||
@ -351,16 +364,11 @@ void PeersDialog::chatfriend()
|
|||||||
{
|
{
|
||||||
msgfriend();
|
msgfriend();
|
||||||
}
|
}
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* must reference ChatDialog */
|
|
||||||
if (chatDialog)
|
|
||||||
{
|
|
||||||
chatDialog->getPrivateChat(id, name, true);
|
|
||||||
}
|
}
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void PeersDialog::msgfriend()
|
void PeersDialog::msgfriend()
|
||||||
{
|
{
|
||||||
std::cerr << "SharedFilesDialog::msgfriend()" << std::endl;
|
std::cerr << "SharedFilesDialog::msgfriend()" << std::endl;
|
||||||
|
@ -200,7 +200,7 @@ void PopupChatDialog::addChatMsg(ChatInfo *ci)
|
|||||||
|
|
||||||
|
|
||||||
/* add in lines at the bottom */
|
/* add in lines at the bottom */
|
||||||
std::ostringstream out;
|
QString extraTxt;
|
||||||
int ts = time(NULL);
|
int ts = time(NULL);
|
||||||
|
|
||||||
|
|
||||||
@ -222,70 +222,65 @@ void PopupChatDialog::addChatMsg(ChatInfo *ci)
|
|||||||
{
|
{
|
||||||
QString line = "<br>\n<span style=\"color:#1D84C9\"><strong> ----- PEER OFFLINE (Chat will be lost) -----</strong></span> \n<br>";
|
QString line = "<br>\n<span style=\"color:#1D84C9\"><strong> ----- PEER OFFLINE (Chat will be lost) -----</strong></span> \n<br>";
|
||||||
|
|
||||||
out << line.toStdString();
|
extraTxt += line;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if ((ci->name == lastChatName) && (ts - lastChatTime < 60))
|
if ((ci->name == lastChatName) && (ts - lastChatTime < 60))
|
||||||
{
|
{
|
||||||
/* no name */
|
/* no name */
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
// Nothing.
|
// Nothing.
|
||||||
#else
|
#else
|
||||||
out << "<br>" << std::endl;
|
extraTxt += "<br>\n";
|
||||||
#endif
|
#endif
|
||||||
for(int i = 0; i < n; i++)
|
for(int i = 0; i < n; i++)
|
||||||
{
|
{
|
||||||
out << spaces;
|
extraTxt += " ";
|
||||||
}
|
}
|
||||||
|
|
||||||
//out << "[ " << ci->name << " +" << ts - lastChatTime << "s ]" << std::endl;
|
|
||||||
//out << "<br>" << std::endl;
|
|
||||||
|
|
||||||
QString timestamp = "(" + QDateTime::currentDateTime().toString("hh:mm:ss") + ") ";
|
QString timestamp = "(" + QDateTime::currentDateTime().toString("hh:mm:ss") + ") ";
|
||||||
//QString pre = tr("Peer:" );
|
//QString pre = tr("Peer:" );
|
||||||
QString name = QString::fromStdString(ci->name);
|
QString name = QString::fromStdString(ci->name);
|
||||||
QString line = "<span style=\"color:#1D84C9\"><strong>" + timestamp +
|
QString line = "<span style=\"color:#1D84C9\"><strong>" + timestamp +
|
||||||
" " + name + "</strong></span> \n<br>";
|
" " + name + "</strong></span> \n<br>";
|
||||||
|
|
||||||
out << line.toStdString();
|
extraTxt += line;
|
||||||
|
|
||||||
}
|
}
|
||||||
out << ci -> msg;
|
extraTxt += QString::fromStdWString(ci -> msg);
|
||||||
|
|
||||||
/* This might be WIN32 only - or maybe Qt4.2.2 only - but need it for windows at the mom */
|
/* This might be WIN32 only - or maybe Qt4.2.2 only - but need it for windows at the mom */
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
//out << "<br>"; // << std::endl;
|
extraTxt += "\n";
|
||||||
out << std::endl;
|
|
||||||
#else
|
#else
|
||||||
out << std::endl;
|
extraTxt += "\n";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
lastChatTime = ts;
|
lastChatTime = ts;
|
||||||
lastChatName = ci->name;
|
lastChatName = ci->name;
|
||||||
|
|
||||||
QString extra = QString::fromStdString(out.str());
|
currenttxt += extraTxt;
|
||||||
currenttxt += extra;
|
|
||||||
|
msgWidget->setHtml(currenttxt);
|
||||||
msgWidget->setHtml(currenttxt);
|
|
||||||
|
// std::cerr << " Added Text: " << std::endl;
|
||||||
// std::cerr << " Added Text: " << std::endl;
|
// std::cerr << out.str() << std::endl;
|
||||||
// std::cerr << out.str() << std::endl;
|
QScrollBar *qsb = msgWidget->verticalScrollBar();
|
||||||
QScrollBar *qsb = msgWidget->verticalScrollBar();
|
qsb -> setValue(qsb->maximum());
|
||||||
qsb -> setValue(qsb->maximum());
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
void PopupChatDialog::sendChat()
|
||||||
void PopupChatDialog::sendChat()
|
{
|
||||||
{
|
QLineEdit *lineWidget = ui.lineEdit;
|
||||||
QLineEdit *lineWidget = ui.lineEdit;
|
|
||||||
|
ChatInfo ci;
|
||||||
ChatInfo ci;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
rsiface->lockData(); /* Lock Interface */
|
rsiface->lockData(); /* Lock Interface */
|
||||||
const RsConfig &conf = rsiface->getConfig();
|
const RsConfig &conf = rsiface->getConfig();
|
||||||
@ -296,7 +291,7 @@ void PopupChatDialog::sendChat()
|
|||||||
rsiface->unlockData(); /* Unlock Interface */
|
rsiface->unlockData(); /* Unlock Interface */
|
||||||
}
|
}
|
||||||
|
|
||||||
ci.msg = lineWidget->text().toStdString();
|
ci.msg = lineWidget->text().toStdWString();
|
||||||
ci.chatflags = RS_CHAT_PRIVATE;
|
ci.chatflags = RS_CHAT_PRIVATE;
|
||||||
|
|
||||||
addChatMsg(&ci);
|
addChatMsg(&ci);
|
||||||
|
@ -162,13 +162,13 @@ void ChanMsgDialog::insertSendList()
|
|||||||
/* (0) Person */
|
/* (0) Person */
|
||||||
item -> setText(0, QString::fromStdString(detail.name));
|
item -> setText(0, QString::fromStdString(detail.name));
|
||||||
/* () Org */
|
/* () Org */
|
||||||
item -> setText(1, QString::fromStdString(detail.org));
|
//item -> setText(1, QString::fromStdString(detail.org));
|
||||||
/* () Location */
|
/* () Location */
|
||||||
item -> setText(2, QString::fromStdString(detail.location));
|
//item -> setText(2, QString::fromStdString(detail.location));
|
||||||
/* () Country */
|
/* () Country */
|
||||||
item -> setText(3, QString::fromStdString(detail.email));
|
//item -> setText(3, QString::fromStdString(detail.email));
|
||||||
/* () Id */
|
/* () Id */
|
||||||
item -> setText(4, QString::fromStdString(detail.id));
|
item -> setText(1, QString::fromStdString(detail.id));
|
||||||
|
|
||||||
item -> setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
|
item -> setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
|
||||||
//item -> setCheckState(0, Qt::Checked);
|
//item -> setCheckState(0, Qt::Checked);
|
||||||
@ -192,7 +192,7 @@ void ChanMsgDialog::insertSendList()
|
|||||||
|
|
||||||
/* remove old items ??? */
|
/* remove old items ??? */
|
||||||
sendWidget->clear();
|
sendWidget->clear();
|
||||||
sendWidget->setColumnCount(6);
|
sendWidget->setColumnCount(1);
|
||||||
|
|
||||||
/* add the items in! */
|
/* add the items in! */
|
||||||
sendWidget->insertTopLevelItems(0, items);
|
sendWidget->insertTopLevelItems(0, items);
|
||||||
@ -378,8 +378,8 @@ void ChanMsgDialog::sendMessage()
|
|||||||
/* construct a message */
|
/* construct a message */
|
||||||
MessageInfo mi;
|
MessageInfo mi;
|
||||||
|
|
||||||
mi.title = ui.titleEdit->text().toStdString();
|
mi.title = ui.titleEdit->text().toStdWString();
|
||||||
mi.msg = ui.msgText->toPlainText().toStdString();
|
mi.msg = ui.msgText->toPlainText().toStdWString();
|
||||||
/* filled in later */
|
/* filled in later */
|
||||||
//mi.msgId = rand();
|
//mi.msgId = rand();
|
||||||
|
|
||||||
@ -451,7 +451,7 @@ void ChanMsgDialog::togglePersonItem( QTreeWidgetItem *item, int col )
|
|||||||
std::cerr << "TogglePersonItem()" << std::endl;
|
std::cerr << "TogglePersonItem()" << std::endl;
|
||||||
|
|
||||||
/* extract id */
|
/* extract id */
|
||||||
std::string id = (item -> text(4)).toStdString();
|
std::string id = (item -> text(1)).toStdString();
|
||||||
|
|
||||||
/* get state */
|
/* get state */
|
||||||
bool inMsg = (Qt::Checked == item -> checkState(0)); /* alway column 0 */
|
bool inMsg = (Qt::Checked == item -> checkState(0)); /* alway column 0 */
|
||||||
|
@ -248,8 +248,12 @@ void NotifyQt::displayMessages()
|
|||||||
for(it = msgs.begin(); it != msgs.end(); it++)
|
for(it = msgs.begin(); it != msgs.end(); it++)
|
||||||
{
|
{
|
||||||
out << "Message: ";
|
out << "Message: ";
|
||||||
out << it->title << std::endl;
|
|
||||||
out << "\t" << it->msg << std::endl;
|
std::string cnv_title(it->title.begin(), it->title.end());
|
||||||
|
out << cnv_title << std::endl;
|
||||||
|
std::string cnv_msg(it->msg.begin(), it->msg.end());
|
||||||
|
out << "\t" << cnv_msg << std::endl;
|
||||||
|
|
||||||
const std::list<FileInfo> &files = it -> files;
|
const std::list<FileInfo> &files = it -> files;
|
||||||
for(fit = files.begin(), i = 1; fit != files.end(); fit++, i++)
|
for(fit = files.begin(), i = 1; fit != files.end(); fit++, i++)
|
||||||
{
|
{
|
||||||
|
@ -187,11 +187,11 @@ class MessageInfo: public BaseInfo
|
|||||||
std::list<PersonInfo> msgcc;
|
std::list<PersonInfo> msgcc;
|
||||||
std::list<PersonInfo> msgbcc;
|
std::list<PersonInfo> msgbcc;
|
||||||
|
|
||||||
std::string title;
|
std::wstring title;
|
||||||
std::string msg;
|
std::wstring msg;
|
||||||
|
|
||||||
std::string attach_title;
|
std::wstring attach_title;
|
||||||
std::string attach_comment;
|
std::wstring attach_comment;
|
||||||
std::list<FileInfo> files;
|
std::list<FileInfo> files;
|
||||||
int size; /* total of files */
|
int size; /* total of files */
|
||||||
int count; /* file count */
|
int count; /* file count */
|
||||||
@ -228,7 +228,7 @@ class ChatInfo: public BaseInfo
|
|||||||
std::string rsid;
|
std::string rsid;
|
||||||
unsigned int chatflags;
|
unsigned int chatflags;
|
||||||
std::string name;
|
std::string name;
|
||||||
std::string msg;
|
std::wstring msg;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* matched to the uPnP states */
|
/* matched to the uPnP states */
|
||||||
|
Loading…
Reference in New Issue
Block a user