- added text viewer component to editor (TextWindow similar to ImageWindow)
authorAkiko <akiko@linux-addicted.net>
Fri, 4 Oct 2013 19:53:06 +0000 (21:53 +0200)
committerAkiko <akiko@linux-addicted.net>
Fri, 4 Oct 2013 19:53:06 +0000 (21:53 +0200)
- updated English and German language
- small editor fixes for MainWindow and ImageWindow

13 files changed:
editor/CMakeLists.txt
editor/ImageWindow.cxx
editor/ImageWindow.hxx
editor/ImageWindow.ui
editor/MainWindow.cxx
editor/MainWindow.hxx
editor/MainWindow.ui
editor/TextWindow.cxx [new file with mode: 0644]
editor/TextWindow.hxx [new file with mode: 0644]
editor/TextWindow.ui [new file with mode: 0644]
editor/i18n_english.ts
editor/i18n_french.ts
editor/i18n_german.ts

index f3f0415..fe3ac52 100644 (file)
@@ -1,7 +1,7 @@
 # Qt sources
-set                   (E_SOURCES Main.cxx MainWindow.cxx ImageWindow.cxx)
-set                   (E_HEADERS MainWindow.hxx ImageWindow.hxx)
-set                   (E_UI_FILES MainWindow.ui ImageWindow.ui)
+set                   (E_SOURCES Main.cxx MainWindow.cxx ImageWindow.cxx TextWindow.cxx)
+set                   (E_HEADERS MainWindow.hxx ImageWindow.hxx TextWindow.hxx)
+set                   (E_UI_FILES MainWindow.ui ImageWindow.ui TextWindow.ui)
 set                   (E_RES_FILES Resources.qrc)
 set                   (E_TS_FILES i18n_english.ts i18n_french.ts i18n_german.ts)
 
index 4ac1561..24cd8c5 100644 (file)
@@ -47,7 +47,7 @@ void ImageWindow::slotImageDiscard()
     emit sigImageIgnored();
 }
 
-void ImageWindow::slotViewImage(NCFile& entry, quint32 row)
+void ImageWindow::slotImageView(NCFile& entry, quint32 row)
 {
     _entry = entry;
     _num = row;
index 6a9370a..79ad1ce 100644 (file)
@@ -29,7 +29,7 @@ public slots:
     void slotImageSave();
     void slotImageDiscard();
 
-    void slotViewImage(NCFile& entry, quint32 row);
+    void slotImageView(NCFile& entry, quint32 row);
 
 protected:
     // well well, you know, the protected stuff ... it's always the same
index c2c1a60..4b83613 100644 (file)
@@ -18,9 +18,6 @@
   </property>
   <widget class="QWidget" name="wid_central">
    <layout class="QVBoxLayout" name="verticalLayout">
-    <property name="margin">
-     <number>3</number>
-    </property>
     <item>
      <widget class="QScrollArea" name="wid_scroll">
       <property name="frameShape">
         <rect>
          <x>0</x>
          <y>0</y>
-         <width>794</width>
-         <height>572</height>
+         <width>782</width>
+         <height>530</height>
         </rect>
        </property>
-       <layout class="QVBoxLayout" name="verticalLayout_2">
+       <layout class="QHBoxLayout" name="horizontalLayout_2">
+        <property name="margin">
+         <number>0</number>
+        </property>
         <item>
          <widget class="QLabel" name="lab_image">
           <property name="frameShape">
           </property>
          </widget>
         </item>
-        <item>
-         <widget class="QWidget" name="wid_status" native="true">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <layout class="QHBoxLayout" name="horizontalLayout">
-           <property name="spacing">
-            <number>0</number>
-           </property>
-           <property name="margin">
-            <number>0</number>
-           </property>
-           <item>
-            <widget class="QLabel" name="lab_name">
-             <property name="text">
-              <string>LAB-STATUS-NAME</string>
-             </property>
-            </widget>
-           </item>
-           <item>
-            <widget class="QLineEdit" name="ed_name">
-             <property name="text">
-              <string notr="true"/>
-             </property>
-             <property name="readOnly">
-              <bool>true</bool>
-             </property>
-            </widget>
-           </item>
-           <item>
-            <spacer name="sp_h">
-             <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="QLabel" name="lab_size">
-             <property name="text">
-              <string>LAB-STATUS-SIZE</string>
-             </property>
-            </widget>
-           </item>
-           <item>
-            <widget class="QSpinBox" name="ed_size_width">
-             <property name="readOnly">
-              <bool>true</bool>
-             </property>
-             <property name="minimum">
-              <number>0</number>
-             </property>
-             <property name="maximum">
-              <number>16384</number>
-             </property>
-            </widget>
-           </item>
-           <item>
-            <widget class="QLabel" name="lab_x">
-             <property name="text">
-              <string notr="true"> X </string>
-             </property>
-            </widget>
-           </item>
-           <item>
-            <widget class="QSpinBox" name="ed_size_height">
-             <property name="readOnly">
-              <bool>true</bool>
-             </property>
-             <property name="minimum">
-              <number>0</number>
-             </property>
-             <property name="maximum">
-              <number>16384</number>
-             </property>
-            </widget>
-           </item>
-          </layout>
-         </widget>
-        </item>
        </layout>
       </widget>
      </widget>
     </item>
+    <item>
+     <widget class="QWidget" name="wid_status" native="true">
+      <property name="sizePolicy">
+       <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
+        <horstretch>0</horstretch>
+        <verstretch>0</verstretch>
+       </sizepolicy>
+      </property>
+      <layout class="QHBoxLayout" name="horizontalLayout">
+       <property name="spacing">
+        <number>0</number>
+       </property>
+       <property name="margin">
+        <number>0</number>
+       </property>
+       <item>
+        <widget class="QLabel" name="lab_name">
+         <property name="text">
+          <string>LAB-STATUS-NAME</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLineEdit" name="ed_name">
+         <property name="text">
+          <string notr="true"/>
+         </property>
+         <property name="readOnly">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="sp_h">
+         <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="QLabel" name="lab_size">
+         <property name="text">
+          <string>LAB-STATUS-SIZE</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QSpinBox" name="ed_size_width">
+         <property name="readOnly">
+          <bool>true</bool>
+         </property>
+         <property name="minimum">
+          <number>0</number>
+         </property>
+         <property name="maximum">
+          <number>16384</number>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLabel" name="lab_x">
+         <property name="text">
+          <string notr="true"> X </string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QSpinBox" name="ed_size_height">
+         <property name="readOnly">
+          <bool>true</bool>
+         </property>
+         <property name="minimum">
+          <number>0</number>
+         </property>
+         <property name="maximum">
+          <number>16384</number>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+    </item>
    </layout>
   </widget>
   <widget class="QMenuBar" name="menubar">
index 7100be0..df5aa50 100644 (file)
@@ -12,6 +12,7 @@
 #include "ui_MainWindow.h"
 #include "filesystem/NCFilesystem.hxx"
 #include "ImageWindow.hxx"
+#include "TextWindow.hxx"
 
 // --- internal typedefs ---
 
@@ -33,13 +34,15 @@ const QString TableHeader("header size;position;compressed size;original size;na
 MainWindow::MainWindow(QWidget *parent)
 : QMainWindow(parent), _ui(new Ui::MainWindow), _translator(new QTranslator(this)),
   _settings(new QSettings("LinuxAddicted", "QTinNS Editor", this)), _vfs(new NCFilesystem),
-  _img(new ImageWindow(this)), _def_status(new QLabel)
+  _img(new ImageWindow(this)), _txt(new TextWindow(this)), _def_status(new QLabel)
 {
     _ui->setupUi(this);
     _ui->wid_table->setColumnCount(7);
     _ui->wid_table->setHorizontalHeaderLabels(TableHeader.split(";"));
     _ui->wid_table->setSelectionBehavior(QAbstractItemView::SelectRows);
+
     _ui->wid_stack->addWidget(_img);
+    _ui->wid_stack->addWidget(_txt);
     _ui->wid_stack->setCurrentIndex(0);
 
     statusBar()->insertWidget(0, _def_status);
@@ -77,9 +80,13 @@ MainWindow::~MainWindow()
     _img->setVisible(false);
     _ui->wid_stack->removeWidget(_img);
 
+    _txt->setVisible(false);
+    _ui->wid_stack->removeWidget(_txt);
+
     statusBar()->removeWidget(_def_status);
 
     delete _def_status;
+    delete _txt;
     delete _img;
     delete _vfs;
     delete _settings;
@@ -209,8 +216,18 @@ void MainWindow::slotFileImage()
     QTW *table = _ui->wid_table;
     NCFile entry = _vfs->fileGet(table->currentRow());
 
-    _img->slotViewImage(entry, table->currentRow());
-    _ui->wid_stack->setCurrentIndex(1);
+    _img->slotImageView(entry, table->currentRow());
+    _ui->wid_stack->setCurrentWidget(_img);
+    setMode(Mode::Blocked);
+}
+
+void MainWindow::slotFileText()
+{
+    QTW *table = _ui->wid_table;
+    NCFile entry = _vfs->fileGet(table->currentRow());
+
+    _txt->slotTextView(entry, table->currentRow());
+    _ui->wid_stack->setCurrentWidget(_txt);
     setMode(Mode::Blocked);
 }
 
@@ -271,6 +288,7 @@ void MainWindow::slotTableSelected()
     QTW *table = _ui->wid_table;
     NCFile entry = _vfs->fileGet(table->currentRow());
     QImage image = QImage::fromData(entry.oData());
+    QString text = entry.name();
 
     setMode(Mode::Selected);
 
@@ -288,6 +306,13 @@ void MainWindow::slotTableSelected()
         _ui->act_file_image->setEnabled(false);
     else
         _ui->act_file_image->setEnabled(true);
+
+    if (text.contains(".def", Qt::CaseInsensitive) || text.contains(".fx", Qt::CaseInsensitive)
+        || text.contains(".ini", Qt::CaseInsensitive) || text.contains(".txt", Qt::CaseInsensitive)
+        || text.contains(".tsc", Qt::CaseInsensitive))
+        _ui->act_file_text->setEnabled(true);
+    else
+        _ui->act_file_image->setEnabled(false);
 }
 
 void MainWindow::slotTableChange(qint32 row)
@@ -596,7 +621,7 @@ void MainWindow::slotTableRemove(quint32 row)
     setMode(Mode::Edited);
 }
 
-void MainWindow::slotImageIgnored()
+void MainWindow::slotTableIgnored()
 {
     _ui->wid_stack->setCurrentIndex(0);
     setMode(Mode::Edited);
@@ -682,6 +707,7 @@ void MainWindow::setMode(const Mode mode)
     _ui->act_file_conv_win->setEnabled(false);
     _ui->act_file_conv_lin->setEnabled(false);
     _ui->act_file_image->setEnabled(false);
+    _ui->act_file_text->setEnabled(false);
 
     switch (mode)
     {
@@ -771,6 +797,8 @@ void MainWindow::setupActions()
             this, SLOT(slotFileConvLin()));
     connect(_ui->act_file_image, SIGNAL(triggered()),
             this, SLOT(slotFileImage()));
+    connect(_ui->act_file_text, SIGNAL(triggered()),
+            this, SLOT(slotFileText()));
 
     connect(_ui->act_lang_english, SIGNAL(triggered()),
             this, SLOT(slotLangEnglish()));
@@ -812,7 +840,13 @@ void MainWindow::setupActions()
     connect(_img, SIGNAL(sigImageUpdate(NCFile&, quint32)),
             this, SLOT(slotTableReplace(NCFile&, quint32)));
     connect(_img, SIGNAL(sigImageIgnored()),
-            this, SLOT(slotImageIgnored()));
+            this, SLOT(slotTableIgnored()));
+
+    // text viewer connections
+    connect(_txt, SIGNAL(sigTextUpdate(NCFile&, quint32)),
+            this, SLOT(slotTableIgnored()));
+    connect(_txt, SIGNAL(sigTextIgnored()),
+            this, SLOT(slotTableIgnored()));
 
     // context menus for the QTableWidget
     ctx_sep1->setSeparator(true);
@@ -833,4 +867,5 @@ void MainWindow::setupActions()
     table->addAction(_ui->act_file_conv_lin);
     table->addAction(ctx_sep4);
     table->addAction(_ui->act_file_image);
+    table->addAction(_ui->act_file_text);
 }
index 63361da..fae4d86 100644 (file)
@@ -13,6 +13,7 @@ class QTranslator;
 class NCFile;
 class NCFilesystem;
 class ImageWindow;
+class TextWindow;
 
 class MainWindow : public QMainWindow {
     Q_OBJECT
@@ -54,6 +55,7 @@ public slots:
     void slotFileConvWin();
     void slotFileConvLin();
     void slotFileImage();
+    void slotFileText();
 
     void slotLangEnglish();
     void slotLangFrench();
@@ -75,8 +77,7 @@ public slots:
     void slotTableAdd(NCFile& entry, quint32 row);
     void slotTableReplace(NCFile& entry, quint32 row);
     void slotTableRemove(quint32 row);
-
-    void slotImageIgnored();
+    void slotTableIgnored();
 
 protected:
     // protected stuff
@@ -91,6 +92,7 @@ private:
     QSettings *_settings;
     NCFilesystem *_vfs;
     ImageWindow *_img;
+    TextWindow *_txt;
     QLabel *_def_status;
     QString _filename;
 };
index 51b0dd4..4c86a90 100644 (file)
     <addaction name="act_file_conv_lin"/>
     <addaction name="separator"/>
     <addaction name="act_file_image"/>
+    <addaction name="act_file_text"/>
    </widget>
    <addaction name="mm_app"/>
    <addaction name="mm_file"/>
     <string>ME-FILE-IMAGE</string>
    </property>
   </action>
+  <action name="act_file_text">
+   <property name="text">
+    <string>ME-FILE-TEXT</string>
+   </property>
+  </action>
  </widget>
  <resources>
   <include location="Resources.qrc"/>
diff --git a/editor/TextWindow.cxx b/editor/TextWindow.cxx
new file mode 100644 (file)
index 0000000..fc74001
--- /dev/null
@@ -0,0 +1,85 @@
+#include <QString>
+#include "TextWindow.hxx"
+#include "ui_TextWindow.h"
+
+// --- constructors and deconstructors ---
+
+TextWindow::TextWindow(QWidget *parent)
+: QMainWindow(parent), _ui(new Ui::TextWindow), _num(0)
+{
+    _ui->setupUi(this);
+
+    setupActions();
+    setMode(Mode::Fresh);
+}
+
+TextWindow::~TextWindow()
+{
+    delete _ui;
+}
+
+// --- public slots ---
+
+void TextWindow::slotTextSave()
+{
+    _entry.setOData(_ui->ed_text->toPlainText().toLocal8Bit());
+    _entry.setOSize(_ui->ed_text->toPlainText().toLocal8Bit().size());
+    _entry.setCSize(_entry.cData().size());
+    _entry.setName(_ui->ed_name->text());
+    _entry.setNameLength(_entry.name().size() + 1);
+    _entry.setHSize(_entry.headerSize() + _entry.nameLength());
+
+    emit sigTextUpdate(_entry, _num);
+}
+
+void TextWindow::slotTextDiscard()
+{
+    _entry = NCFile();
+    _num = 0;
+    _ui->ed_text->clear();
+
+    emit sigTextIgnored();
+}
+
+void TextWindow::slotTextView(NCFile& entry, quint32 row)
+{
+    _entry = entry;
+    _num = row;
+    _ui->ed_text->setPlainText(entry.oData());
+    _ui->ed_name->setText(entry.name());
+    _ui->ed_lines->setText(QString::number(_ui->ed_text->document()->lineCount()));
+    _ui->ed_size->setText(QString::number(_ui->ed_text->toPlainText().size()));
+}
+
+// --- protected methods ---
+
+void TextWindow::changeEvent(QEvent *event)
+{
+    if (event->type() == QEvent::LanguageChange)
+        _ui->retranslateUi(this);
+    else
+        QMainWindow::changeEvent(event);
+}
+
+void TextWindow::setMode(const Mode mode)
+{
+    switch (mode)
+    {
+        case Mode::Edited:
+            _ui->act_text_save->setEnabled(true);
+
+            break;
+
+        case Mode::Fresh:
+        default:
+            _ui->act_text_save->setEnabled(false);
+    }
+}
+
+void TextWindow::setupActions()
+{
+    connect(_ui->act_text_save, SIGNAL(triggered()),
+            this, SLOT(slotTextSave()));
+    connect(_ui->act_text_cancel, SIGNAL(triggered()),
+            this, SLOT(slotTextDiscard()));
+}
diff --git a/editor/TextWindow.hxx b/editor/TextWindow.hxx
new file mode 100644 (file)
index 0000000..a5b0845
--- /dev/null
@@ -0,0 +1,43 @@
+#pragma once
+
+#include <QMainWindow>
+#include "filesystem/NCFile.hxx"
+
+namespace Ui
+{
+    class TextWindow;
+}
+
+class TextWindow : public QMainWindow {
+    Q_OBJECT
+signals:
+    void sigTextUpdate(NCFile& entry, quint32 row) const;
+    void sigTextIgnored() const;
+
+public:
+    // internal typedefs
+    enum class Mode : quint8 {
+        Fresh,
+        Edited
+    };
+
+    // constructors and deconstructors
+    explicit TextWindow(QWidget *parent = 0);
+    virtual ~TextWindow();
+
+public slots:
+    void slotTextSave();
+    void slotTextDiscard();
+
+    void slotTextView(NCFile& entry, quint32 row);
+
+protected:
+    virtual void changeEvent(QEvent *event);
+    void setMode(const Mode mode = Mode::Fresh);
+    void setupActions();
+
+private:
+    Ui::TextWindow *_ui;
+    NCFile _entry;
+    quint32 _num;
+};
diff --git a/editor/TextWindow.ui b/editor/TextWindow.ui
new file mode 100644 (file)
index 0000000..349800f
--- /dev/null
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>TextWindow</class>
+ <widget class="QMainWindow" name="TextWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>600</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>FRM-TEXT</string>
+  </property>
+  <property name="locale">
+   <locale language="English" country="UnitedStates"/>
+  </property>
+  <widget class="QWidget" name="wid_central">
+   <layout class="QVBoxLayout" name="verticalLayout">
+    <item>
+     <widget class="QScrollArea" name="wid_scroll">
+      <property name="frameShape">
+       <enum>QFrame::NoFrame</enum>
+      </property>
+      <property name="frameShadow">
+       <enum>QFrame::Plain</enum>
+      </property>
+      <property name="widgetResizable">
+       <bool>true</bool>
+      </property>
+      <widget class="QWidget" name="wid_text">
+       <property name="geometry">
+        <rect>
+         <x>0</x>
+         <y>0</y>
+         <width>782</width>
+         <height>530</height>
+        </rect>
+       </property>
+       <layout class="QVBoxLayout" name="verticalLayout_2">
+        <property name="margin">
+         <number>0</number>
+        </property>
+        <item>
+         <widget class="QTextEdit" name="ed_text">
+          <property name="documentTitle">
+           <string notr="true"/>
+          </property>
+          <property name="readOnly">
+           <bool>true</bool>
+          </property>
+          <property name="html">
+           <string notr="true">&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
+&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
+p, li { white-space: pre-wrap; }
+&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;
+&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
+      </widget>
+     </widget>
+    </item>
+    <item>
+     <widget class="QWidget" name="wid_status" native="true">
+      <layout class="QHBoxLayout" name="horizontalLayout">
+       <property name="margin">
+        <number>0</number>
+       </property>
+       <item>
+        <widget class="QLabel" name="lab_name">
+         <property name="text">
+          <string>LAB-TEXT-NAME</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLineEdit" name="ed_name">
+         <property name="text">
+          <string notr="true"/>
+         </property>
+         <property name="readOnly">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="sp_h1">
+         <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="QLabel" name="lab_lines">
+         <property name="text">
+          <string>LAB-TEXT-LINES</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLineEdit" name="ed_lines">
+         <property name="text">
+          <string notr="true"/>
+         </property>
+         <property name="readOnly">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="sp_h2">
+         <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="QLabel" name="lab_size">
+         <property name="text">
+          <string>LAB-TEXT-SIZE</string>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <widget class="QLineEdit" name="ed_size">
+         <property name="text">
+          <string notr="true"/>
+         </property>
+         <property name="readOnly">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+      </layout>
+     </widget>
+    </item>
+   </layout>
+  </widget>
+  <widget class="QMenuBar" name="menubar">
+   <property name="geometry">
+    <rect>
+     <x>0</x>
+     <y>0</y>
+     <width>800</width>
+     <height>22</height>
+    </rect>
+   </property>
+   <widget class="QMenu" name="menuMM_TEXT">
+    <property name="title">
+     <string>MM-TEXT</string>
+    </property>
+    <addaction name="act_text_save"/>
+    <addaction name="separator"/>
+    <addaction name="act_text_cancel"/>
+   </widget>
+   <addaction name="menuMM_TEXT"/>
+  </widget>
+  <action name="act_text_save">
+   <property name="text">
+    <string>ME-TEXT-SAVE</string>
+   </property>
+  </action>
+  <action name="act_text_cancel">
+   <property name="text">
+    <string>ME-TEXT-CANCEL</string>
+   </property>
+  </action>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
index 90bf6c4..9cb1f64 100644 (file)
@@ -6,30 +6,30 @@
     <message>
         <location filename="ImageWindow.ui" line="14"/>
         <source>FRM-IMAGE</source>
-        <translation>QTinNS Editor Viewer</translation>
+        <translation>QTinNS Editor Image Viewer</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="63"/>
+        <location filename="ImageWindow.ui" line="83"/>
         <source>LAB-STATUS-NAME</source>
         <translation>Image name:</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="80"/>
+        <location filename="ImageWindow.ui" line="113"/>
         <source>LAB-STATUS-SIZE</source>
         <translation>Image size:</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="153"/>
+        <location filename="ImageWindow.ui" line="166"/>
         <source>MM-IMAGE</source>
         <translation>Image</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="163"/>
+        <location filename="ImageWindow.ui" line="176"/>
         <source>ME-IMAGE-SAVE</source>
         <translation>Save changes</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="168"/>
+        <location filename="ImageWindow.ui" line="181"/>
         <source>ME-IMAGE-CANCEL</source>
         <translation>Discard changes</translation>
     </message>
@@ -38,7 +38,6 @@
     <name>MainWindow</name>
     <message>
         <location filename="MainWindow.ui" line="14"/>
-        <location filename="MainWindow.cxx" line="258"/>
         <source>FRM-MAINWINDOW</source>
         <translation>QTinNS Editor</translation>
     </message>
         <translation>File</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="129"/>
+        <location filename="MainWindow.ui" line="130"/>
         <source>ME-APP-QUIT</source>
         <translation>Quit</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="134"/>
+        <location filename="MainWindow.ui" line="135"/>
         <source>ME-APP-NEW</source>
         <translation>New virtual filesystem</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="139"/>
+        <location filename="MainWindow.ui" line="140"/>
         <source>ME-APP-OPEN</source>
         <translation>Open virtual filesystem ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="144"/>
+        <location filename="MainWindow.ui" line="145"/>
         <source>ME-APP-SAVE</source>
         <translation>Save virtual filesystem</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="149"/>
+        <location filename="MainWindow.ui" line="150"/>
         <source>ME-APP-SAVEAS</source>
         <translation>Save virtual filesystem as ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="154"/>
+        <location filename="MainWindow.ui" line="155"/>
         <source>ME-ABOUT-APP</source>
         <translation>About QTinNS Editor ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="159"/>
+        <location filename="MainWindow.ui" line="160"/>
         <source>ME-ABOUT-QT</source>
         <translation>About Qt framework ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="164"/>
+        <location filename="MainWindow.ui" line="165"/>
         <source>ME-LANG-ENGLISH</source>
         <translation>English</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="169"/>
+        <location filename="MainWindow.ui" line="170"/>
         <source>ME-LANG-FRENCH</source>
         <translation>French</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="174"/>
+        <location filename="MainWindow.ui" line="175"/>
         <source>ME-LANG-GERMAN</source>
         <translation>German</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="179"/>
+        <location filename="MainWindow.ui" line="180"/>
         <source>ME-STYLE-DEFAULT</source>
         <translation>System Default</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="184"/>
+        <location filename="MainWindow.ui" line="185"/>
         <source>ME-STYLE-WINDOWS</source>
         <oldsource>ME-STYLE-CDE</oldsource>
         <translation>Windows</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="189"/>
+        <location filename="MainWindow.ui" line="190"/>
         <source>ME-STYLE-GTK</source>
         <oldsource>ME-STYLE-CLEANLOOKS</oldsource>
         <translation>GTK+</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="194"/>
+        <location filename="MainWindow.ui" line="195"/>
         <source>ME-STYLE-FUSION</source>
         <oldsource>ME-STYLE-PLASTIQUE</oldsource>
         <translation>Fusion</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="199"/>
+        <location filename="MainWindow.ui" line="200"/>
         <source>ME-FILE-ADD</source>
         <translation>Add file(s) ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="204"/>
+        <location filename="MainWindow.ui" line="205"/>
         <source>ME-FILE-REPLACE</source>
         <translation>Replace file ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="209"/>
+        <location filename="MainWindow.ui" line="210"/>
         <source>ME-FILE-REMOVE</source>
         <translation>Remove file ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="214"/>
+        <location filename="MainWindow.ui" line="215"/>
         <source>ME-FILE-SAVE-PLAIN</source>
         <translation>Save plain file as ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="219"/>
+        <location filename="MainWindow.ui" line="220"/>
         <source>ME-FILE-SAVE-PAK</source>
         <translation>Save PAK file as ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="224"/>
+        <location filename="MainWindow.ui" line="225"/>
         <source>ME-FILE-SAVE-ZLIB</source>
         <translation>Save ZLIB file as ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="229"/>
+        <location filename="MainWindow.ui" line="230"/>
         <source>ME-FILE-CONV-WIN</source>
         <translation>Convert UNIX path to Windows path</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="234"/>
+        <location filename="MainWindow.ui" line="235"/>
         <source>ME-FILE-CONV-LIN</source>
         <translation>Convert Windows path to UNIX path</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="239"/>
+        <location filename="MainWindow.ui" line="240"/>
         <source>ME-FILE-IMAGE</source>
         <translation>View image ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="130"/>
-        <location filename="MainWindow.cxx" line="141"/>
+        <location filename="MainWindow.ui" line="245"/>
+        <source>ME-FILE-TEXT</source>
+        <translation>View text ...</translation>
+    </message>
+    <message>
+        <location filename="MainWindow.cxx" line="143"/>
+        <location filename="MainWindow.cxx" line="154"/>
         <source>DIA-OPEN-FILE</source>
         <translation>Open files ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="94"/>
-        <location filename="MainWindow.cxx" line="114"/>
+        <location filename="MainWindow.cxx" line="107"/>
+        <location filename="MainWindow.cxx" line="127"/>
         <source>FLT-FILE-VFS</source>
         <oldsource>DIA-SAVE-FILE</oldsource>
         <translation>Neocron VFS file (*.vfs *.pak)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="94"/>
+        <location filename="MainWindow.cxx" line="107"/>
         <source>DIA-OPEN-VFS</source>
         <translation>Open virtual filesystem ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="114"/>
+        <location filename="MainWindow.cxx" line="127"/>
         <source>DIA-SAVE-VFS</source>
         <translation>Save virtual filesystem ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="130"/>
-        <location filename="MainWindow.cxx" line="141"/>
+        <location filename="MainWindow.cxx" line="143"/>
+        <location filename="MainWindow.cxx" line="154"/>
         <source>FLT-FILE-ANY</source>
         <translation>File (*.*)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="159"/>
+        <location filename="MainWindow.cxx" line="172"/>
         <source>DIA-SAVE-PLAIN</source>
         <translation>Save file ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="159"/>
+        <location filename="MainWindow.cxx" line="172"/>
         <source>FLT-FILE-PLAIN</source>
         <translation>File (*.*)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="167"/>
+        <location filename="MainWindow.cxx" line="180"/>
         <source>DIA-SAVE-PAK</source>
         <translation>Save PAK file ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="167"/>
+        <location filename="MainWindow.cxx" line="180"/>
         <source>FLT-FILE-PAK</source>
         <translation>Neocron PAK file (*.pak)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="175"/>
+        <location filename="MainWindow.cxx" line="188"/>
         <source>DIA-SAVE-ZLIB</source>
         <translation>Save ZLIB file ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="175"/>
+        <location filename="MainWindow.cxx" line="188"/>
         <source>FLT-FILE-ZLIB</source>
         <translation>ZLIB file (*.z)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="256"/>
+        <location filename="MainWindow.cxx" line="280"/>
         <source>MSG-UPD-FILE</source>
         <translation>Virtual filesystem</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="256"/>
+        <location filename="MainWindow.cxx" line="280"/>
         <source>MSG-UPD-WITH</source>
         <translation>with</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="257"/>
+        <location filename="MainWindow.cxx" line="281"/>
         <source>MSG-UPD-ENTRIES</source>
         <translation>entries</translation>
     </message>
         <translation type="obsolete">Discard changes</translation>
     </message>
 </context>
+<context>
+    <name>TextWindow</name>
+    <message>
+        <location filename="TextWindow.ui" line="14"/>
+        <source>FRM-TEXT</source>
+        <translation>QTinNS Editor Text Viewer</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="75"/>
+        <source>LAB-TEXT-NAME</source>
+        <translation>Text name:</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="105"/>
+        <source>LAB-TEXT-LINES</source>
+        <translation>Lines:</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="135"/>
+        <source>LAB-TEXT-SIZE</source>
+        <translation>Size:</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="165"/>
+        <source>MM-TEXT</source>
+        <translation>Text</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="175"/>
+        <source>ME-TEXT-SAVE</source>
+        <translation>Save text</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="180"/>
+        <source>ME-TEXT-CANCEL</source>
+        <translation>Discard text</translation>
+    </message>
+</context>
 </TS>
index 63c8560..487db01 100644 (file)
@@ -9,27 +9,27 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="63"/>
+        <location filename="ImageWindow.ui" line="83"/>
         <source>LAB-STATUS-NAME</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="80"/>
+        <location filename="ImageWindow.ui" line="113"/>
         <source>LAB-STATUS-SIZE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="153"/>
+        <location filename="ImageWindow.ui" line="166"/>
         <source>MM-IMAGE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="163"/>
+        <location filename="ImageWindow.ui" line="176"/>
         <source>ME-IMAGE-SAVE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="168"/>
+        <location filename="ImageWindow.ui" line="181"/>
         <source>ME-IMAGE-CANCEL</source>
         <translation type="unfinished"></translation>
     </message>
@@ -38,7 +38,6 @@
     <name>MainWindow</name>
     <message>
         <location filename="MainWindow.ui" line="14"/>
-        <location filename="MainWindow.cxx" line="258"/>
         <source>FRM-MAINWINDOW</source>
         <translation type="unfinished"></translation>
     </message>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="129"/>
+        <location filename="MainWindow.ui" line="130"/>
         <source>ME-APP-QUIT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="134"/>
+        <location filename="MainWindow.ui" line="135"/>
         <source>ME-APP-NEW</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="139"/>
+        <location filename="MainWindow.ui" line="140"/>
         <source>ME-APP-OPEN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="144"/>
+        <location filename="MainWindow.ui" line="145"/>
         <source>ME-APP-SAVE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="149"/>
+        <location filename="MainWindow.ui" line="150"/>
         <source>ME-APP-SAVEAS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="154"/>
+        <location filename="MainWindow.ui" line="155"/>
         <source>ME-ABOUT-APP</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="159"/>
+        <location filename="MainWindow.ui" line="160"/>
         <source>ME-ABOUT-QT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="164"/>
+        <location filename="MainWindow.ui" line="165"/>
         <source>ME-LANG-ENGLISH</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="169"/>
+        <location filename="MainWindow.ui" line="170"/>
         <source>ME-LANG-FRENCH</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="174"/>
+        <location filename="MainWindow.ui" line="175"/>
         <source>ME-LANG-GERMAN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="179"/>
+        <location filename="MainWindow.ui" line="180"/>
         <source>ME-STYLE-DEFAULT</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="184"/>
+        <location filename="MainWindow.ui" line="185"/>
         <source>ME-STYLE-WINDOWS</source>
         <oldsource>ME-STYLE-CDE</oldsource>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="189"/>
+        <location filename="MainWindow.ui" line="190"/>
         <source>ME-STYLE-GTK</source>
         <oldsource>ME-STYLE-CLEANLOOKS</oldsource>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="194"/>
+        <location filename="MainWindow.ui" line="195"/>
         <source>ME-STYLE-FUSION</source>
         <oldsource>ME-STYLE-PLASTIQUE</oldsource>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="199"/>
+        <location filename="MainWindow.ui" line="200"/>
         <source>ME-FILE-ADD</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="204"/>
+        <location filename="MainWindow.ui" line="205"/>
         <source>ME-FILE-REPLACE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="209"/>
+        <location filename="MainWindow.ui" line="210"/>
         <source>ME-FILE-REMOVE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="214"/>
+        <location filename="MainWindow.ui" line="215"/>
         <source>ME-FILE-SAVE-PLAIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="219"/>
+        <location filename="MainWindow.ui" line="220"/>
         <source>ME-FILE-SAVE-PAK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="224"/>
+        <location filename="MainWindow.ui" line="225"/>
         <source>ME-FILE-SAVE-ZLIB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="229"/>
+        <location filename="MainWindow.ui" line="230"/>
         <source>ME-FILE-CONV-WIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="234"/>
+        <location filename="MainWindow.ui" line="235"/>
         <source>ME-FILE-CONV-LIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="239"/>
+        <location filename="MainWindow.ui" line="240"/>
         <source>ME-FILE-IMAGE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="130"/>
-        <location filename="MainWindow.cxx" line="141"/>
+        <location filename="MainWindow.ui" line="245"/>
+        <source>ME-FILE-TEXT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="MainWindow.cxx" line="143"/>
+        <location filename="MainWindow.cxx" line="154"/>
         <source>DIA-OPEN-FILE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="94"/>
-        <location filename="MainWindow.cxx" line="114"/>
+        <location filename="MainWindow.cxx" line="107"/>
+        <location filename="MainWindow.cxx" line="127"/>
         <source>FLT-FILE-VFS</source>
         <oldsource>DIA-SAVE-FILE</oldsource>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="94"/>
+        <location filename="MainWindow.cxx" line="107"/>
         <source>DIA-OPEN-VFS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="114"/>
+        <location filename="MainWindow.cxx" line="127"/>
         <source>DIA-SAVE-VFS</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="130"/>
-        <location filename="MainWindow.cxx" line="141"/>
+        <location filename="MainWindow.cxx" line="143"/>
+        <location filename="MainWindow.cxx" line="154"/>
         <source>FLT-FILE-ANY</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="159"/>
+        <location filename="MainWindow.cxx" line="172"/>
         <source>DIA-SAVE-PLAIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="159"/>
+        <location filename="MainWindow.cxx" line="172"/>
         <source>FLT-FILE-PLAIN</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="167"/>
+        <location filename="MainWindow.cxx" line="180"/>
         <source>DIA-SAVE-PAK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="167"/>
+        <location filename="MainWindow.cxx" line="180"/>
         <source>FLT-FILE-PAK</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="175"/>
+        <location filename="MainWindow.cxx" line="188"/>
         <source>DIA-SAVE-ZLIB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="175"/>
+        <location filename="MainWindow.cxx" line="188"/>
         <source>FLT-FILE-ZLIB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="256"/>
+        <location filename="MainWindow.cxx" line="280"/>
         <source>MSG-UPD-FILE</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="256"/>
+        <location filename="MainWindow.cxx" line="280"/>
         <source>MSG-UPD-WITH</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="257"/>
+        <location filename="MainWindow.cxx" line="281"/>
         <source>MSG-UPD-ENTRIES</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>TextWindow</name>
+    <message>
+        <location filename="TextWindow.ui" line="14"/>
+        <source>FRM-TEXT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="75"/>
+        <source>LAB-TEXT-NAME</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="105"/>
+        <source>LAB-TEXT-LINES</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="135"/>
+        <source>LAB-TEXT-SIZE</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="165"/>
+        <source>MM-TEXT</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="175"/>
+        <source>ME-TEXT-SAVE</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="180"/>
+        <source>ME-TEXT-CANCEL</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 </TS>
index dc9c5d0..33b8481 100644 (file)
@@ -6,30 +6,30 @@
     <message>
         <location filename="ImageWindow.ui" line="14"/>
         <source>FRM-IMAGE</source>
-        <translation>QTinNS Editor Viewer</translation>
+        <translation>QTinNS Editor Image Viewer</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="63"/>
+        <location filename="ImageWindow.ui" line="83"/>
         <source>LAB-STATUS-NAME</source>
-        <translation>Bildname:</translation>
+        <translation>Bilddateiname:</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="80"/>
+        <location filename="ImageWindow.ui" line="113"/>
         <source>LAB-STATUS-SIZE</source>
         <translation>Bildgröße:</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="153"/>
+        <location filename="ImageWindow.ui" line="166"/>
         <source>MM-IMAGE</source>
         <translation>Bild</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="163"/>
+        <location filename="ImageWindow.ui" line="176"/>
         <source>ME-IMAGE-SAVE</source>
         <translation>Speichere Änderungen</translation>
     </message>
     <message>
-        <location filename="ImageWindow.ui" line="168"/>
+        <location filename="ImageWindow.ui" line="181"/>
         <source>ME-IMAGE-CANCEL</source>
         <translation>Verwerfe Änderungen</translation>
     </message>
@@ -38,7 +38,6 @@
     <name>MainWindow</name>
     <message>
         <location filename="MainWindow.ui" line="14"/>
-        <location filename="MainWindow.cxx" line="258"/>
         <source>FRM-MAINWINDOW</source>
         <translation>QTinNS Editor</translation>
     </message>
         <translation>Datei</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="129"/>
+        <location filename="MainWindow.ui" line="130"/>
         <source>ME-APP-QUIT</source>
         <translation>Beenden</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="134"/>
+        <location filename="MainWindow.ui" line="135"/>
         <source>ME-APP-NEW</source>
         <translation>Neues virtuelles Dateisystem</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="139"/>
+        <location filename="MainWindow.ui" line="140"/>
         <source>ME-APP-OPEN</source>
         <translation>Virtuelles Dateisystem öffnen ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="144"/>
+        <location filename="MainWindow.ui" line="145"/>
         <source>ME-APP-SAVE</source>
         <translation>Virtuelles Dateisystem speichern</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="149"/>
+        <location filename="MainWindow.ui" line="150"/>
         <source>ME-APP-SAVEAS</source>
         <translation>Virtuelles Dateisystem speichern als ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="154"/>
+        <location filename="MainWindow.ui" line="155"/>
         <source>ME-ABOUT-APP</source>
         <translation>Über QTinNS Editor ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="159"/>
+        <location filename="MainWindow.ui" line="160"/>
         <source>ME-ABOUT-QT</source>
         <translation>Über Qt Framework ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="164"/>
+        <location filename="MainWindow.ui" line="165"/>
         <source>ME-LANG-ENGLISH</source>
         <translation>Englisch</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="169"/>
+        <location filename="MainWindow.ui" line="170"/>
         <source>ME-LANG-FRENCH</source>
         <translation>Französisch</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="174"/>
+        <location filename="MainWindow.ui" line="175"/>
         <source>ME-LANG-GERMAN</source>
         <translation>Deutsch</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="179"/>
+        <location filename="MainWindow.ui" line="180"/>
         <source>ME-STYLE-DEFAULT</source>
         <translation>System Standard</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="184"/>
+        <location filename="MainWindow.ui" line="185"/>
         <source>ME-STYLE-WINDOWS</source>
         <oldsource>ME-STYLE-CDE</oldsource>
         <translation>Windows</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="189"/>
+        <location filename="MainWindow.ui" line="190"/>
         <source>ME-STYLE-GTK</source>
         <oldsource>ME-STYLE-CLEANLOOKS</oldsource>
         <translation>GTK+</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="194"/>
+        <location filename="MainWindow.ui" line="195"/>
         <source>ME-STYLE-FUSION</source>
         <oldsource>ME-STYLE-PLASTIQUE</oldsource>
         <translation>Fusion</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="199"/>
+        <location filename="MainWindow.ui" line="200"/>
         <source>ME-FILE-ADD</source>
         <translation>Füge Datei(en) hinzu ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="204"/>
+        <location filename="MainWindow.ui" line="205"/>
         <source>ME-FILE-REPLACE</source>
         <translation>Ersetze Datei ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="209"/>
+        <location filename="MainWindow.ui" line="210"/>
         <source>ME-FILE-REMOVE</source>
         <translation>Entferne Datei ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="214"/>
+        <location filename="MainWindow.ui" line="215"/>
         <source>ME-FILE-SAVE-PLAIN</source>
         <translation>Speichere normale Datei als ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="219"/>
+        <location filename="MainWindow.ui" line="220"/>
         <source>ME-FILE-SAVE-PAK</source>
         <translation>Speichere PAK Datei als ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="224"/>
+        <location filename="MainWindow.ui" line="225"/>
         <source>ME-FILE-SAVE-ZLIB</source>
         <translation>Speichere ZLIB Datei als ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="229"/>
+        <location filename="MainWindow.ui" line="230"/>
         <source>ME-FILE-CONV-WIN</source>
         <translation>Konvertiere UNIX Pfad nach Windows</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="234"/>
+        <location filename="MainWindow.ui" line="235"/>
         <source>ME-FILE-CONV-LIN</source>
         <translation>Konvertiere Windows Pfad nach UNIX</translation>
     </message>
     <message>
-        <location filename="MainWindow.ui" line="239"/>
+        <location filename="MainWindow.ui" line="240"/>
         <source>ME-FILE-IMAGE</source>
         <translation>Bild anzeigen ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="130"/>
-        <location filename="MainWindow.cxx" line="141"/>
+        <location filename="MainWindow.ui" line="245"/>
+        <source>ME-FILE-TEXT</source>
+        <translation>Text anzeigen ...</translation>
+    </message>
+    <message>
+        <location filename="MainWindow.cxx" line="143"/>
+        <location filename="MainWindow.cxx" line="154"/>
         <source>DIA-OPEN-FILE</source>
         <translation>Datei öffnen ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="94"/>
-        <location filename="MainWindow.cxx" line="114"/>
+        <location filename="MainWindow.cxx" line="107"/>
+        <location filename="MainWindow.cxx" line="127"/>
         <source>FLT-FILE-VFS</source>
         <oldsource>DIA-SAVE-FILE</oldsource>
         <translation>Neocron VFS Datei (*.vfs *.pak)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="94"/>
+        <location filename="MainWindow.cxx" line="107"/>
         <source>DIA-OPEN-VFS</source>
         <translation>Virtuelles Dateisystem öffnen ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="114"/>
+        <location filename="MainWindow.cxx" line="127"/>
         <source>DIA-SAVE-VFS</source>
         <translation>Virtuelles Dateisystem speichern ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="130"/>
-        <location filename="MainWindow.cxx" line="141"/>
+        <location filename="MainWindow.cxx" line="143"/>
+        <location filename="MainWindow.cxx" line="154"/>
         <source>FLT-FILE-ANY</source>
         <translation>Datei (*.*)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="159"/>
+        <location filename="MainWindow.cxx" line="172"/>
         <source>DIA-SAVE-PLAIN</source>
         <translation>Datei speichern ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="159"/>
+        <location filename="MainWindow.cxx" line="172"/>
         <source>FLT-FILE-PLAIN</source>
         <translation>Datei (*.*)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="167"/>
+        <location filename="MainWindow.cxx" line="180"/>
         <source>DIA-SAVE-PAK</source>
         <translation>PAK Datei speichern ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="167"/>
+        <location filename="MainWindow.cxx" line="180"/>
         <source>FLT-FILE-PAK</source>
         <translation>Neocron PAK Datei (*.pak)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="175"/>
+        <location filename="MainWindow.cxx" line="188"/>
         <source>DIA-SAVE-ZLIB</source>
         <translation>ZLIB Datei speichern ...</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="175"/>
+        <location filename="MainWindow.cxx" line="188"/>
         <source>FLT-FILE-ZLIB</source>
         <translation>ZLIB Datei (*.z)</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="256"/>
+        <location filename="MainWindow.cxx" line="280"/>
         <source>MSG-UPD-FILE</source>
         <translation>Virtuelles Dateisystem</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="256"/>
+        <location filename="MainWindow.cxx" line="280"/>
         <source>MSG-UPD-WITH</source>
         <translation>mit</translation>
     </message>
     <message>
-        <location filename="MainWindow.cxx" line="257"/>
+        <location filename="MainWindow.cxx" line="281"/>
         <source>MSG-UPD-ENTRIES</source>
         <translation>Einträgen</translation>
     </message>
         <translation type="obsolete">Verwerfe Änderungen</translation>
     </message>
 </context>
+<context>
+    <name>TextWindow</name>
+    <message>
+        <location filename="TextWindow.ui" line="14"/>
+        <source>FRM-TEXT</source>
+        <translation>QTinNS Editor Text Viewer</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="75"/>
+        <source>LAB-TEXT-NAME</source>
+        <translation>Textdateiname:</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="105"/>
+        <source>LAB-TEXT-LINES</source>
+        <translation>Zeilen:</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="135"/>
+        <source>LAB-TEXT-SIZE</source>
+        <translation>Größe:</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="165"/>
+        <source>MM-TEXT</source>
+        <translation>Text</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="175"/>
+        <source>ME-TEXT-SAVE</source>
+        <translation>Speichere Änderungen</translation>
+    </message>
+    <message>
+        <location filename="TextWindow.ui" line="180"/>
+        <source>ME-TEXT-CANCEL</source>
+        <translatorcomment>Verwerfe Änderungen</translatorcomment>
+        <translation>Text verwerfern</translation>
+    </message>
+</context>
 </TS>