UI stuff and sign .dmg on build.

This commit is contained in:
Adam Ierymenko 2014-08-19 17:42:17 -07:00
parent 721625d512
commit 351b7f3a09
6 changed files with 92 additions and 25 deletions

View File

@ -36,19 +36,18 @@ SOURCES += main.cpp \
../node/PacketDecoder.cpp \ ../node/PacketDecoder.cpp \
../node/Peer.cpp \ ../node/Peer.cpp \
../node/Poly1305.cpp \ ../node/Poly1305.cpp \
../node/RoutingTable.cpp \
../node/Salsa20.cpp \ ../node/Salsa20.cpp \
../node/Service.cpp \ ../node/Service.cpp \
../node/SHA512.cpp \ ../node/SHA512.cpp \
../node/SocketManager.cpp \ ../node/SocketManager.cpp \
../node/SoftwareUpdater.cpp \ ../node/SoftwareUpdater.cpp \
../node/Switch.cpp \ ../node/Switch.cpp \
../node/SysEnv.cpp \
../node/TcpSocket.cpp \ ../node/TcpSocket.cpp \
../node/Topology.cpp \ ../node/Topology.cpp \
../node/UdpSocket.cpp \ ../node/UdpSocket.cpp \
../node/Utils.cpp \ ../node/Utils.cpp \
../ext/lz4/lz4.c \ ../ext/lz4/lz4.c \
../ext/lz4/lz4hc.c \
../node/Dictionary.cpp ../node/Dictionary.cpp
HEADERS += mainwindow.h \ HEADERS += mainwindow.h \
@ -99,20 +98,16 @@ HEADERS += mainwindow.h \
../node/SocketManager.hpp \ ../node/SocketManager.hpp \
../node/SoftwareUpdater.hpp \ ../node/SoftwareUpdater.hpp \
../node/Switch.hpp \ ../node/Switch.hpp \
../node/SysEnv.hpp \ ../node/RoutingTable.hpp \
../node/TcpSocket.hpp \ ../node/TcpSocket.hpp \
../node/Thread.hpp \ ../node/Thread.hpp \
../node/Topology.hpp \ ../node/Topology.hpp \
../node/UdpSocket.hpp \ ../node/UdpSocket.hpp \
../node/Utils.hpp \ ../node/Utils.hpp \
../ext/lz4/lz4.h \ ../ext/lz4/lz4.h \
../ext/lz4/lz4hc.h \
../node/EthernetTap.hpp \ ../node/EthernetTap.hpp \
../node/EthernetTapFactory.hpp ../node/EthernetTapFactory.hpp
win32:SOURCES += ../node/WindowsEthernetTap.cpp
mac:SOURCES += ../node/UnixEthernetTap.cpp
FORMS += mainwindow.ui \ FORMS += mainwindow.ui \
aboutwindow.ui \ aboutwindow.ui \
networkwidget.ui \ networkwidget.ui \

View File

@ -216,8 +216,9 @@ void MainWindow::timerEvent(QTimerEvent *event) // event can be null since code
} }
if (++this->cyclesSinceResponseFromService >= 3) { if (++this->cyclesSinceResponseFromService >= 3) {
if (this->cyclesSinceResponseFromService == 3) if (this->cyclesSinceResponseFromService == 3) {
QMessageBox::warning(this,"Service Not Running","Can't connect to the ZeroTier One service. Is it running?",QMessageBox::Ok); QMessageBox::warning(this,"Service Not Running","Can't connect to the ZeroTier One service. Is it running?",QMessageBox::Ok);
}
ui->noNetworksLabel->setVisible(true); ui->noNetworksLabel->setVisible(true);
ui->noNetworksLabel->setText("Connecting to Service..."); ui->noNetworksLabel->setText("Connecting to Service...");
ui->bottomContainerWidget->setVisible(false); ui->bottomContainerWidget->setVisible(false);
@ -255,8 +256,8 @@ void MainWindow::customEvent(QEvent *event)
std::map< std::string,std::vector<std::string> > newNetworks; std::map< std::string,std::vector<std::string> > newNetworks;
for(unsigned long i=1;i<m->ztMessage.size();++i) { for(unsigned long i=1;i<m->ztMessage.size();++i) {
std::vector<std::string> l(ZeroTier::Node::NodeControlClient::splitLine(m->ztMessage[i])); std::vector<std::string> l(ZeroTier::Node::NodeControlClient::splitLine(m->ztMessage[i]));
// 200 listnetworks <nwid> <name> <status> <config age> <type> <dev> <ips> // 200 listnetworks <nwid> <name> <mac> <status> <config age> <type> <dev> <ips>
if ((l.size() == 9)&&(l[2].length() == 16)) if ((l.size() == 10)&&(l[2].length() == 16))
newNetworks[l[2]] = l; newNetworks[l[2]] = l;
} }
@ -283,10 +284,11 @@ void MainWindow::customEvent(QEvent *event)
alreadyDisplayed.insert(nw->networkId()); alreadyDisplayed.insert(nw->networkId());
std::vector<std::string> &l = networks[nw->networkId()]; std::vector<std::string> &l = networks[nw->networkId()];
nw->setNetworkName(l[3]); nw->setNetworkName(l[3]);
nw->setStatus(l[4],l[5]); nw->setMAC(l[4]);
nw->setNetworkType(l[6]); nw->setStatus(l[5],l[6]);
nw->setNetworkDeviceName(l[7]); nw->setNetworkType(l[7]);
nw->setIps(l[8]); nw->setNetworkDeviceName(l[8]);
nw->setIps(l[9]);
} }
} }
for(std::map< std::string,std::vector<std::string> >::iterator nwdata(networks.begin());nwdata!=networks.end();++nwdata) { for(std::map< std::string,std::vector<std::string> >::iterator nwdata(networks.begin());nwdata!=networks.end();++nwdata) {
@ -294,10 +296,11 @@ void MainWindow::customEvent(QEvent *event)
std::vector<std::string> &l = nwdata->second; std::vector<std::string> &l = nwdata->second;
NetworkWidget *nw = new NetworkWidget((QWidget *)0,nwdata->first); NetworkWidget *nw = new NetworkWidget((QWidget *)0,nwdata->first);
nw->setNetworkName(l[3]); nw->setNetworkName(l[3]);
nw->setStatus(l[4],l[5]); nw->setMAC(l[4]);
nw->setNetworkType(l[6]); nw->setStatus(l[5],l[6]);
nw->setNetworkDeviceName(l[7]); nw->setNetworkType(l[7]);
nw->setIps(l[8]); nw->setNetworkDeviceName(l[8]);
nw->setIps(l[9]);
QListWidgetItem *item = new QListWidgetItem(); QListWidgetItem *item = new QListWidgetItem();
item->setSizeHint(nw->sizeHint()); item->setSizeHint(nw->sizeHint());
ui->networkListWidget->addItem(item); ui->networkListWidget->addItem(item);

View File

@ -53,8 +53,8 @@ NetworkWidget::NetworkWidget(QWidget *parent,const std::string &nwid) :
QFontMetrics fm(ui->ipListWidget->font()); QFontMetrics fm(ui->ipListWidget->font());
int lineHeight = ui->ipListWidget->spacing() + fm.height(); int lineHeight = ui->ipListWidget->spacing() + fm.height();
ui->ipListWidget->setMinimumHeight(lineHeight * 4); ui->ipListWidget->setMinimumHeight(lineHeight * 6);
ui->ipListWidget->setMaximumHeight(lineHeight * 4); ui->ipListWidget->setMaximumHeight(lineHeight * 6);
#ifdef __APPLE__ #ifdef __APPLE__
QWidgetList widgets = this->findChildren<QWidget*>(); QWidgetList widgets = this->findChildren<QWidget*>();
@ -145,6 +145,11 @@ void NetworkWidget::setIps(const std::string &commaSeparatedList)
} }
} }
void NetworkWidget::setMAC(const std::string &mac)
{
ui->macLabel->setText(QString(mac.c_str()));
}
const std::string &NetworkWidget::networkId() const std::string &NetworkWidget::networkId()
{ {
return networkIdStr; return networkIdStr;

View File

@ -50,6 +50,7 @@ public:
void setNetworkType(const std::string &type); void setNetworkType(const std::string &type);
void setNetworkDeviceName(const std::string &dev); void setNetworkDeviceName(const std::string &dev);
void setIps(const std::string &commaSeparatedList); void setIps(const std::string &commaSeparatedList);
void setMAC(const std::string &mac);
const std::string &networkId(); const std::string &networkId();

View File

@ -11,7 +11,7 @@
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Maximum"> <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch> <horstretch>0</horstretch>
<verstretch>0</verstretch> <verstretch>0</verstretch>
</sizepolicy> </sizepolicy>
@ -40,6 +40,12 @@
</property> </property>
<item> <item>
<widget class="QWidget" name="leftWidget" native="true"> <widget class="QWidget" name="leftWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2"> <layout class="QVBoxLayout" name="verticalLayout_2">
<property name="spacing"> <property name="spacing">
<number>2</number> <number>2</number>
@ -57,7 +63,13 @@
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
<widget class="QWidget" name="widget" native="true"> <widget class="QWidget" name="networkInfoWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QHBoxLayout" name="horizontalLayout"> <layout class="QHBoxLayout" name="horizontalLayout">
<property name="leftMargin"> <property name="leftMargin">
<number>0</number> <number>0</number>
@ -178,6 +190,12 @@
</item> </item>
<item> <item>
<widget class="QWidget" name="networkStatsWidget" native="true"> <widget class="QWidget" name="networkStatsWidget" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QFormLayout" name="formLayout"> <layout class="QFormLayout" name="formLayout">
<property name="fieldGrowthPolicy"> <property name="fieldGrowthPolicy">
<enum>QFormLayout::ExpandingFieldsGrow</enum> <enum>QFormLayout::ExpandingFieldsGrow</enum>
@ -291,7 +309,7 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="0"> <item row="5" column="0">
<widget class="QLabel" name="label_4"> <widget class="QLabel" name="label_4">
<property name="font"> <property name="font">
<font> <font>
@ -306,7 +324,7 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="1"> <item row="5" column="1">
<widget class="QLabel" name="deviceLabel"> <widget class="QLabel" name="deviceLabel">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred"> <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
@ -332,6 +350,44 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="0">
<widget class="QLabel" name="label_7">
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>MAC:</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="macLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>?</string>
</property>
<property name="textFormat">
<enum>Qt::PlainText</enum>
</property>
</widget>
</item>
</layout> </layout>
</widget> </widget>
</item> </item>
@ -340,6 +396,9 @@
<property name="orientation"> <property name="orientation">
<enum>Qt::Vertical</enum> <enum>Qt::Vertical</enum>
</property> </property>
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0"> <property name="sizeHint" stdset="0">
<size> <size>
<width>20</width> <width>20</width>

View File

@ -69,12 +69,16 @@ official: FORCE
make -j 4 ZT_OFFICIAL_RELEASE=1 make -j 4 ZT_OFFICIAL_RELEASE=1
make mac-ui ZT_OFFICIAL_RELEASE=1 make mac-ui ZT_OFFICIAL_RELEASE=1
./buildinstaller.sh ./buildinstaller.sh
mkdir build-ZeroTierOne-dmg make mac-dmg ZT_OFFICIAL_RELEASE=1
mac-dmg: FORCE
mkdir -p build-ZeroTierOne-dmg
cd build-ZeroTierOne-dmg ; ln -sf /Applications Applications cd build-ZeroTierOne-dmg ; ln -sf /Applications Applications
cp -a "build-ZeroTierUI-release/ZeroTier One.app" build-ZeroTierOne-dmg/ cp -a "build-ZeroTierUI-release/ZeroTier One.app" build-ZeroTierOne-dmg/
rm -f /tmp/tmp.dmg rm -f /tmp/tmp.dmg
hdiutil create /tmp/tmp.dmg -ov -volname "ZeroTier One" -fs HFS+ -srcfolder ./build-ZeroTierOne-dmg hdiutil create /tmp/tmp.dmg -ov -volname "ZeroTier One" -fs HFS+ -srcfolder ./build-ZeroTierOne-dmg
hdiutil convert /tmp/tmp.dmg -format UDZO -o "ZeroTier One.dmg" hdiutil convert /tmp/tmp.dmg -format UDZO -o "ZeroTier One.dmg"
$(CODESIGN) -f -s $(CODESIGN_CERT) "ZeroTier One.dmg"
rm -f /tmp/tmp.dmg rm -f /tmp/tmp.dmg
# For those building from source -- installs signed binary tap driver in system ZT home # For those building from source -- installs signed binary tap driver in system ZT home