Added a menu for the Hide Unconnected Button and renamed it

Added new action for Hide Status Column to the Display Menu
Moved Hide Offline Friends action to the Display Menu

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3159 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
defnax 2010-06-18 21:59:33 +00:00
parent ec6c252d62
commit 09ac44316a
3 changed files with 81 additions and 11 deletions

View File

@ -141,7 +141,8 @@ PeersDialog::PeersDialog(QWidget *parent)
connect( ui.addfileButton, SIGNAL(clicked() ), this , SLOT(addExtraFile()));
connect( ui.msgText, SIGNAL(anchorClicked(const QUrl &)), SLOT(anchorClicked(const QUrl &)));
connect(ui.hide_unconnected, SIGNAL(clicked()), this, SLOT(insertPeers()));
connect(ui.action_Hide_Offline_Friends, SIGNAL(triggered()), this, SLOT(insertPeers()));
connect(ui.action_Hide_Status_Column, SIGNAL(triggered()), this, SLOT(statusColumn()));
ui.peertabWidget->setTabPosition(QTabWidget::North);
ui.peertabWidget->addTab(new ProfileWidget(),QString(tr("Profile")));
@ -233,6 +234,7 @@ PeersDialog::PeersDialog(QWidget *parent)
updateAvatar();
loadmypersonalstatus();
loadEmoticonsgroupchat();
displayMenu();
// load settings
processSettings(true);
@ -269,7 +271,10 @@ void PeersDialog::processSettings(bool bLoad)
header->restoreState(Settings->value("PeerTree").toByteArray());
// state of hideUnconnected
ui.hide_unconnected->setChecked(Settings->value("hideUnconnected", false).toBool());
ui.action_Hide_Offline_Friends->setChecked(Settings->value("hideUnconnected", false).toBool());
// state of hideStatusColumn
ui.action_Hide_Status_Column->setChecked(Settings->value("hideStatusColumn", false).toBool());
// state of splitter
ui.splitter->restoreState(Settings->value("Splitter").toByteArray());
@ -280,7 +285,10 @@ void PeersDialog::processSettings(bool bLoad)
Settings->setValue("PeerTree", header->saveState());
// state of hideUnconnected
Settings->setValue("hideUnconnected", ui.hide_unconnected->isChecked());
Settings->setValue("hideUnconnected", ui.action_Hide_Offline_Friends->isChecked());
// state of hideStatusColumn
Settings->setValue("hideStatusColumn", ui.action_Hide_Status_Column->isChecked());
// state of splitter
Settings->setValue("Splitter", ui.splitter->saveState());
@ -439,7 +447,7 @@ void PeersDialog::insertPeers()
return;
}
bool bHideUnconnected = ui.hide_unconnected->isChecked();
bool bHideUnconnected = ui.action_Hide_Offline_Friends->isChecked();
rsPeers->getGPGAcceptedList(gpgFriends);
@ -1803,3 +1811,31 @@ void PeersDialog::playsound(){
if(QSound::isAvailable())
QSound::play(OnlineSound);
}
void PeersDialog::displayMenu()
{
QMenu *displaymenu = new QMenu();
displaymenu->addAction(ui.action_Hide_Offline_Friends);
displaymenu->addAction(ui.action_Hide_Status_Column);
ui.displayButton->setMenu(displaymenu);
}
void PeersDialog::statusColumn()
{
/* Set header resize modes and initial section sizes */
QHeaderView * peerheader = ui.peertreeWidget->header();
if(ui.action_Hide_Status_Column->isChecked())
{
ui.peertreeWidget->setColumnHidden ( 1, true);
peerheader->resizeSection ( 0, 200 );
}
else
{
ui.peertreeWidget->setColumnHidden ( 1, false);
peerheader->resizeSection ( 0, 200 );
}
}

View File

@ -76,7 +76,7 @@ public slots:
void setChatInfo(QString info, QColor color=QApplication::palette().color(QPalette::WindowText));
void resetStatusBar() ;
void fileHashingFinished(AttachFileItem* file);
void fileHashingFinished(AttachFileItem* file);
void smileyWidgetgroupchat();
void addSmileys();
@ -147,9 +147,13 @@ private slots:
void addAttachment(std::string);
bool fileSave();
bool fileSaveAs();
bool fileSaveAs();
void setCurrentFileName(const QString &fileName);
void displayMenu();
void statusColumn();
signals:
void friendsUpdated() ;

View File

@ -606,12 +606,26 @@ p, li { white-space: pre-wrap; }
</spacer>
</item>
<item row="0" column="3">
<widget class="QPushButton" name="hide_unconnected">
<widget class="QPushButton" name="displayButton">
<property name="toolTip">
<string>hide unconnected</string>
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-size:8pt;&quot;&gt;Display&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="styleSheet">
<string notr="true"> QPushButton:hover {
<string notr="true">QPushButton::menu-indicator {
subcontrol-origin: padding;
subcontrol-position: bottom right;
}
QPushButton::menu-indicator:pressed, QPushButton::menu-indicator:open {
position: relative;
top: 2px; left: 2px; /* shift the arrow by 2 px */
}
QPushButton:hover {
border: 1px solid #CCCCCC;
}</string>
</property>
@ -620,7 +634,7 @@ p, li { white-space: pre-wrap; }
</property>
<property name="icon">
<iconset resource="images.qrc">
<normaloff>:/images/user/identityoffline24.png</normaloff>:/images/user/identityoffline24.png</iconset>
<normaloff>:/images/looknfeel.png</normaloff>:/images/looknfeel.png</iconset>
</property>
<property name="iconSize">
<size>
@ -649,7 +663,7 @@ p, li { white-space: pre-wrap; }
</property>
<property name="minimumSize">
<size>
<width>250</width>
<width>150</width>
<height>0</height>
</size>
</property>
@ -1426,6 +1440,22 @@ p, li { white-space: pre-wrap; }
<string>Save Chat History</string>
</property>
</action>
<action name="action_Hide_Offline_Friends">
<property name="checkable">
<bool>true</bool>
</property>
<property name="text">
<string>Hide Offline Friends</string>
</property>
</action>
<action name="action_Hide_Status_Column">
<property name="checkable">
<bool>true</bool>
</property>
<property name="text">
<string>Hide Status Column</string>
</property>
</action>
</widget>
<resources>
<include location="images.qrc"/>