亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? qfsfileengine_unix.cpp

?? QT 開發環境里面一個很重要的文件
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
    return is_link;}#if defined (Q_WS_MAC)bool QFSFileEnginePrivate::isMacHidden(const QString &path) const{    OSErr err = noErr;    FSRef fsRef;    err = FSPathMakeRef((const UInt8 *)QFile::encodeName(QDir::cleanPath(path)).data(), &fsRef, 0);    if (err != noErr)        return false;    FSCatalogInfo catInfo;    err = FSGetCatalogInfo(&fsRef, kFSCatInfoFinderInfo, &catInfo, NULL, NULL, NULL);    if (err != noErr)        return false;    FileInfo * const fileInfo = reinterpret_cast<FileInfo*>(&catInfo.finderInfo);    bool result = (fileInfo->finderFlags & kIsInvisible);    return result;}#endif/*!    \reimp*/QAbstractFileEngine::FileFlags QFSFileEngine::fileFlags(FileFlags type) const{    Q_D(const QFSFileEngine);    // Force a stat, so that we're guaranteed to get up-to-date results    if (type & QAbstractFileEngine::FileFlag(0x1000000)) { // QDir::Refresh        d->tried_stat = 0;        d->need_lstat = 1;    }    QAbstractFileEngine::FileFlags ret = 0;    bool exists = d->doStat();    if (!exists && !d->isSymlink())        return ret;    if (exists && (type & PermsMask)) {        if(d->st.st_mode & S_IRUSR)            ret |= ReadOwnerPerm;        if(d->st.st_mode & S_IWUSR)            ret |= WriteOwnerPerm;        if(d->st.st_mode & S_IXUSR)            ret |= ExeOwnerPerm;        if(d->st.st_mode & S_IRUSR)            ret |= ReadUserPerm;        if(d->st.st_mode & S_IWUSR)            ret |= WriteUserPerm;        if(d->st.st_mode & S_IXUSR)            ret |= ExeUserPerm;        if(d->st.st_mode & S_IRGRP)            ret |= ReadGroupPerm;        if(d->st.st_mode & S_IWGRP)            ret |= WriteGroupPerm;        if(d->st.st_mode & S_IXGRP)            ret |= ExeGroupPerm;        if(d->st.st_mode & S_IROTH)            ret |= ReadOtherPerm;        if(d->st.st_mode & S_IWOTH)            ret |= WriteOtherPerm;        if(d->st.st_mode & S_IXOTH)            ret |= ExeOtherPerm;    }    if(type & TypesMask) {#if !defined(QWS) && defined(Q_OS_MAC)        bool foundAlias = false;        {            FSRef fref;            if(FSPathMakeRef((const UInt8 *)QFile::encodeName(QDir::cleanPath(d->file)).data(),                             &fref, NULL) == noErr) {                Boolean isAlias, isFolder;                if(FSIsAliasFile(&fref, &isAlias, &isFolder) == noErr && isAlias) {                    foundAlias = true;                    ret |= LinkType;                }            }        }        if(!foundAlias)#endif        {            if ((type & LinkType) && d->isSymlink())                ret |= LinkType;            if (exists && (d->st.st_mode & S_IFMT) == S_IFREG)                ret |= FileType;            else if (exists && (d->st.st_mode & S_IFMT) == S_IFDIR)                ret |= DirectoryType;        }    }    if(type & FlagsMask) {        ret |= LocalDiskFlag;        if (exists)            ret |= ExistsFlag;        if(fileName(BaseName)[0] == QLatin1Char('.')#if defined(Q_WS_MAC)            || d->isMacHidden(d->file)#endif        )            ret |= HiddenFlag;        if(d->file == QLatin1String("/"))            ret |= RootFlag;    }    return ret;}QString QFSFileEngine::fileName(FileName file) const{    Q_D(const QFSFileEngine);    if(file == BaseName) {        int slash = d->file.lastIndexOf(QLatin1Char('/'));        if(slash != -1)            return d->file.mid(slash + 1);    } else if(file == PathName) {        int slash = d->file.lastIndexOf(QLatin1Char('/'));        if(slash == -1)            return QLatin1String(".");        else if(!slash)            return QLatin1String("/");        return d->file.left(slash);    } else if(file == AbsoluteName || file == AbsolutePathName) {        QString ret;        if(d->file.isEmpty() || !d->file.startsWith(QLatin1Char('/')))            ret = QDir::currentPath();        if(!d->file.isEmpty() && d->file != QLatin1String(".")) {            if(!ret.isEmpty() && !ret.endsWith(QLatin1Char('/')))                ret += QLatin1Char('/');            ret += d->file;        }        if (ret == QLatin1String("/"))            return ret;        bool isDir = ret.endsWith(QLatin1Char('/'));        ret = QDir::cleanPath(ret);        if (isDir)            ret += QLatin1String("/");        if(file == AbsolutePathName) {            int slash = ret.lastIndexOf(QLatin1Char('/'));            if(slash == -1)                return QDir::currentPath();            else if(!slash)                return QLatin1String("/");            return ret.left(slash);        }        return ret;    } else if(file == CanonicalName || file == CanonicalPathName) {        char cur[PATH_MAX+1];        if(::getcwd(cur, PATH_MAX)) {            QString ret;            char real[PATH_MAX+1];            // need the cast for old solaris versions of realpath that doesn't take            // a const char*.            if(::realpath(QFile::encodeName(d->file).data(), real))                ret = QFile::decodeName(QByteArray(real));            ::chdir(cur); // always make sure we go back to the current dir            //check it            QT_STATBUF st;            if(QT_STAT(QFile::encodeName(ret), &st) != 0)                ret = QString();            if(!ret.isEmpty() && file == CanonicalPathName) {                int slash = ret.lastIndexOf(QLatin1Char('/'));                if(slash == -1)                    return QDir::currentPath();                else if(!slash)                    return QLatin1String("/");                return ret.left(slash);            }            return ret;        }        if(file == CanonicalPathName)            return fileName(AbsolutePathName);        return fileName(AbsoluteName);    } else if(file == LinkName) {        if (d->isSymlink()) {            char s[PATH_MAX+1];            int len = readlink(QFile::encodeName(d->file), s, PATH_MAX);            if(len > 0) {                QString ret;                if (S_ISDIR(d->st.st_mode) && s[0] != '/') {                    QDir parent(d->file);                    parent.cdUp();                    ret = parent.path();                    if (!ret.isEmpty() && !ret.endsWith(QLatin1Char('/')))                        ret += QLatin1Char('/');                }                s[len] = '\0';                ret += QFile::decodeName(QByteArray(s));                if (!ret.startsWith(QLatin1Char('/'))) {                    if (d->file.startsWith(QLatin1Char('/'))) {                        ret.prepend(d->file.left(d->file.lastIndexOf(QLatin1Char('/')))                                    + QLatin1Char('/'));                    } else {                        ret.prepend(QDir::currentPath() + QLatin1Char('/'));                    }                }                ret = QDir::cleanPath(ret);                if (ret.size() > 1 && ret.endsWith(QLatin1Char('/')))                    ret.chop(1);                return ret;            }        }#if !defined(QWS) && defined(Q_OS_MAC)        {            FSRef fref;            if(FSPathMakeRef((const UInt8 *)QFile::encodeName(QDir::cleanPath(d->file)).data(), &fref, 0) == noErr) {                Boolean isAlias, isFolder;                if(FSResolveAliasFile(&fref, true, &isFolder, &isAlias) == noErr && isAlias) {                    AliasHandle alias;                    if(FSNewAlias(0, &fref, &alias) == noErr && alias) {                        CFStringRef cfstr;                        if(FSCopyAliasInfo(alias, 0, 0, &cfstr, 0, 0) == noErr)                            return QCFString::toQString(cfstr);                    }                }            }        }#endif        return QString();    }    return d->file;}bool QFSFileEngine::isRelativePath() const{    Q_D(const QFSFileEngine);    int len = d->file.length();    if(len == 0)        return true;    return d->file[0] != QLatin1Char('/');}uint QFSFileEngine::ownerId(FileOwner own) const{    Q_D(const QFSFileEngine);    static const uint nobodyID = (uint) -2;    if(d->doStat()) {        if(own == OwnerUser)            return d->st.st_uid;        else            return d->st.st_gid;    }    return nobodyID;}QString QFSFileEngine::owner(FileOwner own) const{#if !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS)    QVarLengthArray<char, 1024> buf(sysconf(_SC_GETPW_R_SIZE_MAX));#endif    if(own == OwnerUser) {        struct passwd *pw = 0;#if !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS)        struct passwd entry;        getpwuid_r(ownerId(own), &entry, buf.data(), buf.size(), &pw);#else        pw = getpwuid(ownerId(own));#endif        if(pw)            return QFile::decodeName(QByteArray(pw->pw_name));    } else if(own == OwnerGroup) {        struct group *gr = 0;#if !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS)        buf.resize(sysconf(_SC_GETGR_R_SIZE_MAX));        struct group entry;        getgrgid_r(ownerId(own), &entry, buf.data(), buf.size(), &gr);#else        gr = getgrgid(ownerId(own));#endif        if(gr)            return QFile::decodeName(QByteArray(gr->gr_name));    }    return QString();}bool QFSFileEngine::setPermissions(uint perms){    Q_D(QFSFileEngine);    mode_t mode = 0;    if(perms & ReadOwnerPerm)        mode |= S_IRUSR;    if(perms & WriteOwnerPerm)        mode |= S_IWUSR;    if(perms & ExeOwnerPerm)        mode |= S_IXUSR;    if(perms & ReadUserPerm)        mode |= S_IRUSR;    if(perms & WriteUserPerm)        mode |= S_IWUSR;    if(perms & ExeUserPerm)        mode |= S_IXUSR;    if(perms & ReadGroupPerm)        mode |= S_IRGRP;    if(perms & WriteGroupPerm)        mode |= S_IWGRP;    if(perms & ExeGroupPerm)        mode |= S_IXGRP;    if(perms & ReadOtherPerm)        mode |= S_IROTH;    if(perms & WriteOtherPerm)        mode |= S_IWOTH;    if(perms & ExeOtherPerm)        mode |= S_IXOTH;    if(d->fd != -1)        return !fchmod(d->fd, mode);    const QByteArray file = QFile::encodeName(d->file);    return !::chmod(file.data(), mode);}bool QFSFileEngine::setSize(qint64 size){    Q_D(QFSFileEngine);    if(d->fd != -1)        return !QT_FTRUNCATE(d->fd, size);    const QByteArray file = QFile::encodeName(d->file);    return !QT_TRUNCATE(file.data(), size);}QDateTime QFSFileEngine::fileTime(FileTime time) const{    Q_D(const QFSFileEngine);    QDateTime ret;    if(d->doStat()) {        if(time == CreationTime)            ret.setTime_t(d->st.st_ctime ? d->st.st_ctime : d->st.st_mtime);        else if(time == ModificationTime)            ret.setTime_t(d->st.st_mtime);        else if(time == AccessTime)            ret.setTime_t(d->st.st_atime);    }    return ret;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品专区在线影院观看| 欧美在线视频你懂得| 日韩黄色免费网站| 亚洲成a人v欧美综合天堂| 夜夜嗨av一区二区三区四季av | 久久精品日产第一区二区三区高清版| 日韩一区二区三区四区五区六区| 91精品午夜视频| 91精品国产综合久久精品| 欧美精品色一区二区三区| 欧美精品久久天天躁| 91精品欧美福利在线观看| 日韩亚洲欧美成人一区| 精品成人一区二区三区| 中文字幕免费不卡| 自拍偷拍亚洲欧美日韩| 亚洲一区二区3| 经典三级在线一区| 成人爽a毛片一区二区免费| 91在线视频官网| 欧美日韩一级黄| 日韩免费电影一区| 国产欧美日韩在线观看| 亚洲欧洲日韩av| 无吗不卡中文字幕| 国产精选一区二区三区| 99久久精品费精品国产一区二区| 91激情在线视频| 国产精品情趣视频| 一区二区日韩电影| 乱中年女人伦av一区二区| 成人av片在线观看| 欧美一级日韩免费不卡| 一区二区中文视频| 日韩精品免费专区| 94色蜜桃网一区二区三区| 欧美一级片免费看| 亚洲男人电影天堂| 经典一区二区三区| 欧美色图片你懂的| 亚洲欧洲99久久| 狠狠色丁香久久婷婷综| 欧美日韩高清在线| 中文字幕日韩一区二区| 久久精品国产在热久久| 在线观看亚洲专区| 国产精品三级电影| 国产在线播精品第三| 欧美日韩一级视频| 亚洲色图都市小说| 成人久久18免费网站麻豆| 69堂成人精品免费视频| 亚洲欧美色图小说| 国产精品一级黄| 欧美一区二区女人| 一区二区三区日韩精品视频| 国产精品夜夜嗨| 欧美一三区三区四区免费在线看| 亚洲人精品午夜| 3d动漫精品啪啪| 樱桃视频在线观看一区| 大尺度一区二区| 欧美精品一区男女天堂| 日韩—二三区免费观看av| 色婷婷综合视频在线观看| 国产欧美一区二区精品久导航| 美女一区二区在线观看| 欧美二区乱c少妇| 亚洲h在线观看| 精品视频一区三区九区| 亚洲美女在线国产| 色婷婷亚洲精品| 一区二区三区免费| 欧美综合视频在线观看| 亚洲欧美激情在线| 欧美自拍偷拍一区| 亚洲一区在线观看视频| 91麻豆精品在线观看| 国产午夜三级一区二区三| 国产在线一区二区| 国产亚洲精品7777| 成人福利视频网站| 亚洲精品福利视频网站| 欧美日韩中文精品| 久久国产婷婷国产香蕉| 国产日产欧美一区二区视频| 国产馆精品极品| 日韩一区中文字幕| 欧美在线免费观看亚洲| 三级在线观看一区二区| 精品国产一区二区三区四区四 | 91亚洲国产成人精品一区二三| 中文无字幕一区二区三区 | 日韩va欧美va亚洲va久久| 欧美精品久久久久久久久老牛影院| 日韩高清不卡一区二区| 久久久99精品久久| 91丨porny丨户外露出| 香蕉av福利精品导航| 精品免费日韩av| 成人激情文学综合网| 亚洲成av人片在线| 精品国产乱码久久久久久牛牛| 国产成人在线免费观看| 一区二区高清视频在线观看| 欧美日韩成人综合在线一区二区| 国产一区二区三区| 亚洲美女少妇撒尿| 精品国产91乱码一区二区三区| 99精品视频在线观看免费| 亚洲gay无套男同| 久久美女艺术照精彩视频福利播放| 日本乱人伦aⅴ精品| 精品在线一区二区| 亚洲午夜一二三区视频| 久久午夜老司机| 欧美三级日本三级少妇99| 国产精品99久久久久久似苏梦涵 | 日韩精品久久理论片| 国产欧美精品国产国产专区 | 狠狠色丁香婷婷综合久久片| 国产精品久久久久久妇女6080| 91精品国产福利| av一二三不卡影片| 国产乱码一区二区三区| 午夜一区二区三区视频| 国产精品久久看| 精品免费国产二区三区| 欧美日韩国产综合一区二区 | 欧美国产精品中文字幕| 欧美一级精品在线| 欧美日韩一区二区三区视频| 97精品国产97久久久久久久久久久久 | 一本色道久久综合亚洲91| 国产精品亚洲一区二区三区妖精| 婷婷国产v国产偷v亚洲高清| 一区二区三区免费看视频| 中文字幕欧美国产| 日本一区二区三级电影在线观看 | 亚洲色图19p| 亚洲国产精品精华液ab| 欧美大片拔萝卜| 日韩欧美中文字幕制服| 欧美高清一级片在线| 欧美色涩在线第一页| 欧美怡红院视频| 欧美艳星brazzers| 欧美亚洲一区二区在线观看| 91污在线观看| 91麻豆文化传媒在线观看| 色视频一区二区| av资源站一区| 91视频www| 色噜噜狠狠色综合欧洲selulu| 成人久久视频在线观看| av网站免费线看精品| jiyouzz国产精品久久| a级精品国产片在线观看| 91视频观看视频| 欧美日韩一区中文字幕| 9191精品国产综合久久久久久| 欧美性猛交xxxxxx富婆| 欧美日韩精品欧美日韩精品一| 69成人精品免费视频| 日韩欧美精品三级| 久久久www成人免费毛片麻豆| 久久一日本道色综合| 欧美极品美女视频| 亚洲伦理在线免费看| 亚洲一区二区三区视频在线播放| 日日欢夜夜爽一区| 国内一区二区视频| 成人av网址在线| 欧美日韩精品一区二区| 欧美成人欧美edvon| 国产精品视频九色porn| 亚洲精品欧美二区三区中文字幕| 午夜伦理一区二区| 国内精品第一页| 成人免费看视频| 欧美色老头old∨ideo| 精品91自产拍在线观看一区| 中文字幕一区日韩精品欧美| 亚洲一本大道在线| 久久精品二区亚洲w码| 99久久免费国产| 欧美一区二区二区| 国产精品入口麻豆九色| 午夜伊人狠狠久久| 成人免费观看av| 91精品午夜视频| 日韩美女久久久| 人人精品人人爱| 一本久久a久久精品亚洲| 日韩一区二区三区观看| 亚洲色图在线看| 国产一区二区三区日韩 | 国产九九视频一区二区三区| 91国在线观看| 欧美激情资源网|