summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/newview/llfloaterflickr.cpp40
-rw-r--r--indra/newview/llfloaterflickr.h5
-rw-r--r--indra/newview/skins/default/xui/en/floater_flickr.xml6
-rw-r--r--indra/newview/skins/default/xui/en/panel_flickr_account.xml2
-rw-r--r--indra/newview/skins/default/xui/en/panel_flickr_photo.xml98
-rw-r--r--indra/newview/skins/default/xui/en/panel_twitter_photo.xml2
6 files changed, 126 insertions, 27 deletions
diff --git a/indra/newview/llfloaterflickr.cpp b/indra/newview/llfloaterflickr.cpp
index 290d174619..1edc61fcf6 100644
--- a/indra/newview/llfloaterflickr.cpp
+++ b/indra/newview/llfloaterflickr.cpp
@@ -63,8 +63,11 @@ mResolutionComboBox(NULL),
mRefreshBtn(NULL),
mWorkingLabel(NULL),
mThumbnailPlaceholder(NULL),
-mCaptionTextBox(NULL),
+mTitleTextBox(NULL),
+mDescriptionTextBox(NULL),
mLocationCheckbox(NULL),
+mTagsTextBox(NULL),
+mRatingComboBox(NULL),
mPostButton(NULL)
{
mCommitCallbackRegistrar.add("SocialSharing.SendPhoto", boost::bind(&LLFlickrPhotoPanel::onSend, this));
@@ -89,8 +92,11 @@ BOOL LLFlickrPhotoPanel::postBuild()
mRefreshBtn = getChild<LLUICtrl>("new_snapshot_btn");
mWorkingLabel = getChild<LLUICtrl>("working_lbl");
mThumbnailPlaceholder = getChild<LLUICtrl>("thumbnail_placeholder");
- mCaptionTextBox = getChild<LLUICtrl>("photo_caption");
+ mTitleTextBox = getChild<LLUICtrl>("photo_title");
+ mDescriptionTextBox = getChild<LLUICtrl>("photo_description");
mLocationCheckbox = getChild<LLUICtrl>("add_location_cb");
+ mTagsTextBox = getChild<LLUICtrl>("photo_tags");
+ mRatingComboBox = getChild<LLUICtrl>("rating_combobox");
mPostButton = getChild<LLUICtrl>("post_photo_btn");
mCancelButton = getChild<LLUICtrl>("cancel_photo_btn");
@@ -104,7 +110,10 @@ void LLFlickrPhotoPanel::draw()
// Enable interaction only if no transaction with the service is on-going (prevent duplicated posts)
bool no_ongoing_connection = !(LLFlickrConnect::instance().isTransactionOngoing());
mCancelButton->setEnabled(no_ongoing_connection);
- mCaptionTextBox->setEnabled(no_ongoing_connection);
+ mTitleTextBox->setEnabled(no_ongoing_connection);
+ mDescriptionTextBox->setEnabled(no_ongoing_connection);
+ mTagsTextBox->setEnabled(no_ongoing_connection);
+ mRatingComboBox->setEnabled(no_ongoing_connection);
mResolutionComboBox->setEnabled(no_ongoing_connection);
mRefreshBtn->setEnabled(no_ongoing_connection);
mLocationCheckbox->setEnabled(no_ongoing_connection);
@@ -144,7 +153,7 @@ void LLFlickrPhotoPanel::draw()
mWorkingLabel->setVisible(!(previewp && previewp->getSnapshotUpToDate()));
// Enable Post if we have a preview to send and no on going connection being processed
- mPostButton->setEnabled(no_ongoing_connection && (previewp && previewp->getSnapshotUpToDate()));
+ mPostButton->setEnabled(no_ongoing_connection && (previewp && previewp->getSnapshotUpToDate()) && (mRatingComboBox && mRatingComboBox->getValue().isDefined()));
// Draw the rest of the panel on top of it
LLPanel::draw();
@@ -234,8 +243,10 @@ bool LLFlickrPhotoPanel::onFlickrConnectStateChange(const LLSD& data)
void LLFlickrPhotoPanel::sendPhoto()
{
- // Get the caption
- std::string caption = mCaptionTextBox->getValue().asString();
+ // Get the title, description, and tags
+ std::string title = mTitleTextBox->getValue().asString();
+ std::string description = mDescriptionTextBox->getValue().asString();
+ std::string tags = mTagsTextBox->getValue().asString();
// Add the location if required
bool add_location = mLocationCheckbox->getValue().asBoolean();
@@ -249,25 +260,30 @@ void LLFlickrPhotoPanel::sendPhoto()
// Add query parameters so Google Analytics can track incoming clicks!
slurl_string += DEFAULT_PHOTO_QUERY_PARAMETERS;
- // Add it to the caption (pretty crude, but we don't have a better option with photos)
- if (caption.empty())
- caption = slurl_string;
+ // Add it to the description (pretty crude, but we don't have a better option with photos)
+ if (description.empty())
+ description = slurl_string;
else
- caption = caption + " " + slurl_string;
+ description = description + " " + slurl_string;
}
+ // Get the content rating
+ int content_rating = mRatingComboBox->getValue().asInteger();
+
// Get the image
LLSnapshotLivePreview* previewp = getPreviewView();
// Post to Flickr
- LLFlickrConnect::instance().uploadPhoto(previewp->getFormattedImage(), "", caption, "", 1);
+ LLFlickrConnect::instance().uploadPhoto(previewp->getFormattedImage(), title, description, tags, content_rating);
updateControls();
}
void LLFlickrPhotoPanel::clearAndClose()
{
- mCaptionTextBox->setValue("");
+ mTitleTextBox->setValue("");
+ mDescriptionTextBox->setValue("");
+ mTagsTextBox->setValue("");
LLFloater* floater = getParentByType<LLFloater>();
if (floater)
diff --git a/indra/newview/llfloaterflickr.h b/indra/newview/llfloaterflickr.h
index d98a470d5c..8cf2cd2dd6 100644
--- a/indra/newview/llfloaterflickr.h
+++ b/indra/newview/llfloaterflickr.h
@@ -66,8 +66,11 @@ private:
LLUICtrl * mRefreshBtn;
LLUICtrl * mWorkingLabel;
LLUICtrl * mThumbnailPlaceholder;
- LLUICtrl * mCaptionTextBox;
+ LLUICtrl * mTitleTextBox;
+ LLUICtrl * mDescriptionTextBox;
LLUICtrl * mLocationCheckbox;
+ LLUICtrl * mTagsTextBox;
+ LLUICtrl * mRatingComboBox;
LLUICtrl * mPostButton;
LLUICtrl* mCancelButton;
};
diff --git a/indra/newview/skins/default/xui/en/floater_flickr.xml b/indra/newview/skins/default/xui/en/floater_flickr.xml
index 441e3ee73d..57014f8427 100644
--- a/indra/newview/skins/default/xui/en/floater_flickr.xml
+++ b/indra/newview/skins/default/xui/en/floater_flickr.xml
@@ -10,10 +10,10 @@
single_instance="true"
reuse_instance="true"
title="UPLOAD TO FLICKR"
- height="482"
+ height="622"
width="304">
<panel
- height="482"
+ height="622"
width="304"
visible="true"
name="background"
@@ -27,7 +27,7 @@
tab_height="30"
tab_position="top"
top="7"
- height="437"
+ height="577"
halign="center">
<panel
filename="panel_flickr_photo.xml"
diff --git a/indra/newview/skins/default/xui/en/panel_flickr_account.xml b/indra/newview/skins/default/xui/en/panel_flickr_account.xml
index c76a42904b..3a38852049 100644
--- a/indra/newview/skins/default/xui/en/panel_flickr_account.xml
+++ b/indra/newview/skins/default/xui/en/panel_flickr_account.xml
@@ -1,5 +1,5 @@
<panel
- height="400"
+ height="540"
width="304"
layout="topleft"
name="panel_flickr_account">
diff --git a/indra/newview/skins/default/xui/en/panel_flickr_photo.xml b/indra/newview/skins/default/xui/en/panel_flickr_photo.xml
index 1fc4927ac2..d7d3fb6c1b 100644
--- a/indra/newview/skins/default/xui/en/panel_flickr_photo.xml
+++ b/indra/newview/skins/default/xui/en/panel_flickr_photo.xml
@@ -1,19 +1,19 @@
<panel
- height="400"
+ height="540"
width="304"
layout="topleft"
name="panel_flickr_photo">
<layout_stack
layout="topleft"
border_size="0"
- height="392"
+ height="532"
follows="all"
orientation="vertical"
name="stack_photo"
top="8">
<layout_panel
name="snapshot_panel"
- height="367">
+ height="507">
<combo_box
control_name="SocialPhotoResolution"
follows="left|top"
@@ -97,30 +97,110 @@
font="SansSerif"
height="16"
left="9"
- name="caption_label"
+ name="title_label"
top_pad="20"
type="string">
- Comment (optional):
+ Title:
</text>
<text_editor
follows="left|top"
- height="87"
+ height="20"
+ width="250"
+ left="9"
+ length="1"
+ max_length="256"
+ name="photo_title"
+ type="string"
+ word_wrap="true">
+ </text_editor>
+ <text
+ length="1"
+ follows="top|left|right"
+ font="SansSerif"
+ height="16"
+ left="9"
+ name="description_label"
+ top_pad="10"
+ type="string">
+ Description:
+ </text>
+ <text_editor
+ follows="left|top"
+ height="50"
width="250"
left="9"
length="1"
max_length="700"
- name="photo_caption"
+ name="photo_description"
type="string"
word_wrap="true">
</text_editor>
<check_box
follows="left|top"
initial_value="true"
- label="Include location in posting"
+ label="Include SL location at end of description"
name="add_location_cb"
left="9"
height="16"
top_pad="8"/>
+ <text
+ length="1"
+ follows="top|left|right"
+ font="SansSerif"
+ height="16"
+ left="9"
+ name="tags_label"
+ top_pad="10"
+ type="string">
+ Tags:
+ </text>
+ <text
+ length="1"
+ follows="top|left"
+ font="SansSerifSmall"
+ text_color="White_50"
+ height="30"
+ name="tags_help_label"
+ left="50"
+ top_pad="-16"
+ type="string">
+Separate tags with spaces
+Use "" for multi-word tags
+ </text>
+ <text_editor
+ follows="left|top"
+ height="50"
+ width="250"
+ left="9"
+ length="1"
+ max_length="700"
+ name="photo_tags"
+ type="string"
+ word_wrap="true">
+ </text_editor>
+ <combo_box
+ control_name="FlickrPhotoRating"
+ follows="left|top"
+ top_pad="16"
+ left="9"
+ label="Choose Flickr rating (required)..."
+ name="rating_combobox"
+ tool_tip="Flickr content rating"
+ height="21"
+ width="250">
+ <combo_box.item
+ label="Safe"
+ name="SafeRating"
+ value="1" />
+ <combo_box.item
+ label="Moderate"
+ name="ModerateRating"
+ value="2" />
+ <combo_box.item
+ label="Restricted"
+ name="RestrictedRating"
+ value="3" />
+ </combo_box>
</layout_panel>
<layout_panel
name="photo_button_panel"
@@ -130,7 +210,7 @@
top="0"
left="9"
height="23"
- label="Post"
+ label="Upload"
name="post_photo_btn"
width="100">
<button.commit_callback
diff --git a/indra/newview/skins/default/xui/en/panel_twitter_photo.xml b/indra/newview/skins/default/xui/en/panel_twitter_photo.xml
index 058c65402a..540bc0f807 100644
--- a/indra/newview/skins/default/xui/en/panel_twitter_photo.xml
+++ b/indra/newview/skins/default/xui/en/panel_twitter_photo.xml
@@ -130,7 +130,7 @@
top="0"
left="9"
height="23"
- label="Post"
+ label="Tweet"
name="post_photo_btn"
width="100">
<button.commit_callback