// ************************************************************************** // * This file is part of the FreeFileSync project. It is distributed under * // * GNU General Public License: http://www.gnu.org/licenses/gpl.html * // * Copyright (C) Zenju (zenju AT gmx DOT de) - All Rights Reserved * // ************************************************************************** #ifndef OSX_FILE_ICON_8427508422345342 #define OSX_FILE_ICON_8427508422345342 #include <vector> #include <zen/sys_error.h> namespace osx { struct ImageData { ImageData(int w, int h) : width(w), height(h), rgb(w* h * 3), alpha(w* h) {} ImageData(ImageData&& tmp) : width(tmp.width), height(tmp.height) { rgb.swap(tmp.rgb); alpha.swap(tmp.alpha); } const int width; const int height; std::vector<unsigned char> rgb; //rgb-byte order for use with wxImage std::vector<unsigned char> alpha; private: ImageData(const ImageData&); ImageData& operator=(const ImageData&); }; ImageData getThumbnail(const char* filename, int requestedSize); //throw SysError ImageData getFileIcon (const char* filename, int requestedSize); //throw SysError ImageData getDefaultFileIcon (int requestedSize); //throw SysError ImageData getDefaultFolderIcon(int requestedSize); //throw SysError } #endif //OSX_FILE_ICON_8427508422345342