mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-02-26 09:41:29 -05:00
Added new Gui Design changes from Pheonom, Added new ListWidget for Page selection, via settings can switch to use List or Toolbar AddFrameListeInsteadOfToolBar_v0.6_7357.patch
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@7360 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
31962ea0c5
commit
bcff888eb7
@ -47,33 +47,33 @@
|
|||||||
#define IMAGE_AUTOSUBSCRIBE ":images/accepted16.png"
|
#define IMAGE_AUTOSUBSCRIBE ":images/accepted16.png"
|
||||||
|
|
||||||
ChatLobbyWidget::ChatLobbyWidget(QWidget *parent, Qt::WindowFlags flags)
|
ChatLobbyWidget::ChatLobbyWidget(QWidget *parent, Qt::WindowFlags flags)
|
||||||
: RsAutoUpdatePage(5000, parent, flags)
|
: RsAutoUpdatePage(5000, parent, flags)
|
||||||
{
|
{
|
||||||
setupUi(this);
|
ui.setupUi(this);
|
||||||
|
|
||||||
m_bProcessSettings = false;
|
m_bProcessSettings = false;
|
||||||
|
|
||||||
QObject::connect(NotifyQt::getInstance(), SIGNAL(lobbyListChanged()), SLOT(lobbyChanged()));
|
QObject::connect( NotifyQt::getInstance(), SIGNAL(lobbyListChanged()), SLOT(lobbyChanged()));
|
||||||
QObject::connect(NotifyQt::getInstance(), SIGNAL(chatLobbyEvent(qulonglong,int,const QString&,const QString&)), this, SLOT(displayChatLobbyEvent(qulonglong,int,const QString&,const QString&)));
|
QObject::connect( NotifyQt::getInstance(), SIGNAL(chatLobbyEvent(qulonglong,int,const QString&,const QString&)), this, SLOT(displayChatLobbyEvent(qulonglong,int,const QString&,const QString&)));
|
||||||
QObject::connect(NotifyQt::getInstance(), SIGNAL(chatLobbyInviteReceived()), this, SLOT(readChatLobbyInvites()));
|
QObject::connect( NotifyQt::getInstance(), SIGNAL(chatLobbyInviteReceived()), this, SLOT(readChatLobbyInvites()));
|
||||||
|
|
||||||
QObject::connect(lobbyTreeWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(lobbyTreeWidgetCustomPopupMenu(QPoint)));
|
QObject::connect( ui.lobbyTreeWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(lobbyTreeWidgetCustomPopupMenu(QPoint)));
|
||||||
QObject::connect(lobbyTreeWidget, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(itemDoubleClicked(QTreeWidgetItem*,int)));
|
QObject::connect( ui.lobbyTreeWidget, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(itemDoubleClicked(QTreeWidgetItem*,int)));
|
||||||
QObject::connect(lobbyTreeWidget, SIGNAL(itemSelectionChanged()), this, SLOT(updateCurrentLobby()));
|
QObject::connect( ui.lobbyTreeWidget, SIGNAL(itemSelectionChanged()), this, SLOT(updateCurrentLobby()));
|
||||||
|
|
||||||
QObject::connect( filterLineEdit, SIGNAL(textChanged(const QString &)), this, SLOT(filterItems(QString)));
|
QObject::connect( ui.filterLineEdit, SIGNAL(textChanged(const QString &)), this, SLOT(filterItems(QString)));
|
||||||
QObject::connect( filterLineEdit, SIGNAL(filterChanged(int)), this, SLOT(filterColumnChanged(int)));
|
QObject::connect( ui.filterLineEdit, SIGNAL(filterChanged(int)), this, SLOT(filterColumnChanged(int)));
|
||||||
QObject::connect( createlobbytoolButton, SIGNAL(clicked()), this, SLOT(createChatLobby()));
|
QObject::connect( ui.createlobbytoolButton, SIGNAL(clicked()), this, SLOT(createChatLobby()));
|
||||||
|
|
||||||
compareRole = new RSTreeWidgetItemCompareRole;
|
compareRole = new RSTreeWidgetItemCompareRole;
|
||||||
compareRole->setRole(COLUMN_NAME, ROLE_SORT);
|
compareRole->setRole(COLUMN_NAME, ROLE_SORT);
|
||||||
|
|
||||||
lobbyTreeWidget->setColumnCount(COLUMN_COUNT);
|
ui.lobbyTreeWidget->setColumnCount(COLUMN_COUNT);
|
||||||
lobbyTreeWidget->sortItems(COLUMN_NAME, Qt::AscendingOrder);
|
ui.lobbyTreeWidget->sortItems(COLUMN_NAME, Qt::AscendingOrder);
|
||||||
|
|
||||||
lobbyTreeWidget->setContextMenuPolicy(Qt::CustomContextMenu) ;
|
ui.lobbyTreeWidget->setContextMenuPolicy(Qt::CustomContextMenu) ;
|
||||||
|
|
||||||
QTreeWidgetItem *headerItem = lobbyTreeWidget->headerItem();
|
QTreeWidgetItem *headerItem = ui.lobbyTreeWidget->headerItem();
|
||||||
headerItem->setText(COLUMN_NAME, tr("Name"));
|
headerItem->setText(COLUMN_NAME, tr("Name"));
|
||||||
headerItem->setText(COLUMN_USER_COUNT, tr("Count"));
|
headerItem->setText(COLUMN_USER_COUNT, tr("Count"));
|
||||||
headerItem->setText(COLUMN_TOPIC, tr("Topic"));
|
headerItem->setText(COLUMN_TOPIC, tr("Topic"));
|
||||||
@ -81,56 +81,56 @@ ChatLobbyWidget::ChatLobbyWidget(QWidget *parent, Qt::WindowFlags flags)
|
|||||||
headerItem->setTextAlignment(COLUMN_NAME, Qt::AlignHCenter | Qt::AlignVCenter);
|
headerItem->setTextAlignment(COLUMN_NAME, Qt::AlignHCenter | Qt::AlignVCenter);
|
||||||
headerItem->setTextAlignment(COLUMN_TOPIC, Qt::AlignHCenter | Qt::AlignVCenter);
|
headerItem->setTextAlignment(COLUMN_TOPIC, Qt::AlignHCenter | Qt::AlignVCenter);
|
||||||
headerItem->setTextAlignment(COLUMN_USER_COUNT, Qt::AlignHCenter | Qt::AlignVCenter);
|
headerItem->setTextAlignment(COLUMN_USER_COUNT, Qt::AlignHCenter | Qt::AlignVCenter);
|
||||||
headerItem->setTextAlignment(COLUMN_SUBSCRIBED, Qt::AlignHCenter | Qt::AlignVCenter);
|
headerItem->setTextAlignment(COLUMN_SUBSCRIBED, Qt::AlignHCenter | Qt::AlignVCenter);
|
||||||
|
|
||||||
QHeaderView *header = lobbyTreeWidget->header();
|
QHeaderView *header = ui.lobbyTreeWidget->header();
|
||||||
QHeaderView_setSectionResizeMode(header, COLUMN_NAME, QHeaderView::Interactive);
|
QHeaderView_setSectionResizeMode(header, COLUMN_NAME, QHeaderView::Interactive);
|
||||||
QHeaderView_setSectionResizeMode(header, COLUMN_USER_COUNT, QHeaderView::Interactive);
|
QHeaderView_setSectionResizeMode(header, COLUMN_USER_COUNT, QHeaderView::Interactive);
|
||||||
QHeaderView_setSectionResizeMode(header, COLUMN_TOPIC, QHeaderView::Interactive);
|
QHeaderView_setSectionResizeMode(header, COLUMN_TOPIC, QHeaderView::Interactive);
|
||||||
QHeaderView_setSectionResizeMode(header, COLUMN_SUBSCRIBED, QHeaderView::Interactive);
|
QHeaderView_setSectionResizeMode(header, COLUMN_SUBSCRIBED, QHeaderView::Interactive);
|
||||||
|
|
||||||
privateSubLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
privateSubLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
||||||
privateSubLobbyItem->setText(COLUMN_NAME, tr("Private Subscribed Lobbies"));
|
privateSubLobbyItem->setText(COLUMN_NAME, tr("Private Subscribed Lobbies"));
|
||||||
privateSubLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "1");
|
privateSubLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "1");
|
||||||
// privateLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PRIVATE));
|
// privateLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PRIVATE));
|
||||||
privateSubLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PRIVATE);
|
privateSubLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PRIVATE);
|
||||||
lobbyTreeWidget->insertTopLevelItem(0, privateSubLobbyItem);
|
ui.lobbyTreeWidget->insertTopLevelItem(0, privateSubLobbyItem);
|
||||||
|
|
||||||
publicSubLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
publicSubLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
||||||
publicSubLobbyItem->setText(COLUMN_NAME, tr("Public Subscribed Lobbies"));
|
publicSubLobbyItem->setText(COLUMN_NAME, tr("Public Subscribed Lobbies"));
|
||||||
publicSubLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "2");
|
publicSubLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "2");
|
||||||
// publicLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PUBLIC));
|
// publicLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PUBLIC));
|
||||||
publicSubLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PUBLIC);
|
publicSubLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PUBLIC);
|
||||||
lobbyTreeWidget->insertTopLevelItem(1, publicSubLobbyItem);
|
ui.lobbyTreeWidget->insertTopLevelItem(1, publicSubLobbyItem);
|
||||||
|
|
||||||
privateLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
privateLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
||||||
privateLobbyItem->setText(COLUMN_NAME, tr("Private Lobbies"));
|
privateLobbyItem->setText(COLUMN_NAME, tr("Private Lobbies"));
|
||||||
privateLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "3");
|
privateLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "3");
|
||||||
// privateLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PRIVATE));
|
// privateLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PRIVATE));
|
||||||
privateLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PRIVATE);
|
privateLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PRIVATE);
|
||||||
lobbyTreeWidget->insertTopLevelItem(2, privateLobbyItem);
|
ui.lobbyTreeWidget->insertTopLevelItem(2, privateLobbyItem);
|
||||||
|
|
||||||
publicLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
publicLobbyItem = new RSTreeWidgetItem(compareRole, TYPE_FOLDER);
|
||||||
publicLobbyItem->setText(COLUMN_NAME, tr("Public Lobbies"));
|
publicLobbyItem->setText(COLUMN_NAME, tr("Public Lobbies"));
|
||||||
publicLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "4");
|
publicLobbyItem->setData(COLUMN_NAME, ROLE_SORT, "4");
|
||||||
// publicLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PUBLIC));
|
// publicLobbyItem->setIcon(COLUMN_NAME, QIcon(IMAGE_PUBLIC));
|
||||||
publicLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PUBLIC);
|
publicLobbyItem->setData(COLUMN_DATA, ROLE_PRIVACYLEVEL, RS_CHAT_LOBBY_PRIVACY_LEVEL_PUBLIC);
|
||||||
lobbyTreeWidget->insertTopLevelItem(3, publicLobbyItem);
|
ui.lobbyTreeWidget->insertTopLevelItem(3, publicLobbyItem);
|
||||||
|
|
||||||
lobbyTreeWidget->expandAll();
|
ui.lobbyTreeWidget->expandAll();
|
||||||
lobbyTreeWidget->setColumnHidden(COLUMN_NAME,false) ;
|
ui.lobbyTreeWidget->setColumnHidden(COLUMN_NAME,false) ;
|
||||||
lobbyTreeWidget->setColumnHidden(COLUMN_USER_COUNT,true) ;
|
ui.lobbyTreeWidget->setColumnHidden(COLUMN_USER_COUNT,true) ;
|
||||||
lobbyTreeWidget->setColumnHidden(COLUMN_TOPIC,true) ;
|
ui.lobbyTreeWidget->setColumnHidden(COLUMN_TOPIC,true) ;
|
||||||
lobbyTreeWidget->setColumnHidden(COLUMN_SUBSCRIBED,true) ;
|
ui.lobbyTreeWidget->setColumnHidden(COLUMN_SUBSCRIBED,true) ;
|
||||||
lobbyTreeWidget->setSortingEnabled(true) ;
|
ui.lobbyTreeWidget->setSortingEnabled(true) ;
|
||||||
|
|
||||||
lobbyTreeWidget->adjustSize();
|
ui.lobbyTreeWidget->adjustSize();
|
||||||
lobbyTreeWidget->setColumnWidth(COLUMN_NAME,100);
|
ui.lobbyTreeWidget->setColumnWidth(COLUMN_NAME,100);
|
||||||
lobbyTreeWidget->setColumnWidth(COLUMN_USER_COUNT, 50);
|
ui.lobbyTreeWidget->setColumnWidth(COLUMN_USER_COUNT, 50);
|
||||||
lobbyTreeWidget->setColumnWidth(COLUMN_TOPIC, 50);
|
ui.lobbyTreeWidget->setColumnWidth(COLUMN_TOPIC, 50);
|
||||||
|
|
||||||
/** Setup the actions for the header context menu */
|
/** Setup the actions for the header context menu */
|
||||||
showUserCountAct= new QAction(headerItem->text(COLUMN_USER_COUNT),this);
|
showUserCountAct= new QAction(headerItem->text(COLUMN_USER_COUNT),this);
|
||||||
showUserCountAct->setCheckable(true); showUserCountAct->setToolTip(tr("Show ")+showUserCountAct->text()+tr(" Column"));
|
showUserCountAct->setCheckable(true); showUserCountAct->setToolTip(tr("Show ")+showUserCountAct->text()+tr(" Column"));
|
||||||
connect(showUserCountAct,SIGNAL(triggered(bool)),this,SLOT(setShowUserCountColumn(bool))) ;
|
connect(showUserCountAct,SIGNAL(triggered(bool)),this,SLOT(setShowUserCountColumn(bool))) ;
|
||||||
showTopicAct= new QAction(headerItem->text(COLUMN_TOPIC),this);
|
showTopicAct= new QAction(headerItem->text(COLUMN_TOPIC),this);
|
||||||
@ -143,37 +143,37 @@ ChatLobbyWidget::ChatLobbyWidget(QWidget *parent, Qt::WindowFlags flags)
|
|||||||
// Set initial size of the splitter
|
// Set initial size of the splitter
|
||||||
QList<int> sizes;
|
QList<int> sizes;
|
||||||
sizes << 200 << width(); // Qt calculates the right sizes
|
sizes << 200 << width(); // Qt calculates the right sizes
|
||||||
splitter->setSizes(sizes);
|
ui.splitter->setSizes(sizes);
|
||||||
|
|
||||||
lobbyChanged();
|
lobbyChanged();
|
||||||
showBlankPage(0) ;
|
showBlankPage(0) ;
|
||||||
|
|
||||||
/* add filter actions */
|
/* add filter actions */
|
||||||
filterLineEdit->addFilter(QIcon(), tr("Name"), COLUMN_NAME, tr("Search Name"));
|
ui.filterLineEdit->addFilter(QIcon(), tr("Name"), COLUMN_NAME, tr("Search Name"));
|
||||||
filterLineEdit->setCurrentFilter(COLUMN_NAME);
|
ui.filterLineEdit->setCurrentFilter(COLUMN_NAME);
|
||||||
|
|
||||||
// load settings
|
// load settings
|
||||||
processSettings(true);
|
processSettings(true);
|
||||||
|
|
||||||
QString help_str = tr(
|
QString help_str = tr("\
|
||||||
" <h1><img width=\"32\" src=\":/images/64px_help.png\"> Chat Lobbies</h1> \
|
<h1><img width=\"32\" src=\":/images/64px_help.png\"> Chat Lobbies</h1> \
|
||||||
<p>Chat lobbies are distributed chat rooms, and work pretty much like IRC. \
|
<p>Chat lobbies are distributed chat rooms, and work pretty much like IRC. \
|
||||||
They allow you to talk anonymously with tons of people without the need to make friends.</p> \
|
They allow you to talk anonymously with tons of people without the need to make friends.</p> \
|
||||||
<p>A chat lobby can be public (your friends see it) or private (your friends can't see it, unless you \
|
<p>A chat lobby can be public (your friends see it) or private (your friends can't see it, unless you \
|
||||||
invite them with <img src=\":/images/add_24x24.png\" width=12/>). Once you have been invited to a private lobby, you will be able to see it when your friends \
|
invite them with <img src=\":/images/add_24x24.png\" width=12/>). \
|
||||||
are using it.</p> \
|
Once you have been invited to a private lobby, you will be able to see it when your friends \
|
||||||
<p>The list at left shows \
|
are using it.</p> \
|
||||||
chat lobbies your friends are participating in. You can either \
|
<p>The list at left shows \
|
||||||
|
chat lobbies your friends are participating in. You can either \
|
||||||
<ul> \
|
<ul> \
|
||||||
<li>Right click to create a new chat lobby</li> \
|
<li>Right click to create a new chat lobby</li> \
|
||||||
<li>Double click a chat lobby to enter, chat, and show it to your friends</li> \
|
<li>Double click a chat lobby to enter, chat, and show it to your friends</li> \
|
||||||
</ul> \
|
</ul> \
|
||||||
Note: For the chat lobbies to work properly, your computer needs be on time. So check your system clock!\
|
Note: For the chat lobbies to work properly, your computer needs be on time. So check your system clock!\
|
||||||
</p> \
|
</p> \
|
||||||
") ;
|
"
|
||||||
|
) ;
|
||||||
|
registerHelpButton(ui.helpButton,help_str) ;
|
||||||
registerHelpButton(helpButton,help_str) ;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ChatLobbyWidget::~ChatLobbyWidget()
|
ChatLobbyWidget::~ChatLobbyWidget()
|
||||||
@ -189,7 +189,7 @@ ChatLobbyWidget::~ChatLobbyWidget()
|
|||||||
void ChatLobbyWidget::lobbyTreeWidgetCustomPopupMenu(QPoint)
|
void ChatLobbyWidget::lobbyTreeWidgetCustomPopupMenu(QPoint)
|
||||||
{
|
{
|
||||||
std::cerr << "Creating customPopupMennu" << std::endl;
|
std::cerr << "Creating customPopupMennu" << std::endl;
|
||||||
QTreeWidgetItem *item = lobbyTreeWidget->currentItem();
|
QTreeWidgetItem *item = ui.lobbyTreeWidget->currentItem();
|
||||||
|
|
||||||
QMenu contextMnu(this);
|
QMenu contextMnu(this);
|
||||||
|
|
||||||
@ -211,14 +211,14 @@ void ChatLobbyWidget::lobbyTreeWidgetCustomPopupMenu(QPoint)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
contextMnu.addSeparator();//-------------------------------------------------------------------
|
contextMnu.addSeparator();//-------------------------------------------------------------------
|
||||||
|
|
||||||
showUserCountAct->setChecked(!lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT));
|
showUserCountAct->setChecked(!ui.lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT));
|
||||||
showTopicAct->setChecked(!lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC));
|
showTopicAct->setChecked(!ui.lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC));
|
||||||
showSubscribeAct->setChecked(!lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED));
|
showSubscribeAct->setChecked(!ui.lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED));
|
||||||
|
|
||||||
QMenu *menu = contextMnu.addMenu(tr("Columns"));
|
QMenu *menu = contextMnu.addMenu(tr("Columns"));
|
||||||
menu->addAction(showUserCountAct);
|
menu->addAction(showUserCountAct);
|
||||||
menu->addAction(showTopicAct);
|
menu->addAction(showTopicAct);
|
||||||
menu->addAction(showSubscribeAct);
|
menu->addAction(showSubscribeAct);
|
||||||
|
|
||||||
@ -274,7 +274,7 @@ void ChatLobbyWidget::addChatPage(ChatLobbyDialog *d)
|
|||||||
|
|
||||||
if(_lobby_infos.find(d->id()) == _lobby_infos.end())
|
if(_lobby_infos.find(d->id()) == _lobby_infos.end())
|
||||||
{
|
{
|
||||||
stackedWidget->addWidget(d) ;
|
ui.stackedWidget->addWidget(d) ;
|
||||||
|
|
||||||
connect(d,SIGNAL(lobbyLeave(ChatLobbyId)),this,SLOT(unsubscribeChatLobby(ChatLobbyId))) ;
|
connect(d,SIGNAL(lobbyLeave(ChatLobbyId)),this,SLOT(unsubscribeChatLobby(ChatLobbyId))) ;
|
||||||
connect(d,SIGNAL(typingEventReceived(ChatLobbyId)),this,SLOT(updateTypingStatus(ChatLobbyId))) ;
|
connect(d,SIGNAL(typingEventReceived(ChatLobbyId)),this,SLOT(updateTypingStatus(ChatLobbyId))) ;
|
||||||
@ -300,12 +300,12 @@ void ChatLobbyWidget::addChatPage(ChatLobbyDialog *d)
|
|||||||
|
|
||||||
void ChatLobbyWidget::setCurrentChatPage(ChatLobbyDialog *d)
|
void ChatLobbyWidget::setCurrentChatPage(ChatLobbyDialog *d)
|
||||||
{
|
{
|
||||||
stackedWidget->setCurrentWidget(d) ;
|
ui.stackedWidget->setCurrentWidget(d) ;
|
||||||
|
|
||||||
if (d) {
|
if (d) {
|
||||||
QTreeWidgetItem *item = getTreeWidgetItem(d->id());
|
QTreeWidgetItem *item = getTreeWidgetItem(d->id());
|
||||||
if (item) {
|
if (item) {
|
||||||
lobbyTreeWidget->setCurrentItem(item);
|
ui.lobbyTreeWidget->setCurrentItem(item);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -465,7 +465,7 @@ void ChatLobbyWidget::updateDisplay()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!icon.isNull()) {
|
if (!icon.isNull()) {
|
||||||
item->setIcon(COLUMN_NAME, subscribed ? icon : icon.pixmap(lobbyTreeWidget->iconSize(), QIcon::Disabled));
|
item->setIcon(COLUMN_NAME, subscribed ? icon : icon.pixmap(ui.lobbyTreeWidget->iconSize(), QIcon::Disabled));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool autoSubscribe = rsMsgs->getLobbyAutoSubscribe(lobby.lobby_id);
|
bool autoSubscribe = rsMsgs->getLobbyAutoSubscribe(lobby.lobby_id);
|
||||||
@ -474,7 +474,7 @@ void ChatLobbyWidget::updateDisplay()
|
|||||||
{
|
{
|
||||||
if(_lobby_infos.find(lobby.lobby_id) == _lobby_infos.end())
|
if(_lobby_infos.find(lobby.lobby_id) == _lobby_infos.end())
|
||||||
{
|
{
|
||||||
if (item == lobbyTreeWidget->currentItem())
|
if (item == ui.lobbyTreeWidget->currentItem())
|
||||||
{
|
{
|
||||||
ChatDialog::chatFriend(vpid) ;
|
ChatDialog::chatFriend(vpid) ;
|
||||||
}else{
|
}else{
|
||||||
@ -483,10 +483,10 @@ void ChatLobbyWidget::updateDisplay()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
updateItem(lobbyTreeWidget, item, lobby.lobby_id, lobby.lobby_name,lobby.lobby_topic, lobby.total_number_of_peers, subscribed, autoSubscribe);
|
updateItem(ui.lobbyTreeWidget, item, lobby.lobby_id, lobby.lobby_name,lobby.lobby_topic, lobby.total_number_of_peers, subscribed, autoSubscribe);
|
||||||
}
|
}
|
||||||
|
|
||||||
// time_t now = time(NULL) ;
|
// time_t now = time(NULL) ;
|
||||||
|
|
||||||
// Now add participating lobbies.
|
// Now add participating lobbies.
|
||||||
//
|
//
|
||||||
@ -532,12 +532,12 @@ void ChatLobbyWidget::updateDisplay()
|
|||||||
item->setIcon(COLUMN_NAME, icon);
|
item->setIcon(COLUMN_NAME, icon);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool autoSubscribe = rsMsgs->getLobbyAutoSubscribe(lobby.lobby_id);
|
bool autoSubscribe = rsMsgs->getLobbyAutoSubscribe(lobby.lobby_id);
|
||||||
|
|
||||||
updateItem(lobbyTreeWidget, item, lobby.lobby_id, lobby.lobby_name,lobby.lobby_topic, lobby.nick_names.size(), true, autoSubscribe);
|
updateItem(ui.lobbyTreeWidget, item, lobby.lobby_id, lobby.lobby_name,lobby.lobby_topic, lobby.nick_names.size(), true, autoSubscribe);
|
||||||
}
|
}
|
||||||
publicSubLobbyItem->setHidden(publicSubLobbyItem->childCount()==0);
|
publicSubLobbyItem->setHidden(publicSubLobbyItem->childCount()==0);
|
||||||
privateSubLobbyItem->setHidden(privateSubLobbyItem->childCount()==0);
|
privateSubLobbyItem->setHidden(privateSubLobbyItem->childCount()==0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::createChatLobby()
|
void ChatLobbyWidget::createChatLobby()
|
||||||
@ -564,7 +564,7 @@ void ChatLobbyWidget::showLobby(QTreeWidgetItem *item)
|
|||||||
if(_lobby_infos.find(id) == _lobby_infos.end())
|
if(_lobby_infos.find(id) == _lobby_infos.end())
|
||||||
showBlankPage(id) ;
|
showBlankPage(id) ;
|
||||||
else
|
else
|
||||||
stackedWidget->setCurrentWidget(_lobby_infos[id].dialog) ;
|
ui.stackedWidget->setCurrentWidget(_lobby_infos[id].dialog) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void subscribeLobby(QTreeWidgetItem *item)
|
static void subscribeLobby(QTreeWidgetItem *item)
|
||||||
@ -597,7 +597,7 @@ void ChatLobbyWidget::autoSubscribeLobby(QTreeWidgetItem *item)
|
|||||||
void ChatLobbyWidget::showBlankPage(ChatLobbyId id)
|
void ChatLobbyWidget::showBlankPage(ChatLobbyId id)
|
||||||
{
|
{
|
||||||
// show the default blank page.
|
// show the default blank page.
|
||||||
stackedWidget->setCurrentWidget(_lobby_blank_page) ;
|
ui.stackedWidget->setCurrentWidget(ui._lobby_blank_page) ;
|
||||||
|
|
||||||
// Update information
|
// Update information
|
||||||
std::vector<VisibleChatLobbyRecord> lobbies;
|
std::vector<VisibleChatLobbyRecord> lobbies;
|
||||||
@ -606,34 +606,34 @@ void ChatLobbyWidget::showBlankPage(ChatLobbyId id)
|
|||||||
for(std::vector<VisibleChatLobbyRecord>::const_iterator it(lobbies.begin());it!=lobbies.end();++it)
|
for(std::vector<VisibleChatLobbyRecord>::const_iterator it(lobbies.begin());it!=lobbies.end();++it)
|
||||||
if( (*it).lobby_id == id)
|
if( (*it).lobby_id == id)
|
||||||
{
|
{
|
||||||
lobbyname_lineEdit->setText( RsHtml::plainText(it->lobby_name) );
|
ui.lobbyname_lineEdit->setText( RsHtml::plainText(it->lobby_name) );
|
||||||
lobbyid_lineEdit->setText( QString::number((*it).lobby_id,16) );
|
ui.lobbyid_lineEdit->setText( QString::number((*it).lobby_id,16) );
|
||||||
lobbytopic_lineEdit->setText( RsHtml::plainText(it->lobby_topic) );
|
ui.lobbytopic_lineEdit->setText( RsHtml::plainText(it->lobby_topic) );
|
||||||
lobbytype_lineEdit->setText( (( (*it).lobby_privacy_level == RS_CHAT_LOBBY_PRIVACY_LEVEL_PRIVATE)?tr("Private"):tr("Public")) );
|
ui.lobbytype_lineEdit->setText( (( (*it).lobby_privacy_level == RS_CHAT_LOBBY_PRIVACY_LEVEL_PRIVATE)?tr("Private"):tr("Public")) );
|
||||||
lobbypeers_lineEdit->setText( QString::number((*it).total_number_of_peers) );
|
ui.lobbypeers_lineEdit->setText( QString::number((*it).total_number_of_peers) );
|
||||||
|
|
||||||
lobbyinfo_label->setText(tr("You're not subscribed to this lobby; Double click-it to enter and chat.") );
|
ui.lobbyinfo_label->setText(tr("You're not subscribed to this lobby; Double click-it to enter and chat.") );
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
|
|
||||||
lobbyname_lineEdit->clear();
|
ui.lobbyname_lineEdit->clear();
|
||||||
lobbyid_lineEdit->clear();
|
ui.lobbyid_lineEdit->clear();
|
||||||
lobbytopic_lineEdit->clear();
|
ui.lobbytopic_lineEdit->clear();
|
||||||
lobbytype_lineEdit->clear();
|
ui.lobbytype_lineEdit->clear();
|
||||||
lobbypeers_lineEdit->clear();
|
ui.lobbypeers_lineEdit->clear();
|
||||||
|
|
||||||
QString text = tr("No lobby selected. \nSelect lobbies at left to show details.\nDouble click lobbies to enter and chat.") ;
|
QString text = tr("No lobby selected. \nSelect lobbies at left to show details.\nDouble click lobbies to enter and chat.") ;
|
||||||
lobbyinfo_label->setText(text) ;
|
ui.lobbyinfo_label->setText(text) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::subscribeItem()
|
void ChatLobbyWidget::subscribeItem()
|
||||||
{
|
{
|
||||||
subscribeLobby(lobbyTreeWidget->currentItem());
|
subscribeLobby(ui.lobbyTreeWidget->currentItem());
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::autoSubscribeItem()
|
void ChatLobbyWidget::autoSubscribeItem()
|
||||||
{
|
{
|
||||||
autoSubscribeLobby(lobbyTreeWidget->currentItem());
|
autoSubscribeLobby(ui.lobbyTreeWidget->currentItem());
|
||||||
}
|
}
|
||||||
|
|
||||||
QTreeWidgetItem *ChatLobbyWidget::getTreeWidgetItem(ChatLobbyId id)
|
QTreeWidgetItem *ChatLobbyWidget::getTreeWidgetItem(ChatLobbyId id)
|
||||||
@ -708,13 +708,13 @@ void ChatLobbyWidget::resetLobbyTreeIcons()
|
|||||||
if(it->second.last_typing_event + 5 <= now)
|
if(it->second.last_typing_event + 5 <= now)
|
||||||
{
|
{
|
||||||
getTreeWidgetItem(it->first)->setIcon(COLUMN_NAME,it->second.default_icon) ;
|
getTreeWidgetItem(it->first)->setIcon(COLUMN_NAME,it->second.default_icon) ;
|
||||||
// std::cerr << "Reseted 1 lobby icon." << std::endl;
|
//std::cerr << "Reseted 1 lobby icon." << std::endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::unsubscribeItem()
|
void ChatLobbyWidget::unsubscribeItem()
|
||||||
{
|
{
|
||||||
QTreeWidgetItem *item = lobbyTreeWidget->currentItem();
|
QTreeWidgetItem *item = ui.lobbyTreeWidget->currentItem();
|
||||||
if (item == NULL && item->type() != TYPE_LOBBY) {
|
if (item == NULL && item->type() != TYPE_LOBBY) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -734,7 +734,7 @@ void ChatLobbyWidget::unsubscribeChatLobby(ChatLobbyId id)
|
|||||||
|
|
||||||
if(it != _lobby_infos.end())
|
if(it != _lobby_infos.end())
|
||||||
{
|
{
|
||||||
stackedWidget->removeWidget(it->second.dialog) ;
|
ui.stackedWidget->removeWidget(it->second.dialog) ;
|
||||||
_lobby_infos.erase(it) ;
|
_lobby_infos.erase(it) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -745,25 +745,25 @@ void ChatLobbyWidget::unsubscribeChatLobby(ChatLobbyId id)
|
|||||||
|
|
||||||
rsMsgs->unsubscribeChatLobby(id);
|
rsMsgs->unsubscribeChatLobby(id);
|
||||||
bool isAutoSubscribe = rsMsgs->getLobbyAutoSubscribe(id);
|
bool isAutoSubscribe = rsMsgs->getLobbyAutoSubscribe(id);
|
||||||
if (isAutoSubscribe) rsMsgs->setLobbyAutoSubscribe(id, !isAutoSubscribe);
|
if (isAutoSubscribe) rsMsgs->setLobbyAutoSubscribe(id, !isAutoSubscribe);
|
||||||
|
|
||||||
ChatLobbyDialog *cldCW=NULL ;
|
ChatLobbyDialog *cldCW=NULL ;
|
||||||
if (NULL != (cldCW = dynamic_cast<ChatLobbyDialog *>(stackedWidget->currentWidget())))
|
if (NULL != (cldCW = dynamic_cast<ChatLobbyDialog *>(ui.stackedWidget->currentWidget())))
|
||||||
{
|
{
|
||||||
|
|
||||||
QTreeWidgetItem *qtwiFound = getTreeWidgetItem(cldCW->id());
|
QTreeWidgetItem *qtwiFound = getTreeWidgetItem(cldCW->id());
|
||||||
if (qtwiFound) {
|
if (qtwiFound) {
|
||||||
lobbyTreeWidget->setCurrentItem(qtwiFound);
|
ui.lobbyTreeWidget->setCurrentItem(qtwiFound);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
lobbyTreeWidget->clearSelection();
|
ui.lobbyTreeWidget->clearSelection();
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::updateCurrentLobby()
|
void ChatLobbyWidget::updateCurrentLobby()
|
||||||
{
|
{
|
||||||
QList<QTreeWidgetItem *> items = lobbyTreeWidget->selectedItems() ;
|
QList<QTreeWidgetItem *> items = ui.lobbyTreeWidget->selectedItems() ;
|
||||||
|
|
||||||
if(items.empty())
|
if(items.empty())
|
||||||
showLobby(0) ;
|
showLobby(0) ;
|
||||||
@ -782,13 +782,13 @@ void ChatLobbyWidget::updateCurrentLobby()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (filterLineEdit->text().isEmpty() == false) {
|
if (ui.filterLineEdit->text().isEmpty() == false) {
|
||||||
filterItems(filterLineEdit->text());
|
filterItems(ui.filterLineEdit->text());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
void ChatLobbyWidget::updateMessageChanged(ChatLobbyId id)
|
void ChatLobbyWidget::updateMessageChanged(ChatLobbyId id)
|
||||||
{
|
{
|
||||||
QTreeWidgetItem *current_item = lobbyTreeWidget->currentItem();
|
QTreeWidgetItem *current_item = ui.lobbyTreeWidget->currentItem();
|
||||||
|
|
||||||
// Don't show anything for current lobby.
|
// Don't show anything for current lobby.
|
||||||
//
|
//
|
||||||
@ -845,17 +845,17 @@ void ChatLobbyWidget::readChatLobbyInvites()
|
|||||||
|
|
||||||
void ChatLobbyWidget::filterColumnChanged(int)
|
void ChatLobbyWidget::filterColumnChanged(int)
|
||||||
{
|
{
|
||||||
filterItems(filterLineEdit->text());
|
filterItems(ui.filterLineEdit->text());
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::filterItems(const QString &text)
|
void ChatLobbyWidget::filterItems(const QString &text)
|
||||||
{
|
{
|
||||||
int filterColumn = filterLineEdit->currentFilter();
|
int filterColumn = ui.filterLineEdit->currentFilter();
|
||||||
|
|
||||||
int count = lobbyTreeWidget->topLevelItemCount ();
|
int count = ui.lobbyTreeWidget->topLevelItemCount ();
|
||||||
for (int index = 0; index < count; index++) {
|
for (int index = 0; index < count; index++) {
|
||||||
filterItem(lobbyTreeWidget->topLevelItem(index), text, filterColumn);
|
filterItem(ui.lobbyTreeWidget->topLevelItem(index), text, filterColumn);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ChatLobbyWidget::filterItem(QTreeWidgetItem *item, const QString &text, int filterColumn)
|
bool ChatLobbyWidget::filterItem(QTreeWidgetItem *item, const QString &text, int filterColumn)
|
||||||
@ -888,68 +888,68 @@ bool ChatLobbyWidget::filterItem(QTreeWidgetItem *item, const QString &text, int
|
|||||||
|
|
||||||
void ChatLobbyWidget::processSettings(bool bLoad)
|
void ChatLobbyWidget::processSettings(bool bLoad)
|
||||||
{
|
{
|
||||||
m_bProcessSettings = true;
|
m_bProcessSettings = true;
|
||||||
|
|
||||||
QHeaderView *Header = lobbyTreeWidget->header () ;
|
QHeaderView *Header = ui.lobbyTreeWidget->header () ;
|
||||||
|
|
||||||
Settings->beginGroup(QString("ChatLobbyWidget"));
|
Settings->beginGroup(QString("ChatLobbyWidget"));
|
||||||
|
|
||||||
if (bLoad) {
|
if (bLoad) {
|
||||||
// load settings
|
// load settings
|
||||||
|
|
||||||
// state of the lists
|
// state of the lists
|
||||||
Header->restoreState(Settings->value("lobbyList").toByteArray());
|
Header->restoreState(Settings->value("lobbyList").toByteArray());
|
||||||
|
|
||||||
setShowUserCountColumn(Settings->value("showUserCountColumn", !lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT)).toBool());
|
setShowUserCountColumn(Settings->value("showUserCountColumn", !ui.lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT)).toBool());
|
||||||
setShowTopicColumn(Settings->value("showTopicColumn", !lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC)).toBool());
|
setShowTopicColumn(Settings->value("showTopicColumn", !ui.lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC)).toBool());
|
||||||
setShowSubscribeColumn(Settings->value("showSubscribeColumn", !lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED)).toBool());
|
setShowSubscribeColumn(Settings->value("showSubscribeColumn", !ui.lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED)).toBool());
|
||||||
} else {
|
} else {
|
||||||
// save settings
|
// save settings
|
||||||
|
|
||||||
// state of the lists
|
// state of the lists
|
||||||
Settings->setValue("lobbyList", Header->saveState());
|
Settings->setValue("lobbyList", Header->saveState());
|
||||||
|
|
||||||
Settings->setValue("showUserCountColumn", !lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT));
|
Settings->setValue("showUserCountColumn", !ui.lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT));
|
||||||
Settings->setValue("showTopicColumn", !lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC));
|
Settings->setValue("showTopicColumn", !ui.lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC));
|
||||||
Settings->setValue("showSubscribeColumn", !lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED));
|
Settings->setValue("showSubscribeColumn", !ui.lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED));
|
||||||
}
|
}
|
||||||
|
|
||||||
Settings->endGroup();
|
Settings->endGroup();
|
||||||
m_bProcessSettings = false;
|
m_bProcessSettings = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::setShowUserCountColumn(bool show)
|
void ChatLobbyWidget::setShowUserCountColumn(bool show)
|
||||||
{
|
{
|
||||||
if (lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT) == show) {
|
if (ui.lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT) == show) {
|
||||||
lobbyTreeWidget->setColumnHidden(COLUMN_USER_COUNT, !show);
|
ui.lobbyTreeWidget->setColumnHidden(COLUMN_USER_COUNT, !show);
|
||||||
}
|
}
|
||||||
lobbyTreeWidget->header()->setVisible(getNumColVisible()>1);
|
ui.lobbyTreeWidget->header()->setVisible(getNumColVisible()>1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::setShowTopicColumn(bool show)
|
void ChatLobbyWidget::setShowTopicColumn(bool show)
|
||||||
{
|
{
|
||||||
if (lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC) == show) {
|
if (ui.lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC) == show) {
|
||||||
lobbyTreeWidget->setColumnHidden(COLUMN_TOPIC, !show);
|
ui.lobbyTreeWidget->setColumnHidden(COLUMN_TOPIC, !show);
|
||||||
}
|
}
|
||||||
lobbyTreeWidget->header()->setVisible(getNumColVisible()>1);
|
ui.lobbyTreeWidget->header()->setVisible(getNumColVisible()>1);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChatLobbyWidget::setShowSubscribeColumn(bool show)
|
void ChatLobbyWidget::setShowSubscribeColumn(bool show)
|
||||||
{
|
{
|
||||||
if (lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED) == show) {
|
if (ui.lobbyTreeWidget->isColumnHidden(COLUMN_SUBSCRIBED) == show) {
|
||||||
lobbyTreeWidget->setColumnHidden(COLUMN_SUBSCRIBED, !show);
|
ui.lobbyTreeWidget->setColumnHidden(COLUMN_SUBSCRIBED, !show);
|
||||||
}
|
}
|
||||||
lobbyTreeWidget->header()->setVisible(getNumColVisible()>1);
|
ui.lobbyTreeWidget->header()->setVisible(getNumColVisible()>1);
|
||||||
}
|
}
|
||||||
|
|
||||||
int ChatLobbyWidget::getNumColVisible()
|
int ChatLobbyWidget::getNumColVisible()
|
||||||
{
|
{
|
||||||
int iNumColVis=0;
|
int iNumColVis=0;
|
||||||
for (int iColumn = 0; iColumn < COLUMN_COUNT; ++iColumn) {
|
for (int iColumn = 0; iColumn < COLUMN_COUNT; ++iColumn) {
|
||||||
if (!lobbyTreeWidget->isColumnHidden(iColumn)) {
|
if (!ui.lobbyTreeWidget->isColumnHidden(iColumn)) {
|
||||||
++iNumColVis;
|
++iNumColVis;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return iNumColVis;
|
return iNumColVis;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,6 +5,8 @@
|
|||||||
#include "ui_ChatLobbyWidget.h"
|
#include "ui_ChatLobbyWidget.h"
|
||||||
#include "RsAutoUpdatePage.h"
|
#include "RsAutoUpdatePage.h"
|
||||||
|
|
||||||
|
#define IMAGE_CHATLOBBY ":/images/chat_32.png"
|
||||||
|
|
||||||
class RSTreeWidgetItemCompareRole;
|
class RSTreeWidgetItemCompareRole;
|
||||||
class ChatTabWidget ;
|
class ChatTabWidget ;
|
||||||
class ChatLobbyDialog ;
|
class ChatLobbyDialog ;
|
||||||
@ -17,7 +19,7 @@ struct ChatLobbyInfoStruct
|
|||||||
time_t last_typing_event ;
|
time_t last_typing_event ;
|
||||||
};
|
};
|
||||||
|
|
||||||
class ChatLobbyWidget : public RsAutoUpdatePage, Ui::ChatLobbyWidget
|
class ChatLobbyWidget : public RsAutoUpdatePage
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
@ -28,6 +30,10 @@ public:
|
|||||||
/** Default destructor */
|
/** Default destructor */
|
||||||
~ChatLobbyWidget();
|
~ChatLobbyWidget();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_CHATLOBBY) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Chat Lobbies") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
virtual void updateDisplay();
|
virtual void updateDisplay();
|
||||||
|
|
||||||
void setCurrentChatPage(ChatLobbyDialog *) ; // used by ChatLobbyDialog to raise.
|
void setCurrentChatPage(ChatLobbyDialog *) ; // used by ChatLobbyDialog to raise.
|
||||||
@ -85,8 +91,11 @@ private:
|
|||||||
|
|
||||||
/** Defines the actions for the header context menu */
|
/** Defines the actions for the header context menu */
|
||||||
QAction* showUserCountAct;
|
QAction* showUserCountAct;
|
||||||
QAction* showTopicAct;
|
QAction* showTopicAct;
|
||||||
QAction* showSubscribeAct;
|
QAction* showSubscribeAct;
|
||||||
int getNumColVisible();
|
int getNumColVisible();
|
||||||
|
|
||||||
|
/* UI - from Designer */
|
||||||
|
Ui::ChatLobbyWidget ui;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -28,6 +28,8 @@
|
|||||||
#include "util/TokenQueue.h"
|
#include "util/TokenQueue.h"
|
||||||
#include "ui_CirclesDialog.h"
|
#include "ui_CirclesDialog.h"
|
||||||
|
|
||||||
|
#define IMAGE_CIRCLES ":/images/circles/circles_32.png"
|
||||||
|
|
||||||
class UIStateHelper;
|
class UIStateHelper;
|
||||||
|
|
||||||
class CirclesDialog : public RsGxsUpdateBroadcastPage, public TokenResponse
|
class CirclesDialog : public RsGxsUpdateBroadcastPage, public TokenResponse
|
||||||
@ -37,6 +39,10 @@ class CirclesDialog : public RsGxsUpdateBroadcastPage, public TokenResponse
|
|||||||
public:
|
public:
|
||||||
CirclesDialog(QWidget *parent = 0);
|
CirclesDialog(QWidget *parent = 0);
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_CIRCLES) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Circles") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
void loadRequest(const TokenQueue *queue, const TokenRequest &req);
|
void loadRequest(const TokenQueue *queue, const TokenRequest &req);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
@ -29,6 +29,7 @@
|
|||||||
|
|
||||||
#include "ui_TransfersDialog.h"
|
#include "ui_TransfersDialog.h"
|
||||||
|
|
||||||
|
#define IMAGE_TRANSFERS ":/images/ktorrent32.png"
|
||||||
|
|
||||||
class DLListDelegate;
|
class DLListDelegate;
|
||||||
class ULListDelegate;
|
class ULListDelegate;
|
||||||
@ -57,6 +58,10 @@ public:
|
|||||||
TransfersDialog(QWidget *parent = 0);
|
TransfersDialog(QWidget *parent = 0);
|
||||||
~TransfersDialog();
|
~TransfersDialog();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_TRANSFERS) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("File sharing") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
virtual UserNotify *getUserNotify(QObject *parent);
|
virtual UserNotify *getUserNotify(QObject *parent);
|
||||||
|
|
||||||
void activatePage(TransfersDialog::Page page) ;
|
void activatePage(TransfersDialog::Page page) ;
|
||||||
|
@ -58,8 +58,8 @@
|
|||||||
#include "gui/Circles/CirclesDialog.h"
|
#include "gui/Circles/CirclesDialog.h"
|
||||||
|
|
||||||
/* Images for Newsfeed icons */
|
/* Images for Newsfeed icons */
|
||||||
#define IMAGE_NEWSFEED ""
|
//#define IMAGE_NEWSFEED ""
|
||||||
#define IMAGE_NEWSFEED_NEW ":/images/message-state-new.png"
|
//#define IMAGE_NEWSFEED_NEW ":/images/message-state-new.png"
|
||||||
#define IMAGE_NETWORK2 ":/images/logo/logo_16.png"
|
#define IMAGE_NETWORK2 ":/images/logo/logo_16.png"
|
||||||
#define IMAGE_PEERS ":/images/groupchat.png"
|
#define IMAGE_PEERS ":/images/groupchat.png"
|
||||||
#define IMAGE_IDENTITY ":/images/identity/identities_32.png"
|
#define IMAGE_IDENTITY ":/images/identity/identities_32.png"
|
||||||
|
@ -27,6 +27,8 @@
|
|||||||
|
|
||||||
#include "ui_FriendsDialog.h"
|
#include "ui_FriendsDialog.h"
|
||||||
|
|
||||||
|
#define IMAGE_PEERS ":/images/groupchat.png"
|
||||||
|
|
||||||
class QFont;
|
class QFont;
|
||||||
class QAction;
|
class QAction;
|
||||||
class QTextEdit;
|
class QTextEdit;
|
||||||
@ -57,6 +59,10 @@ public:
|
|||||||
/** Default Destructor */
|
/** Default Destructor */
|
||||||
~FriendsDialog ();
|
~FriendsDialog ();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_PEERS) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Network") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
virtual UserNotify *getUserNotify(QObject *parent);
|
virtual UserNotify *getUserNotify(QObject *parent);
|
||||||
|
|
||||||
virtual void updateDisplay() ; // overloaded from RsAutoUpdatePage
|
virtual void updateDisplay() ; // overloaded from RsAutoUpdatePage
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
|
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
|
|
||||||
|
#define IMG_HELP ":/images/help24.png"
|
||||||
|
|
||||||
class GetStartedDialog : public MainPage
|
class GetStartedDialog : public MainPage
|
||||||
{
|
{
|
||||||
@ -39,6 +40,10 @@ public:
|
|||||||
/** Default Destructor */
|
/** Default Destructor */
|
||||||
~GetStartedDialog();
|
~GetStartedDialog();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMG_HELP) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Getting Started") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
// Single Point for (English) Text of the Invitation.
|
// Single Point for (English) Text of the Invitation.
|
||||||
// This is used by other classes.
|
// This is used by other classes.
|
||||||
static QString GetInviteText();
|
static QString GetInviteText();
|
||||||
|
@ -34,6 +34,8 @@
|
|||||||
#include "gui/Identity/IdEditDialog.h"
|
#include "gui/Identity/IdEditDialog.h"
|
||||||
#include "util/TokenQueue.h"
|
#include "util/TokenQueue.h"
|
||||||
|
|
||||||
|
#define IMAGE_IDDIALOG ":/images/identity/identities_32.png"
|
||||||
|
|
||||||
class UIStateHelper;
|
class UIStateHelper;
|
||||||
|
|
||||||
class IdDialog : public RsGxsUpdateBroadcastPage, public TokenResponse
|
class IdDialog : public RsGxsUpdateBroadcastPage, public TokenResponse
|
||||||
@ -43,6 +45,10 @@ class IdDialog : public RsGxsUpdateBroadcastPage, public TokenResponse
|
|||||||
public:
|
public:
|
||||||
IdDialog(QWidget *parent = 0);
|
IdDialog(QWidget *parent = 0);
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_IDDIALOG) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Itentities") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
void loadRequest(const TokenQueue *queue, const TokenRequest &req);
|
void loadRequest(const TokenQueue *queue, const TokenRequest &req);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
@ -4,6 +4,9 @@
|
|||||||
MainPage::MainPage(QWidget *parent , Qt::WindowFlags flags ) : QWidget(parent, flags)
|
MainPage::MainPage(QWidget *parent , Qt::WindowFlags flags ) : QWidget(parent, flags)
|
||||||
{
|
{
|
||||||
mHelpBrowser = NULL ;
|
mHelpBrowser = NULL ;
|
||||||
|
mIcon = QIcon();
|
||||||
|
mName = "";
|
||||||
|
mHelp = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainPage::registerHelpButton(QAbstractButton *button,const QString& help_html_txt)
|
void MainPage::registerHelpButton(QAbstractButton *button,const QString& help_html_txt)
|
||||||
|
@ -95,12 +95,15 @@
|
|||||||
#include "gui/gxsforums/GxsForumsDialog.h"
|
#include "gui/gxsforums/GxsForumsDialog.h"
|
||||||
#include "gui/Identity/IdDialog.h"
|
#include "gui/Identity/IdDialog.h"
|
||||||
#include "gui/Circles/CirclesDialog.h"
|
#include "gui/Circles/CirclesDialog.h"
|
||||||
|
#include "gui/WikiPoos/WikiDialog.h"
|
||||||
|
#include "gui/Posted/PostedDialog.h"
|
||||||
|
|
||||||
#include "gui/connect/ConnectFriendWizard.h"
|
#include "gui/connect/ConnectFriendWizard.h"
|
||||||
#include "util/rsguiversion.h"
|
#include "util/rsguiversion.h"
|
||||||
#include "settings/rsettingswin.h"
|
#include "settings/rsettingswin.h"
|
||||||
#include "settings/rsharesettings.h"
|
#include "settings/rsharesettings.h"
|
||||||
#include "common/StatusDefs.h"
|
#include "common/StatusDefs.h"
|
||||||
|
#include "gui/notifyqt.h"
|
||||||
|
|
||||||
#include <iomanip>
|
#include <iomanip>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
@ -125,8 +128,8 @@
|
|||||||
|
|
||||||
/* Images for toolbar icons */
|
/* Images for toolbar icons */
|
||||||
//#define IMAGE_NETWORK2 ":/images/rs1.png"
|
//#define IMAGE_NETWORK2 ":/images/rs1.png"
|
||||||
#define IMAGE_PEERS ":/images/groupchat.png"
|
//#define IMAGE_PEERS ":/images/groupchat.png"
|
||||||
#define IMAGE_TRANSFERS ":/images/ktorrent32.png"
|
//#define IMAGE_TRANSFERS ":/images/ktorrent32.png"
|
||||||
#define IMAGE_FILES ":/images/fileshare32.png"
|
#define IMAGE_FILES ":/images/fileshare32.png"
|
||||||
#define IMAGE_CHANNELS ":/images/channels.png"
|
#define IMAGE_CHANNELS ":/images/channels.png"
|
||||||
#define IMAGE_FORUMS ":/images/konversation.png"
|
#define IMAGE_FORUMS ":/images/konversation.png"
|
||||||
@ -135,7 +138,7 @@
|
|||||||
#define IMAGE_RETROSHARE ":/images/logo/logo_16.png"
|
#define IMAGE_RETROSHARE ":/images/logo/logo_16.png"
|
||||||
#define IMAGE_ABOUT ":/images/informations_24x24.png"
|
#define IMAGE_ABOUT ":/images/informations_24x24.png"
|
||||||
#define IMAGE_STATISTIC ":/images/utilities-system-monitor.png"
|
#define IMAGE_STATISTIC ":/images/utilities-system-monitor.png"
|
||||||
#define IMAGE_MESSAGES ":/images/evolution.png"
|
//#define IMAGE_MESSAGES ":/images/evolution.png"
|
||||||
#define IMAGE_BWGRAPH ":/images/ksysguard.png"
|
#define IMAGE_BWGRAPH ":/images/ksysguard.png"
|
||||||
#define IMAGE_RSM32 ":/images/kdmconfig.png"
|
#define IMAGE_RSM32 ":/images/kdmconfig.png"
|
||||||
#define IMAGE_RSM16 ":/images/rsmessenger16.png"
|
#define IMAGE_RSM16 ":/images/rsmessenger16.png"
|
||||||
@ -144,26 +147,26 @@
|
|||||||
#define IMAGE_COLOR ":/images/highlight.png"
|
#define IMAGE_COLOR ":/images/highlight.png"
|
||||||
#define IMAGE_GAMES ":/images/kgames.png"
|
#define IMAGE_GAMES ":/images/kgames.png"
|
||||||
#define IMAGE_PHOTO ":/images/lphoto.png"
|
#define IMAGE_PHOTO ":/images/lphoto.png"
|
||||||
#define IMAGE_ADDFRIEND ":/images/add-friend24.png"
|
#define IMAGE_ADDFRIEND ":/images/user/add_user24.png"
|
||||||
#define IMAGE_ADDSHARE ":/images/directoryadd_24x24_shadow.png"
|
#define IMAGE_ADDSHARE ":/images/directoryadd_24x24_shadow.png"
|
||||||
#define IMAGE_OPTIONS ":/images/settings.png"
|
#define IMAGE_OPTIONS ":/images/settings.png"
|
||||||
#define IMAGE_QUIT ":/images/exit_24x24.png"
|
#define IMAGE_QUIT ":/images/exit_24x24.png"
|
||||||
#define IMAGE_UNFINISHED ":/images/underconstruction.png"
|
#define IMAGE_UNFINISHED ":/images/underconstruction.png"
|
||||||
#define IMAGE_MINIMIZE ":/images/window_nofullscreen.png"
|
#define IMAGE_MINIMIZE ":/images/window_nofullscreen.png"
|
||||||
#define IMAGE_MAXIMIZE ":/images/window_fullscreen.png"
|
#define IMAGE_MAXIMIZE ":/images/window_fullscreen.png"
|
||||||
#define IMG_HELP ":/images/help24.png"
|
//#define IMG_HELP ":/images/help24.png"
|
||||||
#define IMAGE_NEWSFEED ":/images/newsfeed/news-feed-32.png"
|
//#define IMAGE_NEWSFEED ":/images/newsfeed/news-feed-32.png"
|
||||||
#define IMAGE_PLUGINS ":/images/extension_32.png"
|
#define IMAGE_PLUGINS ":/images/extension_32.png"
|
||||||
#define IMAGE_NOONLINE ":/images/logo/logo_24_0.png"
|
#define IMAGE_NOONLINE ":/images/logo/logo_24_0.png"
|
||||||
#define IMAGE_ONEONLINE ":/images/logo/logo_24_1.png"
|
#define IMAGE_ONEONLINE ":/images/logo/logo_24_1.png"
|
||||||
#define IMAGE_TWOONLINE ":/images/logo/logo_24_2.png"
|
#define IMAGE_TWOONLINE ":/images/logo/logo_24_2.png"
|
||||||
#define IMAGE_BLOGS ":/images/kblogger.png"
|
#define IMAGE_BLOGS ":/images/kblogger.png"
|
||||||
#define IMAGE_DHT ":/images/dht16.png"
|
#define IMAGE_DHT ":/images/dht16.png"
|
||||||
#define IMAGE_CHATLOBBY ":/images/chat_32.png"
|
//#define IMAGE_CHATLOBBY ":/images/chat_32.png"
|
||||||
#define IMAGE_GXSCHANNELS ":/images/channels.png"
|
//#define IMAGE_GXSCHANNELS ":/images/channels.png"
|
||||||
#define IMAGE_GXSFORUMS ":/images/konversation.png"
|
//#define IMAGE_GXSFORUMS ":/images/konversation.png"
|
||||||
#define IMAGE_IDENTITY ":/images/identity/identities_32.png"
|
//#define IMAGE_IDENTITY ":/images/identity/identities_32.png"
|
||||||
#define IMAGE_CIRCLES ":/images/circles/circles_32.png"
|
//#define IMAGE_CIRCLES ":/images/circles/circles_32.png"
|
||||||
|
|
||||||
|
|
||||||
/*static*/ MainWindow *MainWindow::_instance = NULL;
|
/*static*/ MainWindow *MainWindow::_instance = NULL;
|
||||||
@ -209,12 +212,6 @@ MainWindow::MainWindow(QWidget* parent, Qt::WindowFlags flags)
|
|||||||
|
|
||||||
setWindowTitle(tr("RetroShare %1 a secure decentralized communication platform").arg(retroshareVersion()) + " - " + nameAndLocation);
|
setWindowTitle(tr("RetroShare %1 a secure decentralized communication platform").arg(retroshareVersion()) + " - " + nameAndLocation);
|
||||||
|
|
||||||
/* WORK OUT IF WE"RE IN ADVANCED MODE OR NOT */
|
|
||||||
bool advancedMode = false;
|
|
||||||
std::string advsetting;
|
|
||||||
if (rsConfig->getConfigurationOption(RS_CONFIG_ADVANCED, advsetting) && (advsetting == "YES")) {
|
|
||||||
advancedMode = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* add url handler for RetroShare links */
|
/* add url handler for RetroShare links */
|
||||||
QDesktopServices::setUrlHandler(RSLINK_SCHEME, this, "retroshareLinkActivated");
|
QDesktopServices::setUrlHandler(RSLINK_SCHEME, this, "retroshareLinkActivated");
|
||||||
@ -232,123 +229,12 @@ MainWindow::MainWindow(QWidget* parent, Qt::WindowFlags flags)
|
|||||||
applicationWindow->hide();
|
applicationWindow->hide();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
initStackedPage();
|
||||||
|
connect(ui->listWidget, SIGNAL(currentRowChanged(int)), this, SLOT(setNewPage(int)));
|
||||||
|
connect(ui->stackPages, SIGNAL(currentChanged(int)), this, SLOT(setNewPage(int)));
|
||||||
|
|
||||||
QList<QPair<MainPage*, QAction*> > notify;
|
//ui->stackPages->setCurrentIndex(Settings->getLastPageInMainWindow());
|
||||||
|
setNewPage(Settings->getLastPageInMainWindow());
|
||||||
/* Create the Main pages and actions */
|
|
||||||
QActionGroup *grp = new QActionGroup(this);
|
|
||||||
QAction *action;
|
|
||||||
|
|
||||||
ui->stackPages->add(newsFeed = new NewsFeed(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_NEWSFEED), tr("News feed"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(newsFeed, action));
|
|
||||||
|
|
||||||
|
|
||||||
ui->stackPages->add(friendsDialog = new FriendsDialog(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_PEERS), tr("Network"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(friendsDialog, action));
|
|
||||||
|
|
||||||
PeopleDialog *peopleDialog = NULL;
|
|
||||||
ui->stackPages->add(peopleDialog = new PeopleDialog(ui->stackPages), action = createPageAction(QIcon(IMAGE_IDENTITY), tr("People"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(peopleDialog, action));
|
|
||||||
|
|
||||||
/*IdDialog *idDialog = NULL;
|
|
||||||
ui->stackPages->add(idDialog = new IdDialog(ui->stackPages), action = createPageAction(QIcon(IMAGE_IDENTITY), tr("Itentities"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(idDialog, action));
|
|
||||||
|
|
||||||
CirclesDialog *circlesDialog = NULL;
|
|
||||||
ui->stackPages->add(circlesDialog = new CirclesDialog(ui->stackPages), createPageAction(QIcon(IMAGE_CIRCLES ), tr("Circles"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(circlesDialog, action));*/
|
|
||||||
|
|
||||||
ui->stackPages->add(transfersDialog = new TransfersDialog(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_TRANSFERS), tr("File sharing"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(transfersDialog, action));
|
|
||||||
|
|
||||||
ui->stackPages->add(chatLobbyDialog = new ChatLobbyWidget(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_CHATLOBBY), tr("Chat Lobbies"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(chatLobbyDialog, action));
|
|
||||||
|
|
||||||
ui->stackPages->add(messagesDialog = new MessagesDialog(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_MESSAGES), tr("Messages"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(messagesDialog, action));
|
|
||||||
|
|
||||||
ui->stackPages->add(gxschannelDialog = new GxsChannelDialog(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_GXSCHANNELS), tr("Channels"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(gxschannelDialog, action));
|
|
||||||
|
|
||||||
ui->stackPages->add(gxsforumDialog = new GxsForumsDialog(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_GXSFORUMS), tr("Forums"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(gxsforumDialog, action));
|
|
||||||
|
|
||||||
#ifdef BLOGS
|
|
||||||
ui->stackPages->add(blogsFeed = new BlogsDialog(ui->stackPages), createPageAction(QIcon(IMAGE_BLOGS), tr("Blogs"), grp));
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if 0
|
|
||||||
ui->stackPages->add(forumsDialog = new ForumsDialog(ui->stackPages),
|
|
||||||
action = createPageAction(QIcon(IMAGE_FORUMS), tr("Forums"), grp));
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(forumsDialog, action));
|
|
||||||
#endif
|
|
||||||
|
|
||||||
std::cerr << "Looking for interfaces in existing plugins:" << std::endl;
|
|
||||||
for(int i = 0;i<rsPlugins->nbPlugins();++i)
|
|
||||||
{
|
|
||||||
QIcon icon ;
|
|
||||||
|
|
||||||
if(rsPlugins->plugin(i) != NULL && rsPlugins->plugin(i)->qt_page() != NULL)
|
|
||||||
{
|
|
||||||
if(rsPlugins->plugin(i)->qt_icon() != NULL)
|
|
||||||
icon = *rsPlugins->plugin(i)->qt_icon() ;
|
|
||||||
else
|
|
||||||
icon = QIcon(":images/extension_48.png") ;
|
|
||||||
|
|
||||||
std::cerr << " Addign widget page for plugin " << rsPlugins->plugin(i)->getPluginName() << std::endl;
|
|
||||||
MainPage *pluginPage = rsPlugins->plugin(i)->qt_page();
|
|
||||||
QAction *pluginAction = createPageAction(icon, QString::fromUtf8(rsPlugins->plugin(i)->getPluginName().c_str()), grp);
|
|
||||||
ui->stackPages->add(pluginPage, pluginAction);
|
|
||||||
notify.push_back(QPair<MainPage*, QAction*>(pluginPage, pluginAction));
|
|
||||||
}
|
|
||||||
else if(rsPlugins->plugin(i) == NULL)
|
|
||||||
std::cerr << " No plugin object !" << std::endl;
|
|
||||||
else
|
|
||||||
std::cerr << " No plugin page !" << std::endl;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifndef RS_RELEASE_VERSION
|
|
||||||
#ifdef PLUGINMGR
|
|
||||||
ui->stackPages->add(pluginsPage = new PluginsPage(ui->stackPages),
|
|
||||||
createPageAction(QIcon(IMAGE_PLUGINS), tr("Plugins"), grp));
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef GETSTARTED_GUI
|
|
||||||
MainPage *getStartedPage = NULL;
|
|
||||||
|
|
||||||
if (!advancedMode)
|
|
||||||
{
|
|
||||||
ui->stackPages->add(getStartedPage = new GetStartedDialog(ui->stackPages),
|
|
||||||
createPageAction(QIcon(IMG_HELP), tr("Getting Started"), grp));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Create the toolbar */
|
|
||||||
ui->toolBar->addActions(grp->actions());
|
|
||||||
|
|
||||||
connect(grp, SIGNAL(triggered(QAction *)), ui->stackPages, SLOT(showPage(QAction *)));
|
|
||||||
|
|
||||||
#ifdef UNFINISHED
|
|
||||||
ui->toolBar->addSeparator();
|
|
||||||
addAction(new QAction(QIcon(IMAGE_UNFINISHED), tr("Unfinished"), ui->toolBar), SLOT(showApplWindow()));
|
|
||||||
notify += applicationWindow->getNotify();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
addAction(new QAction(QIcon(IMAGE_PREFERENCES), tr("Options"), ui->toolBar), SLOT(showSettings()));
|
|
||||||
addAction(new QAction(QIcon(IMAGE_ABOUT), tr("About"), ui->toolBar), SLOT(showabout()));
|
|
||||||
addAction(new QAction(QIcon(IMAGE_QUIT), tr("Quit"), ui->toolBar), SLOT(doQuit()));
|
|
||||||
|
|
||||||
|
|
||||||
ui->stackPages->setCurrentIndex(Settings->getLastPageInMainWindow());
|
|
||||||
|
|
||||||
/** StatusBar section ********/
|
/** StatusBar section ********/
|
||||||
/* initialize combobox in status bar */
|
/* initialize combobox in status bar */
|
||||||
@ -390,19 +276,9 @@ MainWindow::MainWindow(QWidget* parent, Qt::WindowFlags flags)
|
|||||||
/* Creates a tray icon with a context menu and adds it to the system's * notification area. */
|
/* Creates a tray icon with a context menu and adds it to the system's * notification area. */
|
||||||
createTrayIcon();
|
createTrayIcon();
|
||||||
|
|
||||||
QList<QPair<MainPage*, QAction*> >::iterator notifyIt;
|
|
||||||
for (notifyIt = notify.begin(); notifyIt != notify.end(); ++notifyIt) {
|
|
||||||
UserNotify *userNotify = notifyIt->first->getUserNotify(this);
|
|
||||||
if (userNotify) {
|
|
||||||
userNotify->initialize(ui->toolBar, notifyIt->second);
|
|
||||||
connect(userNotify, SIGNAL(countChanged()), this, SLOT(updateTrayCombine()));
|
|
||||||
userNotifyList.push_back(userNotify);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
createNotifyIcons();
|
createNotifyIcons();
|
||||||
|
|
||||||
/* caclulate friend count */
|
/* calculate friend count */
|
||||||
updateFriends();
|
updateFriends();
|
||||||
connect(NotifyQt::getInstance(), SIGNAL(peerStatusChanged(QString,int)), this, SLOT(updateFriends()));
|
connect(NotifyQt::getInstance(), SIGNAL(peerStatusChanged(QString,int)), this, SLOT(updateFriends()));
|
||||||
connect(NotifyQt::getInstance(), SIGNAL(friendsChanged()), this, SLOT(updateFriends()));
|
connect(NotifyQt::getInstance(), SIGNAL(friendsChanged()), this, SLOT(updateFriends()));
|
||||||
@ -419,6 +295,9 @@ MainWindow::MainWindow(QWidget* parent, Qt::WindowFlags flags)
|
|||||||
QTimer *timer = new QTimer(this);
|
QTimer *timer = new QTimer(this);
|
||||||
timer->connect(timer, SIGNAL(timeout()), this, SLOT(updateStatus()));
|
timer->connect(timer, SIGNAL(timeout()), this, SLOT(updateStatus()));
|
||||||
timer->start(1000);
|
timer->start(1000);
|
||||||
|
|
||||||
|
connect(NotifyQt::getInstance(), SIGNAL(settingsChanged()), this, SLOT(settingsChanged()));
|
||||||
|
settingsChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Destructor. */
|
/** Destructor. */
|
||||||
@ -439,6 +318,238 @@ MainWindow::~MainWindow()
|
|||||||
delete(ui);
|
delete(ui);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Initialyse Stacked Page*/
|
||||||
|
void MainWindow::initStackedPage()
|
||||||
|
{
|
||||||
|
/* WORK OUT IF WE"RE IN ADVANCED MODE OR NOT */
|
||||||
|
bool advancedMode = false;
|
||||||
|
std::string advsetting;
|
||||||
|
if (rsConfig->getConfigurationOption(RS_CONFIG_ADVANCED, advsetting) && (advsetting == "YES")) {
|
||||||
|
advancedMode = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
QList<QPair<MainPage*, QPair<QAction*, QListWidgetItem*> > > notify;
|
||||||
|
|
||||||
|
/* Create the Main pages and actions */
|
||||||
|
QActionGroup *grp = new QActionGroup(this);
|
||||||
|
//QAction *action;
|
||||||
|
|
||||||
|
//ui->stackPages->add(newsFeed = new NewsFeed(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_NEWSFEED), tr("News feed"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(newsFeed, action));
|
||||||
|
addPage(newsFeed = new NewsFeed(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
//ui->stackPages->add(friendsDialog = new FriendsDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_PEERS), tr("Network"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(friendsDialog, action));
|
||||||
|
addPage(friendsDialog = new FriendsDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
PeopleDialog *peopleDialog = NULL;
|
||||||
|
//ui->stackPages->add(peopleDialog = new PeopleDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_IDENTITY), tr("People"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(peopleDialog, action));
|
||||||
|
addPage(peopleDialog = new PeopleDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
IdDialog *idDialog = NULL;
|
||||||
|
//ui->stackPages->add(idDialog = new IdDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_IDENTITY), tr("Itentities"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(idDialog, action));
|
||||||
|
addPage(idDialog = new IdDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
CirclesDialog *circlesDialog = NULL;
|
||||||
|
//ui->stackPages->add(circlesDialog = new CirclesDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_CIRCLES ), tr("Circles"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(circlesDialog, action));
|
||||||
|
addPage(circlesDialog = new CirclesDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
//ui->stackPages->add(transfersDialog = new TransfersDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_TRANSFERS), tr("File sharing"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(transfersDialog, action));
|
||||||
|
addPage(transfersDialog = new TransfersDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
//ui->stackPages->add(chatLobbyDialog = new ChatLobbyWidget(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_CHATLOBBY), tr("Chat Lobbies"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(chatLobbyDialog, action));
|
||||||
|
addPage(chatLobbyDialog = new ChatLobbyWidget(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
//ui->stackPages->add(messagesDialog = new MessagesDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_MESSAGES), tr("Messages"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(messagesDialog, action));
|
||||||
|
addPage(messagesDialog = new MessagesDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
//ui->stackPages->add(gxschannelDialog = new GxsChannelDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_GXSCHANNELS), tr("Channels"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(gxschannelDialog, action));
|
||||||
|
addPage(gxschannelDialog = new GxsChannelDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
//ui->stackPages->add(gxsforumDialog = new GxsForumsDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_GXSFORUMS), tr("Forums"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(gxsforumDialog, action));
|
||||||
|
addPage(gxsforumDialog = new GxsForumsDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
//PostedDialog *postedDialog = NULL;
|
||||||
|
//addPage(postedDialog = new PostedDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
//postedDialog->setup();
|
||||||
|
|
||||||
|
WikiDialog *wikiDialog = NULL;
|
||||||
|
addPage(wikiDialog = new WikiDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
|
||||||
|
#ifdef BLOGS
|
||||||
|
//ui->stackPages->add(blogsFeed = new BlogsDialog(ui->stackPages),
|
||||||
|
// createPageAction(QIcon(IMAGE_BLOGS), tr("Blogs"), grp));
|
||||||
|
//TODO: Add iconPixmap, pageName and helpText to BlogsDialog.h
|
||||||
|
addPage(blogsFeed = new BlogsDialog(ui->stackPages), grp, NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
//ui->stackPages->add(forumsDialog = new ForumsDialog(ui->stackPages),
|
||||||
|
// action = createPageAction(QIcon(IMAGE_FORUMS), tr("Forums"), grp));
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(forumsDialog, action));
|
||||||
|
//TODO: Add iconPixmap, pageName and helpText to BlogsDialog.h
|
||||||
|
addPage(forumsDialog = new ForumsDialog(ui->stackPages), grp, ¬ify);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
std::cerr << "Looking for interfaces in existing plugins:" << std::endl;
|
||||||
|
for(int i = 0;i<rsPlugins->nbPlugins();++i)
|
||||||
|
{
|
||||||
|
QIcon icon ;
|
||||||
|
|
||||||
|
if(rsPlugins->plugin(i) != NULL && rsPlugins->plugin(i)->qt_page() != NULL)
|
||||||
|
{
|
||||||
|
if(rsPlugins->plugin(i)->qt_icon() != NULL)
|
||||||
|
icon = *rsPlugins->plugin(i)->qt_icon() ;
|
||||||
|
else
|
||||||
|
icon = QIcon(":images/extension_48.png") ;
|
||||||
|
|
||||||
|
std::cerr << " Addign widget page for plugin " << rsPlugins->plugin(i)->getPluginName() << std::endl;
|
||||||
|
MainPage *pluginPage = rsPlugins->plugin(i)->qt_page();
|
||||||
|
pluginPage->setIconPixmap(icon);
|
||||||
|
pluginPage->setPageName(QString::fromUtf8(rsPlugins->plugin(i)->getPluginName().c_str()));
|
||||||
|
//QAction *pluginAction = createPageAction(icon, QString::fromUtf8(rsPlugins->plugin(i)->getPluginName().c_str()), grp);
|
||||||
|
//ui->stackPages->add(pluginPage, pluginAction);
|
||||||
|
//notify.push_back(QPair<MainPage*, QAction*>(pluginPage, pluginAction));
|
||||||
|
addPage(pluginPage, grp, ¬ify);
|
||||||
|
}
|
||||||
|
else if(rsPlugins->plugin(i) == NULL)
|
||||||
|
std::cerr << " No plugin object !" << std::endl;
|
||||||
|
else
|
||||||
|
std::cerr << " No plugin page !" << std::endl;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifndef RS_RELEASE_VERSION
|
||||||
|
#ifdef PLUGINMGR
|
||||||
|
//ui->stackPages->add(pluginsPage = new PluginsPage(ui->stackPages),
|
||||||
|
// createPageAction(QIcon(IMAGE_PLUGINS), tr("Plugins"), grp));
|
||||||
|
//TODO: Add iconPixmap, pageName and helpText to PluginsPage.h
|
||||||
|
addPage(pluginsPage = new PluginsPage(ui->stackPages), grp, NULL);
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef GETSTARTED_GUI
|
||||||
|
MainPage *getStartedPage = NULL;
|
||||||
|
|
||||||
|
if (!advancedMode)
|
||||||
|
{
|
||||||
|
//ui->stackPages->add(getStartedPage = new GetStartedDialog(ui->stackPages),
|
||||||
|
// createPageAction(QIcon(IMG_HELP), tr("Getting Started"), grp));
|
||||||
|
addPage(getStartedPage = new GetStartedDialog(ui->stackPages), grp, NULL);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Create the toolbar */
|
||||||
|
ui->toolBarPage->addActions(grp->actions());
|
||||||
|
connect(grp, SIGNAL(triggered(QAction *)), ui->stackPages, SLOT(showPage(QAction *)));
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef UNFINISHED
|
||||||
|
addAction(new QAction(QIcon(IMAGE_UNFINISHED), tr("Unfinished"), ui->toolBar), SLOT(showApplWindow()));
|
||||||
|
ui->toolBarAction->addSeparator();
|
||||||
|
notify += applicationWindow->getNotify();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
addAction(new QAction(QIcon(IMAGE_ADDFRIEND), tr("Add"), ui->toolBarAction), SLOT(addFriend()));
|
||||||
|
addAction(new QAction(QIcon(IMAGE_PREFERENCES), tr("Options"), ui->toolBarAction), SLOT(showSettings()));
|
||||||
|
addAction(new QAction(QIcon(IMAGE_ABOUT), tr("About"), ui->toolBarAction), SLOT(showabout()));
|
||||||
|
addAction(new QAction(QIcon(IMAGE_QUIT), tr("Quit"), ui->toolBarAction), SLOT(doQuit()));
|
||||||
|
|
||||||
|
QList<QPair<MainPage*, QPair<QAction*, QListWidgetItem*> > >::iterator notifyIt;
|
||||||
|
for (notifyIt = notify.begin(); notifyIt != notify.end(); ++notifyIt) {
|
||||||
|
UserNotify *userNotify = notifyIt->first->getUserNotify(this);
|
||||||
|
if (userNotify) {
|
||||||
|
userNotify->initialize(ui->toolBarPage, notifyIt->second.first, notifyIt->second.second);
|
||||||
|
connect(userNotify, SIGNAL(countChanged()), this, SLOT(updateTrayCombine()));
|
||||||
|
userNotifyList.push_back(userNotify);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Creates a new action associated with a config page. */
|
||||||
|
QAction *MainWindow::createPageAction(const QIcon &icon, const QString &text, QActionGroup *group)
|
||||||
|
{
|
||||||
|
QFont font;
|
||||||
|
QAction *action = new QAction(icon, text, group);
|
||||||
|
font = action->font();
|
||||||
|
font.setPointSize(9);
|
||||||
|
action->setCheckable(true);
|
||||||
|
action->setFont(font);
|
||||||
|
return action;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Adds the given action to the toolbar and hooks its triggered() signal to
|
||||||
|
* the specified slot (if given). */
|
||||||
|
void MainWindow::addAction(QAction *action, const char *slot)
|
||||||
|
{
|
||||||
|
QFont font;
|
||||||
|
font = action->font();
|
||||||
|
font.setPointSize(9);
|
||||||
|
action->setFont(font);
|
||||||
|
ui->toolBarAction->addAction(action);
|
||||||
|
connect(action, SIGNAL(triggered()), this, slot);
|
||||||
|
|
||||||
|
QListWidgetItem *item = new QListWidgetItem(action->icon(),action->text()) ;
|
||||||
|
item->setData(Qt::UserRole,QString(slot));
|
||||||
|
ui->listWidget->addItem(item) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Add the given page to the stackPage and list. */
|
||||||
|
void MainWindow::addPage(MainPage *page, QActionGroup *grp, QList<QPair<MainPage*, QPair<QAction*, QListWidgetItem*> > > *notify)
|
||||||
|
{
|
||||||
|
QAction *action;
|
||||||
|
ui->stackPages->add(page, action = createPageAction(page->iconPixmap(), page->pageName(), grp));
|
||||||
|
|
||||||
|
QListWidgetItem *item = new QListWidgetItem(QIcon(page->iconPixmap()),page->pageName()) ;
|
||||||
|
ui->listWidget->addItem(item) ;
|
||||||
|
|
||||||
|
if (notify)
|
||||||
|
{
|
||||||
|
QPair<QAction*, QListWidgetItem*> pair = QPair<QAction*, QListWidgetItem*>( action, item);
|
||||||
|
notify->push_back(QPair<MainPage*, QPair<QAction*, QListWidgetItem*> >(page, pair));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Selection page. */
|
||||||
|
void MainWindow::setNewPage(int page)
|
||||||
|
{
|
||||||
|
MainPage *pagew = dynamic_cast<MainPage*>(ui->stackPages->widget(page)) ;
|
||||||
|
|
||||||
|
if(pagew)
|
||||||
|
{
|
||||||
|
ui->stackPages->setCurrentIndex(page);
|
||||||
|
ui->listWidget->setCurrentRow(page);
|
||||||
|
} else {
|
||||||
|
QString procName = ui->listWidget->item(page)->data(Qt::UserRole).toString();
|
||||||
|
#ifdef UNFINISHED
|
||||||
|
if (procName == SLOT(showApplWindow())) showApplWindow();
|
||||||
|
#endif
|
||||||
|
if (procName == SLOT(showSettings())) showSettings();
|
||||||
|
if (procName == SLOT(showabout())) showabout();
|
||||||
|
if (procName == SLOT(doQuit())) doQuit();
|
||||||
|
ui->listWidget->setCurrentRow(ui->stackPages->currentIndex());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::displayDiskSpaceWarning(int loc,int size_limit_mb)
|
void MainWindow::displayDiskSpaceWarning(int loc,int size_limit_mb)
|
||||||
{
|
{
|
||||||
QString locString ;
|
QString locString ;
|
||||||
@ -687,30 +798,6 @@ void MainWindow::postModDirectories(bool update_local)
|
|||||||
QCoreApplication::flush();
|
QCoreApplication::flush();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Creates a new action associated with a config page. */
|
|
||||||
QAction *MainWindow::createPageAction(const QIcon &icon, const QString &text, QActionGroup *group)
|
|
||||||
{
|
|
||||||
QFont font;
|
|
||||||
QAction *action = new QAction(icon, text, group);
|
|
||||||
font = action->font();
|
|
||||||
font.setPointSize(9);
|
|
||||||
action->setCheckable(true);
|
|
||||||
action->setFont(font);
|
|
||||||
return action;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Adds the given action to the toolbar and hooks its triggered() signal to
|
|
||||||
* the specified slot (if given). */
|
|
||||||
void MainWindow::addAction(QAction *action, const char *slot)
|
|
||||||
{
|
|
||||||
QFont font;
|
|
||||||
font = action->font();
|
|
||||||
font.setPointSize(9);
|
|
||||||
action->setFont(font);
|
|
||||||
ui->toolBar->addAction(action);
|
|
||||||
connect(action, SIGNAL(triggered()), this, slot);
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef WINDOWS_SYS
|
#ifdef WINDOWS_SYS
|
||||||
//void SetForegroundWindowInternal(HWND hWnd)
|
//void SetForegroundWindowInternal(HWND hWnd)
|
||||||
//{
|
//{
|
||||||
@ -1121,7 +1208,7 @@ MainWindow::retranslateUi()
|
|||||||
foreach (MainPage *page, ui->stackPages->pages()) {
|
foreach (MainPage *page, ui->stackPages->pages()) {
|
||||||
page->retranslateUi();
|
page->retranslateUi();
|
||||||
}
|
}
|
||||||
foreach (QAction *action, ui->toolBar->actions()) {
|
foreach (QAction *action, ui->toolBarPage->actions()) {
|
||||||
action->setText(tr(qPrintable(action->data().toString()), "MainWindow"));
|
action->setText(tr(qPrintable(action->data().toString()), "MainWindow"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1303,6 +1390,27 @@ void MainWindow::statusChangedComboBox(int index)
|
|||||||
/* no object known */
|
/* no object known */
|
||||||
setStatus(NULL, statusComboBox->itemData(index, Qt::UserRole).toInt());
|
setStatus(NULL, statusComboBox->itemData(index, Qt::UserRole).toInt());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*new setting*/
|
||||||
|
void MainWindow::settingsChanged()
|
||||||
|
{
|
||||||
|
ui->toolBarPage->setVisible(Settings->getPageButtonLoc());
|
||||||
|
ui->toolBarAction->setVisible(Settings->getActionButtonLoc());
|
||||||
|
ui->listWidget->setVisible(!Settings->getPageButtonLoc() || !Settings->getActionButtonLoc());
|
||||||
|
for(int i = 0; i < ui->listWidget->count(); i++) {
|
||||||
|
if (ui->listWidget->item(i)->data(Qt::UserRole).toString() == "") {
|
||||||
|
ui->listWidget->item(i)->setHidden(Settings->getPageButtonLoc());
|
||||||
|
} else {
|
||||||
|
ui->listWidget->item(i)->setHidden(Settings->getActionButtonLoc());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int size = Settings->getToolButtonSize();
|
||||||
|
ui->toolBarPage->setToolButtonStyle(Settings->getToolButtonStyle());
|
||||||
|
ui->toolBarPage->setIconSize(QSize(size,size));
|
||||||
|
ui->toolBarAction->setToolButtonStyle(Settings->getToolButtonStyle());
|
||||||
|
ui->toolBarAction->setIconSize(QSize(size,size));
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::externalLinkActivated(const QUrl &url)
|
void MainWindow::externalLinkActivated(const QUrl &url)
|
||||||
{
|
{
|
||||||
static bool already_warned = false ;
|
static bool already_warned = false ;
|
||||||
|
@ -34,6 +34,7 @@ class MainWindow;
|
|||||||
class QComboBox;
|
class QComboBox;
|
||||||
class QLabel;
|
class QLabel;
|
||||||
class QActionGroup;
|
class QActionGroup;
|
||||||
|
class QListWidgetItem;
|
||||||
class Idle;
|
class Idle;
|
||||||
class PeerStatus;
|
class PeerStatus;
|
||||||
class GxsChannelDialog ;
|
class GxsChannelDialog ;
|
||||||
@ -168,6 +169,8 @@ public slots:
|
|||||||
|
|
||||||
void retroshareLinkActivated(const QUrl &url);
|
void retroshareLinkActivated(const QUrl &url);
|
||||||
void externalLinkActivated(const QUrl &url);
|
void externalLinkActivated(const QUrl &url);
|
||||||
|
//! Go to a specific part of the control panel.
|
||||||
|
void setNewPage(int page);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/** Default Constructor */
|
/** Default Constructor */
|
||||||
@ -212,6 +215,7 @@ private slots:
|
|||||||
void showSettings();
|
void showSettings();
|
||||||
void statusChangedMenu(QAction *pAction);
|
void statusChangedMenu(QAction *pAction);
|
||||||
void statusChangedComboBox(int index);
|
void statusChangedComboBox(int index);
|
||||||
|
void settingsChanged();
|
||||||
|
|
||||||
/** Called when user attempts to quit via quit button*/
|
/** Called when user attempts to quit via quit button*/
|
||||||
void doQuit();
|
void doQuit();
|
||||||
@ -219,6 +223,8 @@ private slots:
|
|||||||
void updateTrayCombine();
|
void updateTrayCombine();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void initStackedPage();
|
||||||
|
void addPage(MainPage *page, QActionGroup *grp, QList<QPair<MainPage *, QPair<QAction *, QListWidgetItem *> > > *notify);
|
||||||
void createTrayIcon();
|
void createTrayIcon();
|
||||||
void createNotifyIcons();
|
void createNotifyIcons();
|
||||||
static MainWindow *_instance;
|
static MainWindow *_instance;
|
||||||
|
@ -28,12 +28,95 @@
|
|||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="MainPageStack" name="stackPages" native="true"/>
|
<widget class="QSplitter" name="splitter">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>571</width>
|
||||||
|
<height>421</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<widget class="QListWidget" name="listWidget">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>100</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="alternatingRowColors">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
<property name="iconSize">
|
||||||
|
<size>
|
||||||
|
<width>24</width>
|
||||||
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="textElideMode">
|
||||||
|
<enum>Qt::ElideMiddle</enum>
|
||||||
|
</property>
|
||||||
|
<property name="movement">
|
||||||
|
<enum>QListView::Static</enum>
|
||||||
|
</property>
|
||||||
|
<property name="flow">
|
||||||
|
<enum>QListView::TopToBottom</enum>
|
||||||
|
</property>
|
||||||
|
<property name="isWrapping" stdset="0">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
|
<property name="resizeMode">
|
||||||
|
<enum>QListView::Fixed</enum>
|
||||||
|
</property>
|
||||||
|
<property name="layoutMode">
|
||||||
|
<enum>QListView::SinglePass</enum>
|
||||||
|
</property>
|
||||||
|
<property name="spacing">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="gridSize">
|
||||||
|
<size>
|
||||||
|
<width>100</width>
|
||||||
|
<height>24</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="viewMode">
|
||||||
|
<enum>QListView::ListMode</enum>
|
||||||
|
</property>
|
||||||
|
<property name="modelColumn">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="uniformItemSizes">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<property name="currentRow">
|
||||||
|
<number>-1</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="MainPageStack" name="stackPages" native="true"/>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QStatusBar" name="statusbar"/>
|
<widget class="QStatusBar" name="statusbar"/>
|
||||||
<widget class="QToolBar" name="toolBar">
|
<widget class="QToolBar" name="toolBarPage">
|
||||||
|
<property name="contextMenuPolicy">
|
||||||
|
<enum>Qt::CustomContextMenu</enum>
|
||||||
|
</property>
|
||||||
|
<property name="toolButtonStyle">
|
||||||
|
<enum>Qt::ToolButtonTextUnderIcon</enum>
|
||||||
|
</property>
|
||||||
|
<attribute name="toolBarArea">
|
||||||
|
<enum>TopToolBarArea</enum>
|
||||||
|
</attribute>
|
||||||
|
<attribute name="toolBarBreak">
|
||||||
|
<bool>false</bool>
|
||||||
|
</attribute>
|
||||||
|
</widget>
|
||||||
|
<widget class="QToolBar" name="toolBarAction">
|
||||||
<property name="contextMenuPolicy">
|
<property name="contextMenuPolicy">
|
||||||
<enum>Qt::CustomContextMenu</enum>
|
<enum>Qt::CustomContextMenu</enum>
|
||||||
</property>
|
</property>
|
||||||
|
@ -27,6 +27,8 @@
|
|||||||
#include "mainpage.h"
|
#include "mainpage.h"
|
||||||
#include "ui_MessagesDialog.h"
|
#include "ui_MessagesDialog.h"
|
||||||
|
|
||||||
|
#define IMAGE_MESSAGES ":/images/evolution.png"
|
||||||
|
|
||||||
class MessageWidget;
|
class MessageWidget;
|
||||||
|
|
||||||
class MessagesDialog : public MainPage
|
class MessagesDialog : public MainPage
|
||||||
@ -41,6 +43,10 @@ public:
|
|||||||
/** Default Destructor */
|
/** Default Destructor */
|
||||||
~MessagesDialog();
|
~MessagesDialog();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_MESSAGES) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Messages") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
virtual UserNotify *getUserNotify(QObject *parent);
|
virtual UserNotify *getUserNotify(QObject *parent);
|
||||||
|
|
||||||
// replaced by shortcut
|
// replaced by shortcut
|
||||||
|
@ -27,6 +27,9 @@
|
|||||||
|
|
||||||
#include "gui/feeds/FeedHolder.h"
|
#include "gui/feeds/FeedHolder.h"
|
||||||
#include <retroshare-gui/RsAutoUpdatePage.h>
|
#include <retroshare-gui/RsAutoUpdatePage.h>
|
||||||
|
|
||||||
|
#define IMAGE_NEWSFEED ":/images/newsfeed/news-feed-32.png"
|
||||||
|
|
||||||
class RsFeedItem;
|
class RsFeedItem;
|
||||||
|
|
||||||
class ForumNewItem;
|
class ForumNewItem;
|
||||||
@ -44,6 +47,10 @@ public:
|
|||||||
/** Default Destructor */
|
/** Default Destructor */
|
||||||
virtual ~NewsFeed();
|
virtual ~NewsFeed();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_NEWSFEED) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("News feed") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
virtual UserNotify *getUserNotify(QObject *parent);
|
virtual UserNotify *getUserNotify(QObject *parent);
|
||||||
|
|
||||||
/* FeedHolder Functions (for FeedItem functionality) */
|
/* FeedHolder Functions (for FeedItem functionality) */
|
||||||
|
@ -30,6 +30,8 @@
|
|||||||
|
|
||||||
#include "ui_PeopleDialog.h"
|
#include "ui_PeopleDialog.h"
|
||||||
|
|
||||||
|
#define IMAGE_IDENTITY ":/images/identity/identities_32.png"
|
||||||
|
|
||||||
class UIStateHelper;
|
class UIStateHelper;
|
||||||
|
|
||||||
class PeopleDialog : public RsGxsUpdateBroadcastPage, public Ui::PeopleDialog
|
class PeopleDialog : public RsGxsUpdateBroadcastPage, public Ui::PeopleDialog
|
||||||
@ -39,6 +41,10 @@ class PeopleDialog : public RsGxsUpdateBroadcastPage, public Ui::PeopleDialog
|
|||||||
public:
|
public:
|
||||||
PeopleDialog(QWidget *parent = 0);
|
PeopleDialog(QWidget *parent = 0);
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_IDENTITY) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("People") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void updateDisplay(bool complete);
|
virtual void updateDisplay(bool complete);
|
||||||
|
|
||||||
|
@ -35,6 +35,8 @@
|
|||||||
#include "gui/gxs/GxsCommentContainer.h"
|
#include "gui/gxs/GxsCommentContainer.h"
|
||||||
#include "gui/feeds/FeedHolder.h"
|
#include "gui/feeds/FeedHolder.h"
|
||||||
|
|
||||||
|
#define IMAGE_POSTED ":/images/posted_32.png"
|
||||||
|
|
||||||
class PostedItem;
|
class PostedItem;
|
||||||
|
|
||||||
/*********************** **** **** **** ***********************/
|
/*********************** **** **** **** ***********************/
|
||||||
@ -55,6 +57,11 @@ class PostedListDialog : public RsGxsUpdateBroadcastPage, public FeedHolder, pub
|
|||||||
public:
|
public:
|
||||||
PostedListDialog(QWidget *parent = 0);
|
PostedListDialog(QWidget *parent = 0);
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_POSTED) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Posted Links") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
|
|
||||||
// Overloaded from FeedHolder.
|
// Overloaded from FeedHolder.
|
||||||
virtual QScrollArea *getScrollArea();
|
virtual QScrollArea *getScrollArea();
|
||||||
virtual void deleteFeedItem(QWidget *item, uint32_t type);
|
virtual void deleteFeedItem(QWidget *item, uint32_t type);
|
||||||
|
@ -35,6 +35,8 @@
|
|||||||
|
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
|
#define IMAGE_WIKI ":/images/wikibook_32.png"
|
||||||
|
|
||||||
class WikiAddDialog;
|
class WikiAddDialog;
|
||||||
class WikiEditDialog;
|
class WikiEditDialog;
|
||||||
|
|
||||||
@ -45,6 +47,11 @@ class WikiDialog : public MainPage, public TokenResponse
|
|||||||
public:
|
public:
|
||||||
WikiDialog(QWidget *parent = 0);
|
WikiDialog(QWidget *parent = 0);
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_WIKI) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Wiki Pages") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
|
|
||||||
void loadRequest(const TokenQueue *queue, const TokenRequest &req);
|
void loadRequest(const TokenQueue *queue, const TokenRequest &req);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
@ -31,6 +31,7 @@ UserNotify::UserNotify(QObject *parent) :
|
|||||||
{
|
{
|
||||||
mMainToolButton = NULL;
|
mMainToolButton = NULL;
|
||||||
mMainAction = NULL;
|
mMainAction = NULL;
|
||||||
|
mListItem = NULL;
|
||||||
mTrayIcon = NULL;
|
mTrayIcon = NULL;
|
||||||
mNotifyIcon = NULL;
|
mNotifyIcon = NULL;
|
||||||
mNewCount = 0;
|
mNewCount = 0;
|
||||||
@ -39,7 +40,7 @@ UserNotify::UserNotify(QObject *parent) :
|
|||||||
connect(rApp, SIGNAL(blink(bool)), this, SLOT(blink(bool)));
|
connect(rApp, SIGNAL(blink(bool)), this, SLOT(blink(bool)));
|
||||||
}
|
}
|
||||||
|
|
||||||
void UserNotify::initialize(QToolBar *mainToolBar, QAction *mainAction)
|
void UserNotify::initialize(QToolBar *mainToolBar, QAction *mainAction, QListWidgetItem *listItem)
|
||||||
{
|
{
|
||||||
mMainAction = mainAction;
|
mMainAction = mainAction;
|
||||||
if (mMainAction) {
|
if (mMainAction) {
|
||||||
@ -48,6 +49,10 @@ void UserNotify::initialize(QToolBar *mainToolBar, QAction *mainAction)
|
|||||||
mMainToolButton = dynamic_cast<QToolButton*>(mainToolBar->widgetForAction(mMainAction));
|
mMainToolButton = dynamic_cast<QToolButton*>(mainToolBar->widgetForAction(mMainAction));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
mListItem = listItem;
|
||||||
|
if (mListItem && !mMainAction) {
|
||||||
|
mButtonText = mMainAction->text();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void UserNotify::createIcons(QMenu *notifyMenu)
|
void UserNotify::createIcons(QMenu *notifyMenu)
|
||||||
@ -94,6 +99,14 @@ void UserNotify::updateIcon()
|
|||||||
mMainAction->setFont(font);
|
mMainAction->setFont(font);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (mListItem) {
|
||||||
|
mListItem->setIcon(getMainIcon(count > 0));
|
||||||
|
mListItem->setText((count > 0) ? QString("%1 (%2)").arg(mButtonText).arg(count) : mButtonText);
|
||||||
|
|
||||||
|
QFont font = mListItem->font();
|
||||||
|
font.setBold(count > 0);
|
||||||
|
mListItem->setFont(font);
|
||||||
|
}
|
||||||
if (mMainToolButton) {
|
if (mMainToolButton) {
|
||||||
mMainToolButton->setStyleSheet((count > 0) ? "QToolButton { color: #E21D3A; }" : "");
|
mMainToolButton->setStyleSheet((count > 0) ? "QToolButton { color: #E21D3A; }" : "");
|
||||||
|
|
||||||
|
@ -24,10 +24,12 @@
|
|||||||
|
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
#include <QSystemTrayIcon>
|
#include <QSystemTrayIcon>
|
||||||
|
#include <QListWidgetItem>
|
||||||
|
|
||||||
class QToolBar;
|
class QToolBar;
|
||||||
class QToolButton;
|
class QToolButton;
|
||||||
class QAction;
|
class QAction;
|
||||||
|
//class QListWidgetItem;
|
||||||
|
|
||||||
class UserNotify : public QObject
|
class UserNotify : public QObject
|
||||||
{
|
{
|
||||||
@ -36,7 +38,7 @@ class UserNotify : public QObject
|
|||||||
public:
|
public:
|
||||||
UserNotify(QObject *parent = 0);
|
UserNotify(QObject *parent = 0);
|
||||||
|
|
||||||
void initialize(QToolBar *mainToolBar, QAction *mainAction);
|
void initialize(QToolBar *mainToolBar, QAction *mainAction, QListWidgetItem *listItem);
|
||||||
void createIcons(QMenu *notifyMenu);
|
void createIcons(QMenu *notifyMenu);
|
||||||
|
|
||||||
virtual bool hasSetting(QString &/*name*/) { return false; }
|
virtual bool hasSetting(QString &/*name*/) { return false; }
|
||||||
@ -67,6 +69,7 @@ private:
|
|||||||
|
|
||||||
QToolButton *mMainToolButton;
|
QToolButton *mMainToolButton;
|
||||||
QAction *mMainAction;
|
QAction *mMainAction;
|
||||||
|
QListWidgetItem *mListItem;
|
||||||
QSystemTrayIcon *mTrayIcon;
|
QSystemTrayIcon *mTrayIcon;
|
||||||
QAction *mNotifyIcon;
|
QAction *mNotifyIcon;
|
||||||
unsigned int mNewCount;
|
unsigned int mNewCount;
|
||||||
|
@ -24,6 +24,8 @@
|
|||||||
|
|
||||||
#include "gui/gxs/GxsGroupFrameDialog.h"
|
#include "gui/gxs/GxsGroupFrameDialog.h"
|
||||||
|
|
||||||
|
#define IMAGE_GXSCHANNELS ":/images/channels.png"
|
||||||
|
|
||||||
class GxsChannelDialog : public GxsGroupFrameDialog
|
class GxsChannelDialog : public GxsGroupFrameDialog
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
@ -34,6 +36,10 @@ public:
|
|||||||
/** Default Destructor */
|
/** Default Destructor */
|
||||||
~GxsChannelDialog();
|
~GxsChannelDialog();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_GXSCHANNELS) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Channels") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
// virtual UserNotify *getUserNotify(QObject *parent);
|
// virtual UserNotify *getUserNotify(QObject *parent);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
@ -24,6 +24,8 @@
|
|||||||
|
|
||||||
#include "gui/gxs/GxsGroupFrameDialog.h"
|
#include "gui/gxs/GxsGroupFrameDialog.h"
|
||||||
|
|
||||||
|
#define IMAGE_GXSFORUMS ":/images/konversation.png"
|
||||||
|
|
||||||
class GxsForumsDialog : public GxsGroupFrameDialog
|
class GxsForumsDialog : public GxsGroupFrameDialog
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
@ -32,6 +34,10 @@ public:
|
|||||||
GxsForumsDialog(QWidget *parent = 0);
|
GxsForumsDialog(QWidget *parent = 0);
|
||||||
~GxsForumsDialog();
|
~GxsForumsDialog();
|
||||||
|
|
||||||
|
virtual QIcon iconPixmap() const { return QIcon(IMAGE_GXSFORUMS) ; } //MainPage
|
||||||
|
virtual QString pageName() const { return tr("Forums") ; } //MainPage
|
||||||
|
virtual QString helpText() const { return ""; } //MainPage
|
||||||
|
|
||||||
// virtual UserNotify *getUserNotify(QObject *parent);
|
// virtual UserNotify *getUserNotify(QObject *parent);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
@ -35,7 +35,7 @@ AppearancePage::AppearancePage(QWidget * parent, Qt::WindowFlags flags)
|
|||||||
/* Invoke the Qt Designer generated object setup routine */
|
/* Invoke the Qt Designer generated object setup routine */
|
||||||
ui.setupUi(this);
|
ui.setupUi(this);
|
||||||
|
|
||||||
connect(ui.styleSheetCombo, SIGNAL(activated(int)), this, SLOT(loadStyleSheet(int)));
|
connect(ui.cmboStyleSheet, SIGNAL(activated(int)), this, SLOT(loadStyleSheet(int)));
|
||||||
|
|
||||||
/* Populate combo boxes */
|
/* Populate combo boxes */
|
||||||
foreach (QString code, LanguageSupport::languageCodes()) {
|
foreach (QString code, LanguageSupport::languageCodes()) {
|
||||||
@ -46,13 +46,13 @@ AppearancePage::AppearancePage(QWidget * parent, Qt::WindowFlags flags)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// add empty entry representing "no style sheet"
|
// add empty entry representing "no style sheet"
|
||||||
ui.styleSheetCombo->addItem("", "");
|
ui.cmboStyleSheet->addItem("", "");
|
||||||
|
|
||||||
QMap<QString, QString> styleSheets;
|
QMap<QString, QString> styleSheets;
|
||||||
Rshare::getAvailableStyleSheets(styleSheets);
|
Rshare::getAvailableStyleSheets(styleSheets);
|
||||||
|
|
||||||
foreach (QString name, styleSheets.keys()) {
|
foreach (QString name, styleSheets.keys()) {
|
||||||
ui.styleSheetCombo->addItem(name, styleSheets[name]);
|
ui.cmboStyleSheet->addItem(name, styleSheets[name]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Hide platform specific features */
|
/* Hide platform specific features */
|
||||||
@ -69,7 +69,39 @@ bool AppearancePage::save(QString &errmsg)
|
|||||||
|
|
||||||
Settings->setLanguageCode(languageCode);
|
Settings->setLanguageCode(languageCode);
|
||||||
Settings->setInterfaceStyle(ui.cmboStyle->currentText());
|
Settings->setInterfaceStyle(ui.cmboStyle->currentText());
|
||||||
Settings->setSheetName(ui.styleSheetCombo->itemData(ui.styleSheetCombo->currentIndex()).toString());
|
Settings->setSheetName(ui.cmboStyleSheet->itemData(ui.cmboStyleSheet->currentIndex()).toString());
|
||||||
|
Settings->setPageButtonLoc(ui.rbtPageOnToolBar->isChecked());
|
||||||
|
Settings->setActionButtonLoc(ui.rbtActionOnToolBar->isChecked());
|
||||||
|
switch (ui.cmboTollButtonsStyle->currentIndex())
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
Settings->setToolButtonStyle(Qt::ToolButtonIconOnly);
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
Settings->setToolButtonStyle(Qt::ToolButtonTextOnly);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
Settings->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
default:
|
||||||
|
Settings->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
|
||||||
|
}
|
||||||
|
switch (ui.cmboTollButtonsSize->currentIndex())
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
Settings->setToolButtonSize(8);
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
Settings->setToolButtonSize(16);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
default:
|
||||||
|
Settings->setToolButtonSize(24);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
Settings->setToolButtonSize(32);
|
||||||
|
}
|
||||||
|
|
||||||
/* Set to new style */
|
/* Set to new style */
|
||||||
Rshare::setStyle(ui.cmboStyle->currentText());
|
Rshare::setStyle(ui.cmboStyle->currentText());
|
||||||
@ -86,15 +118,50 @@ void AppearancePage::load()
|
|||||||
index = ui.cmboStyle->findData(Rshare::style().toLower());
|
index = ui.cmboStyle->findData(Rshare::style().toLower());
|
||||||
ui.cmboStyle->setCurrentIndex(index);
|
ui.cmboStyle->setCurrentIndex(index);
|
||||||
|
|
||||||
index = ui.styleSheetCombo->findData(Settings->getSheetName());
|
index = ui.cmboStyleSheet->findData(Settings->getSheetName());
|
||||||
if (index == -1) {
|
if (index == -1) {
|
||||||
/* set standard "no style sheet" */
|
/* set standard "no style sheet" */
|
||||||
index = ui.styleSheetCombo->findData("");
|
index = ui.cmboStyleSheet->findData("");
|
||||||
|
}
|
||||||
|
ui.cmboStyleSheet->setCurrentIndex(index);
|
||||||
|
|
||||||
|
ui.rbtPageOnToolBar->setChecked(Settings->getPageButtonLoc());
|
||||||
|
ui.rbtPageOnListItem->setChecked(!Settings->getPageButtonLoc());
|
||||||
|
ui.rbtActionOnToolBar->setChecked(Settings->getActionButtonLoc());
|
||||||
|
ui.rbtActionOnListItem->setChecked(!Settings->getActionButtonLoc());
|
||||||
|
switch (Settings->getToolButtonStyle())
|
||||||
|
{
|
||||||
|
case Qt::ToolButtonIconOnly:
|
||||||
|
ui.cmboTollButtonsStyle->setCurrentIndex(0);
|
||||||
|
break;
|
||||||
|
case Qt::ToolButtonTextOnly:
|
||||||
|
ui.cmboTollButtonsStyle->setCurrentIndex(1);
|
||||||
|
break;
|
||||||
|
case Qt::ToolButtonTextBesideIcon:
|
||||||
|
ui.cmboTollButtonsStyle->setCurrentIndex(2);
|
||||||
|
break;
|
||||||
|
case Qt::ToolButtonTextUnderIcon:
|
||||||
|
default:
|
||||||
|
ui.cmboTollButtonsStyle->setCurrentIndex(3);
|
||||||
|
}
|
||||||
|
switch (Settings->getToolButtonSize())
|
||||||
|
{
|
||||||
|
case 8:
|
||||||
|
ui.cmboTollButtonsSize->setCurrentIndex(0);
|
||||||
|
break;
|
||||||
|
case 16:
|
||||||
|
ui.cmboTollButtonsSize->setCurrentIndex(1);
|
||||||
|
break;
|
||||||
|
case 24:
|
||||||
|
default:
|
||||||
|
ui.cmboTollButtonsSize->setCurrentIndex(2);
|
||||||
|
break;
|
||||||
|
case 32:
|
||||||
|
ui.cmboTollButtonsSize->setCurrentIndex(3);
|
||||||
}
|
}
|
||||||
ui.styleSheetCombo->setCurrentIndex(index);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AppearancePage::loadStyleSheet(int index)
|
void AppearancePage::loadStyleSheet(int index)
|
||||||
{
|
{
|
||||||
Rshare::loadStyleSheet(ui.styleSheetCombo->itemData(index).toString());
|
Rshare::loadStyleSheet(ui.cmboStyleSheet->itemData(index).toString());
|
||||||
}
|
}
|
||||||
|
@ -6,8 +6,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>406</width>
|
<width>598</width>
|
||||||
<height>291</height>
|
<height>567</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="contextMenuPolicy">
|
<property name="contextMenuPolicy">
|
||||||
@ -20,6 +20,190 @@
|
|||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
|
<item row="4" column="0">
|
||||||
|
<widget class="QGroupBox" name="grpToolBar">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>75</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="contextMenuPolicy">
|
||||||
|
<enum>Qt::NoContextMenu</enum>
|
||||||
|
</property>
|
||||||
|
<property name="title">
|
||||||
|
<string>Tool Bar</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QGridLayout" name="gridLayout_ToolBar">
|
||||||
|
<item row="4" column="0">
|
||||||
|
<widget class="QFrame" name="frameAction">
|
||||||
|
<property name="frameShape">
|
||||||
|
<enum>QFrame::StyledPanel</enum>
|
||||||
|
</property>
|
||||||
|
<property name="frameShadow">
|
||||||
|
<enum>QFrame::Plain</enum>
|
||||||
|
</property>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||||
|
<property name="margin">
|
||||||
|
<number>2</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="rbtActionOnToolBar">
|
||||||
|
<property name="text">
|
||||||
|
<string>On Tool Bar</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="rbtActionOnListItem">
|
||||||
|
<property name="text">
|
||||||
|
<string>On List Item</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer>
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>300</width>
|
||||||
|
<height>16</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="2" column="0">
|
||||||
|
<widget class="QFrame" name="framePage">
|
||||||
|
<property name="frameShape">
|
||||||
|
<enum>QFrame::StyledPanel</enum>
|
||||||
|
</property>
|
||||||
|
<property name="frameShadow">
|
||||||
|
<enum>QFrame::Plain</enum>
|
||||||
|
</property>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||||
|
<property name="margin">
|
||||||
|
<number>2</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="rbtPageOnToolBar">
|
||||||
|
<property name="text">
|
||||||
|
<string>On Tool Bar</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QRadioButton" name="rbtPageOnListItem">
|
||||||
|
<property name="text">
|
||||||
|
<string>On List Item</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer>
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>300</width>
|
||||||
|
<height>16</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="3" column="0">
|
||||||
|
<widget class="QLabel" name="labelActionToolBar">
|
||||||
|
<property name="text">
|
||||||
|
<string>Where do you want to have the buttons for menu?</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="1" column="0">
|
||||||
|
<widget class="QLabel" name="labelPageToolBar">
|
||||||
|
<property name="text">
|
||||||
|
<string>Where do you want to have the buttons for the page?</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="5" column="0">
|
||||||
|
<widget class="QLabel" name="labelToolButtonStyle">
|
||||||
|
<property name="text">
|
||||||
|
<string>Choose the style of Tool Buttons.</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="6" column="0">
|
||||||
|
<widget class="QComboBox" name="cmboTollButtonsStyle">
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Icon Only</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Text Only</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Text Beside Icon</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Text Under Icon</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="7" column="0">
|
||||||
|
<widget class="QComboBox" name="cmboTollButtonsSize">
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Icon Size = 8x8</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Icon Size = 16x16</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Icon Size = 24x24</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>Inon Size = 32x32</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="6" column="0">
|
||||||
|
<spacer>
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>361</width>
|
||||||
|
<height>61</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QGroupBox" name="grpLanguage">
|
<widget class="QGroupBox" name="grpLanguage">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
@ -34,9 +218,9 @@
|
|||||||
<property name="title">
|
<property name="title">
|
||||||
<string>Language</string>
|
<string>Language</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_appearance">
|
<layout class="QGridLayout" name="gridLayout_Language">
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="label">
|
<widget class="QLabel" name="labelLanguage">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Changes to language will only take effect after restarting RetroShare!</string>
|
<string>Changes to language will only take effect after restarting RetroShare!</string>
|
||||||
</property>
|
</property>
|
||||||
@ -77,6 +261,44 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="2" column="0">
|
||||||
|
<widget class="QGroupBox" name="grpStyleSheet">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>64</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="title">
|
||||||
|
<string>Style Sheet</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QGridLayout" name="gridLayout_StyleSheet">
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QComboBox" name="cmboStyleSheet">
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>150</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<spacer>
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>215</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QGroupBox" name="grpStyle">
|
<widget class="QGroupBox" name="grpStyle">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
@ -94,7 +316,7 @@
|
|||||||
<property name="title">
|
<property name="title">
|
||||||
<string>Style</string>
|
<string>Style</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_2">
|
<layout class="QGridLayout" name="gridLayout_Style">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QComboBox" name="cmboStyle">
|
<widget class="QComboBox" name="cmboStyle">
|
||||||
<property name="minimumSize">
|
<property name="minimumSize">
|
||||||
@ -124,57 +346,6 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="0">
|
|
||||||
<widget class="QGroupBox" name="groupBox">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>0</width>
|
|
||||||
<height>64</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="title">
|
|
||||||
<string>Style Sheet</string>
|
|
||||||
</property>
|
|
||||||
<layout class="QGridLayout" name="gridLayout_3">
|
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QComboBox" name="styleSheetCombo">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>150</width>
|
|
||||||
<height>0</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="1">
|
|
||||||
<spacer>
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>215</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="3" column="0">
|
|
||||||
<spacer>
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Vertical</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>361</width>
|
|
||||||
<height>61</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<resources/>
|
<resources/>
|
||||||
|
@ -44,6 +44,10 @@
|
|||||||
#define SETTING_LANGUAGE "LanguageCode"
|
#define SETTING_LANGUAGE "LanguageCode"
|
||||||
#define SETTING_STYLE "InterfaceStyle"
|
#define SETTING_STYLE "InterfaceStyle"
|
||||||
#define SETTING_SHEETNAME "SheetName"
|
#define SETTING_SHEETNAME "SheetName"
|
||||||
|
#define SETTING_PAGEBUTTONLOC "PageButtonLocation"
|
||||||
|
#define SETTING_ACTIONBUTTONLOC "ActionButtonLocation"
|
||||||
|
#define SETTING_TOOLBUTTONSTYLE "ToolButtonStyle"
|
||||||
|
#define SETTING_TOOLBUTTONSIZE "ToolButtonSize"
|
||||||
|
|
||||||
#define SETTING_DATA_DIRECTORY "DataDirectory"
|
#define SETTING_DATA_DIRECTORY "DataDirectory"
|
||||||
#define SETTING_BWGRAPH_FILTER "StatisticDialog/BWLineFilter"
|
#define SETTING_BWGRAPH_FILTER "StatisticDialog/BWLineFilter"
|
||||||
@ -69,6 +73,12 @@
|
|||||||
#define DEFAULT_BWGRAPH_FILTER (BWGRAPH_SEND|BWGRAPH_REC)
|
#define DEFAULT_BWGRAPH_FILTER (BWGRAPH_SEND|BWGRAPH_REC)
|
||||||
#define DEFAULT_BWGRAPH_ALWAYS_ON_TOP false
|
#define DEFAULT_BWGRAPH_ALWAYS_ON_TOP false
|
||||||
|
|
||||||
|
/* values for ToolButtonStyle */
|
||||||
|
#define SETTING_VALUE_TOOLBUTTONSTYLE_ICONONLY 1
|
||||||
|
#define SETTING_VALUE_TOOLBUTTONSTYLE_TEXTONLY 2
|
||||||
|
#define SETTING_VALUE_TOOLBUTTONSTYLE_TEXTBESIDEICON 3
|
||||||
|
#define SETTING_VALUE_TOOLBUTTONSTYLE_TEXTUNDERICON 4
|
||||||
|
|
||||||
// the one and only global settings object
|
// the one and only global settings object
|
||||||
RshareSettings *Settings = NULL;
|
RshareSettings *Settings = NULL;
|
||||||
|
|
||||||
@ -171,6 +181,102 @@ void RshareSettings::setSheetName(QString sheet)
|
|||||||
setValue(SETTING_SHEETNAME, sheet);
|
setValue(SETTING_SHEETNAME, sheet);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Gets the page button Location.*/
|
||||||
|
bool RshareSettings::getPageButtonLoc()
|
||||||
|
{
|
||||||
|
return value(SETTING_PAGEBUTTONLOC, false).toBool();
|
||||||
|
}
|
||||||
|
/** Sets the page button Location.*/
|
||||||
|
void RshareSettings::setPageButtonLoc(bool onToolBar)
|
||||||
|
{
|
||||||
|
setValue(SETTING_PAGEBUTTONLOC, onToolBar);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Gets the action button Location.*/
|
||||||
|
bool RshareSettings::getActionButtonLoc()
|
||||||
|
{
|
||||||
|
return value(SETTING_ACTIONBUTTONLOC, true).toBool();
|
||||||
|
}
|
||||||
|
/** Sets the action button Location.*/
|
||||||
|
void RshareSettings::setActionButtonLoc(bool onToolBar)
|
||||||
|
{
|
||||||
|
setValue(SETTING_ACTIONBUTTONLOC, onToolBar);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Gets the tool button's style.*/
|
||||||
|
Qt::ToolButtonStyle RshareSettings::getToolButtonStyle()
|
||||||
|
{
|
||||||
|
int intValue=value(SETTING_TOOLBUTTONSTYLE, SETTING_VALUE_TOOLBUTTONSTYLE_TEXTUNDERICON).toInt();
|
||||||
|
switch (intValue)
|
||||||
|
{
|
||||||
|
case SETTING_VALUE_TOOLBUTTONSTYLE_ICONONLY:
|
||||||
|
return Qt::ToolButtonIconOnly;
|
||||||
|
case SETTING_VALUE_TOOLBUTTONSTYLE_TEXTONLY:
|
||||||
|
return Qt::ToolButtonTextOnly;
|
||||||
|
case SETTING_VALUE_TOOLBUTTONSTYLE_TEXTBESIDEICON:
|
||||||
|
return Qt::ToolButtonTextBesideIcon;
|
||||||
|
case SETTING_VALUE_TOOLBUTTONSTYLE_TEXTUNDERICON:
|
||||||
|
default:
|
||||||
|
return Qt::ToolButtonTextUnderIcon;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/** Sets the tool button's style.*/
|
||||||
|
void RshareSettings::setToolButtonStyle(Qt::ToolButtonStyle style)
|
||||||
|
{
|
||||||
|
switch (style)
|
||||||
|
{
|
||||||
|
case Qt::ToolButtonIconOnly:
|
||||||
|
setValue(SETTING_TOOLBUTTONSTYLE, SETTING_VALUE_TOOLBUTTONSTYLE_ICONONLY);
|
||||||
|
break;
|
||||||
|
case Qt::ToolButtonTextOnly:
|
||||||
|
setValue(SETTING_TOOLBUTTONSTYLE, SETTING_VALUE_TOOLBUTTONSTYLE_TEXTONLY);
|
||||||
|
break;
|
||||||
|
case Qt::ToolButtonTextBesideIcon:
|
||||||
|
setValue(SETTING_TOOLBUTTONSTYLE, SETTING_VALUE_TOOLBUTTONSTYLE_TEXTBESIDEICON);
|
||||||
|
break;
|
||||||
|
case Qt::ToolButtonTextUnderIcon:
|
||||||
|
default:
|
||||||
|
setValue(SETTING_TOOLBUTTONSTYLE, SETTING_VALUE_TOOLBUTTONSTYLE_TEXTUNDERICON);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Gets the tool button's size.*/
|
||||||
|
int RshareSettings::getToolButtonSize()
|
||||||
|
{
|
||||||
|
int intValue=value(SETTING_TOOLBUTTONSIZE, 24).toInt();
|
||||||
|
switch (intValue)
|
||||||
|
{
|
||||||
|
case 8:
|
||||||
|
return 8;
|
||||||
|
case 16:
|
||||||
|
return 16;
|
||||||
|
case 24:
|
||||||
|
default:
|
||||||
|
return 24;
|
||||||
|
case 32:
|
||||||
|
return 32;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Sets the tool button's size.*/
|
||||||
|
void RshareSettings::setToolButtonSize(int size)
|
||||||
|
{
|
||||||
|
switch (size)
|
||||||
|
{
|
||||||
|
case 8:
|
||||||
|
setValue(SETTING_TOOLBUTTONSIZE, 8);
|
||||||
|
break;
|
||||||
|
case 16:
|
||||||
|
setValue(SETTING_TOOLBUTTONSIZE, 16);
|
||||||
|
break;
|
||||||
|
case 24:
|
||||||
|
default:
|
||||||
|
setValue(SETTING_TOOLBUTTONSIZE, 24);
|
||||||
|
break;
|
||||||
|
case 32:
|
||||||
|
setValue(SETTING_TOOLBUTTONSIZE, 32);
|
||||||
|
}
|
||||||
|
}
|
||||||
static QString getKeyForLastDir(RshareSettings::enumLastDir type)
|
static QString getKeyForLastDir(RshareSettings::enumLastDir type)
|
||||||
{
|
{
|
||||||
switch (type) {
|
switch (type) {
|
||||||
|
@ -112,6 +112,26 @@ public:
|
|||||||
/** Gets the stylesheet */
|
/** Gets the stylesheet */
|
||||||
QString getSheetName();
|
QString getSheetName();
|
||||||
|
|
||||||
|
/** Gets the page button Location.*/
|
||||||
|
bool getPageButtonLoc();
|
||||||
|
/** Sets the page button Location.*/
|
||||||
|
void setPageButtonLoc(bool onToolBar);
|
||||||
|
|
||||||
|
/** Gets the action button Location.*/
|
||||||
|
bool getActionButtonLoc();
|
||||||
|
/** Sets the action button Location.*/
|
||||||
|
void setActionButtonLoc(bool onToolBar);
|
||||||
|
|
||||||
|
/** Gets the tool button's style.*/
|
||||||
|
Qt::ToolButtonStyle getToolButtonStyle();
|
||||||
|
/** Sets the tool button's style.*/
|
||||||
|
void setToolButtonStyle(Qt::ToolButtonStyle style);
|
||||||
|
|
||||||
|
/** Gets the tool button's size.*/
|
||||||
|
int getToolButtonSize();
|
||||||
|
/** Sets the tool button's size.*/
|
||||||
|
void setToolButtonSize(int size);
|
||||||
|
|
||||||
/** Returns true if RetroShare's main window should be visible when the
|
/** Returns true if RetroShare's main window should be visible when the
|
||||||
* application starts. */
|
* application starts. */
|
||||||
bool getStartMinimized();
|
bool getStartMinimized();
|
||||||
|
@ -115,7 +115,7 @@ ApplicationWindow::ApplicationWindow(QWidget* parent, Qt::WindowFlags flags)
|
|||||||
mNotify.push_back(QPair<MainPage*, QAction*>(photoShare, action));
|
mNotify.push_back(QPair<MainPage*, QAction*>(photoShare, action));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
PostedDialog *postedDialog = NULL;
|
/*PostedDialog *postedDialog = NULL;
|
||||||
ui.stackPages->add(postedDialog = new PostedDialog(ui.stackPages),
|
ui.stackPages->add(postedDialog = new PostedDialog(ui.stackPages),
|
||||||
action = createPageAction(QIcon(IMAGE_POSTED), tr("Posted Links"), grp));
|
action = createPageAction(QIcon(IMAGE_POSTED), tr("Posted Links"), grp));
|
||||||
postedDialog->setup();
|
postedDialog->setup();
|
||||||
@ -124,7 +124,7 @@ ApplicationWindow::ApplicationWindow(QWidget* parent, Qt::WindowFlags flags)
|
|||||||
WikiDialog *wikiDialog = NULL;
|
WikiDialog *wikiDialog = NULL;
|
||||||
ui.stackPages->add(wikiDialog = new WikiDialog(ui.stackPages),
|
ui.stackPages->add(wikiDialog = new WikiDialog(ui.stackPages),
|
||||||
action = createPageAction(QIcon(IMAGE_WIKI), tr("Wiki Pages"), grp));
|
action = createPageAction(QIcon(IMAGE_WIKI), tr("Wiki Pages"), grp));
|
||||||
mNotify.push_back(QPair<MainPage*, QAction*>(wikiDialog, action));
|
mNotify.push_back(QPair<MainPage*, QAction*>(wikiDialog, action));*/
|
||||||
#if 0
|
#if 0
|
||||||
GxsForumsDialog *gxsforumsDialog = NULL;
|
GxsForumsDialog *gxsforumsDialog = NULL;
|
||||||
ui.stackPages->add(gxsforumsDialog = new GxsForumsDialog(ui.stackPages),
|
ui.stackPages->add(gxsforumsDialog = new GxsForumsDialog(ui.stackPages),
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
#include <QTextBrowser>
|
#include <QTextBrowser>
|
||||||
|
#include <QIcon>
|
||||||
|
|
||||||
class UserNotify;
|
class UserNotify;
|
||||||
class QAbstractButton ;
|
class QAbstractButton ;
|
||||||
@ -34,20 +35,38 @@ class MainPage : public QWidget
|
|||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/** Default Constructor */
|
/** Default Constructor */
|
||||||
MainPage(QWidget *parent = 0, Qt::WindowFlags flags = 0) ;
|
MainPage(QWidget *parent = 0, Qt::WindowFlags flags = 0);
|
||||||
|
|
||||||
virtual void retranslateUi() {}
|
// Icon to be used to display the main page.
|
||||||
virtual UserNotify *getUserNotify(QObject */*parent*/) { return NULL; }
|
//
|
||||||
|
virtual QIcon iconPixmap() const { return mIcon ; }
|
||||||
|
void setIconPixmap(QIcon icon) { mIcon = icon; }
|
||||||
|
|
||||||
|
// Name of the page, to put in the leftside list and action name
|
||||||
|
//
|
||||||
|
virtual QString pageName() const { return mName ; }
|
||||||
|
void setPageName(QString name) { mName = name; }
|
||||||
|
|
||||||
|
// Text to be used to display in the help browser
|
||||||
|
//
|
||||||
|
virtual QString helpText() const { return mHelp ; }
|
||||||
|
void setHelpText(QString help) { mHelp = help; }
|
||||||
|
|
||||||
|
virtual void retranslateUi() {}
|
||||||
|
virtual UserNotify *getUserNotify(QObject */*parent*/) { return NULL; }
|
||||||
|
|
||||||
// Overload this to add some help info to the page. The way the info is
|
// Overload this to add some help info to the page. The way the info is
|
||||||
// shown is handled by showHelp() below;
|
// shown is handled by showHelp() below;
|
||||||
//
|
//
|
||||||
void registerHelpButton(QAbstractButton *button, const QString& help_html_text) ;
|
void registerHelpButton(QAbstractButton *button, const QString& help_html_text) ;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
FloatingHelpBrowser *mHelpBrowser ;
|
FloatingHelpBrowser *mHelpBrowser ;
|
||||||
|
QIcon mIcon;
|
||||||
|
QString mName;
|
||||||
|
QString mHelp;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user