diff --git a/src/settingdialog.cpp b/src/settingdialog.cpp
index ff617a2..291d7e6 100644
--- a/src/settingdialog.cpp
+++ b/src/settingdialog.cpp
@@ -1,56 +1,50 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
+/*
+ * Copyright (c) 2013, Regents of the University of California
+ *                     Yingdi Yu
+ *
+ * BSD license, See the LICENSE file for more information
+ *
+ * Author: Yingdi Yu <yingdi@cs.ucla.edu>
+ */
+
 #include "settingdialog.h"
-#include <QRegExp>
-#include <QValidator>
+#include "ui_settingdialog.h"
 
-SettingDialog::SettingDialog(QWidget *parent, QString nick, QString chatroom, QString prefix)
-  : QDialog(parent)
+using namespace std;
+
+SettingDialog::SettingDialog(QWidget *parent) :
+    QDialog(parent),
+    ui(new Ui::SettingDialog)
 {
-  setupUi(this);
+    ui->setupUi(this);
+}
 
-  QRegExp noWhiteSpace("^\\S+.*$");
-  QValidator *nwsValidator = new QRegExpValidator(noWhiteSpace, this);
-  nickEdit->setPlaceholderText(nick);
-  nickEdit->setValidator(nwsValidator);
-  roomEdit->setPlaceholderText(chatroom);
-  roomEdit->setValidator(nwsValidator);
-  prefixEdit->setPlaceholderText(prefix);
-
-  // simple validator for ccnx prefix
-  QRegExp rx("(^(/[^/]+)+$)|(^/$)");
-  QValidator *validator = new QRegExpValidator(rx, this);
-  prefixEdit->setValidator(validator);
-
-  if (nick.isEmpty())
-  {
-    prefixEdit->hide();
-    prefixLabel->hide();
-  }
-
-  okButton->setDefault(true);
-
-  connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
-  connect(okButton, SIGNAL(clicked()), this, SLOT(update()));
+SettingDialog::~SettingDialog()
+{
+    delete ui;
 }
 
 void
-SettingDialog::update() 
-{
-  emit updated(nickEdit->text(), roomEdit->text(), prefixEdit->text()); 
-  accept();
+setIdentity(const std::string& identity)
+{ 
+  m_identity = identity;
+  ui->identityLine->setText(QString::fromUtf8(m_identity.c_str()));
 }
 
 void
-SettingDialog::keyPressEvent(QKeyEvent *e)
+SettingDialog::onOkClicked()
 {
-  switch(e->key()) {
-    case Qt::Key_Enter:
-      update();
-      break;
-    default:
-      QDialog::keyPressEvent(e);
-  }
+  QString text = ui->identityLine->text();
+  string identity = text.toUtf8().constData();
+  if(identity != m_identity)
+    {
+      m_identity = identity;
+      emit identitySet(text);
+    }
 }
 
+
 #if WAF
 #include "settingdialog.moc"
 #include "settingdialog.cpp.moc"
diff --git a/src/settingdialog.h b/src/settingdialog.h
index f9fc31c..a06046d 100644
--- a/src/settingdialog.h
+++ b/src/settingdialog.h
@@ -1,22 +1,44 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
+/*
+ * Copyright (c) 2013, Regents of the University of California
+ *                     Yingdi Yu
+ *
+ * BSD license, See the LICENSE file for more information
+ *
+ * Author: Yingdi Yu <yingdi@cs.ucla.edu>
+ */
+
 #ifndef SETTINGDIALOG_H
 #define SETTINGDIALOG_H
-#include "ui_settingdialog.h"
-#include <QKeyEvent>
 
-class SettingDialog : public QDialog, private Ui::SettingDialog
+#include <QDialog>
+
+namespace Ui {
+class SettingDialog;
+}
+
+class SettingDialog : public QDialog
 {
   Q_OBJECT
 
 public:
-  SettingDialog(QWidget *parent = 0, QString nick = QString("NULL"), QString chatroom = QString("NULL"), QString prefix = QString("NULL"));
-  virtual void keyPressEvent(QKeyEvent *e);
+  explicit SettingDialog(QWidget *parent = 0);
+  ~SettingDialog();
+
+  void
+  setIdentity(const std::string& identity);
+
+signals:
+  void
+  identitySet(const QString& identity);
 
 private slots:
-  void update();
-  
-signals:
-  void updated(QString, QString, QString);
+  void
+  onOkClicked();
 
+private:
+  Ui::SettingDialog *ui;
+  std::string m_identity;
 };
 
-#endif
+#endif // SETTINGDIALOG_H
diff --git a/src/settingdialog.ui b/src/settingdialog.ui
index d805198..5d3c04d 100644
--- a/src/settingdialog.ui
+++ b/src/settingdialog.ui
@@ -1,112 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <ui version="4.0">
-  <class>SettingDialog</class>
-  <widget class="QDialog" name="SettingDialog">
-    <property name="geometry">
-      <rect>
-      <x>0</x>
-      <y>0</y>
-      <width>300</width>
-      <height>200</height>
-      </rect>
-    </property>
-    <property name="windowTitle">
-      <string>Chat Settings</string>
-    </property>
-    <layout class="QVBoxLayout">
-      <property name="spacing">
-        <number>6</number>
-      </property>
-      <item>
-        <layout class="QHBoxLayout">
-          <property name="spacing">
-            <number>6</number>
-          </property>
-          <!-- first group -->
-          <item>
-            <layout class="QVBoxLayout">
-              <property name="spacing">
-                <number>6</number>
-              </property>
-              <item>
-                <widget class="QLabel">
-                  <property name="text">
-                    <string>Nickname</string>
-                  </property>
-                </widget>
-              </item>
-              <item>
-                <widget class="QLabel">
-                  <property name="text">
-                    <string>Chatroom</string>
-                  </property>
-                </widget>
-              </item>
-              <item>
-                <widget class="QLabel" name="prefixLabel">
-                  <property name="text">
-                    <string>Prefix</string>
-                  </property>
-                </widget>
-              </item>
-            </layout>
-          </item>
-          <!-- first group -->
-
-          <!-- second group -->
-          <item>
-            <layout class="QVBoxLayout">
-              <property name="spacing">
-                <number>6</number>
-              </property>
-              <item>
-                <widget class="QLineEdit" name="nickEdit">
-                  <property name="maxLength">
-                    <number>200</number>
-                  </property>
-                </widget>
-              </item>
-              <item>
-                <widget class="QLineEdit" name="roomEdit">
-                  <property name="maxLength">
-                    <number>200</number>
-                  </property>
-                </widget>
-              </item>
-              <item>
-                <widget class="QLineEdit" name="prefixEdit">
-                  <property name="maxLength">
-                    <number>200</number>
-                  </property>
-                </widget>
-              </item>
-            </layout>
-          </item>
-          <!-- second group -->
-        </layout>
-      </item>
-      <item>
-        <layout class="QHBoxLayout">
-          <property name="spacing">
-            <number>6</number>
-          </property>
-          <item>
-            <widget class="QPushButton" name="cancelButton">
-              <property name="text">
-                <string>Cancel</string>
-              </property>
-            </widget>
-          </item>
-          <item>
-            <widget class="QPushButton" name="okButton">
-              <property name="text">
-                <string>OK</string>
-              </property>
-            </widget>
-          </item>
-        </layout>
-      </item>
-    </layout>
+ <class>SettingDialog</class>
+ <widget class="QDialog" name="SettingDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>300</width>
+    <height>140</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Dialog</string>
+  </property>
+  <widget class="QPushButton" name="okButton">
+   <property name="geometry">
+    <rect>
+     <x>100</x>
+     <y>90</y>
+     <width>100</width>
+     <height>32</height>
+    </rect>
+   </property>
+   <property name="text">
+    <string>OK</string>
+   </property>
   </widget>
-  <resources/>
-  <connections/>
+  <widget class="QLabel" name="msgLabel">
+   <property name="geometry">
+    <rect>
+     <x>20</x>
+     <y>20</y>
+     <width>150</width>
+     <height>16</height>
+    </rect>
+   </property>
+   <property name="font">
+    <font>
+     <weight>75</weight>
+     <bold>true</bold>
+    </font>
+   </property>
+   <property name="text">
+    <string>Current Identity:</string>
+   </property>
+  </widget>
+  <widget class="QLineEdit" name="identityLine">
+   <property name="geometry">
+    <rect>
+     <x>20</x>
+     <y>50</y>
+     <width>260</width>
+     <height>21</height>
+    </rect>
+   </property>
+  </widget>
+ </widget>
+ <resources/>
+ <connections/>
 </ui>
