Add description to pastebin.com-protocol.

The api_paste_name parameter actually is a description/title.
Introduce new PostUserNameCapability to enable user name control.

Task-number: QTCREATORBUG-9996
Change-Id: I4a40dd88b2a8844fb6f27ba01e47226e2a61a042
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
This commit is contained in:
Friedemann Kleint
2013-08-21 15:43:29 +02:00
parent 7be0100298
commit e829b97371
6 changed files with 10 additions and 8 deletions

View File

@@ -69,7 +69,7 @@ QString FileShareProtocol::name() const
unsigned FileShareProtocol::capabilities() const
{
return ListCapability|PostDescriptionCapability;
return ListCapability | PostDescriptionCapability | PostUserNameCapability;
}
bool FileShareProtocol::hasSettings() const

View File

@@ -61,7 +61,7 @@ QString KdePasteProtocol::protocolName()
unsigned KdePasteProtocol::capabilities() const
{
return ListCapability;
return ListCapability | PostUserNameCapability;
}
bool KdePasteProtocol::checkConfiguration(QString *errorMessage)

View File

@@ -49,7 +49,7 @@ PasteBinDotCaProtocol::PasteBinDotCaProtocol() :
unsigned PasteBinDotCaProtocol::capabilities() const
{
return ListCapability | PostDescriptionCapability;
return ListCapability | PostDescriptionCapability | PostUserNameCapability;
}
void PasteBinDotCaProtocol::fetch(const QString &id)

View File

@@ -66,7 +66,7 @@ QString PasteBinDotComProtocol::protocolName()
unsigned PasteBinDotComProtocol::capabilities() const
{
return ListCapability;
return ListCapability | PostDescriptionCapability;
}
static inline QByteArray format(Protocol::ContentType ct)
@@ -112,7 +112,7 @@ static inline QByteArray expirySpecification(int expiryDays)
void PasteBinDotComProtocol::paste(const QString &text,
ContentType ct, int expiryDays,
const QString &username,
const QString & /* username */, // Not used unless registered user
const QString &comment,
const QString &description)
{
@@ -127,8 +127,8 @@ void PasteBinDotComProtocol::paste(const QString &text,
pasteData += expirySpecification(expiryDays);
pasteData += '&';
pasteData += format(ct);
pasteData += "api_paste_name=";
pasteData += QUrl::toPercentEncoding(username);
pasteData += "api_paste_name="; // Title or name.
pasteData += QUrl::toPercentEncoding(description);
pasteData += "&api_paste_code=";
pasteData += QUrl::toPercentEncoding(fixNewLines(text));
// fire request

View File

@@ -114,6 +114,7 @@ void PasteView::protocolChanged(int p)
{
const unsigned caps = m_protocols.at(p)->capabilities();
m_ui.uiDescription->setEnabled(caps & Protocol::PostDescriptionCapability);
m_ui.uiUsername->setEnabled(caps & Protocol::PostUserNameCapability);
m_ui.uiComment->setEnabled(caps & Protocol::PostCommentCapability);
}

View File

@@ -58,7 +58,8 @@ public:
enum Capabilities {
ListCapability = 0x1,
PostCommentCapability = 0x2,
PostDescriptionCapability = 0x4
PostDescriptionCapability = 0x4,
PostUserNameCapability = 0x8
};
virtual ~Protocol();