diff --git a/retroshare-gui/src/RetroShare.pro b/retroshare-gui/src/RetroShare.pro index 7243cb468..208ad57fb 100644 --- a/retroshare-gui/src/RetroShare.pro +++ b/retroshare-gui/src/RetroShare.pro @@ -118,9 +118,12 @@ macx { LIBS += ../../libretroshare/src/lib/libretroshare.a LIBS += -lssl -lcrypto -lz -lgpgme -lgpg-error LIBS += ../../../miniupnpc-1.0/libminiupnpc.a + LIBS += -framework CoreFoundation INCLUDEPATH += . #DEFINES* = MAC_IDLE # for idle feature + CONFIG -= uitools + } diff --git a/retroshare-gui/src/gui/settings/ServerPage.cpp b/retroshare-gui/src/gui/settings/ServerPage.cpp index eb423f535..9ee9953d2 100755 --- a/retroshare-gui/src/gui/settings/ServerPage.cpp +++ b/retroshare-gui/src/gui/settings/ServerPage.cpp @@ -135,11 +135,36 @@ void ServerPage::load() } ui.netModeComboBox->setCurrentIndex(netIndex); - netIndex = 1; - if (detail.visState & RS_VS_DISC_ON) + /* DHT + Discovery: (public) + * Discovery only: (private) + * DHT only: (inverted) + * None: (dark net) + */ + + netIndex = 3; // NONE. + if (detail.visState & RS_VS_DHT_ON) { - netIndex = 0; + if (detail.visState & RS_VS_DISC_ON) + { + netIndex = 0; // PUBLIC + } + else + { + netIndex = 2; // INVERTED + } } + else + { + if (detail.visState & RS_VS_DISC_ON) + { + netIndex = 1; // PRIVATE + } + else + { + netIndex = 3; // NONE + } + } + ui.discComboBox->setCurrentIndex(netIndex); rsiface->lockData(); /* Lock Interface */ @@ -249,8 +274,21 @@ void ServerPage::saveAddresses() uint32_t visState = 0; /* Check if vis has changed */ - if (0 == ui.discComboBox->currentIndex()) - visState |= RS_VS_DISC_ON; + switch(ui.discComboBox->currentIndex()) + { + case 0: + visState |= (RS_VS_DISC_ON | RS_VS_DHT_ON); + break; + case 1: + visState |= RS_VS_DISC_ON; + break; + case 2: + visState |= RS_VS_DHT_ON; + break; + case 3: + default: + break; + } if (visState != detail.visState) rsPeers->setVisState(ownId, visState); diff --git a/retroshare-gui/src/gui/settings/ServerPage.ui b/retroshare-gui/src/gui/settings/ServerPage.ui index 80bb02f4e..bc2e5c902 100755 --- a/retroshare-gui/src/gui/settings/ServerPage.ui +++ b/retroshare-gui/src/gui/settings/ServerPage.ui @@ -492,9 +492,6 @@ 6 - - 6 - @@ -546,17 +543,33 @@ + + + 200 + 0 + + Should be disabled if you don't want to share connection information between peers. - Discovery Enabled + Public: DHT & Discovery - Discovery Disabled + Private: Discovery Only + + + + + Inverted: DHT Only + + + + + Dark Net: None @@ -580,12 +593,6 @@ - - 6 - - - 0 - diff --git a/retroshare-gui/src/gui/statusbar/dhtstatus.cpp b/retroshare-gui/src/gui/statusbar/dhtstatus.cpp index 91c8a4e44..c13f1bf13 100644 --- a/retroshare-gui/src/gui/statusbar/dhtstatus.cpp +++ b/retroshare-gui/src/gui/statusbar/dhtstatus.cpp @@ -82,6 +82,15 @@ void DHTStatus::getDHTStatus() dhtstatusLabel->setPixmap(QPixmap(":/images/redled.png")); dhtstatusLabel->setToolTip(tr("DHT Off")); } + + QString dhtsize; + { + std::ostringstream out; + out << (int) config.netDhtRsNetSize << " ( " << (int) config.netDhtNetSize << " )"; + dhtsize = QString::fromStdString(out.str()); + } + + dhtnetworksizeLabel->setText(dhtsize); rsiface->unlockData(); /* UnLock Interface */