#ifndef __K_GLOBAL_DATA_H__
#define __K_GLOBAL_DATA_H__
#include <iostream>
#include <qstring.h>
#include <Windows.h>
#include <qmutex.h>
class KGlobalData
{
public:
class KAutoDestory
{
public:
KAutoDestory() {}
~KAutoDestory();
};
static KGlobalData* getGlobalDataIntance();
~KGlobalData();
void setMonitorDir(QString dir);
QString getMonitorDir();
void setMonitorDir2(QString dir);
QString getMonitorDir2();
void setFileNotifyChangeHandle(DWORD handle);
DWORD getFileNotifyChangeHandle();
void setWatchSubTree(BOOL val);
BOOL getWatchSubTree();
void setLogText(QString log);
QString getLogText();
void setSearchText(QString text);
QString getSearchText();
void setAttribute(bool val);
bool getAttribute();
void setSize(bool val);
bool getSize();
void setFilterEx(QString str);
QString getFilterEx();
void setFilterIn(QString str);
QString getFilterIn();
void setWatchFlag(bool val);
bool getWatchFlag();
private:
KGlobalData();
KGlobalData(const KGlobalData& other) {}
static KGlobalData* s_globalDataObj;
static KAutoDestory m_autoDestory;
QString m_monitorDir;
QString m_monitorDir2;
DWORD m_configHandle;
QString m_log;
BOOL m_subTree;
bool m_attribute;
bool m_size;
QString m_searchText;
QString m_filterEx;
QString m_filterIn;
bool m_watchFlag;
QMutex m_mutex;
};
#endif // __K_GLOBAL_DATA_H__
#include "kglobaldata.h"
#include <qdebug.h>
KGlobalData* KGlobalData::s_globalDataObj = NULL;
KGlobalData::KAutoDestory KGlobalData::m_autoDestory;
KGlobalData* KGlobalData::getGlobalDataIntance()
{
if (s_globalDataObj == NULL)
s_globalDataObj = new KGlobalData;
return s_globalDataObj;
}
KGlobalData::KGlobalData()
: m_monitorDir("")
, m_monitorDir2("")
, m_configHandle(0)
, m_log("")
, m_subTree(FALSE)
, m_searchText("")
, m_attribute(false)
, m_size(NULL)
, m_filterEx("")
, m_filterIn("")
, m_watchFlag(true)
{
}
KGlobalData::~KGlobalData()
{
}
KGlobalData::KAutoDestory::~KAutoDestory()
{
if (s_globalDataObj != NULL)
{
delete s_globalDataObj;
s_globalDataObj = NULL;
}
}
void KGlobalData::setMonitorDir(QString dir)
{
m_monitorDir = dir;
}
QString KGlobalData::getMonitorDir()
{
return m_monitorDir;
}
void KGlobalData::setMonitorDir2(QString dir)
{
m_monitorDir2 = dir;
}
QString KGlobalData::getMonitorDir2()
{
return m_monitorDir2;
}
void KGlobalData::setFileNotifyChangeHandle(DWORD handle)
{
m_configHandle += handle;
}
DWORD KGlobalData::getFileNotifyChangeHandle()
{
return m_configHandle;
}
void KGlobalData::setWatchSubTree(BOOL val)
{
m_subTree = val;
}
BOOL KGlobalData::getWatchSubTree()
{
return m_subTree;
}
void KGlobalData::setLogText(QString log)
{
m_mutex.lock();
m_log = log;
m_mutex.unlock();
}
QString KGlobalData::getLogText()
{
return m_log;
}
void KGlobalData::setSearchText(QString text)
{
m_searchText = text;
}
QString KGlobalData::getSearchText()
{
return m_searchText;
}
void KGlobalData::setAttribute(bool val)
{
m_attribute = val;
}
bool KGlobalData::getAttribute()
{
return m_attribute;
}
void KGlobalData::setSize(bool val)
{
m_size = val;
}
bool KGlobalData::getSize()
{
return m_size;
}
void KGlobalData::setFilterEx(QString str)
{
m_filterEx = str;
}
QString KGlobalData::getFilterEx()
{
return m_filterEx;
}
void KGlobalData::setFilterIn(QString str)
{
m_filterIn = str;
}
QString KGlobalData::getFilterIn()
{
return m_filterIn;
}
void KGlobalData::setWatchFlag(bool val)
{
m_watchFlag = val;
}
bool KGlobalData::getWatchFlag()
{
return m_watchFlag;
}