From f769a6b029779ba3f1308fd4c66a799a7390cb77 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Remko=20Tron=C3=A7on?= <git@el-tramo.be>
Date: Sat, 19 Feb 2011 09:48:05 +0100
Subject: Make Swift translatable.


diff --git a/BuildTools/SCons/Tools/WindowsBundle.py b/BuildTools/SCons/Tools/WindowsBundle.py
index 7d0f4ff..e351884 100644
--- a/BuildTools/SCons/Tools/WindowsBundle.py
+++ b/BuildTools/SCons/Tools/WindowsBundle.py
@@ -1,19 +1,20 @@
 import SCons.Util, os
 
 def generate(env) :
-  def createWindowsBundle(env, bundle, resources = [], qtimageformats = [], qtlibs = []) :
+  def createWindowsBundle(env, bundle, resources = {}, qtimageformats = [], qtlibs = []) :
     env.Install(bundle, bundle + ".exe")
     for lib in qtlibs :
       env.Install(bundle, os.path.join(env["QTDIR"], "bin", lib + ".dll"))
     env.Install(os.path.join(bundle, "imageformats"), [os.path.join(env["QTDIR"], "plugins", "imageformats", "q" + codec + "4.dll") for codec in qtimageformats])
 
-    for resource in resources :
-      e = env.Entry(resource)
-      if e.isdir() :
-	for subresource in env.Glob(str(e) + "/*") :
-      	  env.Install(os.path.join(bundle, e.name), subresource)
-      else :
-      	env.Install(bundle, resource)
+    for dir, resourceFiles in resources.items() :
+      for resource in resourceFiles :
+	e = env.Entry(resource)
+	if e.isdir() :
+	  for subresource in env.Glob(str(e) + "/*") :
+	    env.Install(os.path.join(bundle, dir, e.name), subresource)
+	else :
+	  env.Install(os.path.join(bundle, dir), resource)
 
   env.AddMethod(createWindowsBundle, "WindowsBundle")
 
diff --git a/SwifTools/Application/UnixApplicationPathProvider.cpp b/SwifTools/Application/UnixApplicationPathProvider.cpp
index c0d24ab..a68f249 100644
--- a/SwifTools/Application/UnixApplicationPathProvider.cpp
+++ b/SwifTools/Application/UnixApplicationPathProvider.cpp
@@ -14,6 +14,7 @@ namespace Swift {
 
 UnixApplicationPathProvider::UnixApplicationPathProvider(const std::string& name) : ApplicationPathProvider(name) {
 	resourceDirs.push_back(getExecutableDir() / "../resources"); // Development
+	resourceDirs.push_back(getExecutableDir() / ".." / "share" / boost::to_lower_copy(getApplicationName())); // Local install
 	char* xdgDataDirs = getenv("XDG_DATA_DIRS");
 	if (xdgDataDirs) {
 		std::vector<std::string> dataDirs = String::split(xdgDataDirs, ':');
@@ -24,8 +25,8 @@ UnixApplicationPathProvider::UnixApplicationPathProvider(const std::string& name
 			return;
 		}
 	}
-	resourceDirs.push_back("/usr/local/share/swift");
-	resourceDirs.push_back("/usr/share/swift");
+	resourceDirs.push_back("/usr/local/share/" + boost::to_lower_copy(getApplicationName()));
+	resourceDirs.push_back("/usr/share/" + boost::to_lower_copy(getApplicationName()));
 }
 
 boost::filesystem::path UnixApplicationPathProvider::getHomeDir() const {
diff --git a/Swift/Controllers/Chat/MUCController.cpp b/Swift/Controllers/Chat/MUCController.cpp
index ce8c946..aaa9d3a 100644
--- a/Swift/Controllers/Chat/MUCController.cpp
+++ b/Swift/Controllers/Chat/MUCController.cpp
@@ -122,13 +122,13 @@ void MUCController::receivedActivity() {
 
 void MUCController::handleJoinFailed(boost::shared_ptr<ErrorPayload> error) {
 	receivedActivity();
-	std::string errorMessage = QT_TRANSLATE_NOOP("", "Unable to join this room");
+	std::string errorMessage = QT_TRANSLATE_NOOP("", "Unable to enter this room");
 	std::string rejoinNick;
 	if (error) {
 		switch (error->getCondition()) {
 		case ErrorPayload::Conflict:
 			rejoinNick = nick_ + "_";
-			errorMessage = str(format(QT_TRANSLATE_NOOP("", "Unable to join this room as %1%, retrying as %2%")) % nick_ % rejoinNick);
+			errorMessage = str(format(QT_TRANSLATE_NOOP("", "Unable to enter this room as %1%, retrying as %2%")) % nick_ % rejoinNick);
 			break;
 		case ErrorPayload::JIDMalformed: 
 			errorMessage += ": ";
@@ -140,7 +140,7 @@ void MUCController::handleJoinFailed(boost::shared_ptr<ErrorPayload> error) {
 			break;
 		case ErrorPayload::RegistrationRequired: 
 			errorMessage += ": ";
-			errorMessage += QT_TRANSLATE_NOOP("", "Only members may join"); 
+			errorMessage += QT_TRANSLATE_NOOP("", "Only members may enter"); 
 			break;
 		case ErrorPayload::Forbidden: 
 			errorMessage += ": ";
@@ -170,7 +170,7 @@ void MUCController::handleJoinFailed(boost::shared_ptr<ErrorPayload> error) {
 void MUCController::handleJoinComplete(const std::string& nick) {
 	receivedActivity();
 	joined_ = true;
-	std::string joinMessage = str(format(QT_TRANSLATE_NOOP("", "You have joined room %1% as %2%")) % toJID_.toString() % nick);
+	std::string joinMessage = str(format(QT_TRANSLATE_NOOP("", "You have entered room %1% as a %2%.")) % toJID_.toString() % nick);
 	nick_ = nick;
 	chatWindow_->addSystemMessage(joinMessage);
 	clearPresenceQueue();
@@ -211,10 +211,10 @@ void MUCController::handleOccupantJoined(const MUCOccupant& occupant) {
 		std::string joinString;
 		MUCOccupant::Role role = occupant.getRole();
 		if (role != MUCOccupant::NoRole && role != MUCOccupant::Participant) {
-			joinString = str(format(QT_TRANSLATE_NOOP("", "%1% has joined the room as a %2%.")) % occupant.getNick() % roleToFriendlyName(role));
+			joinString = str(format(QT_TRANSLATE_NOOP("", "%1% has entered the room as a %2%.")) % occupant.getNick() % roleToFriendlyName(role));
 		}
 		else {
-			joinString = str(format(QT_TRANSLATE_NOOP("", "%1% has joined the room.")) % occupant.getNick());
+			joinString = str(format(QT_TRANSLATE_NOOP("", "%1% has entered the room.")) % occupant.getNick());
 		}
 		if (shouldUpdateJoinParts()) {
 			updateJoinParts();
@@ -327,7 +327,7 @@ void MUCController::setOnline(bool online) {
 		processUserPart();
 	} else {
 		if (shouldJoinOnReconnect_) {
-			chatWindow_->addSystemMessage(str(format(QT_TRANSLATE_NOOP("", "Trying to join room %1%")) % toJID_.toString()));
+			chatWindow_->addSystemMessage(str(format(QT_TRANSLATE_NOOP("", "Trying to enter room %1%")) % toJID_.toString()));
 			if (loginCheckTimer_) {
 				loginCheckTimer_->start();
 			}
@@ -454,10 +454,10 @@ std::string MUCController::generateJoinPartString(const std::vector<NickJoinPart
 			switch (i) {
 				case Join: 
 					if (sorted[i].size() > 1) {
-						eventString = QT_TRANSLATE_NOOP("", "%1% have joined the room");
+						eventString = QT_TRANSLATE_NOOP("", "%1% have entered the room");
 					}
 					else {
-						eventString = QT_TRANSLATE_NOOP("", "%1% has joined the room");
+						eventString = QT_TRANSLATE_NOOP("", "%1% has entered the room");
 					}
 					break;
 				case Part: 
@@ -470,18 +470,18 @@ std::string MUCController::generateJoinPartString(const std::vector<NickJoinPart
 					break;
 				case JoinThenPart: 
 					if (sorted[i].size() > 1) {
-						eventString = QT_TRANSLATE_NOOP("", "%1% have joined then left the room");
+						eventString = QT_TRANSLATE_NOOP("", "%1% have entered then left the room");
 					}
 					else {
-						eventString = QT_TRANSLATE_NOOP("", "%1% has joined then left the room");
+						eventString = QT_TRANSLATE_NOOP("", "%1% has entered then left the room");
 					}
 					break;
 				case PartThenJoin: 
 					if (sorted[i].size() > 1) {
-						eventString = QT_TRANSLATE_NOOP("", "%1% have left then rejoined the room");
+						eventString = QT_TRANSLATE_NOOP("", "%1% have left then returned to the room");
 					}
 					else {
-						eventString = QT_TRANSLATE_NOOP("", "%1% has left then rejoined the room");
+						eventString = QT_TRANSLATE_NOOP("", "%1% has left then returned to the room");
 					}
 					break;
 			}
diff --git a/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp b/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp
index e66fa9e..5f5e44d 100644
--- a/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp
+++ b/Swift/Controllers/Chat/UnitTest/MUCControllerTest.cpp
@@ -200,25 +200,25 @@ public:
 	void testJoinPartStringContructionSimple() {
 		std::vector<NickJoinPart> list;
 		list.push_back(NickJoinPart("Kev", Join));
-		CPPUNIT_ASSERT_EQUAL(std::string("Kev has joined the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Kev has entered the room"), MUCController::generateJoinPartString(list));
 		list.push_back(NickJoinPart("Remko", Part));
-		CPPUNIT_ASSERT_EQUAL(std::string("Kev has joined the room and Remko has left the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Kev has entered the room and Remko has left the room"), MUCController::generateJoinPartString(list));
 		list.push_back(NickJoinPart("Bert", Join));
-		CPPUNIT_ASSERT_EQUAL(std::string("Kev and Bert have joined the room and Remko has left the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Kev and Bert have entered the room and Remko has left the room"), MUCController::generateJoinPartString(list));
 		list.push_back(NickJoinPart("Ernie", Join));
-		CPPUNIT_ASSERT_EQUAL(std::string("Kev, Bert and Ernie have joined the room and Remko has left the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Kev, Bert and Ernie have entered the room and Remko has left the room"), MUCController::generateJoinPartString(list));
 	}
 
 	void testJoinPartStringContructionMixed() {
 		std::vector<NickJoinPart> list;
 		list.push_back(NickJoinPart("Kev", JoinThenPart));
-		CPPUNIT_ASSERT_EQUAL(std::string("Kev has joined then left the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Kev has entered then left the room"), MUCController::generateJoinPartString(list));
 		list.push_back(NickJoinPart("Remko", Part));
-		CPPUNIT_ASSERT_EQUAL(std::string("Remko has left the room and Kev has joined then left the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Remko has left the room and Kev has entered then left the room"), MUCController::generateJoinPartString(list));
 		list.push_back(NickJoinPart("Bert", PartThenJoin));
-		CPPUNIT_ASSERT_EQUAL(std::string("Remko has left the room, Kev has joined then left the room and Bert has left then rejoined the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Remko has left the room, Kev has entered then left the room and Bert has left then returned to the room"), MUCController::generateJoinPartString(list));
 		list.push_back(NickJoinPart("Ernie", JoinThenPart));
-		CPPUNIT_ASSERT_EQUAL(std::string("Remko has left the room, Kev and Ernie have joined then left the room and Bert has left then rejoined the room"), MUCController::generateJoinPartString(list));
+		CPPUNIT_ASSERT_EQUAL(std::string("Remko has left the room, Kev and Ernie have entered then left the room and Bert has left then returned to the room"), MUCController::generateJoinPartString(list));
 	}
 
 private:
diff --git a/Swift/Controllers/MainController.cpp b/Swift/Controllers/MainController.cpp
index 6263636..adde70a 100644
--- a/Swift/Controllers/MainController.cpp
+++ b/Swift/Controllers/MainController.cpp
@@ -458,7 +458,7 @@ void MainController::handleDisconnected(const boost::optional<ClientError>& erro
 			case ClientError::CertificateSelfSignedError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Certificate is self-signed"); break;
 			case ClientError::CertificateRejectedError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Certificate has been rejected"); break;
 			case ClientError::CertificateUntrustedError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Certificate is not trusted"); break;
-			case ClientError::InvalidCertificatePurposeError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Certificate cannot be used for encryptig your connection"); break;
+			case ClientError::InvalidCertificatePurposeError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Certificate cannot be used for encrypting your connection"); break;
 			case ClientError::CertificatePathLengthExceededError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Certificate path length constraint exceeded"); break;
 			case ClientError::InvalidCertificateSignatureError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Invalid certificate signature"); break;
 			case ClientError::InvalidCAError: certificateErrorMessage = QT_TRANSLATE_NOOP("", "Invalid Certificate Authority"); break;
diff --git a/Swift/Controllers/Roster/RosterController.cpp b/Swift/Controllers/Roster/RosterController.cpp
index 8a0fd53..83291e4 100644
--- a/Swift/Controllers/Roster/RosterController.cpp
+++ b/Swift/Controllers/Roster/RosterController.cpp
@@ -247,7 +247,7 @@ void RosterController::handleRosterSetError(ErrorPayload::ref error, boost::shar
 	if (!error) {
 		return;
 	}
-	std::string text = str(format(QT_TRANSLATE_NOOP("", "Server %1% rejected roster change to item '%2%'")) % myJID_.getDomain() % rosterPayload->getItems()[0].getJID().toString());
+	std::string text = str(format(QT_TRANSLATE_NOOP("", "Server %1% rejected contact list change to item '%2%'")) % myJID_.getDomain() % rosterPayload->getItems()[0].getJID().toString());
 	if (!error->getText().empty()) {
 		text += ": " + error->getText();
 	}
diff --git a/Swift/QtUI/EventViewer/QtEventWindow.cpp b/Swift/QtUI/EventViewer/QtEventWindow.cpp
index aa5e27d..fdc0194 100644
--- a/Swift/QtUI/EventViewer/QtEventWindow.cpp
+++ b/Swift/QtUI/EventViewer/QtEventWindow.cpp
@@ -44,7 +44,7 @@ QtEventWindow::QtEventWindow(UIEventStream* eventStream) : EventWindow(false) {
 	view_->setIndentation(0);
 	view_->setRootIsDecorated(true);
 	
-	readButton_ = new QPushButton("Display Notice", this);
+	readButton_ = new QPushButton(tr("Display Notice"), this);
 	layout->addWidget(readButton_);
 	readButton_->setEnabled(false);
 	connect(readButton_, SIGNAL(clicked()), this, SLOT(handleReadClicked()));
diff --git a/Swift/QtUI/MUCSearch/QtMUCSearchWindow.cpp b/Swift/QtUI/MUCSearch/QtMUCSearchWindow.cpp
index 618ed65..135b4ce 100644
--- a/Swift/QtUI/MUCSearch/QtMUCSearchWindow.cpp
+++ b/Swift/QtUI/MUCSearch/QtMUCSearchWindow.cpp
@@ -27,7 +27,6 @@ QtMUCSearchWindow::QtMUCSearchWindow() {
 	setWindowIcon(QIcon(":/logo-icon-16.png"));
 #endif
 	setModal(true);
-	setWindowTitle(tr("Search Room"));
 	ui_.filter_->hide();
 	model_ = new MUCSearchModel();
 	delegate_ = new MUCSearchDelegate();
diff --git a/Swift/QtUI/MUCSearch/QtMUCSearchWindow.ui b/Swift/QtUI/MUCSearch/QtMUCSearchWindow.ui
index e078d34..6416042 100644
--- a/Swift/QtUI/MUCSearch/QtMUCSearchWindow.ui
+++ b/Swift/QtUI/MUCSearch/QtMUCSearchWindow.ui
@@ -11,7 +11,7 @@
    </rect>
   </property>
   <property name="windowTitle">
-   <string>Dialog</string>
+   <string>Search Room</string>
   </property>
   <layout class="QGridLayout" name="gridLayout">
    <item row="0" column="0">
diff --git a/Swift/QtUI/QtAboutWidget.cpp b/Swift/QtUI/QtAboutWidget.cpp
index 2f68769..8bea27a 100644
--- a/Swift/QtUI/QtAboutWidget.cpp
+++ b/Swift/QtUI/QtAboutWidget.cpp
@@ -39,8 +39,8 @@ QtAboutWidget::QtAboutWidget() : QDialog() {
 	
 	QLabel* versionLabel = new QLabel(QString("<center><font size='-1'>Version ") + QCoreApplication::applicationVersion() + "</font></center>", this);
 	mainLayout->addWidget(versionLabel);
-	QString buildString = QString("<center><font size='-1'>") + QString(tr("Built with: Qt version %1")).arg(QT_VERSION_STR);
-	buildString += QString("<br/>") + QString(tr("Running with Qt version ")).arg(qVersion());
+	QString buildString = QString("<center><font size='-1'>") + QString(tr("Built with Qt %1")).arg(QT_VERSION_STR);
+	buildString += QString("<br/>") + QString(tr("Running with Qt %1")).arg(qVersion());
 	buildString += "</font></center>";
 	QLabel* buildLabel = new QLabel(buildString, this);
 	mainLayout->addWidget(buildLabel);
diff --git a/Swift/QtUI/QtAvatarWidget.cpp b/Swift/QtUI/QtAvatarWidget.cpp
index ebdf1a6..173d074 100644
--- a/Swift/QtUI/QtAvatarWidget.cpp
+++ b/Swift/QtUI/QtAvatarWidget.cpp
@@ -58,7 +58,7 @@ void QtAvatarWidget::setAvatar(const ByteArray& data, const std::string& type) {
 		QFont font = painter.font();
 		font.setPointSize(14);
 		painter.setFont(font);
-		painter.drawText(0, 0, image.height(), image.width(), Qt::AlignHCenter | Qt::AlignVCenter, "No picture");
+		painter.drawText(0, 0, image.height(), image.width(), Qt::AlignHCenter | Qt::AlignVCenter, tr("No picture"));
 	}
 
 	if (image.height() > label->height() || image.width() > label->width()) {
diff --git a/Swift/QtUI/QtBookmarkDetailWindow.ui b/Swift/QtUI/QtBookmarkDetailWindow.ui
index d6df255..a77ac76 100644
--- a/Swift/QtUI/QtBookmarkDetailWindow.ui
+++ b/Swift/QtUI/QtBookmarkDetailWindow.ui
@@ -47,7 +47,7 @@
       <item row="1" column="0">
        <widget class="QLabel" name="label_2">
         <property name="text">
-         <string>Room JID:</string>
+         <string>Room Address:</string>
         </property>
        </widget>
       </item>
diff --git a/Swift/QtUI/QtChatWindow.cpp b/Swift/QtUI/QtChatWindow.cpp
index 4b67ef0..3e314e5 100644
--- a/Swift/QtUI/QtChatWindow.cpp
+++ b/Swift/QtUI/QtChatWindow.cpp
@@ -289,7 +289,7 @@ void QtChatWindow::setAckState(std::string const& id, ChatWindow::AckState state
 	switch (state) {
 		case ChatWindow::Pending: xml = "<img src='qrc:/icons/throbber.gif' alt='" + tr("This message has not been received by your server yet.") + "'/>"; break;
 		case ChatWindow::Received: xml = ""; break;
-		case ChatWindow::Failed: xml = "<img src='qrc:/icons/error.png' alt='" + tr("This message may not have been transmitted.'") + "/>"; break;
+		case ChatWindow::Failed: xml = "<img src='qrc:/icons/error.png' alt='" + tr("This message may not have been transmitted.") + "'/>"; break;
 	}
 	messageLog_->setAckXML(P2QSTRING(id), xml);
 }
diff --git a/Swift/QtUI/QtJoinMUCWindow.ui b/Swift/QtUI/QtJoinMUCWindow.ui
index 6b718b3..14774d8 100644
--- a/Swift/QtUI/QtJoinMUCWindow.ui
+++ b/Swift/QtUI/QtJoinMUCWindow.ui
@@ -17,7 +17,7 @@
    </sizepolicy>
   </property>
   <property name="windowTitle">
-   <string>Join Room</string>
+   <string>Enter Room</string>
   </property>
   <layout class="QVBoxLayout" name="verticalLayout">
    <item>
@@ -86,14 +86,14 @@
      <item>
       <widget class="QCheckBox" name="joinAutomatically">
        <property name="text">
-        <string>Join automatically in future</string>
+        <string>Enter automatically in future</string>
        </property>
       </widget>
      </item>
      <item>
       <widget class="QPushButton" name="joinButton">
        <property name="text">
-        <string>Join Room</string>
+        <string>Enter Room</string>
        </property>
       </widget>
      </item>
diff --git a/Swift/QtUI/QtLoginWindow.cpp b/Swift/QtUI/QtLoginWindow.cpp
index 24e6d76..ef8ceac 100644
--- a/Swift/QtUI/QtLoginWindow.cpp
+++ b/Swift/QtUI/QtLoginWindow.cpp
@@ -154,7 +154,11 @@ QtLoginWindow::QtLoginWindow(UIEventStream* uiEventStream) : QMainWindow() {
 	generalMenu_ = swiftMenu_;
 #endif
 
+#ifdef SWIFTEN_PLATFORM_MACOSX
+	QAction* aboutAction = new QAction(QString("&About %1").arg("Swift"), this);
+#else
 	QAction* aboutAction = new QAction(QString(tr("&About %1")).arg("Swift"), this);
+#endif
 	connect(aboutAction, SIGNAL(triggered()), SLOT(handleAbout()));
 	swiftMenu_->addAction(aboutAction);
 
@@ -180,7 +184,11 @@ QtLoginWindow::QtLoginWindow(UIEventStream* uiEventStream) : QMainWindow() {
 	swiftMenu_->addSeparator();
 #endif
 
+#ifdef SWIFTEN_PLATFORM_MACOSX
+	QAction* quitAction = new QAction("&Quit", this);
+#else
 	QAction* quitAction = new QAction(tr("&Quit"), this);
+#endif
 	connect(quitAction, SIGNAL(triggered()), SLOT(handleQuit()));
 	swiftMenu_->addAction(quitAction);
 
diff --git a/Swift/QtUI/QtMainWindow.cpp b/Swift/QtUI/QtMainWindow.cpp
index 0f43f7e..55ceabc 100644
--- a/Swift/QtUI/QtMainWindow.cpp
+++ b/Swift/QtUI/QtMainWindow.cpp
@@ -85,7 +85,7 @@ QtMainWindow::QtMainWindow(QtSettingsProvider* settings, UIEventStream* uiEventS
 	QAction* editProfileAction = new QAction(tr("Edit Profile"), this);
 	connect(editProfileAction, SIGNAL(triggered()), SLOT(handleEditProfileAction()));
 	actionsMenu->addAction(editProfileAction);
-	QAction* joinMUCAction = new QAction(tr("&Join Room"), this);
+	QAction* joinMUCAction = new QAction(tr("&Enter Room"), this);
 	connect(joinMUCAction, SIGNAL(triggered()), SLOT(handleJoinMUCAction()));
 	actionsMenu->addAction(joinMUCAction);
 	addUserAction_ = new QAction(tr("&Add Contact"), this);
diff --git a/Swift/QtUI/QtNameWidget.cpp b/Swift/QtUI/QtNameWidget.cpp
index 6124c65..96f9c0d 100644
--- a/Swift/QtUI/QtNameWidget.cpp
+++ b/Swift/QtUI/QtNameWidget.cpp
@@ -44,7 +44,7 @@ void QtNameWidget::mousePressEvent(QMouseEvent* event) {
 	QMenu menu;
 	bool hasNick = !nick.isEmpty();
 
-	QAction* showAsNick = new QAction(hasNick ? tr("Show nickname") : tr("(No Nickname Set)"), this);
+	QAction* showAsNick = new QAction(hasNick ? tr("Show Nickname") : tr("(No Nickname Set)"), this);
 	showAsNick->setCheckable(true);
 	showAsNick->setEnabled(hasNick);
 	if (mode == ShowNick && hasNick) {
@@ -52,7 +52,7 @@ void QtNameWidget::mousePressEvent(QMouseEvent* event) {
 	}
 	menu.addAction(showAsNick);
 
-	QAction* showAsJID = new QAction(tr("Show ID"), this);
+	QAction* showAsJID = new QAction(tr("Show Address"), this);
 	showAsJID->setCheckable(true);
 	if (mode == ShowJID || !hasNick) {
 		showAsJID->setChecked(true);
diff --git a/Swift/QtUI/QtStatusWidget.cpp b/Swift/QtUI/QtStatusWidget.cpp
index 78bbb03..47f0afe 100644
--- a/Swift/QtUI/QtStatusWidget.cpp
+++ b/Swift/QtUI/QtStatusWidget.cpp
@@ -26,8 +26,6 @@
 
 namespace Swift {
 
-const QString QtStatusWidget::NO_MESSAGE = QString(QT_TRANSLATE_NOOP("QtStatusWidget", "(No message)"));
-
 QtStatusWidget::QtStatusWidget(QWidget *parent) : QWidget(parent), editCursor_(Qt::IBeamCursor), viewCursor_(Qt::PointingHandCursor) {
 	isClicking_ = false;
 	connecting_ = false;
@@ -130,7 +128,7 @@ void QtStatusWidget::generateList() {
 	newStatusText_ = text;
 	menu_->clear();
 	foreach (StatusShow::Type type, icons_.keys()) {
-		QListWidgetItem* item = new QListWidgetItem(text == "" ? NO_MESSAGE : text, menu_);
+		QListWidgetItem* item = new QListWidgetItem(text == "" ? getNoMessage() : text, menu_);
 		item->setIcon(icons_[type]);
 		item->setToolTip(P2QSTRING(statusShowTypeToFriendlyName(type)) + ": " + item->text());
 		item->setStatusTip(item->toolTip());
@@ -223,7 +221,7 @@ void QtStatusWidget::handleItemClicked(QListWidgetItem* item) {
 	editing_ = false;
 	selectedStatusType_ = static_cast<StatusShow::Type>(item->data(Qt::UserRole).toInt());
 	QString message = item->data(Qt::DisplayRole).toString();
-	newStatusText_ = message == NO_MESSAGE ? "" : message;
+	newStatusText_ = message == getNoMessage() ? "" : message;
 	statusEdit_->setText(newStatusText_);
 	handleEditComplete();
 }
@@ -240,7 +238,7 @@ void QtStatusWidget::setStatusText(const QString& text) {
 	connectingMovie_->stop();
 	statusText_ = text;
 	statusEdit_->setText(text);
-	QString escapedText(text.isEmpty() ? NO_MESSAGE : text);
+	QString escapedText(text.isEmpty() ? getNoMessage() : text);
 	escapedText.replace("<","&lt;");
 //	statusTextLabel_->setText("<i>" + escapedText + "</i>");
 	statusTextLabel_->setText(escapedText);
@@ -261,10 +259,8 @@ void QtStatusWidget::setStatusType(StatusShow::Type type) {
 	setNewToolTip();
 }
 
-
-
+QString QtStatusWidget::getNoMessage() {
+	return QString(tr("(No message)"));
 }
 
-
-
-
+}
diff --git a/Swift/QtUI/QtStatusWidget.h b/Swift/QtUI/QtStatusWidget.h
index f302c64..75bcf52 100644
--- a/Swift/QtUI/QtStatusWidget.h
+++ b/Swift/QtUI/QtStatusWidget.h
@@ -43,6 +43,7 @@ namespace Swift {
 		protected slots:
 			virtual void mousePressEvent(QMouseEvent* event);
 			void handleItemClicked(QListWidgetItem* item);
+			static QString getNoMessage();
 		private:
 			void viewMode();
 			void setNewToolTip();
diff --git a/Swift/QtUI/SConscript b/Swift/QtUI/SConscript
index e52d76a..2255808 100644
--- a/Swift/QtUI/SConscript
+++ b/Swift/QtUI/SConscript
@@ -161,17 +161,18 @@ commonResources = {
 }
 
 # Translation
-translation_sources = [env.File("../Translations/Swift.ts").abspath]
+translation_sources = [env.File("../Translations/swift.ts").abspath]
 for file in os.listdir(Dir("../Translations").abspath) :
-	if file.startswith("Swift_") and file.endswith(".ts") :
+	if file.startswith("swift_") and file.endswith(".ts") :
 		lang = file[6:-3]
-		translation_resource = "../resources/translations/Swift_" + lang + ".qm"
-		translation_source = "../Translations/Swift_" + lang + ".ts"
+		translation_resource = "../resources/translations/swift_" + lang + ".qm"
+		translation_source = "../Translations/swift_" + lang + ".ts"
 		translation_sources.append(env.File(translation_source).abspath)
 		myenv.Qm(translation_resource, translation_source)
 		commonResources["translations"] = commonResources.get("translations", []) + [translation_resource]
 if ARGUMENTS.get("update_translations", False) :
-	t = myenv.Command(translation_sources, [], [myenv.Action("$QT4_LUPDATE -I " + env.Dir("#").abspath + " -silent -codecfortr utf-8  -recursive Swift -ts " + " ".join(translation_sources), cmdstr = "$QT4_LUPDATECOMSTR")])
+	myenv.Precious(translation_sources)
+	t = myenv.Command(translation_sources, [], [myenv.Action("$QT4_LUPDATE -I " + env.Dir("#").abspath + " -silent -no-ui-lines -codecfortr utf-8  -recursive Swift -ts " + " ".join(translation_sources), cmdstr = "$QT4_LUPDATECOMSTR")])
 	myenv.AlwaysBuild(t)
 
 if env["PLATFORM"] == "darwin" :
diff --git a/Swift/QtUI/UserSearch/QtUserSearchFieldsPage.ui b/Swift/QtUI/UserSearch/QtUserSearchFieldsPage.ui
index f2b5916..fa6e376 100644
--- a/Swift/QtUI/UserSearch/QtUserSearchFieldsPage.ui
+++ b/Swift/QtUI/UserSearch/QtUserSearchFieldsPage.ui
@@ -11,7 +11,7 @@
    </rect>
   </property>
   <property name="windowTitle">
-   <string>WizardPage</string>
+   <string></string>
   </property>
   <layout class="QGridLayout" name="gridLayout">
    <item row="0" column="0" colspan="2">
@@ -77,7 +77,7 @@
    <item row="5" column="0">
     <widget class="QLabel" name="fetchingThrobber_">
      <property name="text">
-      <string>TextLabel</string>
+      <string></string>
      </property>
     </widget>
    </item>
diff --git a/Swift/QtUI/UserSearch/QtUserSearchFirstPage.ui b/Swift/QtUI/UserSearch/QtUserSearchFirstPage.ui
index 3139f66..46a1277 100644
--- a/Swift/QtUI/UserSearch/QtUserSearchFirstPage.ui
+++ b/Swift/QtUI/UserSearch/QtUserSearchFirstPage.ui
@@ -11,19 +11,19 @@
    </rect>
   </property>
   <property name="windowTitle">
-   <string>WizardPage</string>
+   <string></string>
   </property>
   <property name="title">
    <string>Add a user</string>
   </property>
   <property name="subTitle">
-   <string>Add another user to your roster. If you know their JID you can add them directly, or you can search for them.</string>
+   <string>Add another user to your contact list. If you know their address you can add them directly, or you can search for them.</string>
   </property>
   <layout class="QVBoxLayout" name="verticalLayout">
    <item>
     <widget class="QLabel" name="howLabel_">
      <property name="text">
-      <string>howLabel_</string>
+      <string></string>
      </property>
     </widget>
    </item>
@@ -32,7 +32,7 @@
      <item>
       <widget class="QRadioButton" name="byJID_">
        <property name="text">
-        <string>I know their JID:</string>
+        <string>I know their address:</string>
        </property>
       </widget>
      </item>
@@ -88,7 +88,7 @@
    <item>
     <widget class="QLabel" name="errorLabel_">
      <property name="text">
-      <string>&lt;font color='red'&gt;errorLabel_&lt;/font&gt;</string>
+      <string></string>
      </property>
      <property name="alignment">
       <set>Qt::AlignCenter</set>
diff --git a/Swift/QtUI/UserSearch/QtUserSearchResultsPage.ui b/Swift/QtUI/UserSearch/QtUserSearchResultsPage.ui
index e980a2f..f312fde 100644
--- a/Swift/QtUI/UserSearch/QtUserSearchResultsPage.ui
+++ b/Swift/QtUI/UserSearch/QtUserSearchResultsPage.ui
@@ -11,7 +11,7 @@
    </rect>
   </property>
   <property name="windowTitle">
-   <string>WizardPage</string>
+   <string></string>
   </property>
   <layout class="QHBoxLayout" name="horizontalLayout">
    <item>
diff --git a/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp b/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp
index a384f5d..e06cd31 100644
--- a/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp
+++ b/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp
@@ -23,7 +23,7 @@ namespace Swift {
 QtUserSearchFirstPage::QtUserSearchFirstPage(UserSearchWindow::Type type, const QString& title) {
 	setupUi(this);
 	setTitle(title);
-	setSubTitle(QString(tr("%1. If you know their JID you can enter it directly, or you can search for them.")).arg(type == UserSearchWindow::AddContact ? tr("Add another user to your roster") : tr("Chat to another user")));
+	setSubTitle(QString(tr("%1. If you know their address you can enter it directly, or you can search for them.")).arg(type == UserSearchWindow::AddContact ? tr("Add another user to your contact list") : tr("Chat to another user")));
 	connect(jid_, SIGNAL(textChanged(const QString&)), this, SLOT(emitCompletenessCheck()));
 	connect(service_->lineEdit(), SIGNAL(textChanged(const QString&)), this, SLOT(emitCompletenessCheck()));
 }
@@ -291,10 +291,10 @@ void QtUserSearchWindow::clear() {
 	firstPage_->errorLabel_->setVisible(false);
 	QString howText;
 	if (type_ == AddContact) {
-		howText = QString("How would you like to find the user to add?");
+		howText = QString(tr("How would you like to find the user to add?"));
 	}
 	else {
-		howText = QString("How would you like to find the user to chat to?");
+		howText = QString(tr("How would you like to find the user to chat to?"));
 	}
 	firstPage_->howLabel_->setText(howText);
 	firstPage_->byJID_->setChecked(true);
diff --git a/Swift/QtUI/UserSearch/QtUserSearchWindow.ui b/Swift/QtUI/UserSearch/QtUserSearchWindow.ui
deleted file mode 100644
index 56047ce..0000000
--- a/Swift/QtUI/UserSearch/QtUserSearchWindow.ui
+++ /dev/null
@@ -1,292 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>QtUserSearchWindow</class>
- <widget class="QWidget" name="QtUserSearchWindow">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>698</width>
-    <height>569</height>
-   </rect>
-  </property>
-  <property name="sizePolicy">
-   <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
-    <horstretch>0</horstretch>
-    <verstretch>0</verstretch>
-   </sizepolicy>
-  </property>
-  <property name="windowTitle">
-   <string>Find other users</string>
-  </property>
-  <layout class="QVBoxLayout" name="verticalLayout">
-   <item>
-    <layout class="QHBoxLayout" name="horizontalLayout">
-     <property name="sizeConstraint">
-      <enum>QLayout::SetNoConstraint</enum>
-     </property>
-     <item>
-      <widget class="QFrame" name="frame">
-       <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="label">
-          <property name="text">
-           <string>Service to search:</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QComboBox" name="service_">
-          <property name="editable">
-           <bool>true</bool>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <layout class="QHBoxLayout" name="horizontalLayout_2">
-          <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="getSearchForm_">
-            <property name="text">
-             <string>Get Search Form</string>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item>
-         <widget class="QStackedWidget" name="stack_">
-          <property name="currentIndex">
-           <number>1</number>
-          </property>
-          <widget class="QWidget" name="display">
-           <layout class="QHBoxLayout" name="horizontalLayout_6">
-            <item>
-             <widget class="QLabel" name="messageLabel_">
-              <property name="text">
-               <string>TextLabel</string>
-              </property>
-              <property name="alignment">
-               <set>Qt::AlignHCenter|Qt::AlignTop</set>
-              </property>
-              <property name="wordWrap">
-               <bool>true</bool>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </widget>
-          <widget class="QWidget" name="legacy">
-           <layout class="QVBoxLayout" name="verticalLayout_4">
-            <item>
-             <layout class="QGridLayout" name="gridLayout">
-              <item row="0" column="0" colspan="2">
-               <widget class="QLabel" name="label_4">
-                <property name="text">
-                 <string>Enter search terms</string>
-                </property>
-               </widget>
-              </item>
-              <item row="1" column="0">
-               <widget class="QLabel" name="nickInputLabel_">
-                <property name="text">
-                 <string>Nickname:</string>
-                </property>
-               </widget>
-              </item>
-              <item row="1" column="1">
-               <widget class="QLineEdit" name="nickInput_"/>
-              </item>
-              <item row="2" column="0">
-               <widget class="QLabel" name="firstInputLabel_">
-                <property name="text">
-                 <string>First name:</string>
-                </property>
-               </widget>
-              </item>
-              <item row="2" column="1">
-               <widget class="QLineEdit" name="firstInput_"/>
-              </item>
-              <item row="3" column="0">
-               <widget class="QLabel" name="lastInputLabel_">
-                <property name="text">
-                 <string>Last name:</string>
-                </property>
-               </widget>
-              </item>
-              <item row="3" column="1">
-               <widget class="QLineEdit" name="lastInput_"/>
-              </item>
-              <item row="4" column="0">
-               <widget class="QLabel" name="emailInputLabel_">
-                <property name="text">
-                 <string>E-Mail:</string>
-                </property>
-               </widget>
-              </item>
-              <item row="4" column="1">
-               <widget class="QLineEdit" name="emailInput_"/>
-              </item>
-             </layout>
-            </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>
-         </widget>
-        </item>
-        <item>
-         <layout class="QHBoxLayout" name="horizontalLayout_3">
-          <item>
-           <spacer name="horizontalSpacer_2">
-            <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="search_">
-            <property name="text">
-             <string>Search</string>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </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_3">
-        <item>
-         <widget class="QLabel" name="label_2">
-          <property name="text">
-           <string>Results:</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QTreeView" name="results_"/>
-        </item>
-        <item>
-         <widget class="QLabel" name="label_3">
-          <property name="text">
-           <string>Address:</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QLineEdit" name="jid_"/>
-        </item>
-        <item>
-         <layout class="QHBoxLayout" name="horizontalLayout_4">
-          <item>
-           <widget class="QCheckBox" name="addToRoster_">
-            <property name="text">
-             <string>Add to Roster. Nickname:</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <widget class="QLineEdit" name="nickName_"/>
-          </item>
-         </layout>
-        </item>
-        <item>
-         <layout class="QHBoxLayout" name="horizontalLayout_5">
-          <item>
-           <widget class="QCheckBox" name="startChat_">
-            <property name="text">
-             <string>Start Chat With Contact</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <spacer name="horizontalSpacer_4">
-            <property name="orientation">
-             <enum>Qt::Horizontal</enum>
-            </property>
-            <property name="sizeHint" stdset="0">
-             <size>
-              <width>40</width>
-              <height>20</height>
-             </size>
-            </property>
-           </spacer>
-          </item>
-         </layout>
-        </item>
-       </layout>
-      </widget>
-     </item>
-    </layout>
-   </item>
-   <item>
-    <widget class="QDialogButtonBox" name="buttonBox_">
-     <property name="orientation">
-      <enum>Qt::Horizontal</enum>
-     </property>
-     <property name="standardButtons">
-      <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
-     </property>
-    </widget>
-   </item>
-  </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
diff --git a/Swift/QtUI/main.cpp b/Swift/QtUI/main.cpp
index 3cbb170..c98937d 100644
--- a/Swift/QtUI/main.cpp
+++ b/Swift/QtUI/main.cpp
@@ -32,7 +32,7 @@ int main(int argc, char* argv[]) {
 	QTranslator qtTranslator;
 	if (!someTranslationPath.empty()) {
 		//std::cout << "Loading " << std::string(QLocale::system().name().toUtf8()) << std::endl;
-		qtTranslator.load("Swift_" + QLocale::system().name(), someTranslationPath.parent_path().string().c_str());
+		qtTranslator.load(QString(SWIFT_APPLICATION_NAME).toLower() + "_" + QLocale::system().name(), someTranslationPath.parent_path().string().c_str());
 	}
 	app.installTranslator(&qtTranslator);
 	QtTranslator swiftTranslator;
diff --git a/Swift/Translations/swift.ts b/Swift/Translations/swift.ts
new file mode 100644
index 0000000..32ca913
--- /dev/null
+++ b/Swift/Translations/swift.ts
@@ -0,0 +1,1289 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name></name>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="46"/>
+        <source>Starting chat with %1% in chatroom %2%</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="49"/>
+        <source>Starting chat with %1% - %2%</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="115"/>
+        <source>me</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="156"/>
+        <source>%1% has gone offline</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="160"/>
+        <source>%1% has become available</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="162"/>
+        <source>%1% has gone away</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="164"/>
+        <source>%1% is now busy</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="56"/>
+        <source>The day is now %1%</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="193"/>
+        <source>Error sending message</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="199"/>
+        <source>Bad request</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="200"/>
+        <source>Conflict</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="201"/>
+        <source>This feature is not implemented</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="202"/>
+        <source>Forbidden</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="203"/>
+        <source>Recipient can no longer be contacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="204"/>
+        <source>Internal server error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="205"/>
+        <source>Item not found</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="206"/>
+        <source>JID Malformed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="207"/>
+        <source>Message was rejected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="208"/>
+        <source>Not allowed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="209"/>
+        <source>Not authorized</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="210"/>
+        <source>Payment is required</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="211"/>
+        <source>Recipient is unavailable</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="212"/>
+        <source>Redirect</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="213"/>
+        <source>Registration required</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="214"/>
+        <source>Recipient&apos;s server not found</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="215"/>
+        <source>Remote server timeout</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="216"/>
+        <source>The server is low on resources</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="217"/>
+        <source>The service is unavailable</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="218"/>
+        <source>A subscription is required</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="219"/>
+        <source>Undefined condition</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="220"/>
+        <source>Unexpected request</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="114"/>
+        <source>Room %1% is not responding. This operation may never complete.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="135"/>
+        <source>No nickname specified</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="139"/>
+        <source>A password needed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="147"/>
+        <source>You are banned from the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="151"/>
+        <source>The room is full</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="155"/>
+        <source>The room does not exist</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="125"/>
+        <source>Unable to enter this room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="131"/>
+        <source>Unable to enter this room as %1%, retrying as %2%</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="143"/>
+        <source>Only members may enter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="214"/>
+        <source>%1% has entered the room as a %2%.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="217"/>
+        <source>%1% has entered the room.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="243"/>
+        <source>moderator</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="244"/>
+        <source>participant</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="245"/>
+        <source>visitor</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="284"/>
+        <source>The room subject is now: %1%</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="307"/>
+        <source>%1% is now a %2%</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="313"/>
+        <source>Moderators</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="314"/>
+        <source>Participants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="315"/>
+        <source>Visitors</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="316"/>
+        <source>Occupants</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="330"/>
+        <source>Trying to enter room %1%</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="481"/>
+        <source>%1% have left then returned to the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="484"/>
+        <source>%1% has left then returned to the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="359"/>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="468"/>
+        <source>%1% has left the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="173"/>
+        <source>You have entered room %1% as a %2%.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="359"/>
+        <source>You have left the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="433"/>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="497"/>
+        <source> and </source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="457"/>
+        <source>%1% have entered the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="460"/>
+        <source>%1% has entered the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="473"/>
+        <source>%1% have entered then left the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="476"/>
+        <source>%1% has entered then left the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="465"/>
+        <source>%1% have left the room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="437"/>
+        <source>Unknown Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="438"/>
+        <source>Unable to find server</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="439"/>
+        <source>Error connecting to server</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="440"/>
+        <source>Error while receiving server data</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="441"/>
+        <source>Error while sending data to the server</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="442"/>
+        <source>Error parsing server data</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="443"/>
+        <source>Login/password invalid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="444"/>
+        <source>Error while compressing stream</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="445"/>
+        <source>Server verification failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="446"/>
+        <source>Authentication mechanisms not supported</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="447"/>
+        <source>Unexpected response</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="448"/>
+        <source>Error binding resource</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="449"/>
+        <source>Error starting session</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="450"/>
+        <source>Stream error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="451"/>
+        <source>Encryption error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="452"/>
+        <source>Error loading certificate (Invalid password?)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="453"/>
+        <source>Certificate not authorized</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="455"/>
+        <source>Unknown certificate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="456"/>
+        <source>Certificate has expired</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="457"/>
+        <source>Certificate is not yet valid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="458"/>
+        <source>Certificate is self-signed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="459"/>
+        <source>Certificate has been rejected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="460"/>
+        <source>Certificate is not trusted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="461"/>
+        <source>Certificate cannot be used for encrypting your connection</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="462"/>
+        <source>Certificate path length constraint exceeded</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="463"/>
+        <source>Invalid certificate signature</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="464"/>
+        <source>Invalid Certificate Authority</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="465"/>
+        <source>Certificate does not match the host identity</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="475"/>
+        <source>Certificate error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="489"/>
+        <source>Reconnect to %1% failed: %2%. Will retry in %3% seconds.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="492"/>
+        <source>Disconnected from %1%: %2%.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="126"/>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="152"/>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="213"/>
+        <source>Contacts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="250"/>
+        <source>Server %1% rejected contact list change to item &apos;%2%&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="15"/>
+        <location filename="../Controllers/StatusUtil.cpp" line="16"/>
+        <source>Available</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="17"/>
+        <location filename="../Controllers/StatusUtil.cpp" line="18"/>
+        <source>Away</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="19"/>
+        <source>Busy</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="20"/>
+        <source>Offline</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <location filename="../QtUI/MUCSearch/MUCSearchEmptyItem.cpp" line="25"/>
+        <source>No rooms found</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QtBookmarkDetailWindow</name>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="137"/>
+        <source>Edit Bookmark Details</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="138"/>
+        <source>Bookmark Name:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="140"/>
+        <source>Your Nickname:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="141"/>
+        <source>Room password:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="142"/>
+        <source>Join automatically</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="139"/>
+        <source>Room Address:</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QtJoinMUCWindow</name>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="125"/>
+        <source>Room:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="126"/>
+        <source>Search ...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="127"/>
+        <source>Nickname:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="124"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="130"/>
+        <source>Enter Room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="129"/>
+        <source>Enter automatically in future</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QtMUCSearchWindow</name>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="118"/>
+        <source>Search Room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="119"/>
+        <source>Service:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="121"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="122"/>
+        <source>Ok</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="123"/>
+        <source>List rooms</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QtUserSearchFieldsPage</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="119"/>
+        <source>Nickname:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="120"/>
+        <source>First name:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="121"/>
+        <source>Last name:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="122"/>
+        <source>E-Mail:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="124"/>
+        <source>Fetching search fields</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QtUserSearchFirstPage</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="121"/>
+        <source>Add a user</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="125"/>
+        <source>I&apos;d like to search my server</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="126"/>
+        <source>I&apos;d like to search another server:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="122"/>
+        <source>Add another user to your contact list. If you know their address you can add them directly, or you can search for them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="124"/>
+        <source>I know their address:</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QtUserSearchWizard</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWizard.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchWizard.h" line="39"/>
+        <source>Find User</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::ChatListModel</name>
+    <message>
+        <location filename="../QtUI/ChatList/ChatListModel.cpp" line="15"/>
+        <source>Bookmarked Rooms</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtAboutWidget</name>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="23"/>
+        <source>About %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="42"/>
+        <source>Built with Qt %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="43"/>
+        <source>Running with Qt %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="48"/>
+        <source>View License</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtAvatarWidget</name>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="61"/>
+        <source>No picture</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="73"/>
+        <source>Select picture ...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="76"/>
+        <source>Clear picture</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="81"/>
+        <source>Select picture</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="81"/>
+        <source>Image Files (*.png *.jpg *.gif)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="95"/>
+        <source>Error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="95"/>
+        <source>The selected picture is in an unrecognized format</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtBookmarkDetailWindow</name>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.cpp" line="31"/>
+        <source>Bookmark not valid</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.cpp" line="31"/>
+        <source>You must specify a valid room address (e.g. myroom@chats.example.com).</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtChatListWindow</name>
+    <message>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="62"/>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="66"/>
+        <source>Add New Bookmark</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="63"/>
+        <source>Edit Bookmark</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="64"/>
+        <source>Remove Bookmark</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtChatView</name>
+    <message>
+        <location filename="../QtUI/QtChatView.cpp" line="61"/>
+        <source>Clear log</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatView.cpp" line="62"/>
+        <source>You are about to clear the contents of your chat log.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatView.cpp" line="63"/>
+        <source>Are you sure?</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtChatWindow</name>
+    <message>
+        <location filename="../QtUI/QtChatWindow.cpp" line="290"/>
+        <source>This message has not been received by your server yet.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatWindow.cpp" line="292"/>
+        <source>This message may not have been transmitted.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatWindow.cpp" line="312"/>
+        <source>Couldn&apos;t send message: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtContactEditWidget</name>
+    <message>
+        <location filename="../QtUI/QtContactEditWidget.cpp" line="28"/>
+        <source>Name:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWidget.cpp" line="34"/>
+        <source>Groups:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWidget.cpp" line="56"/>
+        <source>New Group:</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtContactEditWindow</name>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="26"/>
+        <source>Edit contact</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="41"/>
+        <source>Remove contact</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="44"/>
+        <source>Ok</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="76"/>
+        <source>Confirm contact deletion</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="77"/>
+        <source>Are you sure you want to delete this contact?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="78"/>
+        <source>This will remove the contact &apos;%1&apos; from all groups they may be in.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtEventWindow</name>
+    <message>
+        <location filename="../QtUI/EventViewer/QtEventWindow.cpp" line="47"/>
+        <source>Display Notice</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtLoginWindow</name>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="81"/>
+        <source>User address:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="86"/>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="87"/>
+        <source>User address - looks like someuser@someserver.com</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="91"/>
+        <source>Example: alice@wonderland.lit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="97"/>
+        <source>Password:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="118"/>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="119"/>
+        <source>Click if you have a personal certificate used for login to the service.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="125"/>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="299"/>
+        <source>Connect</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="136"/>
+        <source>Remember Password?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="138"/>
+        <source>Login Automatically?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="150"/>
+        <source>&amp;Swift</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="152"/>
+        <source>&amp;General</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="160"/>
+        <source>&amp;About %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="165"/>
+        <source>&amp;Show Debug Console</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="169"/>
+        <source>&amp;Play Sounds</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="175"/>
+        <source>Show &amp;Notifications</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="190"/>
+        <source>&amp;Quit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="205"/>
+        <source>Remove profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="205"/>
+        <source>Remove the profile &apos;%1&apos;?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="299"/>
+        <source>Cancel</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="320"/>
+        <source>Select an authentication certificate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="420"/>
+        <source>The certificate presented by the server is not valid.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="421"/>
+        <source>Would you like to permanently trust this certificate? This must only be done if you know it is correct.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="423"/>
+        <source>Subject: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="424"/>
+        <source>SHA-1 Fingerprint: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtMUCSearchWindow</name>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.cpp" line="49"/>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.cpp" line="51"/>
+        <source>Searching</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtMainWindow</name>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="63"/>
+        <source>&amp;Contacts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="70"/>
+        <source>&amp;Notices</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="71"/>
+        <source>C&amp;hats</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="75"/>
+        <source>&amp;View</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="77"/>
+        <source>Show offline contacts</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="83"/>
+        <source>&amp;Actions</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="85"/>
+        <source>Edit Profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="88"/>
+        <source>&amp;Enter Room</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="91"/>
+        <source>&amp;Add Contact</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="94"/>
+        <source>Start &amp;Chat</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="98"/>
+        <source>&amp;Sign Out</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="130"/>
+        <source>Notices</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtNameWidget</name>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="47"/>
+        <source>(No Nickname Set)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="47"/>
+        <source>Show Nickname</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="55"/>
+        <source>Show Address</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="62"/>
+        <source>Edit Profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtProfileWindow</name>
+    <message>
+        <location filename="../QtUI/QtProfileWindow.cpp" line="24"/>
+        <source>Edit Profile</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtProfileWindow.cpp" line="43"/>
+        <source>Nickname:</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtProfileWindow.cpp" line="67"/>
+        <source>Save</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtStatusWidget</name>
+    <message>
+        <location filename="../QtUI/QtStatusWidget.cpp" line="232"/>
+        <source>Connecting</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtStatusWidget.cpp" line="264"/>
+        <source>(No message)</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtSubscriptionRequestWindow</name>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="24"/>
+        <source>You have already replied to this request</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="25"/>
+        <source>Ok</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="30"/>
+        <source>Yes</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="32"/>
+        <source>No</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="34"/>
+        <source>Defer</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtTreeWidget</name>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="86"/>
+        <source>Edit</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="93"/>
+        <source>Rename</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="97"/>
+        <source>Rename group</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="97"/>
+        <source>New name for %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtUserSearchFirstPage</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="26"/>
+        <source>Chat to another user</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="26"/>
+        <source>%1. If you know their address you can enter it directly, or you can search for them.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="26"/>
+        <source>Add another user to your contact list</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtUserSearchWindow</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="85"/>
+        <source>Add Contact</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="85"/>
+        <source>Chat to User</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="294"/>
+        <source>How would you like to find the user to add?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="297"/>
+        <source>How would you like to find the user to chat to?</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="321"/>
+        <source>Error while searching</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="327"/>
+        <source>This server doesn&apos;t support searching for users.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtWebView</name>
+    <message>
+        <location filename="../QtUI/QtWebView.cpp" line="61"/>
+        <source>Clear</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtXMLConsoleWidget</name>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="22"/>
+        <source>Console</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="40"/>
+        <source>Trace input/output</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="46"/>
+        <source>Clear</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="50"/>
+        <source>Debug Console</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="75"/>
+        <source>&lt;!-- IN --&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="79"/>
+        <source>&lt;!-- OUT --&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+</TS>
diff --git a/Swift/Translations/swift_nl.ts b/Swift/Translations/swift_nl.ts
new file mode 100644
index 0000000..f6d6220
--- /dev/null
+++ b/Swift/Translations/swift_nl.ts
@@ -0,0 +1,1290 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="nl_NL">
+<defaultcodec>UTF-8</defaultcodec>
+<context>
+    <name></name>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="46"/>
+        <source>Starting chat with %1% in chatroom %2%</source>
+        <translation>Conversatie begonnen met %1% in kamer %2%</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="49"/>
+        <source>Starting chat with %1% - %2%</source>
+        <translation>Conversatie begonnen met %1% - %2%</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="115"/>
+        <source>me</source>
+        <translation>ik</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="156"/>
+        <source>%1% has gone offline</source>
+        <translation>%1% is offline gegaan</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="160"/>
+        <source>%1% has become available</source>
+        <translation>%1% is beschikbaar geworden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="162"/>
+        <source>%1% has gone away</source>
+        <translation>%1% is afwezig</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatController.cpp" line="164"/>
+        <source>%1% is now busy</source>
+        <translation>%1% is nu bezet</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="56"/>
+        <source>The day is now %1%</source>
+        <translation>Vandaag is nu %1%</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="193"/>
+        <source>Error sending message</source>
+        <translation>Fout tijdens het versturen van bericht</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="199"/>
+        <source>Bad request</source>
+        <translation>Ongeldig verzoek</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="200"/>
+        <source>Conflict</source>
+        <translation>Conflict</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="201"/>
+        <source>This feature is not implemented</source>
+        <translation>Deze functie is niet geïmplementeerd</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="202"/>
+        <source>Forbidden</source>
+        <translation>Verboden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="203"/>
+        <source>Recipient can no longer be contacted</source>
+        <translation>Begunstigde is onbereikbaar</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="204"/>
+        <source>Internal server error</source>
+        <translation>Interne serverfout</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="205"/>
+        <source>Item not found</source>
+        <translation>Element niet gevonden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="206"/>
+        <source>JID Malformed</source>
+        <translation>JID misvormd</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="207"/>
+        <source>Message was rejected</source>
+        <translation>Bericht geweigerd</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="208"/>
+        <source>Not allowed</source>
+        <translation>Niet toegelaten</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="209"/>
+        <source>Not authorized</source>
+        <translation>Niet toegestaan</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="210"/>
+        <source>Payment is required</source>
+        <translation>Betaling is vereist</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="211"/>
+        <source>Recipient is unavailable</source>
+        <translation>Begunstigde is niet beschikbaar</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="212"/>
+        <source>Redirect</source>
+        <translation>Omleiding</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="213"/>
+        <source>Registration required</source>
+        <translation>Registratie vereist</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="214"/>
+        <source>Recipient&apos;s server not found</source>
+        <translation>Server begunstigde niet gevonden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="215"/>
+        <source>Remote server timeout</source>
+        <translation>Server time-out</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="216"/>
+        <source>The server is low on resources</source>
+        <translation>De server heeft een tekort aan bronnen</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="217"/>
+        <source>The service is unavailable</source>
+        <translation>De server is niet beschikbaar</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="218"/>
+        <source>A subscription is required</source>
+        <translation>Inschrijving is vereist</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="219"/>
+        <source>Undefined condition</source>
+        <translation>Onbekende fout</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/ChatControllerBase.cpp" line="220"/>
+        <source>Unexpected request</source>
+        <translation>Onverwacht verzoek</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="114"/>
+        <source>Room %1% is not responding. This operation may never complete.</source>
+        <translation>Kamer %1% antwoordt niet. Deze operatie kan mogelijk nooit voltooien.</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="135"/>
+        <source>No nickname specified</source>
+        <translation>Geen roepnaam gespecifieerd</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="139"/>
+        <source>A password needed</source>
+        <translation>Wachtwoord vereist</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="147"/>
+        <source>You are banned from the room</source>
+        <translation>U bent verbannen uit de kamer</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="151"/>
+        <source>The room is full</source>
+        <translation>De kamer is vol</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="155"/>
+        <source>The room does not exist</source>
+        <translation>Deze kamer bestaat niet</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="125"/>
+        <source>Unable to enter this room</source>
+        <translation>Kan deze kamer niet betreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="131"/>
+        <source>Unable to enter this room as %1%, retrying as %2%</source>
+        <translation>Kan deze kamer niet betreden als %1%; als %2% opniew aan het proberen</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="143"/>
+        <source>Only members may enter</source>
+        <translation>Enkel leden mogen deze kamer betreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="214"/>
+        <source>%1% has entered the room as a %2%.</source>
+        <translation>%1% heeft de kamer betreden als %2%.</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="217"/>
+        <source>%1% has entered the room.</source>
+        <translation>%1% heeft de kamer betreden.</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="243"/>
+        <source>moderator</source>
+        <translation>moderator</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="244"/>
+        <source>participant</source>
+        <translation>deelnemer</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="245"/>
+        <source>visitor</source>
+        <translation>bezoeker</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="284"/>
+        <source>The room subject is now: %1%</source>
+        <translation>Het onderwerp van deze kamer is nu: %1%</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="307"/>
+        <source>%1% is now a %2%</source>
+        <translation>%1% is nu een %2%</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="313"/>
+        <source>Moderators</source>
+        <translation>Moderators</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="314"/>
+        <source>Participants</source>
+        <translation>Deelnemers</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="315"/>
+        <source>Visitors</source>
+        <translation>Bezoekers</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="316"/>
+        <source>Occupants</source>
+        <translation>Bewoners</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="330"/>
+        <source>Trying to enter room %1%</source>
+        <translation>Aan het proberen om de kamer %1% te betreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="481"/>
+        <source>%1% have left then returned to the room</source>
+        <translation>%1% hebben de kamer verlaten en terug betreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="484"/>
+        <source>%1% has left then returned to the room</source>
+        <translation>%1% heeft de kamer verlaten en terug betreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="359"/>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="468"/>
+        <source>%1% has left the room</source>
+        <translation>%1% heeft de kamer verlaten</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="173"/>
+        <source>You have entered room %1% as a %2%.</source>
+        <translation>U heeft de kamer %1% als %2% betreden.</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="359"/>
+        <source>You have left the room</source>
+        <translation>U heeft de kamer verlaten</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="433"/>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="497"/>
+        <source> and </source>
+        <translation>en</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="457"/>
+        <source>%1% have entered the room</source>
+        <translation>%1% hebben de kamer betreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="460"/>
+        <source>%1% has entered the room</source>
+        <translation>%1% heeft de kamer betreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="473"/>
+        <source>%1% have entered then left the room</source>
+        <translation>%1% hebben de kamer betreden en terug verlaten</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="476"/>
+        <source>%1% has entered then left the room</source>
+        <translation>%1% heeft de kamer betreden en terug verlaten</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Chat/MUCController.cpp" line="465"/>
+        <source>%1% have left the room</source>
+        <translation>%1% hebben de kamer verlaten</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="437"/>
+        <source>Unknown Error</source>
+        <translation>Onbekende fout</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="438"/>
+        <source>Unable to find server</source>
+        <translation>Kan server niet vinden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="439"/>
+        <source>Error connecting to server</source>
+        <translation>Fout tijdens het verbinden met de server</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="440"/>
+        <source>Error while receiving server data</source>
+        <translation>Fout tijdens het ontvangen van gegevens</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="441"/>
+        <source>Error while sending data to the server</source>
+        <translation>Fout tijdens het verzenden van gegevens</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="442"/>
+        <source>Error parsing server data</source>
+        <translation>Fout tijdens het ontleden van gegevens</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="443"/>
+        <source>Login/password invalid</source>
+        <translation>Gebruikersnaam/wachtwoord ongeldig</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="444"/>
+        <source>Error while compressing stream</source>
+        <translation>Fout tijdens het comprimeren</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="445"/>
+        <source>Server verification failed</source>
+        <translation>Serververificatie gefaald</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="446"/>
+        <source>Authentication mechanisms not supported</source>
+        <translation>Authenticatiemechanismen niet ondersteund</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="447"/>
+        <source>Unexpected response</source>
+        <translation>Onverwacht antwoord</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="448"/>
+        <source>Error binding resource</source>
+        <translation>Fout tijdens het binden van de resource</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="449"/>
+        <source>Error starting session</source>
+        <translation>Fout bij het starten van de sessie</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="450"/>
+        <source>Stream error</source>
+        <translation>Stroomfout</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="451"/>
+        <source>Encryption error</source>
+        <translation>Beveiligingsfout</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="452"/>
+        <source>Error loading certificate (Invalid password?)</source>
+        <translation>Fout bij het laden van het certificaat (Ongeldig wachtwoord?)</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="453"/>
+        <source>Certificate not authorized</source>
+        <translation>Certificaat heeft geen toestemming</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="455"/>
+        <source>Unknown certificate</source>
+        <translation>Onbekend certificaat</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="456"/>
+        <source>Certificate has expired</source>
+        <translation>Certificaat is verstreken</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="457"/>
+        <source>Certificate is not yet valid</source>
+        <translation>Certificaat is nog niet geldig</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="458"/>
+        <source>Certificate is self-signed</source>
+        <translation>Certificaat is zelfondertekend</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="459"/>
+        <source>Certificate has been rejected</source>
+        <translation>Certificaat werd afgewezen</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="460"/>
+        <source>Certificate is not trusted</source>
+        <translation>Certificaat wordt niet vertrouwd</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="461"/>
+        <source>Certificate cannot be used for encrypting your connection</source>
+        <translation>Certificaat kan niet gebruikt worden om verbinding te beveiligen</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="462"/>
+        <source>Certificate path length constraint exceeded</source>
+        <translation>Padlengte certificaat overschreden</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="463"/>
+        <source>Invalid certificate signature</source>
+        <translation>Certificaat heeft ongeldige handtekening</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="464"/>
+        <source>Invalid Certificate Authority</source>
+        <translation>Ongeldige certificeringsinstantie</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="465"/>
+        <source>Certificate does not match the host identity</source>
+        <translation>Certificaat komt niet overeen met identiteit</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="475"/>
+        <source>Certificate error</source>
+        <translation>Certificaatfout</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="489"/>
+        <source>Reconnect to %1% failed: %2%. Will retry in %3% seconds.</source>
+        <translation>Herverbinding met %1% mislukt: %2%. Zal opnieuw proberen binnen %3% seconden.</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/MainController.cpp" line="492"/>
+        <source>Disconnected from %1%: %2%.</source>
+        <translation>Verbinding met %1% verbroken: %2%.</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="126"/>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="152"/>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="213"/>
+        <source>Contacts</source>
+        <translation>Contacten</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/Roster/RosterController.cpp" line="250"/>
+        <source>Server %1% rejected contact list change to item &apos;%2%&apos;</source>
+        <translation>Server %1% heeft de aanpassing van contact &apos;%2&apos; geweigerd</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="15"/>
+        <location filename="../Controllers/StatusUtil.cpp" line="16"/>
+        <source>Available</source>
+        <translation>Beschikbaar</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="17"/>
+        <location filename="../Controllers/StatusUtil.cpp" line="18"/>
+        <source>Away</source>
+        <translation>Afwezig</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="19"/>
+        <source>Busy</source>
+        <translation>Bezet</translation>
+    </message>
+    <message>
+        <location filename="../Controllers/StatusUtil.cpp" line="20"/>
+        <source>Offline</source>
+        <translation>Offline</translation>
+    </message>
+</context>
+<context>
+    <name>QObject</name>
+    <message>
+        <location filename="../QtUI/MUCSearch/MUCSearchEmptyItem.cpp" line="25"/>
+        <source>No rooms found</source>
+        <translation>Geen kamers gevonden</translation>
+    </message>
+</context>
+<context>
+    <name>QtBookmarkDetailWindow</name>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="137"/>
+        <source>Edit Bookmark Details</source>
+        <translation>Bladwijzerdetails Aanpassen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="138"/>
+        <source>Bookmark Name:</source>
+        <translation>Naam Bladwijzer:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="140"/>
+        <source>Your Nickname:</source>
+        <translation>Uw Roepnaam:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="141"/>
+        <source>Room password:</source>
+        <translation>Wachtwoord Kamer:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="142"/>
+        <source>Join automatically</source>
+        <translation>Automatisch betreden</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.ui"/>
+        <location filename="../QtUI/ui_QtBookmarkDetailWindow.h" line="139"/>
+        <source>Room Address:</source>
+        <translation>Adres Kamer:</translation>
+    </message>
+</context>
+<context>
+    <name>QtJoinMUCWindow</name>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="125"/>
+        <source>Room:</source>
+        <translation>Kamer:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="126"/>
+        <source>Search ...</source>
+        <translation>Zoek ...</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="127"/>
+        <source>Nickname:</source>
+        <translation>Roepnaam:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="124"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="130"/>
+        <source>Enter Room</source>
+        <translation>Kamer Betreden</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtJoinMUCWindow.ui"/>
+        <location filename="../QtUI/ui_QtJoinMUCWindow.h" line="129"/>
+        <source>Enter automatically in future</source>
+        <translation>Automatisch Betreden</translation>
+    </message>
+</context>
+<context>
+    <name>QtMUCSearchWindow</name>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="118"/>
+        <source>Search Room</source>
+        <translation>Zoek Kamer</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="119"/>
+        <source>Service:</source>
+        <translation>Dienst:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="121"/>
+        <source>Cancel</source>
+        <translation>Annuleren</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="122"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.ui"/>
+        <location filename="../QtUI/MUCSearch/ui_QtMUCSearchWindow.h" line="123"/>
+        <source>List rooms</source>
+        <translation>Kamerlijst</translation>
+    </message>
+</context>
+<context>
+    <name>QtUserSearchFieldsPage</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="119"/>
+        <source>Nickname:</source>
+        <translation>Roepnaam:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="120"/>
+        <source>First name:</source>
+        <translation>Voornaam:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="121"/>
+        <source>Last name:</source>
+        <translation>Familienaam:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="122"/>
+        <source>E-Mail:</source>
+        <translation>E-Mail:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFieldsPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFieldsPage.h" line="124"/>
+        <source>Fetching search fields</source>
+        <translation>Gegevens aan het ophalen</translation>
+    </message>
+</context>
+<context>
+    <name>QtUserSearchFirstPage</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="121"/>
+        <source>Add a user</source>
+        <translation>Gebruiker toevoegen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="122"/>
+        <source>Add another user to your contact list. If you know their address you can add them directly, or you can search for them.</source>
+        <translation>Voeg een andere gebruiker aan je contactlijst toe. Indien u zijn/haar JID kent kan u hem/haar onmiddelijk toevoegen; anders kan u hem/haar zoeken.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="125"/>
+        <source>I&apos;d like to search my server</source>
+        <translation>Ik wil mijn server doorzoeken</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="126"/>
+        <source>I&apos;d like to search another server:</source>
+        <translation>Ik wil een andere server doorzoeken:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchFirstPage.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchFirstPage.h" line="124"/>
+        <source>I know their address:</source>
+        <translation>Ik ken het adres:</translation>
+    </message>
+</context>
+<context>
+    <name>QtUserSearchWizard</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWizard.ui"/>
+        <location filename="../QtUI/UserSearch/ui_QtUserSearchWizard.h" line="39"/>
+        <source>Find User</source>
+        <translation>Zoek Gebruiker</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::ChatListModel</name>
+    <message>
+        <location filename="../QtUI/ChatList/ChatListModel.cpp" line="15"/>
+        <source>Bookmarked Rooms</source>
+        <translation>Bladwijzers</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtAboutWidget</name>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="23"/>
+        <source>About %1</source>
+        <translation>Over %1</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="42"/>
+        <source>Built with Qt %1</source>
+        <translation>Gebouwd met Qt %1</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="43"/>
+        <source>Running with Qt %1</source>
+        <translation>Actief met Qt %1</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAboutWidget.cpp" line="48"/>
+        <source>View License</source>
+        <translation>Bekijk Licentie</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtAvatarWidget</name>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="61"/>
+        <source>No picture</source>
+        <translation>Geen
+Afbeelding</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="73"/>
+        <source>Select picture ...</source>
+        <translation>Selecteer afbeelding ...</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="76"/>
+        <source>Clear picture</source>
+        <translation>Verwijder afbeelding</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="81"/>
+        <source>Select picture</source>
+        <translation>Selecteer afbeelding</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="81"/>
+        <source>Image Files (*.png *.jpg *.gif)</source>
+        <translation>Afbeeldingen (*.png *.jpg *.gif)</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="95"/>
+        <source>Error</source>
+        <translation>Fout</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtAvatarWidget.cpp" line="95"/>
+        <source>The selected picture is in an unrecognized format</source>
+        <translation>De geselecteerde afbeelding is in een ongekend formaat</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtBookmarkDetailWindow</name>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.cpp" line="31"/>
+        <source>Bookmark not valid</source>
+        <translation>Bladwijzer ongeldig</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtBookmarkDetailWindow.cpp" line="31"/>
+        <source>You must specify a valid room address (e.g. myroom@chats.example.com).</source>
+        <translation>Specifieer een geldige kamer (bv. mijnkamer@kamers.voorbeeld.com).</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtChatListWindow</name>
+    <message>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="62"/>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="66"/>
+        <source>Add New Bookmark</source>
+        <translation>Nieuwe Bladwijzer</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="63"/>
+        <source>Edit Bookmark</source>
+        <translation>Bewerk Bladwijzer</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/ChatList/QtChatListWindow.cpp" line="64"/>
+        <source>Remove Bookmark</source>
+        <translation>Verwijder Bladwijzer</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtChatView</name>
+    <message>
+        <location filename="../QtUI/QtChatView.cpp" line="61"/>
+        <source>Clear log</source>
+        <translation>Inhoud wissen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatView.cpp" line="62"/>
+        <source>You are about to clear the contents of your chat log.</source>
+        <translation>De inhoud van dit venster zal gewist worden.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatView.cpp" line="63"/>
+        <source>Are you sure?</source>
+        <translation>Bent u zeker?</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtChatWindow</name>
+    <message>
+        <location filename="../QtUI/QtChatWindow.cpp" line="290"/>
+        <source>This message has not been received by your server yet.</source>
+        <translation>Deze boodschap werd nog niet door uw server ontvangen.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatWindow.cpp" line="292"/>
+        <source>This message may not have been transmitted.</source>
+        <translation>Dit bericht kan mogelijk niet verzonden zijn.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtChatWindow.cpp" line="312"/>
+        <source>Couldn&apos;t send message: %1</source>
+        <translation>Kon boodschap niet verzenden: %1</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtContactEditWidget</name>
+    <message>
+        <location filename="../QtUI/QtContactEditWidget.cpp" line="28"/>
+        <source>Name:</source>
+        <translation>Naam:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWidget.cpp" line="34"/>
+        <source>Groups:</source>
+        <translation>Groupen:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWidget.cpp" line="56"/>
+        <source>New Group:</source>
+        <translation>Nieuwe Groep:</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtContactEditWindow</name>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="26"/>
+        <source>Edit contact</source>
+        <translation>Contact bewerken</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="41"/>
+        <source>Remove contact</source>
+        <translation>Contact verwijderen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="44"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="76"/>
+        <source>Confirm contact deletion</source>
+        <translation>Bevestig verwijderen van contact</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="77"/>
+        <source>Are you sure you want to delete this contact?</source>
+        <translation>Bent u zeker dat u diet contact wil verwijderen?</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtContactEditWindow.cpp" line="78"/>
+        <source>This will remove the contact &apos;%1&apos; from all groups they may be in.</source>
+        <translation>Dit zal het contact &apos;%1&apos; uit alle groepen verwijderen waar deze zich in bevindt.</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtEventWindow</name>
+    <message>
+        <location filename="../QtUI/EventViewer/QtEventWindow.cpp" line="47"/>
+        <source>Display Notice</source>
+        <translation>Toon Boodschap</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtLoginWindow</name>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="81"/>
+        <source>User address:</source>
+        <translation>Gebruikersadres:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="86"/>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="87"/>
+        <source>User address - looks like someuser@someserver.com</source>
+        <translation>Gebruikersadres van de vorm iemand@ergens.com</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="91"/>
+        <source>Example: alice@wonderland.lit</source>
+        <translation>Voorbeeld: alice@wonderland.lit</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="97"/>
+        <source>Password:</source>
+        <translation>Wachtwoord:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="118"/>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="119"/>
+        <source>Click if you have a personal certificate used for login to the service.</source>
+        <translation>Klik hier indien u een persoonlijk certificaat gekregen heeft om in te loggen.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="125"/>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="299"/>
+        <source>Connect</source>
+        <translation>Verbinden</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="136"/>
+        <source>Remember Password?</source>
+        <translation>Wachtwoord Onthouden?</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="138"/>
+        <source>Login Automatically?</source>
+        <translation>Automatisch Inloggen?</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="150"/>
+        <source>&amp;Swift</source>
+        <translation>&amp;Swift</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="152"/>
+        <source>&amp;General</source>
+        <translation>&amp;Algemeen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="160"/>
+        <source>&amp;About %1</source>
+        <translation>&amp;Over %1</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="165"/>
+        <source>&amp;Show Debug Console</source>
+        <translation>Toon &amp;Debug Console</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="169"/>
+        <source>&amp;Play Sounds</source>
+        <translation>&amp;Geluid Aan</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="175"/>
+        <source>Show &amp;Notifications</source>
+        <translation>Toon &amp;Schermboodschappen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="190"/>
+        <source>&amp;Quit</source>
+        <translation>&amp;Afsluiten</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="205"/>
+        <source>Remove profile</source>
+        <translation>Verwijder profiel</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="205"/>
+        <source>Remove the profile &apos;%1&apos;?</source>
+        <translation>Profiel &apos;%1&apos; verwijderen?</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="299"/>
+        <source>Cancel</source>
+        <translation>Annuleren</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="320"/>
+        <source>Select an authentication certificate</source>
+        <translation>Selecteer een authenticatiecertificaat</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="420"/>
+        <source>The certificate presented by the server is not valid.</source>
+        <translation>Het certificaat aangeboden door de server is ongeldig.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="421"/>
+        <source>Would you like to permanently trust this certificate? This must only be done if you know it is correct.</source>
+        <translation>Wilt u dit certificaat permanent vertrouwen? Dit mag enkel gedaan worden als u zeker bent dat het certificaat juist is.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="423"/>
+        <source>Subject: %1</source>
+        <translation>Onderwerp: %1</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtLoginWindow.cpp" line="424"/>
+        <source>SHA-1 Fingerprint: %1</source>
+        <translation>SHA-1 Vingerafdruk: %1</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtMUCSearchWindow</name>
+    <message>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.cpp" line="49"/>
+        <location filename="../QtUI/MUCSearch/QtMUCSearchWindow.cpp" line="51"/>
+        <source>Searching</source>
+        <translation>Zoeken</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtMainWindow</name>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="63"/>
+        <source>&amp;Contacts</source>
+        <translation>&amp;Contacten</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="70"/>
+        <source>&amp;Notices</source>
+        <translation>&amp;Boodschappen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="71"/>
+        <source>C&amp;hats</source>
+        <translation>C&amp;onversaties</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="75"/>
+        <source>&amp;View</source>
+        <translation>&amp;Beeld</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="77"/>
+        <source>Show offline contacts</source>
+        <translation>Toon offline contacten</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="83"/>
+        <source>&amp;Actions</source>
+        <translation>&amp;Acties</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="85"/>
+        <source>Edit Profile</source>
+        <translation>Bewerk Profiel</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="88"/>
+        <source>&amp;Enter Room</source>
+        <translation>&amp;Kamer Betreden</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="91"/>
+        <source>&amp;Add Contact</source>
+        <translation>Contact &amp;Toevoegen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="94"/>
+        <source>Start &amp;Chat</source>
+        <translation>&amp;Conversatie Starten</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="98"/>
+        <source>&amp;Sign Out</source>
+        <translation>&amp;Afmelden</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtMainWindow.cpp" line="130"/>
+        <source>Notices</source>
+        <translation>Boodschappen</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtNameWidget</name>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="47"/>
+        <source>(No Nickname Set)</source>
+        <translation>(Geen Roepnaam Ingesteld)</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="47"/>
+        <source>Show Nickname</source>
+        <translation>Toon Roepnaam</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="55"/>
+        <source>Show Address</source>
+        <translation>Toon Gebruikersadres</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtNameWidget.cpp" line="62"/>
+        <source>Edit Profile</source>
+        <translation>Bewerk Profiel</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtProfileWindow</name>
+    <message>
+        <location filename="../QtUI/QtProfileWindow.cpp" line="24"/>
+        <source>Edit Profile</source>
+        <translation>Bewerk Profiel</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtProfileWindow.cpp" line="43"/>
+        <source>Nickname:</source>
+        <translation>Roepnaam:</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtProfileWindow.cpp" line="67"/>
+        <source>Save</source>
+        <translation>Bewaar</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtStatusWidget</name>
+    <message>
+        <location filename="../QtUI/QtStatusWidget.cpp" line="232"/>
+        <source>Connecting</source>
+        <translation>Aan het verbinden</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtStatusWidget.cpp" line="264"/>
+        <source>(No message)</source>
+        <translation>(Geen boodschap)</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtSubscriptionRequestWindow</name>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="24"/>
+        <source>You have already replied to this request</source>
+        <translation>Dit verzoek is reeds beantwoord</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="25"/>
+        <source>Ok</source>
+        <translation>Ok</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="30"/>
+        <source>Yes</source>
+        <translation>Ja</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="32"/>
+        <source>No</source>
+        <translation>Neen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtSubscriptionRequestWindow.cpp" line="34"/>
+        <source>Defer</source>
+        <translation>Uitstellen</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtTreeWidget</name>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="86"/>
+        <source>Edit</source>
+        <translation>Bewerk</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="93"/>
+        <source>Rename</source>
+        <translation>Naam wijzigen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="97"/>
+        <source>Rename group</source>
+        <translation>Groepsnaam wijzigen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/Roster/QtTreeWidget.cpp" line="97"/>
+        <source>New name for %1</source>
+        <translation>Niewe naam voor %1</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtUserSearchFirstPage</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="26"/>
+        <source>Chat to another user</source>
+        <translation>Start conversatie met andere gebruiker</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="26"/>
+        <source>%1. If you know their address you can enter it directly, or you can search for them.</source>
+        <translation>%1. Indien u het adres kent kan u dit rechtstreeks invoeren, anders kan u het adres opzoeken.</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="26"/>
+        <source>Add another user to your contact list</source>
+        <translation>Voeg een andere gebruiker toe aan uw contactenlijst</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtUserSearchWindow</name>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="85"/>
+        <source>Add Contact</source>
+        <translation>Voeg Contact Toe</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="85"/>
+        <source>Chat to User</source>
+        <translation>Start Conversatie met Gebruiker</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="294"/>
+        <source>How would you like to find the user to add?</source>
+        <translation>Hoe wilt u de gebruiker toevoegen?</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="297"/>
+        <source>How would you like to find the user to chat to?</source>
+        <translation>Hoe wilt u de gebruiker contacteren?</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="321"/>
+        <source>Error while searching</source>
+        <translation>Fout tijdens zoeken</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/UserSearch/QtUserSearchWindow.cpp" line="327"/>
+        <source>This server doesn&apos;t support searching for users.</source>
+        <translation>Deze server ondersteunt het zoeken van gebruikers niet.</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtWebView</name>
+    <message>
+        <location filename="../QtUI/QtWebView.cpp" line="61"/>
+        <source>Clear</source>
+        <translation>Wissen</translation>
+    </message>
+</context>
+<context>
+    <name>Swift::QtXMLConsoleWidget</name>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="22"/>
+        <source>Console</source>
+        <translation>Console</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="40"/>
+        <source>Trace input/output</source>
+        <translation>Toon invoer/uitvoer</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="46"/>
+        <source>Clear</source>
+        <translation>Wissen</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="50"/>
+        <source>Debug Console</source>
+        <translation>Debug Console</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="75"/>
+        <source>&lt;!-- IN --&gt;</source>
+        <translation>&lt;!-- IN --&gt;</translation>
+    </message>
+    <message>
+        <location filename="../QtUI/QtXMLConsoleWidget.cpp" line="79"/>
+        <source>&lt;!-- OUT --&gt;</source>
+        <translation>&lt;!-- UIT --&gt;</translation>
+    </message>
+</context>
+</TS>
-- 
cgit v0.10.2-6-g49f6