summaryrefslogtreecommitdiffstats
path: root/kiosktool/desktopComponent.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-02-01 17:25:31 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-02-01 17:25:31 -0600
commit3c66b171a6f0ad667c538fd727bbcef54af71d37 (patch)
treeae80c2d1cb16b92fb7d5a73bbe5ce34fbc5ae016 /kiosktool/desktopComponent.cpp
parent867b7c23aa5ee22368683f23635ded9506587069 (diff)
downloadkiosktool-3c66b171a6f0ad667c538fd727bbcef54af71d37.tar.gz
kiosktool-3c66b171a6f0ad667c538fd727bbcef54af71d37.zip
Fix FTBFS
Diffstat (limited to 'kiosktool/desktopComponent.cpp')
-rw-r--r--kiosktool/desktopComponent.cpp239
1 files changed, 0 insertions, 239 deletions
diff --git a/kiosktool/desktopComponent.cpp b/kiosktool/desktopComponent.cpp
deleted file mode 100644
index 5456687..0000000
--- a/kiosktool/desktopComponent.cpp
+++ /dev/null
@@ -1,239 +0,0 @@
-/*
- * desktopComponent.cpp
- *
- * Copyright (C) 2004 Waldo Bastian <bastian@kde.org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#include "desktopComponent.h"
-
-#include <tqdir.h>
-#include <tqfileinfo.h>
-
-#include <kdebug.h>
-#include <kmimetype.h>
-#include <kprocess.h>
-#include <ksimpleconfig.h>
-#include <kstandarddirs.h>
-#include <ktempfile.h>
-#include <kurl.h>
-
-#include "kioskrun.h"
-
-DesktopComponent::DesktopComponent( TQObject *parent)
- : Component(parent)
-{
-}
-
-DesktopComponent::~DesktopComponent()
-{
-}
-
-void
-DesktopComponent::slotSetupPrepare()
-{
- m_iconPositionsFile = KioskRun::self()->locateLocal("data", "kdesktop/IconPositions");
- ::unlink(TQFile::encodeName(m_iconPositionsFile));
- connect(&m_timer, TQT_SIGNAL(timeout()), this, TQT_SLOT(slotSetupStarted()));
-}
-
-void
-DesktopComponent::slotSetupStarted()
-{
- TQString desktop = KioskRun::self()->desktopPath();
- TQFileInfo info(desktop);
- if (info.exists())
- {
- disconnect(&m_timer, TQT_SIGNAL(timeout()), this, TQT_SLOT(slotSetupStarted()));
- connect(&m_timer, TQT_SIGNAL(timeout()), this, TQT_SLOT(slotSetupReady()));
- m_timer.start(1000, true);
- }
- else
- {
- m_timer.start(500, true);
- }
-}
-
-void filterFileList(const TQString &path, TQStringList *files, TQStringList *oldFiles)
-{
- files->remove(".");
- files->remove("..");
-
- TQStringList::Iterator next;
- for(TQStringList::Iterator it = files->begin();
- it != files->end(); it = next)
- {
- next = it;
- next++;
-
- KURL u;
- u.setPath(path+*it);
-
- KMimeType::Ptr mime = KMimeType::findByURL(u, 0, true);
- if (mime->name() == "application/x-desktop")
- {
- KSimpleConfig cfg(path+*it);
- cfg.setDesktopGroup();
- if (cfg.readBoolEntry("Hidden", false))
- {
- if (oldFiles)
- oldFiles->append(*it);
- files->remove(it);
- continue;
- }
- }
- }
-}
-
-void
-DesktopComponent::slotSetupReady()
-{
- TQString desktop = KioskRun::self()->desktopPath();
-
- TQDir dir(desktop);
- m_origDesktopFiles = dir.entryList(TQDir::All, TQDir::Unsorted);
-
- filterFileList(desktop, &m_origDesktopFiles, 0);
-}
-
-bool
-DesktopComponent::setupFinished()
-{
- bool result = true;
-
- disconnect(&m_timer, TQT_SIGNAL(timeout()), this, TQT_SLOT(slotSetupStarted()));
- disconnect(&m_timer, TQT_SIGNAL(timeout()), this, TQT_SLOT(slotSetupReady()));
- m_timer.stop();
-
- KSimpleConfig newCfg(m_iconPositionsFile, true);
-
- TQString desktop = KioskRun::self()->desktopPath();
-
- TQDir dir(desktop);
- TQStringList newDesktopFiles = dir.entryList(TQDir::All, TQDir::Unsorted);
- filterFileList(desktop, &newDesktopFiles, &m_origDesktopFiles);
-
- KTempFile positionsFile;
- positionsFile.close();
-
- KSimpleConfig positions(positionsFile.name());
-
- TQStringList newGroups = newCfg.groupList();
-
- TQString prefix = "IconPosition::";
-
- // Save icon positions
- for(TQStringList::Iterator it = newGroups.begin();
- it != newGroups.end(); ++it)
- {
- if (!(*it).startsWith(prefix))
- continue;
-
- newCfg.setGroup(*it);
- positions.setGroup(*it);
- if (newCfg.hasKey("X"))
- {
- positions.writeEntry("X", newCfg.readEntry("X"));
- positions.writeEntry("Y", newCfg.readEntry("Y"));
- }
- }
-
- // Remove old icons from new list
- TQStringList::Iterator next;
- for(TQStringList::Iterator it = m_origDesktopFiles.begin();
- it != m_origDesktopFiles.end(); it = next)
- {
- next = it;
- next++;
-
- if (newDesktopFiles.remove(*it))
- {
- m_origDesktopFiles.remove(it);
- continue;
- }
-
- }
-
- TQString installPath = KioskRun::self()->locateSave("data", "kdesktop/Desktop/");
- TQString installPath2 = KioskRun::self()->locateSave("data", "kdesktop/DesktopLinks/");
-
- // Remove all icons that are no longer
- for(TQStringList::Iterator it = m_origDesktopFiles.begin();
- it != m_origDesktopFiles.end(); ++it)
- {
- TQString file;
- if (TQFile::exists(installPath + *it))
- file = installPath + *it;
- else if (TQFile::exists(installPath2 + *it))
- file = installPath2 + *it;
-
- if (!file.isEmpty())
- {
- result = KioskRun::self()->remove(file);
- if (!result) return false;
- positions.deleteGroup(prefix+*it);
- }
- else
- {
- TQString installFile = installPath + *it;
- file = KioskRun::self()->locate("data", "kdesktop/Desktop/" + *it);
- if (file.isEmpty())
- {
- installFile = installPath2 + *it;
- file = KioskRun::self()->locate("data", "kdesktop/DesktopLinks/" + *it);
- }
-
- if (!file.isEmpty())
- {
- // Hide via "Hidden=True", not sure if this works
- KTempFile tmp;
- tmp.close();
- KSimpleConfig cfg(tmp.name());
- cfg.setDesktopGroup();
- cfg.writeEntry("Hidden", true);
- cfg.sync();
- result = KioskRun::self()->install(tmp.name(), installFile);
- if (!result) return false;
- positions.deleteGroup(prefix+*it);
- }
- else
- {
- kdWarning() << "DesktopComponent: Can't remove " << (*it) << endl;
- }
- }
- }
- positions.sync();
- result = KioskRun::self()->install(positionsFile.name(), KioskRun::self()->locateSave("data", "kdesktop/Desktop/.directory"));
- if (!result) return false;
-
- // Add all icons that have been added
- for(TQStringList::Iterator it = newDesktopFiles.begin();
- it != newDesktopFiles.end(); ++it)
- {
- TQString file = KioskRun::self()->desktopPath() + *it;
- if (TQFile::exists(file))
- {
- result = KioskRun::self()->install(file, installPath + *it);
- if (!result) return false;
- }
- else
- {
- kdWarning() << "DesktopComponent: Can't find new file " << file << endl;
- }
- }
- return true;
-}
-
-#include "desktopComponent.moc"