summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2013-11-15 17:04:32 -0500
committerAdam Ierymenko <adam.ierymenko@gmail.com>2013-11-15 17:04:32 -0500
commitf1b0178a856d930c11e5f715c29bdb4fd2a110b2 (patch)
tree5ac87f197a2caa13af3dea497e3271a36cbf08bb
parent10f03d4119bcbadf38382e5cf5392f9bc990160f (diff)
downloadinfinitytier-f1b0178a856d930c11e5f715c29bdb4fd2a110b2.tar.gz
infinitytier-f1b0178a856d930c11e5f715c29bdb4fd2a110b2.zip
More UI work...
-rw-r--r--ZeroTierUI/ZeroTierUI.pro9
-rw-r--r--ZeroTierUI/aboutwindow.cpp18
-rw-r--r--ZeroTierUI/aboutwindow.h25
-rw-r--r--ZeroTierUI/aboutwindow.ui271
-rw-r--r--ZeroTierUI/mainwindow.cpp31
-rw-r--r--ZeroTierUI/mainwindow.h8
-rw-r--r--ZeroTierUI/mainwindow.ui120
7 files changed, 442 insertions, 40 deletions
diff --git a/ZeroTierUI/ZeroTierUI.pro b/ZeroTierUI/ZeroTierUI.pro
index ce1af63f..fcdba8ca 100644
--- a/ZeroTierUI/ZeroTierUI.pro
+++ b/ZeroTierUI/ZeroTierUI.pro
@@ -14,13 +14,16 @@ TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
- network.cpp
+ network.cpp \
+ aboutwindow.cpp
HEADERS += mainwindow.h \
- network.h
+ network.h \
+ aboutwindow.h
FORMS += mainwindow.ui \
- network.ui
+ network.ui \
+ aboutwindow.ui
RESOURCES += \
resources.qrc
diff --git a/ZeroTierUI/aboutwindow.cpp b/ZeroTierUI/aboutwindow.cpp
new file mode 100644
index 00000000..83d680b1
--- /dev/null
+++ b/ZeroTierUI/aboutwindow.cpp
@@ -0,0 +1,18 @@
+#include "aboutwindow.h"
+#include "ui_aboutwindow.h"
+
+AboutWindow::AboutWindow(QWidget *parent) :
+ QDialog(parent),
+ ui(new Ui::AboutWindow)
+{
+ ui->setupUi(this);
+}
+
+AboutWindow::~AboutWindow()
+{
+ delete ui;
+}
+
+void AboutWindow::on_uninstallButton_clicked()
+{
+}
diff --git a/ZeroTierUI/aboutwindow.h b/ZeroTierUI/aboutwindow.h
new file mode 100644
index 00000000..41adc64d
--- /dev/null
+++ b/ZeroTierUI/aboutwindow.h
@@ -0,0 +1,25 @@
+#ifndef AboutWindow_H
+#define AboutWindow_H
+
+#include <QDialog>
+
+namespace Ui {
+class AboutWindow;
+}
+
+class AboutWindow : public QDialog
+{
+ Q_OBJECT
+
+public:
+ explicit AboutWindow(QWidget *parent = 0);
+ ~AboutWindow();
+
+private slots:
+ void on_uninstallButton_clicked();
+
+private:
+ Ui::AboutWindow *ui;
+};
+
+#endif // AboutWindow_H
diff --git a/ZeroTierUI/aboutwindow.ui b/ZeroTierUI/aboutwindow.ui
new file mode 100644
index 00000000..34ad0235
--- /dev/null
+++ b/ZeroTierUI/aboutwindow.ui
@@ -0,0 +1,271 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>AboutWindow</class>
+ <widget class="QDialog" name="AboutWindow">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>508</width>
+ <height>261</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Dialog</string>
+ </property>
+ <property name="windowIcon">
+ <iconset resource="resources.qrc">
+ <normaloff>:/img/zt1icon.png</normaloff>:/img/zt1icon.png</iconset>
+ </property>
+ <property name="sizeGripEnabled">
+ <bool>true</bool>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <property name="leftMargin">
+ <number>6</number>
+ </property>
+ <property name="topMargin">
+ <number>6</number>
+ </property>
+ <property name="rightMargin">
+ <number>6</number>
+ </property>
+ <property name="bottomMargin">
+ <number>6</number>
+ </property>
+ <item>
+ <widget class="QFrame" name="frame">
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Raised</enum>
+ </property>
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <property name="leftMargin">
+ <number>6</number>
+ </property>
+ <property name="topMargin">
+ <number>6</number>
+ </property>
+ <property name="rightMargin">
+ <number>6</number>
+ </property>
+ <property name="bottomMargin">
+ <number>6</number>
+ </property>
+ <item>
+ <widget class="QWidget" name="widget" native="true">
+ <layout class="QVBoxLayout" name="verticalLayout_3">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="iconLabel">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>128</width>
+ <height>128</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>128</width>
+ <height>128</height>
+ </size>
+ </property>
+ <property name="text">
+ <string/>
+ </property>
+ <property name="textFormat">
+ <enum>Qt::PlainText</enum>
+ </property>
+ <property name="pixmap">
+ <pixmap resource="resources.qrc">:/img/zt1icon.png</pixmap>
+ </property>
+ <property name="scaledContents">
+ <bool>true</bool>
+ </property>
+ <property name="textInteractionFlags">
+ <set>Qt::NoTextInteraction</set>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QFrame" name="frame_2">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Raised</enum>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <item>
+ <widget class="QLabel" name="aboutTextLabel">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="font">
+ <font>
+ <weight>50</weight>
+ <bold>false</bold>
+ </font>
+ </property>
+ <property name="text">
+ <string>ZeroTier One GUI
+(c)2012-2013 ZeroTier Networks LLC
+
+Author(s): Adam Ierymenko
+Version: 1.0</string>
+ </property>
+ <property name="textFormat">
+ <enum>Qt::PlainText</enum>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignHCenter|Qt::AlignTop</set>
+ </property>
+ <property name="textInteractionFlags">
+ <set>Qt::NoTextInteraction</set>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QWidget" name="widget_2" native="true">
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <property name="leftMargin">
+ <number>0</number>
+ </property>
+ <property name="topMargin">
+ <number>0</number>
+ </property>
+ <property name="rightMargin">
+ <number>0</number>
+ </property>
+ <property name="bottomMargin">
+ <number>0</number>
+ </property>
+ <item>
+ <spacer name="horizontalSpacer">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QPushButton" name="uninstallButton">
+ <property name="text">
+ <string>Uninstall</string>
+ </property>
+ <property name="autoDefault">
+ <bool>false</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QDialogButtonBox" name="buttonBox">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons">
+ <set>QDialogButtonBox::Ok</set>
+ </property>
+ <property name="centerButtons">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources>
+ <include location="resources.qrc"/>
+ </resources>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>AboutWindow</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>248</x>
+ <y>254</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>157</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>AboutWindow</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>316</x>
+ <y>260</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>286</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
diff --git a/ZeroTierUI/mainwindow.cpp b/ZeroTierUI/mainwindow.cpp
index 3137cb14..41d94987 100644
--- a/ZeroTierUI/mainwindow.cpp
+++ b/ZeroTierUI/mainwindow.cpp
@@ -1,6 +1,9 @@
#include "mainwindow.h"
+#include "aboutwindow.h"
#include "ui_mainwindow.h"
+#include <QClipboard>
+
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
@@ -12,3 +15,31 @@ MainWindow::~MainWindow()
{
delete ui;
}
+
+void MainWindow::on_joinNetworkButton_clicked()
+{
+}
+
+void MainWindow::on_actionAbout_triggered()
+{
+ AboutWindow *about = new AboutWindow(this);
+ about->show();
+}
+
+void MainWindow::on_actionJoin_Network_triggered()
+{
+ on_joinNetworkButton_clicked();
+}
+
+void MainWindow::on_actionShow_Detailed_Status_triggered()
+{
+}
+
+void MainWindow::on_networkIdLineEdit_textChanged(const QString &text)
+{
+}
+
+void MainWindow::on_statusAndAddressButton_clicked()
+{
+ // QApplication::clipboard()->setText(ui->myAddressCopyButton->text());
+}
diff --git a/ZeroTierUI/mainwindow.h b/ZeroTierUI/mainwindow.h
index 8c7efd74..b68ba4f7 100644
--- a/ZeroTierUI/mainwindow.h
+++ b/ZeroTierUI/mainwindow.h
@@ -15,6 +15,14 @@ public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
+private slots:
+ void on_joinNetworkButton_clicked();
+ void on_actionAbout_triggered();
+ void on_actionJoin_Network_triggered();
+ void on_actionShow_Detailed_Status_triggered();
+ void on_networkIdLineEdit_textChanged(const QString &arg1);
+ void on_statusAndAddressButton_clicked();
+
private:
Ui::MainWindow *ui;
};
diff --git a/ZeroTierUI/mainwindow.ui b/ZeroTierUI/mainwindow.ui
index d7a654fd..c9366ccf 100644
--- a/ZeroTierUI/mainwindow.ui
+++ b/ZeroTierUI/mainwindow.ui
@@ -19,6 +19,9 @@
</property>
<widget class="QWidget" name="centralWidget">
<layout class="QVBoxLayout" name="verticalLayout">
+ <property name="spacing">
+ <number>6</number>
+ </property>
<property name="leftMargin">
<number>6</number>
</property>
@@ -39,19 +42,25 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
+ <property name="toolTip">
+ <string/>
+ </property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="widgetResizable">
<bool>true</bool>
</property>
+ <property name="alignment">
+ <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
+ </property>
<widget class="QWidget" name="scrollAreaWidgetContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>654</width>
- <height>222</height>
+ <height>236</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
@@ -80,49 +89,79 @@
</sizepolicy>
</property>
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0,0">
+ <property name="spacing">
+ <number>6</number>
+ </property>
+ <property name="sizeConstraint">
+ <enum>QLayout::SetDefaultConstraint</enum>
+ </property>
<property name="leftMargin">
- <number>2</number>
+ <number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
- <number>2</number>
+ <number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
- <widget class="QLabel" name="statusLabel">
+ <widget class="QToolButton" name="statusAndAddressButton">
<property name="sizePolicy">
- <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+ <sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
+ <property name="font">
+ <font>
+ <family>Courier</family>
+ <pointsize>12</pointsize>
+ </font>
+ </property>
+ <property name="toolTip">
+ <string>Click to Copy Address to Clipboard</string>
+ </property>
+ <property name="styleSheet">
+ <string notr="true">border: 0;</string>
+ </property>
<property name="text">
- <string>OFFLINE (0 direct peers)</string>
+ <string>0000000000 (OFFLINE, 0 peers)</string>
+ </property>
+ <property name="toolButtonStyle">
+ <enum>Qt::ToolButtonTextOnly</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="networkIdLineEdit">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
<property name="font">
<font>
<family>Courier</family>
<pointsize>12</pointsize>
</font>
</property>
+ <property name="toolTip">
+ <string>Enter Hexadecimal Network ID</string>
+ </property>
<property name="frame">
<bool>true</bool>
</property>
<property name="placeholderText">
- <string>[Network ID, e.g. 8056c2e21c000001]</string>
+ <string>(Numeric ID of Network to Join)</string>
</property>
</widget>
</item>
<item>
- <widget class="QPushButton" name="joinNetworkButton">
+ <widget class="QToolButton" name="joinNetworkButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
@@ -131,22 +170,27 @@
</property>
<property name="font">
<font>
- <weight>75</weight>
- <bold>true</bold>
+ <family>Courier</family>
+ <pointsize>12</pointsize>
+ <weight>50</weight>
+ <bold>false</bold>
<underline>false</underline>
</font>
</property>
+ <property name="toolTip">
+ <string>Join Network</string>
+ </property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
- <property name="text">
- <string>+ Join</string>
+ <property name="styleSheet">
+ <string notr="true"/>
</property>
- <property name="default">
- <bool>false</bool>
+ <property name="text">
+ <string>Join</string>
</property>
- <property name="flat">
- <bool>true</bool>
+ <property name="toolButtonStyle">
+ <enum>Qt::ToolButtonTextOnly</enum>
</property>
</widget>
</item>
@@ -171,41 +215,26 @@
<property name="title">
<string>Help</string>
</property>
- <addaction name="actionAbout_2"/>
+ <addaction name="actionAbout"/>
</widget>
<widget class="QMenu" name="menuFile">
<property name="title">
<string>File</string>
</property>
- <addaction name="actionJoin_Network_2"/>
+ <addaction name="actionJoin_Network"/>
<addaction name="actionShow_Detailed_Status"/>
<addaction name="separator"/>
- <addaction name="actionExit_2"/>
+ <addaction name="actionExit"/>
</widget>
<addaction name="menuFile"/>
<addaction name="menuHelp"/>
</widget>
- <action name="actionJoin_Network">
- <property name="text">
- <string>Join Network</string>
- </property>
- </action>
- <action name="actionExit">
- <property name="text">
- <string>Exit</string>
- </property>
- </action>
<action name="actionAbout">
<property name="text">
<string>About</string>
</property>
</action>
- <action name="actionAbout_2">
- <property name="text">
- <string>About</string>
- </property>
- </action>
- <action name="actionJoin_Network_2">
+ <action name="actionJoin_Network">
<property name="text">
<string>Join Network</string>
</property>
@@ -215,7 +244,7 @@
<string>Show Detailed Status</string>
</property>
</action>
- <action name="actionExit_2">
+ <action name="actionExit">
<property name="text">
<string>Exit</string>
</property>
@@ -225,5 +254,22 @@
<resources>
<include location="resources.qrc"/>
</resources>
- <connections/>
+ <connections>
+ <connection>
+ <sender>actionExit</sender>
+ <signal>triggered()</signal>
+ <receiver>MainWindow</receiver>
+ <slot>close()</slot>
+ <hints>
+ <hint type="sourcelabel">
+ <x>-1</x>
+ <y>-1</y>
+ </hint>
+ <hint type="destinationlabel">
+ <x>333</x>
+ <y>149</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
</ui>