Added Generalised GxsGroupDialog

- First pass, still much to do.
	- Handles Create / Edit and View Group Info.
	- Created ForumV2GroupDialog / WikiGroupDialog / PostedGroupDialog examples overloading it.

Various Improvements to PostedListDialog.
	- Handle Hot/New/Top options.
	- Send Period back to libretroshare too.
	- Named buttons in GUI.

Added GxsGroupDialog to Wiki / Posted & ForumsV2.

Discovered nasty bug in p3Posted. If there are no posts, its hangs at a Mutex, 
but I've no idea why. (It happens prior to this code). TODO.




git-svn-id: http://svn.code.sf.net/p/retroshare/code/branches/v0.5-gxs-b1@5360 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
drbob 2012-07-30 23:55:21 +00:00
parent 363374947f
commit d27eea84da
16 changed files with 2117 additions and 49 deletions

View file

@ -28,6 +28,8 @@
#include "gui/WikiPoos/WikiAddDialog.h"
#include "gui/WikiPoos/WikiEditDialog.h"
#include "gui/gxs/WikiGroupDialog.h"
#include <retroshare/rswiki.h>
#include <iostream>
@ -131,6 +133,7 @@ void WikiDialog::OpenOrShowAddPageDialog()
void WikiDialog::OpenOrShowAddGroupDialog()
{
#if 0
if (mAddGroupDialog)
{
mAddGroupDialog->show();
@ -140,8 +143,58 @@ void WikiDialog::OpenOrShowAddGroupDialog()
mAddGroupDialog = new WikiAddDialog(NULL);
mAddGroupDialog->show();
}
#endif
newGroup();
}
/*********************** **** **** **** ***********************/
/** New / Edit Groups ********************************/
/*********************** **** **** **** ***********************/
void WikiDialog::newGroup()
{
WikiGroupDialog cf (this);
cf.newGroup();
cf.exec ();
}
void WikiDialog::showGroupDetails()
{
std::string groupId = getSelectedGroup();
if (groupId == "")
{
std::cerr << "WikiDialog::showGroupDetails() No Group selected";
std::cerr << std::endl;
return;
}
WikiGroupDialog cf (this);
cf.existingGroup(groupId, GXS_GROUP_DIALOG_SHOW_MODE);
cf.exec ();
}
void WikiDialog::editGroupDetails()
{
std::string groupId = getSelectedGroup();
if (groupId == "")
{
std::cerr << "WikiDialog::editGroupDetails() No Group selected";
std::cerr << std::endl;
return;
}
WikiGroupDialog cf (this);
cf.existingGroup(groupId, GXS_GROUP_DIALOG_EDIT_MODE);
cf.exec ();
}
void WikiDialog::OpenOrShowEditDialog()
{