Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Another checkpoint with the new LP gui. Now you can browse the snapsh…

…ots and cycle between them easily.
  • Loading branch information...
commit b05f5119dc991ca10028f3ce45eca8351e8eaff0 1 parent e24c61d
@beanpole135 beanpole135 authored
Showing with 26,434 additions and 104 deletions.
  1. +38 −16 lp-gui/LPMain.cpp
  2. +5 −0 lp-gui/LPMain.h
  3. +51 −88 lp-gui/LPMain.ui
  4. +439 −0 lp-gui/i18n/LifePreserver_af.ts
  5. +439 −0 lp-gui/i18n/LifePreserver_ar.ts
  6. +439 −0 lp-gui/i18n/LifePreserver_az.ts
  7. +439 −0 lp-gui/i18n/LifePreserver_bg.ts
  8. +439 −0 lp-gui/i18n/LifePreserver_bn.ts
  9. +439 −0 lp-gui/i18n/LifePreserver_bs.ts
  10. +439 −0 lp-gui/i18n/LifePreserver_ca.ts
  11. +439 −0 lp-gui/i18n/LifePreserver_cs.ts
  12. +439 −0 lp-gui/i18n/LifePreserver_cy.ts
  13. +439 −0 lp-gui/i18n/LifePreserver_da.ts
  14. +439 −0 lp-gui/i18n/LifePreserver_de.ts
  15. +439 −0 lp-gui/i18n/LifePreserver_el.ts
  16. +439 −0 lp-gui/i18n/LifePreserver_en_GB.ts
  17. +439 −0 lp-gui/i18n/LifePreserver_en_US.ts
  18. +439 −0 lp-gui/i18n/LifePreserver_en_ZA.ts
  19. +439 −0 lp-gui/i18n/LifePreserver_es.ts
  20. +439 −0 lp-gui/i18n/LifePreserver_et.ts
  21. +439 −0 lp-gui/i18n/LifePreserver_eu.ts
  22. +439 −0 lp-gui/i18n/LifePreserver_fa.ts
  23. +439 −0 lp-gui/i18n/LifePreserver_fi.ts
  24. +439 −0 lp-gui/i18n/LifePreserver_fr.ts
  25. +439 −0 lp-gui/i18n/LifePreserver_fr_CA.ts
  26. +439 −0 lp-gui/i18n/LifePreserver_fur.ts
  27. +439 −0 lp-gui/i18n/LifePreserver_gl.ts
  28. +439 −0 lp-gui/i18n/LifePreserver_he.ts
  29. +439 −0 lp-gui/i18n/LifePreserver_hi.ts
  30. +439 −0 lp-gui/i18n/LifePreserver_hr.ts
  31. +439 −0 lp-gui/i18n/LifePreserver_hu.ts
  32. +439 −0 lp-gui/i18n/LifePreserver_id.ts
  33. +439 −0 lp-gui/i18n/LifePreserver_is.ts
  34. +439 −0 lp-gui/i18n/LifePreserver_it.ts
  35. +439 −0 lp-gui/i18n/LifePreserver_ja.ts
  36. +439 −0 lp-gui/i18n/LifePreserver_ka.ts
  37. +439 −0 lp-gui/i18n/LifePreserver_ko.ts
  38. +439 −0 lp-gui/i18n/LifePreserver_lt.ts
  39. +439 −0 lp-gui/i18n/LifePreserver_lv.ts
  40. +439 −0 lp-gui/i18n/LifePreserver_mk.ts
  41. +439 −0 lp-gui/i18n/LifePreserver_mn.ts
  42. +439 −0 lp-gui/i18n/LifePreserver_ms.ts
  43. +439 −0 lp-gui/i18n/LifePreserver_mt.ts
  44. +439 −0 lp-gui/i18n/LifePreserver_nb.ts
  45. +439 −0 lp-gui/i18n/LifePreserver_ne.ts
  46. +439 −0 lp-gui/i18n/LifePreserver_nl.ts
  47. +439 −0 lp-gui/i18n/LifePreserver_pa.ts
  48. +439 −0 lp-gui/i18n/LifePreserver_pl.ts
  49. +439 −0 lp-gui/i18n/LifePreserver_pt.ts
  50. +439 −0 lp-gui/i18n/LifePreserver_pt_BR.ts
  51. +439 −0 lp-gui/i18n/LifePreserver_ro.ts
  52. +439 −0 lp-gui/i18n/LifePreserver_ru.ts
  53. +439 −0 lp-gui/i18n/LifePreserver_sa.ts
  54. +439 −0 lp-gui/i18n/LifePreserver_sk.ts
  55. +439 −0 lp-gui/i18n/LifePreserver_sl.ts
  56. +439 −0 lp-gui/i18n/LifePreserver_sr.ts
  57. +439 −0 lp-gui/i18n/LifePreserver_sv.ts
  58. +439 −0 lp-gui/i18n/LifePreserver_sw.ts
  59. +439 −0 lp-gui/i18n/LifePreserver_ta.ts
  60. +439 −0 lp-gui/i18n/LifePreserver_tg.ts
  61. +439 −0 lp-gui/i18n/LifePreserver_th.ts
  62. +439 −0 lp-gui/i18n/LifePreserver_tr.ts
  63. +439 −0 lp-gui/i18n/LifePreserver_uk.ts
Sorry, we could not display the entire diff because it was too big.
View
54 lp-gui/LPMain.cpp
@@ -6,19 +6,24 @@ LPMain::LPMain(QWidget *parent) : QMainWindow(parent), ui(new Ui::LPMain){
//Create the basic/advanced view options
viewBasic = new QRadioButton(tr("Basic"), ui->menuView);
QWidgetAction *WABasic = new QWidgetAction(this); WABasic->setDefaultWidget(viewBasic);
+ ui->menuView->addAction(WABasic);
viewAdvanced = new QRadioButton(tr("Advanced"), ui->menuView);
QWidgetAction *WAAdv = new QWidgetAction(this); WAAdv->setDefaultWidget(viewAdvanced);
-
- ui->menuView->addAction(WABasic);
- ui->menuView->addAction(WAAdv);
+ ui->menuView->addAction(WAAdv);
connect(viewBasic, SIGNAL(toggled(bool)), this, SLOT(viewChanged()) );
//Now set the default view type
viewBasic->setChecked(true); //will automatically call the "viewChanged" function
-
+ //Create the filesystem model and tie it to the treewidget
+ fsModel = new QFileSystemModel(this);
+ fsModel->setReadOnly(true);
+ ui->treeView->setModel(fsModel);
//Connect the UI to all the functions
connect(ui->combo_pools, SIGNAL(currentIndexChanged(int)), this, SLOT(updateTabs()) );
connect(ui->combo_datasets, SIGNAL(currentIndexChanged(int)), this, SLOT(updateDataset()) );
connect(ui->slider_snapshots, SIGNAL(valueChanged(int)), this, SLOT(updateSnapshot()) );
+ connect(ui->push_prevsnap, SIGNAL(clicked()), this, SLOT(prevSnapshot()) );
+ connect(ui->push_nextsnap, SIGNAL(clicked()), this, SLOT(nextSnapshot()) );
+ connect(ui->push_restore, SIGNAL(clicked()), this, SLOT(restoreFiles()) );
//Update the interface
updatePoolList();
//Make sure the status tab is shown initially
@@ -46,6 +51,7 @@ void LPMain::slotSingleInstance(){
// ==============
void LPMain::updatePoolList(){
//Get the currently selected pool (if there is one)
+ qDebug() << "Update Pool List";
QString cPool;
if(ui->combo_pools->currentIndex() != -1){ cPool = ui->combo_pools->currentText(); }
//Get the list of managed pools
@@ -55,15 +61,15 @@ void LPMain::updatePoolList(){
if(!pools.isEmpty()){ ui->combo_pools->addItems(pools); }
//Now set the currently selected pools
if(pools.length() > 0){
+ poolSelected=true;
int index = pools.indexOf(cPool);
if(index < 0){ ui->combo_pools->setCurrentIndex(0); }
else{ ui->combo_pools->setCurrentIndex(index); }
- poolSelected=true;
}else{
//No managed pools
+ poolSelected=false;
ui->combo_pools->addItem("No Managed Pools!");
ui->combo_pools->setCurrentIndex(0);
- poolSelected=false;
}
//Now update the interface appropriately
ui->combo_pools->setEnabled(poolSelected);
@@ -84,6 +90,7 @@ void LPMain::viewChanged(){
}
void LPMain::updateTabs(){
+ qDebug() << "Update Tabs" << poolSelected;
viewChanged();
ui->tabWidget->setEnabled(poolSelected);
ui->menuView->setEnabled(poolSelected);
@@ -116,7 +123,6 @@ void LPMain::updateTabs(){
QString cds = ui->combo_datasets->currentText();
ui->combo_datasets->clear();
QStringList dslist = POOLDATA.subsets();
- qDebug() << "Datasets:" << dslist;
ui->combo_datasets->addItems(dslist);
int dsin = dslist.indexOf(cds);
if(dsin >= 0){ ui->combo_datasets->setCurrentIndex(dsin); }
@@ -142,7 +148,7 @@ void LPMain::updateDataset(){
QString cds = ui->combo_datasets->currentText();
if(POOLDATA.subsets().indexOf(cds) >= 0){
QStringList snaps = POOLDATA.snapshots(cds);
- qDebug() << "dataset:" << cds << "snapshots:" << snaps;
+ qDebug() << "Update Dataset";
ui->slider_snapshots->setEnabled(true);
ui->slider_snapshots->setMinimum(0);
int max = snaps.length() -1;
@@ -153,8 +159,8 @@ void LPMain::updateDataset(){
}else{
ui->slider_snapshots->setEnabled(false);
ui->label_snapshot->clear();
- ui->tool_nextsnap->setEnabled(false);
- ui->tool_prevsnap->setEnabled(false);
+ ui->push_nextsnap->setEnabled(false);
+ ui->push_prevsnap->setEnabled(false);
}
}
@@ -162,18 +168,34 @@ void LPMain::updateDataset(){
void LPMain::updateSnapshot(){
int sval = ui->slider_snapshots->value();
QStringList snaps = POOLDATA.snapshots(ui->combo_datasets->currentText());
- qDebug() << "Snapshots:" << snaps;
+ qDebug() << "Update Snapshot";
//Update the previous/next buttons
- if(sval == ui->slider_snapshots->minimum() ){ ui->tool_prevsnap->setEnabled(false); }
- else{ ui->tool_prevsnap->setEnabled(true); }
- if(sval == ui->slider_snapshots->maximum() ){ ui->tool_nextsnap->setEnabled(false); }
- else{ ui->tool_nextsnap->setEnabled(true); }
+ if(sval == ui->slider_snapshots->minimum() ){ ui->push_prevsnap->setEnabled(false); }
+ else{ ui->push_prevsnap->setEnabled(true); }
+ if(sval == ui->slider_snapshots->maximum() ){ ui->push_nextsnap->setEnabled(false); }
+ else{ ui->push_nextsnap->setEnabled(true); }
//Now update the snapshot viewer
if(snaps.isEmpty()){ ui->label_snapshot->clear(); ui->slider_snapshots->setEnabled(false); }
else{
QString snap = snaps.at(sval);
+ QString path = ui->combo_datasets->currentText() + "/.zfs/snapshot/"+snap;
+ //qDebug() << "Snapshot path:" << path;
ui->label_snapshot->setText(snap);
//Now update the snapshot view
- qDebug() << "Snapshot viewer not implemented yet";
+ ui->treeView->setRootIndex( fsModel->setRootPath(path) );
+
}
}
+
+void LPMain::nextSnapshot(){
+ ui->slider_snapshots->setValue( ui->slider_snapshots->value()+1 );
+}
+
+void LPMain::prevSnapshot(){
+ ui->slider_snapshots->setValue( ui->slider_snapshots->value()-1 );
+}
+
+void LPMain::restoreFiles(){
+ qDebug() << "Restore file(s)";
+
+}
View
5 lp-gui/LPMain.h
@@ -9,6 +9,7 @@
#include <QStringList>
#include <QRadioButton>
#include <QWidgetAction>
+#include <QFileSystemModel>
#include "LPBackend.h"
#include "LPContainers.h"
@@ -30,6 +31,7 @@ public slots:
private:
Ui::LPMain *ui;
QRadioButton *viewBasic, *viewAdvanced;
+ QFileSystemModel *fsModel;
bool poolSelected;
LPDataset POOLDATA;
@@ -39,6 +41,9 @@ private slots:
void updateTabs(); //load current pool info and update tabs
void updateDataset(); //restore dataset changed
void updateSnapshot(); //selected snapshot changed
+ void nextSnapshot();
+ void prevSnapshot();
+ void restoreFiles();
protected:
View
139 lp-gui/LPMain.ui
@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>377</width>
- <height>257</height>
+ <width>466</width>
+ <height>384</height>
</rect>
</property>
<property name="windowTitle">
@@ -48,9 +48,9 @@
</spacer>
</item>
<item>
- <widget class="QToolButton" name="tool_configure">
+ <widget class="QPushButton" name="push_configure">
<property name="statusTip">
- <string>Configure the local snapshot policies</string>
+ <string>Configure local data backup schedules</string>
</property>
<property name="text">
<string>Configure</string>
@@ -62,12 +62,12 @@
</widget>
</item>
<item>
- <widget class="QToolButton" name="tool_configBackups">
+ <widget class="QPushButton" name="push_configBackups">
<property name="statusTip">
- <string>Configure additional data safety procedures</string>
+ <string>Configure off-disk data backup solutions</string>
</property>
<property name="text">
- <string>...</string>
+ <string>Backups</string>
</property>
<property name="icon">
<iconset resource="lPreserve.qrc">
@@ -156,22 +156,6 @@
</layout>
</item>
<item>
- <spacer name="verticalSpacer">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>QSizePolicy::Expanding</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
@@ -229,6 +213,22 @@
</property>
</widget>
</item>
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
+ </property>
+ <property name="sizeType">
+ <enum>QSizePolicy::Expanding</enum>
+ </property>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
</layout>
</widget>
<widget class="QWidget" name="tab_restore">
@@ -250,26 +250,14 @@
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
- <widget class="QToolButton" name="tool_prevsnap">
- <property name="statusTip">
- <string>Select the previous (older) snapshot</string>
- </property>
- <property name="styleSheet">
- <string notr="true"/>
- </property>
+ <widget class="QPushButton" name="push_prevsnap">
<property name="text">
- <string>Prev</string>
+ <string/>
</property>
<property name="icon">
<iconset resource="lPreserve.qrc">
<normaloff>:/images/previous.png</normaloff>:/images/previous.png</iconset>
</property>
- <property name="iconSize">
- <size>
- <width>16</width>
- <height>16</height>
- </size>
- </property>
</widget>
</item>
<item>
@@ -303,12 +291,9 @@
</layout>
</item>
<item>
- <widget class="QToolButton" name="tool_nextsnap">
- <property name="statusTip">
- <string>Select the next (more recent) snapshot</string>
- </property>
+ <widget class="QPushButton" name="push_nextsnap">
<property name="text">
- <string>Next</string>
+ <string/>
</property>
<property name="icon">
<iconset resource="lPreserve.qrc">
@@ -319,6 +304,13 @@
</layout>
</item>
<item>
+ <widget class="Line" name="line_2">
+ <property name="orientation">
+ <enum>Qt::Horizontal</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
@@ -332,29 +324,11 @@
</spacer>
</item>
<item>
- <widget class="Line" name="line_2">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
+ <widget class="QTreeView" name="treeView"/>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
- <widget class="QToolButton" name="tool_viewSnapshot">
- <property name="statusTip">
- <string>Browse through the currently selected snapshot</string>
- </property>
- <property name="text">
- <string>View Snapshot</string>
- </property>
- <property name="icon">
- <iconset resource="lPreserve.qrc">
- <normaloff>:/images/view.png</normaloff>:/images/view.png</iconset>
- </property>
- </widget>
- </item>
- <item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
@@ -368,37 +342,14 @@
</spacer>
</item>
<item>
- <widget class="QToolButton" name="tool_restoreDir">
- <property name="statusTip">
- <string>Revert the entire directory to the selected snapshot</string>
- </property>
- <property name="text">
- <string>Restore Dir</string>
- </property>
- <property name="icon">
- <iconset resource="lPreserve.qrc">
- <normaloff>:/images/folder.png</normaloff>:/images/folder.png</iconset>
- </property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="tool_restoreFile">
- <property name="statusTip">
- <string>Retrieve file(s) from the selected snapshot</string>
- </property>
+ <widget class="QPushButton" name="push_restore">
<property name="text">
- <string>Restore File</string>
+ <string>Restore</string>
</property>
<property name="icon">
<iconset resource="lPreserve.qrc">
<normaloff>:/images/copy.png</normaloff>:/images/copy.png</iconset>
</property>
- <property name="toolButtonStyle">
- <enum>Qt::ToolButtonTextBesideIcon</enum>
- </property>
</widget>
</item>
</layout>
@@ -406,8 +357,9 @@
</layout>
<zorder></zorder>
<zorder></zorder>
- <zorder>verticalSpacer_2</zorder>
<zorder>line_2</zorder>
+ <zorder>verticalSpacer_2</zorder>
+ <zorder>treeView</zorder>
</widget>
</widget>
</item>
@@ -418,7 +370,7 @@
<rect>
<x>0</x>
<y>0</y>
- <width>377</width>
+ <width>466</width>
<height>20</height>
</rect>
</property>
@@ -429,6 +381,8 @@
<addaction name="actionManage_Pool"/>
<addaction name="actionUnmanage_Pool"/>
<addaction name="separator"/>
+ <addaction name="actionClassic_Backup"/>
+ <addaction name="separator"/>
<addaction name="action_SaveKeyToUSB"/>
<addaction name="separator"/>
<addaction name="actionClose_WIndow"/>
@@ -585,6 +539,15 @@
<string>Check system data integrity</string>
</property>
</action>
+ <action name="actionClassic_Backup">
+ <property name="icon">
+ <iconset resource="lPreserve.qrc">
+ <normaloff>:/images/drive-removable-media.png</normaloff>:/images/drive-removable-media.png</iconset>
+ </property>
+ <property name="text">
+ <string>Classic Backup</string>
+ </property>
+ </action>
</widget>
<resources>
<include location="lPreserve.qrc"/>
View
439 lp-gui/i18n/LifePreserver_af.ts
@@ -0,0 +1,439 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="af_ZA">
+<context>
+ <name>LPConfig</name>
+ <message>
+ <location filename="../LPConfig.ui" line="14"/>
+ <source>Configure Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="28"/>
+ <source>Data Set:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="48"/>
+ <source>Local Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="60"/>
+ <source>Schedule:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="70"/>
+ <source>Daily</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="75"/>
+ <source>Hourly</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="80"/>
+ <source>30 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="85"/>
+ <source>10 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="90"/>
+ <source>5 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="112"/>
+ <source>@ h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="134"/>
+ <source>Days</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="139"/>
+ <source>Total</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="155"/>
+ <source>Keep:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="163"/>
+ <source>Replication</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="169"/>
+ <source>Replicate on a Remote System</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="183"/>
+ <source>Host Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="197"/>
+ <source>User Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="217"/>
+ <source>SSH Port</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="267"/>
+ <source>Remote Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="279"/>
+ <source>Frequency</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="285"/>
+ <source>With snapshot creation (Best for daily snapshots)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="297"/>
+ <source>Daily at:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="304"/>
+ <source>h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="364"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="378"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>LPMain</name>
+ <message>
+ <location filename="../LPMain.ui" line="14"/>
+ <source>Life Preserver</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="53"/>
+ <source>Configure local data backup schedules</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="56"/>
+ <source>Configure</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="67"/>
+ <source>Configure off-disk data backup solutions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="70"/>
+ <source>Backups</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="91"/>
+ <source>Status</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="105"/>
+ <source>System State:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="125"/>
+ <source>Number of Disks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="145"/>
+ <source>Latest Snapshot:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="240"/>
+ <source>Restore Data</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="347"/>
+ <source>Restore</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="379"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="392"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="397"/>
+ <source>Disks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="408"/>
+ <source>Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="425"/>
+ <source>Close Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="430"/>
+ <location filename="../LPMain.cpp" line="10"/>
+ <source>Advanced</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="435"/>
+ <location filename="../LPMain.cpp" line="7"/>
+ <source>Basic</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="444"/>
+ <source>Manage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="453"/>
+ <source>Unmanage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="458"/>
+ <source>Recover File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="463"/>
+ <source>Restore Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="468"/>
+ <location filename="../LPMain.ui" line="527"/>
+ <source>Save Key to USB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="477"/>
+ <source>Add Disk</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="486"/>
+ <source>Remove Disk</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="495"/>
+ <source>Set Disk Offline</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="500"/>
+ <location filename="../LPMain.ui" line="509"/>
+ <source>New Snapshot</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="518"/>
+ <source>Delete Snapshot</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="536"/>
+ <source>Start Scrub</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="539"/>
+ <source>Check system data integrity</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="548"/>
+ <source>Classic Backup</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.cpp" line="130"/>
+ <source>No datasets available</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>LPWizard</name>
+ <message>
+ <location filename="../LPWizard.ui" line="17"/>
+ <source>New Life Preserver</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="44"/>
+ <source>This wizard will walk you through the process of setting up a new snapshot schedule for the following ZFS dataset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="109"/>
+ <source>Snapshot schedule</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="115"/>
+ <source>Snapshots can be scheduled anywhere from daily, down to every 5 minutes. Snapshots consume very little disk space, and will only grow as the current data on disk changes. </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="133"/>
+ <source>Hourly</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="148"/>
+ <source>Daily @</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="179"/>
+ <location filename="../LPWizard.ui" line="480"/>
+ <source>h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="204"/>
+ <source>30 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="211"/>
+ <source>10 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="218"/>
+ <source>5 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="247"/>
+ <source>Snapshot pruning</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="253"/>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The oldest snapshots will be auto-pruned after reaching either the number of days or the total number of snapshots that you specify. &lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="273"/>
+ <location filename="../LPWizard.ui" line="329"/>
+ <source>Keep</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="296"/>
+ <source>days worth of snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="346"/>
+ <source>total snapshots </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="393"/>
+ <source>Replication Server</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="399"/>
+ <source>Replication will keep a copy of your data on a remote system in the case of a total disk failure.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="409"/>
+ <source>NOTE: A valid replication target system must be running a compatible version of ZFS and have SSH enabled, such as on a FreeNAS system.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="419"/>
+ <source>Replicate my data</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="431"/>
+ <source>Frequency</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="437"/>
+ <source>With snapshot creation (Best for daily snapshots)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="449"/>
+ <source>Daily at:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="507"/>
+ <source>Host Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="521"/>
+ <source>User Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="541"/>
+ <source>SSH Port</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="591"/>
+ <source>Remote Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="613"/>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Your new Life Preserver schedule is now set up! You may go back and change your configuration at any time from within the main Life Preserver window.&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;Click the Finish button to apply these settings and create the new backup schedule.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
View
439 lp-gui/i18n/LifePreserver_ar.ts
@@ -0,0 +1,439 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="ar_SA">
+<context>
+ <name>LPConfig</name>
+ <message>
+ <location filename="../LPConfig.ui" line="14"/>
+ <source>Configure Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="28"/>
+ <source>Data Set:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="48"/>
+ <source>Local Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="60"/>
+ <source>Schedule:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="70"/>
+ <source>Daily</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="75"/>
+ <source>Hourly</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="80"/>
+ <source>30 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="85"/>
+ <source>10 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="90"/>
+ <source>5 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="112"/>
+ <source>@ h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="134"/>
+ <source>Days</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="139"/>
+ <source>Total</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="155"/>
+ <source>Keep:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="163"/>
+ <source>Replication</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="169"/>
+ <source>Replicate on a Remote System</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="183"/>
+ <source>Host Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="197"/>
+ <source>User Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="217"/>
+ <source>SSH Port</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="267"/>
+ <source>Remote Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="279"/>
+ <source>Frequency</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="285"/>
+ <source>With snapshot creation (Best for daily snapshots)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="297"/>
+ <source>Daily at:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="304"/>
+ <source>h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="364"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="378"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>LPMain</name>
+ <message>
+ <location filename="../LPMain.ui" line="14"/>
+ <source>Life Preserver</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="53"/>
+ <source>Configure local data backup schedules</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="56"/>
+ <source>Configure</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="67"/>
+ <source>Configure off-disk data backup solutions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="70"/>
+ <source>Backups</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="91"/>
+ <source>Status</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="105"/>
+ <source>System State:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="125"/>
+ <source>Number of Disks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="145"/>
+ <source>Latest Snapshot:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="240"/>
+ <source>Restore Data</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="347"/>
+ <source>Restore</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="379"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="392"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="397"/>
+ <source>Disks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="408"/>
+ <source>Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="425"/>
+ <source>Close Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="430"/>
+ <location filename="../LPMain.cpp" line="10"/>
+ <source>Advanced</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="435"/>
+ <location filename="../LPMain.cpp" line="7"/>
+ <source>Basic</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="444"/>
+ <source>Manage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="453"/>
+ <source>Unmanage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="458"/>
+ <source>Recover File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="463"/>
+ <source>Restore Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="468"/>
+ <location filename="../LPMain.ui" line="527"/>
+ <source>Save Key to USB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="477"/>
+ <source>Add Disk</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="486"/>
+ <source>Remove Disk</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="495"/>
+ <source>Set Disk Offline</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="500"/>
+ <location filename="../LPMain.ui" line="509"/>
+ <source>New Snapshot</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="518"/>
+ <source>Delete Snapshot</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="536"/>
+ <source>Start Scrub</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="539"/>
+ <source>Check system data integrity</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="548"/>
+ <source>Classic Backup</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.cpp" line="130"/>
+ <source>No datasets available</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>LPWizard</name>
+ <message>
+ <location filename="../LPWizard.ui" line="17"/>
+ <source>New Life Preserver</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="44"/>
+ <source>This wizard will walk you through the process of setting up a new snapshot schedule for the following ZFS dataset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="109"/>
+ <source>Snapshot schedule</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="115"/>
+ <source>Snapshots can be scheduled anywhere from daily, down to every 5 minutes. Snapshots consume very little disk space, and will only grow as the current data on disk changes. </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="133"/>
+ <source>Hourly</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="148"/>
+ <source>Daily @</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="179"/>
+ <location filename="../LPWizard.ui" line="480"/>
+ <source>h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="204"/>
+ <source>30 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="211"/>
+ <source>10 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="218"/>
+ <source>5 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="247"/>
+ <source>Snapshot pruning</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="253"/>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The oldest snapshots will be auto-pruned after reaching either the number of days or the total number of snapshots that you specify. &lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="273"/>
+ <location filename="../LPWizard.ui" line="329"/>
+ <source>Keep</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="296"/>
+ <source>days worth of snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="346"/>
+ <source>total snapshots </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="393"/>
+ <source>Replication Server</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="399"/>
+ <source>Replication will keep a copy of your data on a remote system in the case of a total disk failure.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="409"/>
+ <source>NOTE: A valid replication target system must be running a compatible version of ZFS and have SSH enabled, such as on a FreeNAS system.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="419"/>
+ <source>Replicate my data</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="431"/>
+ <source>Frequency</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="437"/>
+ <source>With snapshot creation (Best for daily snapshots)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="449"/>
+ <source>Daily at:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="507"/>
+ <source>Host Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="521"/>
+ <source>User Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="541"/>
+ <source>SSH Port</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="591"/>
+ <source>Remote Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="613"/>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Your new Life Preserver schedule is now set up! You may go back and change your configuration at any time from within the main Life Preserver window.&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;Click the Finish button to apply these settings and create the new backup schedule.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
View
439 lp-gui/i18n/LifePreserver_az.ts
@@ -0,0 +1,439 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="az_AZ">
+<context>
+ <name>LPConfig</name>
+ <message>
+ <location filename="../LPConfig.ui" line="14"/>
+ <source>Configure Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="28"/>
+ <source>Data Set:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="48"/>
+ <source>Local Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="60"/>
+ <source>Schedule:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="70"/>
+ <source>Daily</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="75"/>
+ <source>Hourly</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="80"/>
+ <source>30 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="85"/>
+ <source>10 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="90"/>
+ <source>5 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="112"/>
+ <source>@ h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="134"/>
+ <source>Days</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="139"/>
+ <source>Total</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="155"/>
+ <source>Keep:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="163"/>
+ <source>Replication</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="169"/>
+ <source>Replicate on a Remote System</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="183"/>
+ <source>Host Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="197"/>
+ <source>User Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="217"/>
+ <source>SSH Port</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="267"/>
+ <source>Remote Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="279"/>
+ <source>Frequency</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="285"/>
+ <source>With snapshot creation (Best for daily snapshots)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="297"/>
+ <source>Daily at:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="304"/>
+ <source>h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="364"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="378"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>LPMain</name>
+ <message>
+ <location filename="../LPMain.ui" line="14"/>
+ <source>Life Preserver</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="53"/>
+ <source>Configure local data backup schedules</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="56"/>
+ <source>Configure</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="67"/>
+ <source>Configure off-disk data backup solutions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="70"/>
+ <source>Backups</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="91"/>
+ <source>Status</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="105"/>
+ <source>System State:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="125"/>
+ <source>Number of Disks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="145"/>
+ <source>Latest Snapshot:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="240"/>
+ <source>Restore Data</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="347"/>
+ <source>Restore</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="379"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="392"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="397"/>
+ <source>Disks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="408"/>
+ <source>Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="425"/>
+ <source>Close Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="430"/>
+ <location filename="../LPMain.cpp" line="10"/>
+ <source>Advanced</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="435"/>
+ <location filename="../LPMain.cpp" line="7"/>
+ <source>Basic</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="444"/>
+ <source>Manage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="453"/>
+ <source>Unmanage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="458"/>
+ <source>Recover File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="463"/>
+ <source>Restore Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="468"/>
+ <location filename="../LPMain.ui" line="527"/>
+ <source>Save Key to USB</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="477"/>
+ <source>Add Disk</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="486"/>
+ <source>Remove Disk</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="495"/>
+ <source>Set Disk Offline</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="500"/>
+ <location filename="../LPMain.ui" line="509"/>
+ <source>New Snapshot</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="518"/>
+ <source>Delete Snapshot</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="536"/>
+ <source>Start Scrub</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="539"/>
+ <source>Check system data integrity</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="548"/>
+ <source>Classic Backup</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.cpp" line="130"/>
+ <source>No datasets available</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>LPWizard</name>
+ <message>
+ <location filename="../LPWizard.ui" line="17"/>
+ <source>New Life Preserver</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="44"/>
+ <source>This wizard will walk you through the process of setting up a new snapshot schedule for the following ZFS dataset:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="109"/>
+ <source>Snapshot schedule</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="115"/>
+ <source>Snapshots can be scheduled anywhere from daily, down to every 5 minutes. Snapshots consume very little disk space, and will only grow as the current data on disk changes. </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="133"/>
+ <source>Hourly</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="148"/>
+ <source>Daily @</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="179"/>
+ <location filename="../LPWizard.ui" line="480"/>
+ <source>h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="204"/>
+ <source>30 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="211"/>
+ <source>10 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="218"/>
+ <source>5 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="247"/>
+ <source>Snapshot pruning</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="253"/>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;The oldest snapshots will be auto-pruned after reaching either the number of days or the total number of snapshots that you specify. &lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="273"/>
+ <location filename="../LPWizard.ui" line="329"/>
+ <source>Keep</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="296"/>
+ <source>days worth of snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="346"/>
+ <source>total snapshots </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="393"/>
+ <source>Replication Server</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="399"/>
+ <source>Replication will keep a copy of your data on a remote system in the case of a total disk failure.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="409"/>
+ <source>NOTE: A valid replication target system must be running a compatible version of ZFS and have SSH enabled, such as on a FreeNAS system.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="419"/>
+ <source>Replicate my data</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="431"/>
+ <source>Frequency</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="437"/>
+ <source>With snapshot creation (Best for daily snapshots)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="449"/>
+ <source>Daily at:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="507"/>
+ <source>Host Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="521"/>
+ <source>User Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="541"/>
+ <source>SSH Port</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="591"/>
+ <source>Remote Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPWizard.ui" line="613"/>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Your new Life Preserver schedule is now set up! You may go back and change your configuration at any time from within the main Life Preserver window.&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;Click the Finish button to apply these settings and create the new backup schedule.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+</TS>
View
439 lp-gui/i18n/LifePreserver_bg.ts
@@ -0,0 +1,439 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE TS>
+<TS version="2.0" language="bg_BG">
+<context>
+ <name>LPConfig</name>
+ <message>
+ <location filename="../LPConfig.ui" line="14"/>
+ <source>Configure Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="28"/>
+ <source>Data Set:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="48"/>
+ <source>Local Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="60"/>
+ <source>Schedule:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="70"/>
+ <source>Daily</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="75"/>
+ <source>Hourly</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="80"/>
+ <source>30 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="85"/>
+ <source>10 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="90"/>
+ <source>5 minutes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="112"/>
+ <source>@ h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="134"/>
+ <source>Days</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="139"/>
+ <source>Total</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="155"/>
+ <source>Keep:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="163"/>
+ <source>Replication</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="169"/>
+ <source>Replicate on a Remote System</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="183"/>
+ <source>Host Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="197"/>
+ <source>User Name</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="217"/>
+ <source>SSH Port</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="267"/>
+ <source>Remote Dataset</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="279"/>
+ <source>Frequency</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="285"/>
+ <source>With snapshot creation (Best for daily snapshots)</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="297"/>
+ <source>Daily at:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="304"/>
+ <source>h AP</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="364"/>
+ <source>Apply</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPConfig.ui" line="378"/>
+ <source>Cancel</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>LPMain</name>
+ <message>
+ <location filename="../LPMain.ui" line="14"/>
+ <source>Life Preserver</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="53"/>
+ <source>Configure local data backup schedules</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="56"/>
+ <source>Configure</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="67"/>
+ <source>Configure off-disk data backup solutions</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="70"/>
+ <source>Backups</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="91"/>
+ <source>Status</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="105"/>
+ <source>System State:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="125"/>
+ <source>Number of Disks:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="145"/>
+ <source>Latest Snapshot:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="240"/>
+ <source>Restore Data</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="347"/>
+ <source>Restore</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="379"/>
+ <source>File</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="392"/>
+ <source>View</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="397"/>
+ <source>Disks</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="408"/>
+ <source>Snapshots</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="425"/>
+ <source>Close Window</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="430"/>
+ <location filename="../LPMain.cpp" line="10"/>
+ <source>Advanced</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="435"/>
+ <location filename="../LPMain.cpp" line="7"/>
+ <source>Basic</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="444"/>
+ <source>Manage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="453"/>
+ <source>Unmanage Pool</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../LPMain.ui" line="458"/>
+ <source>Recover File</source>
+ <translation type="unfinished"></translation>