mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-06-06 21:58:57 -04:00
Improved GxsGroupDialog for Show / Edit of Groups.
- Added Show/Edit Menu Options for all services. - Fixed up BUTTONBOX_OK bugs. - Tested name changes for all services. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7102 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
d9e483c48a
commit
d65bdca1ec
15 changed files with 408 additions and 109 deletions
|
@ -244,18 +244,16 @@ void GxsChannelDialog::channelListCustomPopupMenu( QPoint /*point*/ )
|
|||
contextMnu.addAction( subscribechannelAct );
|
||||
}
|
||||
|
||||
QAction *channeldetailsAct = new QAction(QIcon(":/images/info16.png"), tr( "Show Channel Details" ), &contextMnu);
|
||||
connect( channeldetailsAct , SIGNAL( triggered() ), this, SLOT( showChannelDetails() ) );
|
||||
contextMnu.addAction( channeldetailsAct );
|
||||
|
||||
if (isAdmin)
|
||||
{
|
||||
QAction *editChannelDetailAct = new QAction(QIcon(":/images/edit_16.png"), tr("Edit Channel Details"), &contextMnu);
|
||||
connect( editChannelDetailAct, SIGNAL( triggered() ), this, SLOT( editChannelDetail() ) );
|
||||
contextMnu.addAction( editChannelDetailAct);
|
||||
}
|
||||
else
|
||||
{
|
||||
QAction *channeldetailsAct = new QAction(QIcon(":/images/info16.png"), tr( "Show Channel Details" ), &contextMnu);
|
||||
connect( channeldetailsAct , SIGNAL( triggered() ), this, SLOT( showChannelDetails() ) );
|
||||
contextMnu.addAction( channeldetailsAct );
|
||||
}
|
||||
|
||||
if (isPublisher)
|
||||
{
|
||||
|
@ -372,10 +370,12 @@ void GxsChannelDialog::openChat(std::string /*peerId*/)
|
|||
|
||||
void GxsChannelDialog::editChannelDetail()
|
||||
{
|
||||
#if 0
|
||||
EditChanDetails editUi(this, mChannelId);
|
||||
editUi.exec();
|
||||
#endif
|
||||
if (mChannelId.empty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
GxsChannelGroupDialog cf(mChannelQueue, rsGxsChannels->getTokenService(), GxsGroupDialog::MODE_EDIT, mChannelId, this);
|
||||
cf.exec ();
|
||||
}
|
||||
|
||||
void GxsChannelDialog::shareKey()
|
||||
|
@ -799,22 +799,15 @@ void GxsChannelDialog::subscribeChannel()
|
|||
|
||||
void GxsChannelDialog::showChannelDetails()
|
||||
{
|
||||
#if 0
|
||||
if (mChannelId.empty()) {
|
||||
return;
|
||||
}
|
||||
if (mChannelId.empty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!rsChannels) {
|
||||
return;
|
||||
}
|
||||
|
||||
ChannelDetails channelui (this);
|
||||
|
||||
channelui.showDetails(mChannelId);
|
||||
channelui.exec();
|
||||
#endif
|
||||
GxsChannelGroupDialog cf(mChannelQueue, rsGxsChannels->getTokenService(), GxsGroupDialog::MODE_SHOW, mChannelId, this);
|
||||
cf.exec ();
|
||||
}
|
||||
|
||||
|
||||
void GxsChannelDialog::setAllAsReadClicked()
|
||||
{
|
||||
#if 0
|
||||
|
|
|
@ -62,7 +62,7 @@ GxsChannelGroupDialog::GxsChannelGroupDialog(TokenQueue *tokenQueue, QWidget *pa
|
|||
{
|
||||
}
|
||||
|
||||
GxsChannelGroupDialog::GxsChannelGroupDialog(TokenQueue *tokenExternalQueue, RsTokenService *tokenService, Mode mode, RsGxsGroupId groupId, uint32_t enableFlags, uint32_t defaultFlags, QWidget *parent)
|
||||
GxsChannelGroupDialog::GxsChannelGroupDialog(TokenQueue *tokenExternalQueue, RsTokenService *tokenService, Mode mode, RsGxsGroupId groupId, QWidget *parent)
|
||||
:GxsGroupDialog(tokenExternalQueue, tokenService, mode, groupId, ChannelEditEnabledFlags, ChannelEditDefaultsFlags, parent)
|
||||
{
|
||||
}
|
||||
|
@ -73,18 +73,19 @@ void GxsChannelGroupDialog::initUi()
|
|||
{
|
||||
case MODE_CREATE:
|
||||
setUiText(UITYPE_SERVICE_HEADER, tr("Create New Channel"));
|
||||
setUiText(UITYPE_BUTTONBOX_OK, tr("Create Channel"));
|
||||
break;
|
||||
case MODE_SHOW:
|
||||
setUiText(UITYPE_SERVICE_HEADER, tr("Channel"));
|
||||
break;
|
||||
case MODE_EDIT:
|
||||
setUiText(UITYPE_SERVICE_HEADER, tr("Edit Channel"));
|
||||
setUiText(UITYPE_BUTTONBOX_OK, tr("Update Channel"));
|
||||
break;
|
||||
}
|
||||
|
||||
setUiText(UITYPE_KEY_SHARE_CHECKBOX, tr("Add Channel Admins"));
|
||||
setUiText(UITYPE_CONTACTS_DOCK, tr("Select Channel Admins"));
|
||||
setUiText(UITYPE_BUTTONBOX_OK, tr("Create Channel"));
|
||||
}
|
||||
|
||||
QPixmap GxsChannelGroupDialog::serviceImage()
|
||||
|
@ -104,12 +105,46 @@ bool GxsChannelGroupDialog::service_CreateGroup(uint32_t &token, const RsGroupMe
|
|||
}
|
||||
|
||||
|
||||
|
||||
bool GxsChannelGroupDialog::service_EditGroup(uint32_t &token, RsGxsGroupUpdateMeta &updateMeta)
|
||||
bool GxsChannelGroupDialog::service_EditGroup(uint32_t &token,
|
||||
RsGxsGroupUpdateMeta &updateMeta,
|
||||
RsGroupMetaData &editedMeta)
|
||||
{
|
||||
std::cerr << "GxsChannelGroupDialog::service_EditGroup() UNFINISHED";
|
||||
RsGxsChannelGroup grp;
|
||||
grp.mMeta = editedMeta;
|
||||
grp.mDescription = std::string(ui.groupDesc->toPlainText().toUtf8());
|
||||
|
||||
std::cerr << "GxsChannelGroupDialog::service_EditGroup() submitting changes";
|
||||
std::cerr << std::endl;
|
||||
|
||||
return false;
|
||||
rsGxsChannels->updateGroup(token, updateMeta, grp);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool GxsChannelGroupDialog::service_loadGroup(uint32_t token, Mode mode, RsGroupMetaData& groupMetaData)
|
||||
{
|
||||
std::cerr << "GxsChannelGroupDialog::service_loadGroup(" << token << ")";
|
||||
std::cerr << std::endl;
|
||||
|
||||
std::vector<RsGxsChannelGroup> groups;
|
||||
if (!rsGxsChannels->getGroupData(token, groups))
|
||||
{
|
||||
std::cerr << "GxsChannelGroupDialog::service_loadGroup() Error getting GroupData";
|
||||
std::cerr << std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (groups.size() != 1)
|
||||
{
|
||||
std::cerr << "GxsChannelGroupDialog::service_loadGroup() Error Group.size() != 1";
|
||||
std::cerr << std::endl;
|
||||
return false;
|
||||
}
|
||||
|
||||
std::cerr << "GxsChannelsGroupDialog::service_loadGroup() Unfinished Loading";
|
||||
std::cerr << std::endl;
|
||||
|
||||
groupMetaData = groups[0].mMeta;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -31,13 +31,16 @@ class GxsChannelGroupDialog : public GxsGroupDialog
|
|||
|
||||
public:
|
||||
GxsChannelGroupDialog(TokenQueue *tokenQueue, QWidget *parent);
|
||||
GxsChannelGroupDialog(TokenQueue *tokenExternalQueue, RsTokenService *tokenService, Mode mode, RsGxsGroupId groupId, uint32_t enableFlags, uint32_t defaultFlags, QWidget *parent = NULL);
|
||||
GxsChannelGroupDialog(TokenQueue *tokenExternalQueue, RsTokenService *tokenService, Mode mode, RsGxsGroupId groupId, QWidget *parent = NULL);
|
||||
|
||||
protected:
|
||||
virtual void initUi();
|
||||
virtual QPixmap serviceImage();
|
||||
virtual bool service_CreateGroup(uint32_t &token, const RsGroupMetaData &meta);
|
||||
virtual bool service_EditGroup(uint32_t &token, RsGxsGroupUpdateMeta &updateMeta);
|
||||
virtual bool service_loadGroup(uint32_t token, Mode mode, RsGroupMetaData& groupMetaData);
|
||||
virtual bool service_EditGroup(uint32_t &token,
|
||||
RsGxsGroupUpdateMeta &updateMeta,
|
||||
RsGroupMetaData &editedMeta);
|
||||
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue