mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-12-28 08:59:37 -05:00
fixed context menu in Home->cert
This commit is contained in:
parent
f2514d13e2
commit
3c61190b4f
@ -22,6 +22,8 @@
|
||||
#include "HomePage.h"
|
||||
#include "ui_HomePage.h"
|
||||
|
||||
#include "retroshare/rsinit.h"
|
||||
|
||||
#include "gui/notifyqt.h"
|
||||
#include "gui/msgs/MessageComposer.h"
|
||||
#include "gui/connect/ConnectFriendWizard.h"
|
||||
@ -55,36 +57,32 @@ HomePage::HomePage(QWidget *parent) :
|
||||
connect(ui->addButton, SIGNAL(clicked()), this, SLOT(addFriend()));
|
||||
connect(ui->LoadCertFileButton, SIGNAL(clicked()), this, SLOT(loadCert()));
|
||||
|
||||
QAction *CopyAction = new QAction(QIcon(),tr("Copy your Cert to Clipboard"), this);
|
||||
connect(CopyAction, SIGNAL(triggered()), this, SLOT(copyCert()));
|
||||
|
||||
QAction *SaveAction = new QAction(QIcon(),tr("Save your Cert into a File"), this);
|
||||
connect(SaveAction, SIGNAL(triggered()), this, SLOT(saveCert()));
|
||||
|
||||
QAction *SendAction = new QAction(QIcon(),tr("Send via Email"), this);
|
||||
connect(SendAction, SIGNAL(triggered()), this, SLOT(runEmailClient()));
|
||||
|
||||
QAction *WebMailAction = new QAction(QIcon(),tr("Invite via WebMail"), this);
|
||||
connect(WebMailAction, SIGNAL(triggered()), this, SLOT(webMail()));
|
||||
|
||||
QAction *RecAction = new QAction(QIcon(),tr("Recommend friends to each others"), this);
|
||||
connect(RecAction, SIGNAL(triggered()), this, SLOT(recommendFriends()));
|
||||
|
||||
QAction *SendAction = new QAction(QIcon(),tr("Send via Email"), this);
|
||||
connect(SendAction, SIGNAL(triggered()), this, SLOT(runEmailClient()));
|
||||
|
||||
QMenu *menu = new QMenu();
|
||||
menu->addAction(CopyAction);
|
||||
menu->addAction(SaveAction);
|
||||
menu->addAction(SendAction);
|
||||
menu->addAction(WebMailAction);
|
||||
menu->addAction(RecAction);
|
||||
|
||||
ui->shareButton->setMenu(menu);
|
||||
|
||||
QObject::connect(ui->userCertEdit,SIGNAL(customContextMenuRequested(QPoint)),this,SLOT(certContextMenu(QPoint)));
|
||||
|
||||
connect(ui->runStartWizard_PB,SIGNAL(clicked()), this,SLOT(runStartWizard())) ;
|
||||
connect(ui->openwebhelp,SIGNAL(clicked()), this,SLOT(openWebHelp())) ;
|
||||
|
||||
ui->runStartWizard_PB->hide(); // until future rework
|
||||
ui->LoadCertFileButton->hide(); // duplicates functionality => not good.
|
||||
|
||||
mIncludeAllIPs = false;
|
||||
|
||||
int S = QFontMetricsF(font()).height();
|
||||
QString help_str = tr(
|
||||
" <h1><img width=\"%1\" src=\":/icons/help_64.png\"> Welcome to Retroshare!</h1>\
|
||||
@ -100,6 +98,37 @@ HomePage::HomePage(QWidget *parent) :
|
||||
registerHelpButton(ui->helpButton,help_str,"HomePage") ;
|
||||
}
|
||||
|
||||
void HomePage::certContextMenu(QPoint point)
|
||||
{
|
||||
QMenu menu(this) ;
|
||||
|
||||
QAction *CopyAction = new QAction(QIcon(),tr("Copy your Cert to Clipboard"), this);
|
||||
connect(CopyAction, SIGNAL(triggered()), this, SLOT(copyCert()));
|
||||
|
||||
QAction *SaveAction = new QAction(QIcon(),tr("Save your Cert into a File"), this);
|
||||
connect(SaveAction, SIGNAL(triggered()), this, SLOT(saveCert()));
|
||||
|
||||
menu.addAction(CopyAction);
|
||||
menu.addAction(SaveAction);
|
||||
|
||||
if(!RsAccounts::isHiddenNode())
|
||||
{
|
||||
QAction *includeIPsAct = new QAction(QIcon(), mIncludeAllIPs? tr("Include only current IP"):tr("Include all your known IPs"),this);
|
||||
connect(includeIPsAct, SIGNAL(triggered()), this, SLOT(toggleIncludeAllIPs()));
|
||||
includeIPsAct->setCheckable(true);
|
||||
|
||||
menu.addAction(includeIPsAct);
|
||||
}
|
||||
|
||||
menu.exec(QCursor::pos());
|
||||
}
|
||||
|
||||
void HomePage::toggleIncludeAllIPs()
|
||||
{
|
||||
mIncludeAllIPs = !mIncludeAllIPs;
|
||||
updateOwnCert();
|
||||
}
|
||||
|
||||
HomePage::~HomePage()
|
||||
{
|
||||
delete ui;
|
||||
@ -107,7 +136,7 @@ HomePage::~HomePage()
|
||||
|
||||
void HomePage::updateOwnCert()
|
||||
{
|
||||
bool include_extra_locators = false;
|
||||
bool include_extra_locators = mIncludeAllIPs;
|
||||
|
||||
RsPeerDetails detail;
|
||||
|
||||
|
@ -48,6 +48,7 @@ public:
|
||||
virtual QString helpText() const { return ""; } //MainPage
|
||||
|
||||
private slots:
|
||||
void certContextMenu(QPoint);
|
||||
void updateOwnCert();
|
||||
void runEmailClient();
|
||||
void copyCert();
|
||||
@ -58,10 +59,12 @@ private slots:
|
||||
void runStartWizard() ;
|
||||
void openWebHelp() ;
|
||||
void recommendFriends();
|
||||
void toggleIncludeAllIPs();
|
||||
|
||||
private:
|
||||
Ui::HomePage *ui;
|
||||
|
||||
bool mIncludeAllIPs;
|
||||
|
||||
};
|
||||
|
||||
|
@ -25,6 +25,41 @@
|
||||
<property name="verticalSpacing">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<item row="1" column="2">
|
||||
<widget class="QLabel" name="userCertLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>11</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>The text below is your own Retroshare certificate. Send it to your friends</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QToolButton" name="helpButton">
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="icons.qrc">
|
||||
<normaloff>:/icons/help_64.png</normaloff>:/icons/help_64.png</iconset>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0" colspan="4">
|
||||
<widget class="QPlainTextEdit" name="userCertEdit">
|
||||
<property name="font">
|
||||
@ -32,6 +67,9 @@
|
||||
<family>Courier New</family>
|
||||
</font>
|
||||
</property>
|
||||
<property name="contextMenuPolicy">
|
||||
<enum>Qt::CustomContextMenu</enum>
|
||||
</property>
|
||||
<property name="whatsThis">
|
||||
<string/>
|
||||
</property>
|
||||
@ -84,41 +122,6 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QToolButton" name="helpButton">
|
||||
<property name="text">
|
||||
<string>...</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="icons.qrc">
|
||||
<normaloff>:/icons/help_64.png</normaloff>:/icons/help_64.png</iconset>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="QLabel" name="userCertLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<pointsize>11</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>The text below is your own Retroshare certificate. Send it to your friends</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="1" column="1" colspan="2">
|
||||
|
@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>760</width>
|
||||
<height>538</height>
|
||||
<width>1157</width>
|
||||
<height>873</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
@ -1618,8 +1618,8 @@ resources.</string>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
<include location="../images.qrc"/>
|
||||
<include location="../icons.qrc"/>
|
||||
<include location="../images.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
Loading…
Reference in New Issue
Block a user