From 6de33c4a76f1aa43608a4f68318e648222fdefe8 Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Tue, 22 Mar 2016 19:32:09 +0000
Subject: mythinstall: update for mythtv 0.28 and QT5

---
 .../MythVantage-app/mythinstall/autocard.cpp       |   2 +-
 .../MythVantage-app/mythinstall/compat-mv.h        |   4 +-
 .../MythVantage-app/mythinstall/fileshare.cpp      |   7 +-
 .../MythVantage-app/mythinstall/infrared.cpp       |  18 +--
 .../mythinstall/installationtype.cpp               |   7 +-
 .../MythVantage-app/mythinstall/installdialog.cpp  |  84 +++++-----
 .../mythinstall/installsettings.cpp                | 177 ++++++++++-----------
 .../MythVantage-app/mythinstall/main.cpp           |  25 ++-
 .../MythVantage-app/mythinstall/misc_settings.cpp  |  20 +--
 .../MythVantage-app/mythinstall/mythinstall.pro    |   7 +-
 .../mythinstall/password_manage.cpp                |  48 +++---
 .../MythVantage-app/mythinstall/password_manage.h  |   9 +-
 .../MythVantage-app/mythinstall/settemplate.cpp    |   2 +-
 .../MythVantage-app/mythinstall/supplemental.cpp   |   2 -
 .../MythVantage-app/mythinstall/vnc.cpp            |   2 -
 .../MythVantage-app/mythinstall/xorgsettings.cpp   |  23 ++-
 .../MythVantage-app/mythinstall/xorgsettings.h     |   8 +-
 abs/core/mythinstall/PKGBUILD                      |  17 +-
 abs/core/mythinstall/logo-1.png                    | Bin 5402 -> 2286 bytes
 abs/core/mythinstall/logo-2.png                    | Bin 11883 -> 40628 bytes
 abs/core/mythinstall/logo-3.png                    | Bin 10795 -> 5402 bytes
 abs/core/mythinstall/logo-4.png                    | Bin 40628 -> 11883 bytes
 abs/core/mythinstall/logo-9.png                    | Bin 0 -> 10795 bytes
 23 files changed, 228 insertions(+), 234 deletions(-)
 mode change 100644 => 100755 abs/core/mythinstall/logo-1.png
 create mode 100644 abs/core/mythinstall/logo-9.png

diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/autocard.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/autocard.cpp
index cfd7fb3..7808eac 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/autocard.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/autocard.cpp
@@ -17,7 +17,7 @@ void AutoCard::popup_menu(void)
     QString uniqid =  name.section(' ', -1);
     QString description = name.section('*',-3,-3);
     description = description.section('.',1);
-    description = description.stripWhiteSpace();
+    description = description.trimmed();
 //     //cout << uniqid << endl;
 //     //cout << "descriptn" << endl;
 //     //cout << description << endl;
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/compat-mv.h b/abs/core/mythinstall/MythVantage-app/mythinstall/compat-mv.h
index bc2c4cb..5f6825f 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/compat-mv.h
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/compat-mv.h
@@ -27,7 +27,7 @@ protected:
     virtual ~ImageSelectSetting();
 
 protected:
-    vector<QImage*> images;
+    std::vector<QImage*> images;
     QWidget *bxwidget;
     QLabel *imagelabel;
     MythComboBox *combo;
@@ -40,4 +40,4 @@ class MPUBLIC HostImageSelect : public ImageSelectSetting, public HostDBStorage
 public:
     HostImageSelect(const QString &name) :
             ImageSelectSetting(this), HostDBStorage(this, name) { }
-};
\ No newline at end of file
+};
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/fileshare.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/fileshare.cpp
index 58804a5..d09efd7 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/fileshare.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/fileshare.cpp
@@ -1,9 +1,8 @@
 #include <unistd.h>
 #include "misc_settings.h"
 #include "mv_common.h"
-//Added by qt3to4:
 
-#include <Q3TextStream>
+#include <QTextStream>
 #include <unistd.h>
 #include <stdio.h>
 #include <QtNetwork>
@@ -190,8 +189,8 @@ static HostComboBox *HostServiceSamba_domain()
     QFile file("/tmp/smbdomainlist");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if ( line.startsWith("domain"))
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/infrared.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/infrared.cpp
index cd56683..ae53011 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/infrared.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/infrared.cpp
@@ -1,7 +1,7 @@
 #include <unistd.h>
 #include <stdlib.h>
 #include "infrared.h"
-#include <Q3TextStream>
+#include <QTextStream>
 
 using namespace std;
 
@@ -36,7 +36,7 @@ HostRemoteTypeIR_favorites::HostRemoteTypeIR_favorites():
         {
             continue;
         }
-        QImage* previewImage = new QImage(preview_global.absFilePath());
+        QImage* previewImage = new QImage(preview_global.absoluteFilePath());
         addImageSelection(remote.fileName(), previewImage);
     }
 };
@@ -71,7 +71,7 @@ HostRemoteTypeIR_other::HostRemoteTypeIR_other():
         {
             continue;
         }
-        QImage* previewImage = new QImage(preview_global.absFilePath());
+        QImage* previewImage = new QImage(preview_global.absoluteFilePath());
         addImageSelection(remote.fileName(), previewImage);
     }
 };
@@ -107,7 +107,7 @@ HostRemoteTypeIR_hauppauge::HostRemoteTypeIR_hauppauge():
         {
             continue;
         }
-        QImage* previewImage = new QImage(preview_global.absFilePath());
+        QImage* previewImage = new QImage(preview_global.absoluteFilePath());
         addImageSelection(remote.fileName(), previewImage);
     }
 };
@@ -144,7 +144,7 @@ HostRemoteTypeIR_ATI::HostRemoteTypeIR_ATI():
         {
             continue;
         }
-        QImage* previewImage = new QImage(preview_global.absFilePath());
+        QImage* previewImage = new QImage(preview_global.absoluteFilePath());
         addImageSelection(remote.fileName(), previewImage);
     }
 };
@@ -182,12 +182,12 @@ HostRemoteTypeIR_user::HostRemoteTypeIR_user():
         {
             continue;
         }
-        QImage* previewImage = new QImage(preview_global.absFilePath());
+        QImage* previewImage = new QImage(preview_global.absoluteFilePath());
         addImageSelection(remote.fileName(), previewImage);
         count++;
     }
     QFileInfo preview_global(previewpath);
-    QImage* previewImage = new QImage(preview_global.absFilePath());
+    QImage* previewImage = new QImage(preview_global.absoluteFilePath());
     if ( count == 0 )
         addImageSelection("none found", previewImage);
 
@@ -253,8 +253,8 @@ static HostComboBox *HostHDHRlirc_device()
 
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if ( line.startsWith("hdhomerun device"))
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/installationtype.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/installationtype.cpp
index 80bd5d5..9fa3b1a 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/installationtype.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/installationtype.cpp
@@ -1,8 +1,7 @@
 #include <mythcontext.h>
 #include <unistd.h>
 #include "installationtype.h"
-//Added by qt3to4:
-#include <Q3TextStream>
+#include <QTextStream>
 
 #include <qdir.h>
 #include "mv_common.h"
@@ -94,11 +93,11 @@ static HostSpinBox *HOSTSWAPsize()
     QFile file("/proc/meminfo");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
+        QTextStream t( &file );        // use a text stream
         line = t.readLine();
         if ( line.startsWith("MemTotal:"))
         {
-            currentitem = line.simplifyWhiteSpace();
+            currentitem = line.trimmed();
             currentitem = currentitem.section( " ", 1, 1 );
         }
     }
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/installdialog.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/installdialog.cpp
index 4c7099d..899f62d 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/installdialog.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/installdialog.cpp
@@ -1,12 +1,11 @@
 #include <qapplication.h>
-//Added by qt3to4:
-#include <Q3TextStream>
+#include <QTextStream>
 #include <unistd.h>
 #include <fstream>
 
 #include "mythcontext.h"
 //#include "tv.h"
-#include "uitypes.h"
+//#include "uitypes.h"
 #include "installdialog.h"
 #include "installsettings.h"
 #include "installationtype.h"
@@ -100,7 +99,7 @@ bool WelcomeDialog::Create(void)
 void WelcomeDialog::shutdownNow(int rc)
 {
     QString NETBOOT = getenv("NETBOOT");
-    NETBOOT=NETBOOT.stripWhiteSpace();
+    NETBOOT=NETBOOT.trimmed();
 //     system("rm -f /tmp/.install_state");
 //     system("rm -f /tmp/.install_percent");
 //     system("rm -f /tmp/.install_error");
@@ -118,7 +117,8 @@ void WelcomeDialog::runLIVECD(void)
         QString PAINTER = gCoreContext->GetSetting("ThemePainter");
         QString SERVERIP = gCoreContext->GetSetting("HostMysqlServer");
         QString startFECmd = ("MYTHCONFDIR=/tmp mythfrontend -O ThemePainter=" + PAINTER + " -O AudioOutputDevice=ALSA:default -O MasterServerIP=" + SERVERIP  );
-        myth_system(startFECmd.ascii());
+//        myth_system(startFECmd.ascii());
+        myth_system(startFECmd);
     }
     else
     {
@@ -156,8 +156,10 @@ bool WelcomeDialog::keyPressEvent(QKeyEvent *event)
             QString cmd = gCoreContext->GetSetting("MythShutdownXTermCmd", "");
             if (!cmd.isEmpty())
             {
-                QByteArray tmp = cmd.toAscii();
-                system(tmp);
+//                QByteArray tmp = cmd.toAscii();
+//                QByteArray tmp = cmd;
+//                system(tmp);
+                system(qPrintable(cmd));
             }
         }
         else
@@ -203,7 +205,7 @@ void WelcomeDialog::updateTime(void)
     QFile file(releasefile);
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
+        QTextStream t( &file );        // use a text stream
         distro_line = t.readLine();
         file.close();
     }
@@ -227,7 +229,7 @@ void WelcomeDialog::updateScreen(void)
     QString cmdtxt;
     cmdtxt=MV_ROOT  ;
     cmdtxt.append("bin/install_proxy.sh " );
-    system(cmdtxt);
+    system(qPrintable(cmdtxt));
     recording_text=" ";
     mythvantage_text=" ";
     error_text=" ";
@@ -238,21 +240,21 @@ void WelcomeDialog::updateScreen(void)
     QFile mylog("/tmp/mythvantage_install.log");
     if ( mystatus.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &mystatus );        // use a text stream
+        QTextStream t( &mystatus );        // use a text stream
         scheduled_text = t.readLine();
         mystatus.close();
     }
 
     if ( mypercent.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &mypercent );        // use a text stream
+        QTextStream t( &mypercent );        // use a text stream
         recording_text = t.readLine();
         mypercent.close();
     }
 
     if ( myerror.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &myerror );        // use a text stream
+        QTextStream t( &myerror );        // use a text stream
         error_text = t.readLine();
         myerror.close();
         scheduled_text = error_text;
@@ -264,7 +266,7 @@ void WelcomeDialog::updateScreen(void)
     {
         if ( mylog.open( QIODevice::ReadOnly| QIODevice::Text ) )
         {
-            Q3TextStream t( &mylog );
+            QTextStream t( &mylog );
             while ( !t.atEnd() )
             {
                 mythvantage_text=t.readLine();
@@ -282,7 +284,8 @@ void WelcomeDialog::updateScreen(void)
         install_text = "";
 
     m_status_text->SetText(install_text );
-    m_updateScreenTimer->start(UPDATE_SCREEN_INTERVAL, true);
+//    m_updateScreenTimer->start(UPDATE_SCREEN_INTERVAL, true);
+    m_updateScreenTimer->start(UPDATE_SCREEN_INTERVAL);
     if ( scheduled_text == "Done" )
     {
         Reboot_popup () ;
@@ -530,7 +533,8 @@ QString WelcomeDialog::findinstallsouce(void)
         {
             int ndx = line.find(" ");
             currentitem =QString::fromStdString(line.substr(0,ndx));
-            ndx = currentitem.findRev("/");
+//            ndx = currentitem.findRev("/");
+            ndx = currentitem.lastIndexOf("/");
             currentitem = currentitem.mid(ndx+1,3);
             return currentitem;
         };
@@ -555,7 +559,7 @@ void WelcomeDialog::showPopup_2(void)
     bool installsource = false;
 
     QString NETBOOT = getenv("NETBOOT");
-    NETBOOT=NETBOOT.stripWhiteSpace();
+    NETBOOT=NETBOOT.trimmed();
     if ( NETBOOT   == "YES" )
         m_menuPopup->AddButton(("Diskless Frontend " ), SLOT(install_net() ) );
 
@@ -611,9 +615,8 @@ void WelcomeDialog::showPopup_2(void)
 void WelcomeDialog::GO_popup(QString go_text)
 {
     DialogCode  retval = MythPopupBox::Show2ButtonPopup(GetMythMainWindow(),
-                         QString("Start the process"),
-                         QObject::tr(go_text),
-                         QObject::tr("Start the process"), QObject::tr("Cancel"), kDialogCodeButton0);
+                         "", go_text, tr("Start the process"),
+                         tr("Cancel"), kDialogCodeButton0);
 
     if ( retval  == kDialogCodeButton0  )
     {
@@ -783,7 +786,7 @@ void WelcomeDialog::write_install_conf(QString rootdisk)
     sqlsize=sqlsize + "000";
 
     QFile f( "/etc/install_layout" );
-    if( !f.open( IO_WriteOnly  ) )
+    if( !f.open( QIODevice::WriteOnly | QIODevice::Text ) )
         std::cout << "Failed to open file /etc/install_layout." << std::endl;
     QTextStream myfile( &f );
 
@@ -859,7 +862,7 @@ void WelcomeDialog::install_generic(void)
             QString cmdtxt;
             cmdtxt=MV_ROOT  ;
             cmdtxt.append("bin/install_proxy.sh find_update " +  install_drive +" &");
-            system(cmdtxt);
+            system(qPrintable(cmdtxt));
             busy_find_oldsettings();
             bool flag = false;
             QString line;
@@ -867,8 +870,8 @@ void WelcomeDialog::install_generic(void)
             QFile file("/etc/systemconfig");
             if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
             {
-                Q3TextStream t( &file );        // use a text stream
-                while ( !t.eof() )
+                QTextStream t( &file );        // use a text stream
+                while ( !t.atEnd() )
                 {
                     line = t.readLine();
                     if ( line.startsWith("hostname"))
@@ -888,8 +891,8 @@ void WelcomeDialog::install_generic(void)
                 QFile file("/tmp/etc/LinHES-release");
                 if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
                 {
-                    Q3TextStream t( &file );        // use a text stream
-                    while ( !t.eof() )
+                    QTextStream t( &file );        // use a text stream
+                    while ( !t.atEnd() )
                     {
                         line = t.readLine();
                         if ( line.contains("8.") )
@@ -992,14 +995,14 @@ int  WelcomeDialog::ask_validate_network(void)
             QString cmdtxt;
             cmdtxt=MV_ROOT  ;
             cmdtxt.append("bin/install_proxy.sh network_check_it setup_network &");
-            retval =  system(cmdtxt);
+            retval =  system(qPrintable(cmdtxt));
             busy_network();
             if (network_check)
             {
                 network_check->setProgress(2);
                 cmdtxt=MV_ROOT  ;
                 cmdtxt.append("bin/install_proxy.sh network_check_it check_self");
-                retval =  system(cmdtxt);
+                retval =  system(qPrintable(cmdtxt));
                 if ( retval != 0 )
                 {
                     network_check->Close();
@@ -1012,7 +1015,7 @@ int  WelcomeDialog::ask_validate_network(void)
                 network_check->setProgress(3);
                 cmdtxt=MV_ROOT  ;
                 cmdtxt.append("bin/install_proxy.sh network_check_it check_gw");
-                retval =  system(cmdtxt);
+                retval =  system(qPrintable(cmdtxt));
                 if ( retval != 0 )
                 {
                     network_check->Close();
@@ -1025,7 +1028,7 @@ int  WelcomeDialog::ask_validate_network(void)
                 network_check->setProgress(4);
                 cmdtxt=MV_ROOT  ;
                 cmdtxt.append("bin/install_proxy.sh network_check_it check_ns");
-                retval =  system(cmdtxt);
+                retval =  system(qPrintable(cmdtxt));
                 if ( retval != 0 )
                 {
                     network_check->Close();
@@ -1038,7 +1041,7 @@ int  WelcomeDialog::ask_validate_network(void)
                 network_check->setProgress(5);
                 cmdtxt=MV_ROOT  ;
                 cmdtxt.append("bin/install_proxy.sh network_check_it check_names");
-                retval =  system(cmdtxt);
+                retval =  system(qPrintable(cmdtxt));
                 if ( retval != 0 )
                 {
                     network_check->Close();
@@ -1051,7 +1054,7 @@ int  WelcomeDialog::ask_validate_network(void)
                 network_check->setProgress(6);
                 cmdtxt=MV_ROOT  ;
                 cmdtxt.append("bin/install_proxy.sh network_check_it host_names");
-                retval =  system(cmdtxt);
+                retval =  system(qPrintable(cmdtxt));
                 if ( retval != 0 )
                 {
                     network_check->Close();
@@ -1068,7 +1071,12 @@ int  WelcomeDialog::ask_validate_network(void)
 
             if (retval != 0 )
             {
-                DialogCode  val = MythPopupBox::Show2ButtonPopup(GetMythMainWindow(),  QString(""),  QObject::tr(pop_text),                              QObject::tr("Continue"), QObject::tr("Try again"), kDialogCodeButton0);
+                DialogCode val = MythPopupBox::Show2ButtonPopup(
+                                                    GetMythMainWindow(),
+                                                    "", pop_text,
+                                                    tr("Continue"),
+                                                    tr("Try again"),
+                                                    kDialogCodeButton0);
                 if (kDialogCodeButton0 == val )
                     retval = 0;
             }
@@ -1118,11 +1126,11 @@ void WelcomeDialog::install_it(void)
         QFile file("/proc/meminfo");
         if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
         {
-            Q3TextStream t( &file );        // use a text stream
+            QTextStream t( &file );        // use a text stream
             line = t.readLine();
             if ( line.startsWith("MemTotal:"))
             {
-                currentitem = line.simplifyWhiteSpace();
+                currentitem = line.simplified();
                 currentitem = currentitem.section( " ", 1, 1 );
             }
         }
@@ -1141,14 +1149,14 @@ void WelcomeDialog::install_it(void)
         QString cmdtxt=MV_ROOT  ;
         //cmdtxt.append("bin/install_proxy.sh full_install_it " + install_drive + " " + rootfs + " " + rootsize + " " +  datafs + " " + datasize + " " + swapsize + "&");
         cmdtxt.append("bin/install_proxy.sh full_install_it &");
-        system(cmdtxt);
+        system(qPrintable(cmdtxt));
     }
     else if  ( installtype == "Upgrade" )
     {
         QString cmdtxt=MV_ROOT  ;
         //cmdtxt.append("bin/install_proxy.sh upgrade_it " + install_drive + " " + uprootfs +  "&");
         cmdtxt.append("bin/install_proxy.sh upgrade_it &");
-        system(cmdtxt);
+        system(qPrintable(cmdtxt));
     }
     else if (installtype=="NET")
     {
@@ -1165,11 +1173,11 @@ void WelcomeDialog::install_it(void)
         QString h;
         h=localhostname;
         cmdtxt.append("bin/restore_default_settings.sh -c save -t syssettings  -d  127.0.0.1  -h " + h);
-        system(cmdtxt);
+        system(qPrintable(cmdtxt));
         cmdtxt=MV_ROOT  ;
         //cmdtxt.append("bin/install_proxy.sh NETBOOT  " + install_drive +  "  &");
         cmdtxt.append("bin/install_proxy.sh NETBOOT &");
-        system(cmdtxt);
+        system(qPrintable(cmdtxt));
     }
 
     WORKING_ON_INSTALL = true;
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/installsettings.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/installsettings.cpp
index 37dc7c9..04307ee 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/installsettings.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/installsettings.cpp
@@ -4,8 +4,7 @@
 #include <QtNetwork>
 
 
-//Added by qt3to4:
-#include <Q3TextStream>
+#include <QTextStream>
 //#include "tv.h"
 #include <stdlib.h>
 #include "mythprogressdialog.h"
@@ -21,7 +20,7 @@
 
 
 
-int timezone_unknown = FALSE;
+int timezone_unknown = false;
 extern  HostParms hostparm;
 //extern DDCinfo ddcinfo;
 
@@ -141,13 +140,13 @@ QString findnet()
     QFile file("/tmp/.netinfo");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if ( line.contains("HWaddr"))
             {
-                QString s = line.simplifyWhiteSpace();
+                QString s = line.simplified();
                 s = s.section( " ", 0, 0 );   // s == "surname"
                 netdev+=s;
                 netdev+=" ";
@@ -168,13 +167,13 @@ QString findnet_wireless()
     QFile file("/tmp/.netinfo_wireless");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if ( line.contains("Nickname") || line.contains("ESSID"))
             {
-                QString s = line.simplifyWhiteSpace();
+                QString s = line.simplified();
                 s = s.section( " ", 0, 0 );   // s == "surname"
                 netdev+=s;
                 netdev+=" ";
@@ -222,7 +221,7 @@ static HostComboBox *HostNetDevice()
     return gc;
 };
 
-
+/*
 static HostCheckBox *HostActiveonboot()
 {
     HostCheckBox *gc = new HostCheckBox("HostActiveonboot");
@@ -232,7 +231,6 @@ static HostCheckBox *HostActiveonboot()
     return gc;
 };
 
-/*
 static HostCheckBox *HostServiceSamba()
 {
     HostCheckBox *gc = new HostCheckBox("HostServiceSamba");
@@ -292,8 +290,8 @@ static HostComboBox *HostServiceSamba_domain()
     QFile file("/tmp/smbdomainlist");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if ( line.startsWith("domain"))
@@ -307,7 +305,7 @@ static HostComboBox *HostServiceSamba_domain()
     }
     gc->addSelection("type_workgroup_here");
     return gc;
-};*/
+};
 
 static HostCheckBox *HostLircWait()
 {
@@ -317,7 +315,7 @@ static HostCheckBox *HostLircWait()
     gc->setHelpText(QObject::tr("System will wait for lirc before starting the UI "));
     return gc;
 };
-
+*/
 static HostCheckBox *HostBEWait()
 {
     HostCheckBox *gc = new HostCheckBox("HostBEWait");
@@ -376,33 +374,32 @@ static HostCheckBox *HostServiceMythWEB()
     return gc;
 };
 
-// static HostCheckBox *HostServiceHobbitclient()
-// {
-//     HostCheckBox *gc = new HostCheckBox("HostServiceHobbitclient");
-//     gc->setLabel(QObject::tr("Hobbit-client"));
-//     gc->setValue(false);
-//     gc->setHelpText(QObject::tr("Report stats and other stuff to the master backend"));
-//     return gc;
-// };
-//
-// static GlobalCheckBox *GlobalServiceHobbitserver()
-// {
-//     GlobalCheckBox *gc = new GlobalCheckBox("GlobalServiceHobbitserver");
-//     gc->setLabel(QObject::tr("Hobbit-server"));
-//     gc->setValue(true);
-//     gc->setHelpText(QObject::tr("Run the hobbit server to collect stats and other stuff"));
-//     return gc;
-// };
+static HostCheckBox *HostServiceHobbitclient()
+{
+    HostCheckBox *gc = new HostCheckBox("HostServiceHobbitclient");
+    gc->setLabel(QObject::tr("Hobbit-client"));
+    gc->setValue(false);
+    gc->setHelpText(QObject::tr("Report stats and other stuff to the master backend"));
+    return gc;
+};
 
+static GlobalCheckBox *GlobalServiceHobbitserver()
+{
+    GlobalCheckBox *gc = new GlobalCheckBox("GlobalServiceHobbitserver");
+    gc->setLabel(QObject::tr("Hobbit-server"));
+    gc->setValue(true);
+    gc->setHelpText(QObject::tr("Run the hobbit server to collect stats and other stuff"));
+    return gc;
+};
 
-// static HostCheckBox *HostServiceRRD()
-// {
-//     HostCheckBox *gc = new HostCheckBox("HostServiceRRD");
-//     gc->setLabel(QObject::tr("rrd_stats"));
-//     gc->setValue(false);
-//     gc->setHelpText(QObject::tr("Collect stats and create graphs of various system resources."));
-//     return gc;
-// };
+static HostCheckBox *HostServiceRRD()
+{
+    HostCheckBox *gc = new HostCheckBox("HostServiceRRD");
+    gc->setLabel(QObject::tr("rrd_stats"));
+    gc->setValue(false);
+    gc->setHelpText(QObject::tr("Collect stats and create graphs of various system resources."));
+    return gc;
+};
 
 static HostCheckBox *HostUseDHCP()
 {
@@ -462,8 +459,8 @@ static HostComboBox *HostMysqlserverip_listbox()
     QFile file("/tmp/mysqllist");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if ( line.startsWith("   address"))
@@ -484,7 +481,7 @@ static HostComboBox *HostMysqlserverip_listbox()
     gc->setHelpText(QObject::tr("The IP address of the MasterBackend MySQL server."));
 
     QString NETBOOT = getenv("NETBOOT");
-    NETBOOT=NETBOOT.stripWhiteSpace();
+    NETBOOT=NETBOOT.trimmed();
     if ( NETBOOT   != "YES" )
     {
         if ( ((gCoreContext->GetSetting("HostaccesshostypeSystemtype")) == "0" ))
@@ -676,8 +673,8 @@ static HostComboBox *HostGScreensaverTheme()
     QFile file(dirtxt);
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             gc->addSelection(line);
@@ -700,8 +697,8 @@ static HostComboBox *HostXScreensaverTheme()
     QFile file(dirtxt);
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             gc->addSelection(line);
@@ -1177,7 +1174,7 @@ static HostComboBox *Hostfoldingusername()
             if ((new_line = strchr (username, '\n')))
                 new_line[0] = 0;
 
-            cout << "found old username " << username << endl;
+            std::cout << "found old username " << username << endl;
             //FIXME??
             //gCoreContext->SetSetting("Hostfoldingusername", username);
             gCoreContext->SaveSetting("Hostfoldingusername", username);
@@ -2375,20 +2372,20 @@ QString NetworkOptionsFrame::find_hostname()
     cmdtxt.append("bin/systemconfig.py -m dhcp_request -d " );
     cmdtxt.append(hostparm.ThisHostDefaultInterface);
     myth_system(cmdtxt);
-    system(cmdtxt);
+    system(qPrintable(cmdtxt));
     QString line;
     QFile file("/tmp/mvnetwork.dhcpinfo");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if ( line.contains("new_host_name"))
             {
-                QString s = line.simplifyWhiteSpace();
+                QString s = line.simplified();
                 s = s.section( "=", 1, 1 );   // s == "surname"
-                new_host = s.simplifyWhiteSpace();
+                new_host = s.simplified();
             }
         }
         file.close();
@@ -2420,14 +2417,14 @@ static HostCheckBox *HostAutodown()
     return gc;
 };
 
-static HostSpinBox *HostWakeupTime()
-{
-    HostSpinBox *gc = new HostSpinBox("HostWakeupTime", -1, 23, 1, true);
-    gc->setLabel(QObject::tr("Power on  time"));
-    gc->setValue(6);
-    gc->setHelpText(QObject::tr("Select the hour to auto poweron this system. Use -1 to disable"  ));
-    return gc;
-}
+//static HostSpinBox *HostWakeupTime()
+//{
+//    HostSpinBox *gc = new HostSpinBox("HostWakeupTime", -1, 23, 1, true);
+//    gc->setLabel(QObject::tr("Power on  time"));
+//    gc->setValue(6);
+//    gc->setHelpText(QObject::tr("Select the hour to auto poweron this system. Use -1 to disable"  ));
+//    return gc;
+//}
 
 static HostSpinBox *HostShutdownTime()
 {
@@ -2449,23 +2446,23 @@ static HostSpinBox *HostShutdownTime2()
 
 
 
-static HostCheckBox *HostUseWOL()
-{
-    HostCheckBox *gc = new HostCheckBox("HostUseWOL");
-    gc->setLabel(QObject::tr("Use Wake on Lan to turn on system"));
-    gc->setValue(true);
-    gc->setHelpText(QObject::tr("Unless you know what your doing leave it checked"));
-    return gc;
-};
+//static HostCheckBox *HostUseWOL()
+//{
+//    HostCheckBox *gc = new HostCheckBox("HostUseWOL");
+//    gc->setLabel(QObject::tr("Use Wake on Lan to turn on system"));
+//    gc->setValue(true);
+//    gc->setHelpText(QObject::tr("Unless you know what your doing leave it checked"));
+//    return gc;
+//};
 
-static HostCheckBox *HostUseNVRAM()
-{
-    HostCheckBox *gc = new HostCheckBox("HostUseNVRAM");
-    gc->setLabel(QObject::tr("Use nvram to turn on system"));
-    gc->setValue(true);
-    gc->setHelpText(QObject::tr("Leaved checked unless nvram causes problems."));
-    return gc;
-};
+//static HostCheckBox *HostUseNVRAM()
+//{
+//    HostCheckBox *gc = new HostCheckBox("HostUseNVRAM");
+//    gc->setLabel(QObject::tr("Use nvram to turn on system"));
+//    gc->setValue(true);
+//    gc->setHelpText(QObject::tr("Leaved checked unless nvram causes problems."));
+//    return gc;
+//};
 
 
 static HostCheckBox *HostUseXLargeMouse()
@@ -2845,7 +2842,7 @@ void  SoundOSSsettings::loadossdriver()
     cmdtxt="sudo ";
     cmdtxt.append(MV_ROOT) ;
     cmdtxt.append("bin/soundconfig.sh -t LOAD  -i OSS &");
-    system(cmdtxt);
+    system(qPrintable(cmdtxt));
     int return_code = 0;
 
     QString msgtext = "Loading OSS driver" ;
@@ -2906,7 +2903,7 @@ void  SoundALSAsettings::loadalsadriver()
     cmdtxt="sudo ";
     cmdtxt.append(MV_ROOT) ;
     cmdtxt.append("bin/soundconfig.sh -t LOAD  -i ALSA &");
-    system(cmdtxt);
+    system(qPrintable(cmdtxt));
     int return_code = 0;
 
     QString msgtext = "Loading ALSA driver" ;
@@ -2975,8 +2972,8 @@ void  SoundOSSsettings::fillossselection()
 
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if (line.contains("device index") )
@@ -2984,7 +2981,7 @@ void  SoundOSSsettings::fillossselection()
                 legacy_device = t.readLine();
                 legacy_device= legacy_device.section( "/",2,2);
                 currentitemtext=line.section( "/" , 0 ,0 );
-                simpleitem = currentitemtext.simplifyWhiteSpace();
+                simpleitem = currentitemtext.simplified();
                 simpleitem = simpleitem.remove ( "(" );
                 simpleitem = simpleitem.remove ( ")" );
                 simpleitem.append(" (");
@@ -3019,8 +3016,8 @@ void  SoundALSAsettings::fillALSAselection()
 
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if (line.contains("no soundcards found..."))
@@ -3057,8 +3054,8 @@ void  SoundALSAsettings::fillALSAselection()
     QFile file1(currentfile);
     if ( file1.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file1 );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file1 );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if (line.startsWith("iec958:") )
@@ -3100,7 +3097,7 @@ void SoundOSSsettings::soundossgathersettings(void)
     QString cmdtxt;
     cmdtxt=MV_ROOT  ;
     cmdtxt.append("bin/soundconfig.sh -t test -i OSS -d " + hostparm.ThisHostSoundDevice + "&");
-    system(cmdtxt);
+    system(qPrintable(cmdtxt));
     int return_code = 0;
     QString msgtext = "Playing Test Audio" ;
 
@@ -3165,7 +3162,7 @@ void SoundALSAsettings::soundalsagathersettings(void)
     QString cmdtxt;
     cmdtxt=MV_ROOT  ;
     cmdtxt.append("bin/soundconfig.sh -t test -i ALSA -d " + hostparm.ThisHostSoundDevice + "&");
-    system(cmdtxt);
+    system(qPrintable(cmdtxt));
     int return_code = 0;
     QString msgtext = "Playing Test Audio" ;
     MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack");
@@ -3365,7 +3362,7 @@ void pre_writesettings ()
 //I don't think this is needed anymore
     tz=gCoreContext->GetSetting("HostTimeZone");
     if ( tz.isEmpty() || (tz == "Unknown"))
-        timezone_unknown = TRUE;
+        timezone_unknown = true;
 //-----------
 
     tregion=gCoreContext->GetSetting("HostTimeZoneRegion");
@@ -3953,7 +3950,7 @@ void writesettings ()
     QString divider;
 
     QFile f( "/etc/systemconfig" );
-    if( !f.open( IO_WriteOnly  ) )
+    if( !f.open( QIODevice::WriteOnly | QIODevice::Text ) )
         std::cout << "Failed to open file /etc/systemconfig." << std::endl;
     QTextStream myfile( &f );
 
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp
index 95a0bd0..8f5926f 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/main.cpp
@@ -1,7 +1,4 @@
 //#include <qapplication.h>
-//Added by qt3to4:
-#include <Q3TextStream>
-
 
 #include "installdialog.h"
 #include "installsettings.h"
@@ -16,7 +13,7 @@
 #include <QApplication>
 #include <QFileInfo>
 #include <QDir>
-
+#include <QTextStream>
 
 
 #include <cstdlib>
@@ -151,7 +148,8 @@ int main(int argc, char **argv)
       bShowSettings = true;
       LOG(VB_GENERAL, LOG_INFO, QString("mythinstall: Screen stuff"));
       QString tmpArg = (cmdline.toString("screen")) ;
-      QStringList pairs = QStringList::split(",", tmpArg);
+//      QStringList pairs = QStringList::split(",", tmpArg);
+      QStringList pairs = tmpArg.split(",");
         for (int index = 0; index < pairs.size(); ++index)
         {
             if ( pairs[index]  == "network" )
@@ -401,10 +399,9 @@ int main(int argc, char **argv)
         int status = system("diff /tmp/systemconfig.bak /etc/systemconfig");
         bool restart = false;
         //save my settings in case db switches
-        QString cmdtxt;
-        cmdtxt=MV_ROOT  ;
-        cmdtxt.append("bin/myth_settings_wrapper.sh -c save -t syssettings  -d "  + olddb);
-        system(cmdtxt);
+        QString cmdtxt=MV_ROOT;
+        cmdtxt.append("bin/myth_settings_wrapper.sh -c save -t syssettings  -d " + olddb);
+        system(qPrintable(cmdtxt));
 
         if ( status != 0 )
         {
@@ -417,9 +414,9 @@ int main(int argc, char **argv)
             restart = true;
             //db changed save setting from olddb
             QString cmdtxt;
-            cmdtxt=MV_ROOT  ;
+            cmdtxt=MV_ROOT;
             cmdtxt.append("bin/myth_settings_wrapper.sh -c save  -t  syssettings  -d " + olddb ) ;
-            system(cmdtxt);
+            system(qPrintable(cmdtxt));
         }
 
         if ( runconfig )
@@ -460,7 +457,7 @@ int main(int argc, char **argv)
             QString cmdtxt;
             cmdtxt=MV_ROOT  ;
             cmdtxt.append("bin/systemconfig.sh  reloadfe" );
-            system(cmdtxt);
+            system(qPrintable(cmdtxt));
         }
         gCoreContext->ActivateSettingsCache(false);
         gCoreContext->ClearSettingsCache();
@@ -596,8 +593,8 @@ int main(int argc, char **argv)
         QFile file("/usr/MythVantage/README");
         if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
         {
-            Q3TextStream t( &file );        // use a text stream
-            while ( !t.eof() )
+            QTextStream t( &file );        // use a text stream
+            while ( !t.atEnd() )
             {
                 line = t.readLine();
                 problems->append(line);
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/misc_settings.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/misc_settings.cpp
index 2914630..77e9152 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/misc_settings.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/misc_settings.cpp
@@ -1,8 +1,7 @@
 #include <unistd.h>
 #include "misc_settings.h"
 #include "mv_common.h"
-//Added by qt3to4:
-#include <Q3TextStream>
+//#include <QTextStream>
 #include "mythuihelper.h"
 #include "mythsystemlegacy.h"
 
@@ -121,7 +120,7 @@ QString MiscMainFrame::mf_show_tz(QString tz)
 {
     QString GTimezone;
     int rc;
-    bool showLabels;
+    //bool showLabels;
     if (autoLaunchTimer->isActive())
     {
         autoLaunchTimer->stop();
@@ -153,19 +152,19 @@ QString MiscMainFrame::mf_show_tz(QString tz)
         QFile file("/tmp/.selected_tz");
         if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
         {
-            Q3TextStream t( &file );        // use a text stream
-            while ( !t.eof() )
+            QTextStream t( &file );        // use a text stream
+            while ( !t.atEnd() )
             {
                 line = t.readLine();
                 if ( line.contains("/"))
                 {
-                    GTimezone = line.simplifyWhiteSpace();
+                    GTimezone = line.simplified();
                     break;
                 }
             }
             file.close();
         }
-        timezone_unknown = FALSE;
+        timezone_unknown = false;
         emit update_timezone(GTimezone);
     }
 
@@ -224,11 +223,14 @@ QStringList findFilesRecursively ( QStringList paths, QString fileTypes ) {
     {   // inefficient...whatever
         QDir dir( paths[i] );
         dir.setSorting( QDir::Reversed );
-        more = dir.entryList( fileTypes, QDir::Files );
+        dir.setFilter( QDir::Files );
+        dir.setNameFilters( QStringList()<<fileTypes );
+        more = dir.entryList();
         for ( it = more.begin() ; it != more.end() ; ++it )
             result.append( paths[i] + "/" + *it );
+        dir.setFilter( QDir::Dirs | QDir::NoDotAndDotDot );
         // reg exp in next line excludes . and .. dirs (and .* actually)
-        more = dir.entryList( QDir::Dirs ).grep( QRegExp( "[^.]" ) );
+        more = dir.entryList();
         for ( it = more.begin() ; it != more.end() ; ++it )
             *it = paths[i] + "/" + *it;
         more = findFilesRecursively( more, fileTypes );
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/mythinstall.pro b/abs/core/mythinstall/MythVantage-app/mythinstall/mythinstall.pro
index 225d755..f428e34 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/mythinstall.pro
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/mythinstall.pro
@@ -3,8 +3,8 @@
 
 
 PREFIX = /usr/include/mythtv
-LIBVERSION = 0.27
-VERSION = 0.27.0
+LIBVERSION = 0.28
+VERSION = 0.28.0
 
 
 
@@ -51,5 +51,6 @@ SOURCES += main.cpp commandlineparser.cpp installdialog.cpp installsettings.cpp
 
 
 #The following line was inserted by qt3to4
-QT +=  qt3support sql xml network
+#QT +=  qt3support sql xml network
+QT += sql xml network widgets
 
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.cpp
index ed7d369..11e2974 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.cpp
@@ -1,14 +1,14 @@
 #include <unistd.h>
 #include "password_manage.h"
-//Added by qt3to4:
-#include <Q3TextStream>
 
+#include <QTextStream>
 #include <qapplication.h>
 #include "mythmiscutil.h"
 #include "mythsystemlegacy.h"
 
 #include <qdir.h>
 #include <iostream>
+using namespace std;
 
 /****************************************************************************/
 typedef enum {
@@ -17,7 +17,7 @@ typedef enum {
     UseraddPopup_DELETE
 }
 UseraddPopupResult;
-bool passtoggle = TRUE;
+bool passtoggle = true;
 QString invalid_chars = "&<>/~`;:!";
 
 class AddUserPopup
@@ -30,7 +30,7 @@ public:
 UseraddPopupResult AddUserPopup::showPopup(MythMainWindow *parent,
         QString title, QString message, QString& text)
 {
-    MythPopupBox *popup = new MythPopupBox(parent, title);
+    MythPopupBox *popup = new MythPopupBox(parent, title.toLatin1().constData());
     popup->addLabel(message);
 
     MythLineEdit *textEdit = new MythLineEdit(popup, "chooseEdit");
@@ -63,8 +63,8 @@ void UserManagement::user_fillselection()
     QFile file("/etc/passwd");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             user = line.section(":",0,0);
@@ -78,7 +78,7 @@ void UserManagement::user_fillselection()
 
 }
 
-bool UserManagement::user_exisit_check(QString name)
+bool UserManagement::user_exist_check(QString name)
 {
     QString line;
     QString user;
@@ -89,8 +89,8 @@ bool UserManagement::user_exisit_check(QString name)
     QFile file("/etc/passwd");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             user = line.section(":",0,0);
@@ -118,13 +118,13 @@ bool UserManagement::user_valid_check(QString check_string)
     upperlimit = invalid_chars.length() -1 ;
     for(i= 0; i <= upperlimit; i++)
     {
-        found_char = FALSE;
+        found_char = false;
         current_char = invalid_chars.at(i);
-        found_char = check_string.contains(current_char,FALSE);
+        found_char = check_string.contains(current_char, Qt::CaseInsensitive);
         if (  found_char   )
-            return FALSE;
+            return false;
     }
-    return TRUE ;
+    return true ;
 
 }
 
@@ -142,7 +142,7 @@ UserManagement::UserManagement():
     userpass1= new TransLineEditSetting(true);
     userpass1->setLabel("Password");
     userpass1->SetPasswordEcho(passtoggle);
-    userpass1->setHelpText(QObject::tr("The following characters will not be accepted: " + invalid_chars));
+    userpass1->setHelpText("The following characters will not be accepted: " + invalid_chars);
 
 
     passToggleButton = new TransButtonSetting;
@@ -157,7 +157,7 @@ UserManagement::UserManagement():
 
     usercreateButton = new TransButtonSetting;
     usercreateButton->setLabel("Create New User Account");
-    usercreateButton->setHelpText(QObject::tr("The following characters will not be accepted: " + invalid_chars));
+    usercreateButton->setHelpText("The following characters will not be accepted: " + invalid_chars);
 
     userdeleteButton = new TransButtonSetting;
     userdeleteButton->setLabel("Delete User Account");
@@ -240,8 +240,8 @@ void UserManagement::usercreatepopup()
                                     tr("Enter New User Name"), name);
     if (result == UseraddPopup_CANCEL)
         return;
-    //check if name exisit || add it
-    if ( user_exisit_check(name) )
+    //check if name exist || add it
+    if ( user_exist_check(name) )
     {
         info->setValue("User name " + name + " already exists. Cannot create user.");
         userlist->setFocus();
@@ -327,12 +327,12 @@ WebPassword::WebPassword():
     webAuth->setValue(false);
     webuser = new HostLineEdit("Hostwebuser");
     webuser->setLabel("Username");
-    webuser->setHelpText(QObject::tr("The following characters will not be accepted: " + invalid_chars));
+    webuser->setHelpText("The following characters will not be accepted: " + invalid_chars);
 
     webpassword = new HostLineEdit("Hostwebpassword");
     webpassword->setLabel("Password");
     webpassword->SetPasswordEcho(passtoggle);
-    webpassword->setHelpText(QObject::tr("The following characters will not be accepted: " + invalid_chars));
+    webpassword->setHelpText("The following characters will not be accepted: " + invalid_chars);
 
     webpassToggleButton = new TransButtonSetting;
     webpassToggleButton->setLabel("Toggle Password View");
@@ -374,22 +374,20 @@ void WebPassword::togglepass()
 
 bool WebPassword::valid_check(QString check_string)
 {
-    // QString invalid_chars;
     QChar current_char;
     int upperlimit;
     bool found_char;
     int i ;
-    //invalid_chars = "&<>/~`;";
     upperlimit = invalid_chars.length() -1 ;
     for(i= 0; i <= upperlimit; i++)
     {
-        found_char = FALSE;
+        found_char = false;
         current_char = invalid_chars.at(i);
-        found_char = check_string.contains(current_char,FALSE);
+        found_char = check_string.contains(current_char, Qt::CaseInsensitive);
         if (  found_char    )
-            return FALSE;
+            return false;
     }
-    return TRUE ;
+    return true ;
 
 }
 
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.h b/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.h
index 3b4b471..049cbce 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.h
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/password_manage.h
@@ -1,11 +1,12 @@
 #include <settings.h>
 #include "mythdialogs.h"
-#include "libmyth/mythdialogs.h"
+//#include "libmyth/mythdialogs.h"
 #include "libmyth/mythwidgets.h"
 #include "installsettings.h"
+#include <QTextStream>
 
-
-class UserManagement: public VerticalConfigurationGroup {
+class UserManagement: public
+        VerticalConfigurationGroup {
     Q_OBJECT
 public:
     UserManagement();
@@ -19,7 +20,7 @@ public:
     TransCheckBoxSetting *lockaccount;
     HostCheckBox    *rootSSH;
     void user_fillselection(void);
-    bool user_exisit_check(QString);
+    bool user_exist_check(QString);
     bool user_valid_check(QString);
 
 public slots:
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/settemplate.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/settemplate.cpp
index f7f9963..8d9e671 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/settemplate.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/settemplate.cpp
@@ -32,7 +32,7 @@ void restart_frontend ()
     cmdtxt=MV_ROOT  ;
     cmdtxt.append("bin/systemconfig.sh  reloadfe" );
     //cout << "Calling systemconfig.sh reloadfe" << endl;
-    system(cmdtxt);
+    system(qPrintable(cmdtxt));
     //system("/root/systemconfig.sh  reloadfe" );
 }
 
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/supplemental.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/supplemental.cpp
index 26d83ee..4df8234 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/supplemental.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/supplemental.cpp
@@ -1,8 +1,6 @@
 #include <unistd.h>
 #include "misc_settings.h"
 #include "mv_common.h"
-//Added by qt3to4:
-#include <Q3TextStream>
 #include "mythuihelper.h"
 
 #include "supplemental.h"
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/vnc.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/vnc.cpp
index 9f53f18..96cb107 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/vnc.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/vnc.cpp
@@ -1,8 +1,6 @@
 #include <unistd.h>
 #include "misc_settings.h"
 #include "mv_common.h"
-//Added by qt3to4:
-#include <Q3TextStream>
 #include "mythuihelper.h"
 
 #include "vnc.h"
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.cpp b/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.cpp
index 00a375e..d8f35af 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.cpp
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.cpp
@@ -1,9 +1,6 @@
 #include <unistd.h>
 
-
-
-//Added by qt3to4:
-#include <Q3TextStream>
+#include <QTextStream>
 #include "mythcontext.h"
 //#include "tv.h"
 #include <stdlib.h>
@@ -25,8 +22,8 @@ void ReadDDCvalues (void)
     QFile file("/tmp/ddcinfo");
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             if  ( line.contains("Timing ranges:") )
@@ -43,7 +40,7 @@ void ReadDDCvalues (void)
         file.close();
     }
 };
-
+/*
 static HostCheckBox *HostXUseAdvanced()
 {
     HostCheckBox *gc = new HostCheckBox("HostXUseAdvanced");
@@ -64,7 +61,7 @@ static HostComboBox *HostXgeneric_connection()
     gc->setHelpText(QObject::tr("Video-out"));
     return gc;
 }
-
+*/
 
 static HostCheckBox *HostXIgnoreEDID()
 {
@@ -157,8 +154,8 @@ void AdvancedXGeneric_modelines::generic_fillselection(QString modelinefile )
         QFile file(currentfile);
         if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
         {
-            Q3TextStream t( &file );        // use a text stream
-            while ( !t.eof() )
+            QTextStream t( &file );        // use a text stream
+            while ( !t.atEnd() )
             {
                 line = t.readLine();
                 if ( line.startsWith("ModeLine"))
@@ -363,8 +360,8 @@ void AdvancedXNvidia_modelines::Nvidia_fillselection(QString modelinefile )
         QFile file(currentfile);
         if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
         {
-            Q3TextStream t( &file );        // use a text stream
-            while ( !t.eof() )
+            QTextStream t( &file );        // use a text stream
+            while ( !t.atEnd() )
             {
                 line = t.readLine();
                 if ( line.startsWith("ModeLine"))
@@ -512,7 +509,7 @@ AdvancedXcardtype::AdvancedXcardtype():
     addChild(HostXcardtype);
     setTrigger(HostXcardtype);
 
-    AdvancedXGeneric_modelines *ADVANCEDXGENERICMODELINES = new AdvancedXGeneric_modelines;
+    //AdvancedXGeneric_modelines *ADVANCEDXGENERICMODELINES = new AdvancedXGeneric_modelines;
     AdvancedXNvidiaConnections *ADVANCEDXNVIDIACONNECTIONS = new AdvancedXNvidiaConnections;
 
 
diff --git a/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.h b/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.h
index f8985cd..88f202c 100755
--- a/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.h
+++ b/abs/core/mythinstall/MythVantage-app/mythinstall/xorgsettings.h
@@ -4,7 +4,7 @@
 #include "libmyth/mythwidgets.h"
 #include "installsettings.h"
 
-#include <Q3TextStream>
+#include <QTextStream>
 #include <qdir.h>
 
 
@@ -114,8 +114,8 @@ static HostComboBox *HostXres()
     QString line;
     if ( file.open(QIODevice::ReadOnly | QIODevice::Text) )
     {
-        Q3TextStream t( &file );        // use a text stream
-        while ( !t.eof() )
+        QTextStream t( &file );        // use a text stream
+        while ( !t.atEnd() )
         {
             line = t.readLine();
             gc->addSelection(line) ;
@@ -126,5 +126,3 @@ static HostComboBox *HostXres()
     return gc;
 }
 
-
-
diff --git a/abs/core/mythinstall/PKGBUILD b/abs/core/mythinstall/PKGBUILD
index 76c7ca3..10de01a 100644
--- a/abs/core/mythinstall/PKGBUILD
+++ b/abs/core/mythinstall/PKGBUILD
@@ -1,11 +1,11 @@
 # Maintainer: Jams
 pkgname=mythinstall
-pkgver=8.3
-pkgrel=12
+pkgver=8.4
+pkgrel=1
 pkgdesc="LinHES installer/systemconfig GUI."
 arch=('i686' 'x86_64')
-depends=('mythtv>=0.27')
-makedepends=('mythtv>=0.27')
+depends=('mythtv>=0.28')
+makedepends=('mythtv>=0.28')
 logofiles=`ls logo*.png`
 source=('install-ui.xml' $logofiles)
 
@@ -14,7 +14,7 @@ build() {
     rsync -au $startdir/MythVantage-app $srcdir
 
     msg "Building mythinstall"
-    cd $srcdir/MythVantage-app/mythinstall && qmake-qt4
+    cd $srcdir/MythVantage-app/mythinstall && qmake-qt5
     make || exit 1
 }
 
@@ -34,10 +34,11 @@ package() {
 }
 
 md5sums=('39d6b7bd1ee305c5523a3cf66d4c2338'
+         'c4c26977b723a4b5d6435ede73051d1b'
+         '27ce7f89a83864dfc5abe23c61964c0c'
          '3291ad55fe6d7884fc732313f1cc2924'
          '80c0326a253df275afbe875a8ec14a3c'
-         'f7507a6c218c81228d2a3fbcd02565bb'
-         '27ce7f89a83864dfc5abe23c61964c0c'
          '2e85a1b9559557dade6e87daf2abb673'
          '532c5d9f1f8e1aef575ceecb69cc9c96'
-         '91393e9cca0e6168f772fb48c88d3829')
+         '91393e9cca0e6168f772fb48c88d3829'
+         'f7507a6c218c81228d2a3fbcd02565bb')
diff --git a/abs/core/mythinstall/logo-1.png b/abs/core/mythinstall/logo-1.png
old mode 100644
new mode 100755
index a63adab..7a7afeb
Binary files a/abs/core/mythinstall/logo-1.png and b/abs/core/mythinstall/logo-1.png differ
diff --git a/abs/core/mythinstall/logo-2.png b/abs/core/mythinstall/logo-2.png
index 2b6e9b7..81012a3 100644
Binary files a/abs/core/mythinstall/logo-2.png and b/abs/core/mythinstall/logo-2.png differ
diff --git a/abs/core/mythinstall/logo-3.png b/abs/core/mythinstall/logo-3.png
index 800fefc..a63adab 100644
Binary files a/abs/core/mythinstall/logo-3.png and b/abs/core/mythinstall/logo-3.png differ
diff --git a/abs/core/mythinstall/logo-4.png b/abs/core/mythinstall/logo-4.png
index 81012a3..2b6e9b7 100644
Binary files a/abs/core/mythinstall/logo-4.png and b/abs/core/mythinstall/logo-4.png differ
diff --git a/abs/core/mythinstall/logo-9.png b/abs/core/mythinstall/logo-9.png
new file mode 100644
index 0000000..800fefc
Binary files /dev/null and b/abs/core/mythinstall/logo-9.png differ
-- 
cgit v0.12