added dependencies and build files (loosely inspired by Sebastian Dorda's love-native-android)

This commit is contained in:
Martin Felis
2013-12-05 17:58:37 +01:00
parent 9604528a96
commit 95a086a47f
3700 changed files with 1691119 additions and 0 deletions
@@ -0,0 +1,162 @@
#ifdef _DEBUG
#define IL_DEBUG
#endif//_DEBUG
#include <IL/il.h>
#include <windows.h>
#include <direct.h>
#include <string>
using namespace std;
TCHAR *ImageExtArray[] =
{
L"jpe", L"jpg", L"jpeg",
L"bmp",
L"ico",
L"pbm", L"pgm", L"pnm", L"ppm",
L"png",
L"bw", L"rgb", L"rgba", L"sgi",
L"tga", L"tif", L"tiff",
L"pcx",
NULL
};
void ParseDirs(const string &_Dir, char **ExtList, char *ConvExt, bool Recurse);
bool IsDir(WIN32_FIND_DATA *_Data);
char *GetExtension(const char *FileName);
bool CheckExtension(char *Arg, char *Ext);
TCHAR *Ext;
string NewExt;
int i, j;
//void BatchConv(TCHAR *Directory, TCHAR *ExtList, TCHAR *ConvExt, bool Recurse)
//{
// ILuint Id, OrigId;
// ilGenImages(1, &Id);
// OrigId = ilGetInteger(IL_CUR_IMAGE);
// ilBindImage(Id);
// if (ExtList == NULL)
// ParseDirs(string(Directory), ImageExtArray, ConvExt, Recurse);
// else {
// /*char **List = ConvertExtList(ExtList);
// ParseDirs(string(Directory), ConvertExtList(ExtList), ConvExt, Recurse);
// DestroyExtList(List);*/
// }
// ilDeleteImages(1, &Id);
// ilBindImage(OrigId);
// return;
//}
//
//
//void ParseDirs(const string &_Dir, TCHAR **ExtList, TCHAR *ConvExt, bool Recurse)
//{
// HANDLE Search;
// WIN32_FIND_DATA FindData;
//
// _chdir(_Dir.c_str());
// Search = FindFirstFile("*.*", &FindData);
//
// do {
// if (!strcmp(FindData.cFileName, ".") || !strcmp(FindData.cFileName, ".."))
// continue;
// if (IsDir(&FindData) && Recurse) {
// _chdir(FindData.cFileName);
// string NewDir = _Dir + string("\\");
// NewDir += FindData.cFileName;
// ParseDirs(NewDir, ExtList, ConvExt, Recurse);
// _chdir("..");
// }
// Ext = GetExtension(FindData.cFileName);
// if (Ext == NULL)
// continue;
// if (!_stricmp(Ext, ConvExt)) // Already has that extension.
// continue;
// for (j = 0; ExtList[j] != NULL; j++) {
// if (CheckExtension(FindData.cFileName, ExtList[j])) {
// string NewName;
// for (i = 0; i < Ext - FindData.cFileName; i++) {
// NewName += FindData.cFileName[i];
// }
// NewName += ConvExt;
// if (!ilLoadImage(FindData.cFileName))
// break;
// ilSaveImage((TCHAR*)NewName.c_str());
// break;
// }
// }
// } while (FindNextFile(Search, &FindData));
//
// FindClose(Search);
// return;
//}
//
//
//// Is the file actually a directory?
//bool IsDir(WIN32_FIND_DATA *_Data)
//{
// if (_Data->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
// return true;
// return false;
//}
TCHAR *GetExtension(const TCHAR *FileName)
{
bool PeriodFound = false;
TCHAR *Ext = (TCHAR*)FileName;
long i, Len = (long)wcslen(FileName);
if (FileName == NULL || !Len) // if not a good filename/extension, exit early
return NULL;
Ext += Len; // start at the end
for (i = Len; i >= 0; i--) {
if (*Ext == '.') { // try to find a period
PeriodFound = true;
break;
}
Ext--;
}
if (!PeriodFound) // if no period, no extension
return NULL;
return Ext+1;
}
// Simple function to test if a filename has a given extension, disregarding case
bool CheckExtension(TCHAR *Arg, TCHAR *Ext)
{
bool PeriodFound = false;
TCHAR *Argu = Arg; // pointer to arg so we don't destroy arg
unsigned int i;
if (Arg == NULL || Ext == NULL || !wcslen(Arg) || !wcslen(Ext)) // if not a good filename/extension, exit early
return false;
Argu += wcslen(Arg); // start at the end
for (i = (int)wcslen(Arg); i >= 0; i--) {
if (*Argu == '.') { // try to find a period
PeriodFound = true;
break;
}
Argu--;
}
if (!PeriodFound) // if no period, no extension
return false;
if (!_wcsicmp(Argu+1, Ext)) // extension and ext match?
return true;
return false; // if all else fails, return IL_FALSE
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,3 @@
#pragma once
#include "resource.h"
@@ -0,0 +1,255 @@
// Microsoft Visual C++ generated resource script.
//
#include "resource."
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_DIALOG_ABOUT DIALOGEX 0, 0, 278, 220
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "About DevIL"
FONT 8, "MS Sans Serif", 0, 0, 0x1
BEGIN
DEFPUSHBUTTON "OK",IDOK,113,198,50,14
GROUPBOX "Info",IDC_STATIC,7,7,264,69
GROUPBOX "Errors",IDC_STATIC,7,86,264,76
LTEXT "Vendor:",IDC_STATIC,27,22,27,8
LTEXT "Version:",IDC_STATIC,26,35,26,8
CTEXT "",IDC_ERROR1,40,98,79,8
LTEXT "Vendor",IDC_ABOUT_VENDOR,68,22,126,8
LTEXT "Version String",IDC_ABOUT_VER_STRING,68,35,125,8
LTEXT "Version Num",IDC_ABOUT_VER_NUM,68,46,38,8
CTEXT "",IDC_ERROR4,158,98,79,8
CTEXT "",IDC_ERROR6,158,142,79,8
CTEXT "",IDC_ERROR2,40,119,79,8
CTEXT "",IDC_ERROR5,158,120,79,8
CTEXT "",IDC_ERROR3,40,142,79,8
LTEXT "Visit the DevIL website at http://openil.sf.net.",IDC_OPENIL_LINK,56,182,164,8
ICON "",IDC_STATIC,243,15,20,20
END
IDD_DIALOG_FILTER DIALOGEX 0, 0, 186, 95
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Dialog Options"
FONT 8, "MS Sans Serif", 400, 0, 0x0
BEGIN
DEFPUSHBUTTON "OK",IDOK,129,14,50,14
PUSHBUTTON "Cancel",IDCANCEL,129,31,50,14
LTEXT "Enter number of iterations, monkey foo!",IDC_FILTER_DESC_TEXT,21,14,95,31
EDITTEXT IDC_FILTER_EDIT,13,54,160,14,ES_AUTOHSCROLL
END
IDD_DIALOG_RESIZE DIALOGEX 0, 0, 266, 95
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Resize Options"
FONT 8, "MS Sans Serif", 400, 0, 0x0
BEGIN
DEFPUSHBUTTON "OK",IDOK,77,65,50,14
PUSHBUTTON "Cancel",IDCANCEL,137,65,50,14
LTEXT "Enter new image size:",IDC_STATIC,97,15,70,8
EDITTEXT IDC_EDIT_RESIZE_X,33,36,40,14,ES_AUTOHSCROLL
EDITTEXT IDC_EDIT_RESIZE_Y,109,36,40,14,ES_AUTOHSCROLL
EDITTEXT IDC_EDIT_RESIZE_Z,187,37,40,14,ES_AUTOHSCROLL
LTEXT "X:",IDC_STATIC,20,39,8,8
LTEXT "Y:",IDC_STATIC,96,38,8,8
LTEXT "Z:",IDC_STATIC,173,39,8,8
END
IDD_DIALOG_BATCHCONV DIALOGEX 0, 0, 200, 138
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Batch Conversion Options"
FONT 8, "MS Sans Serif", 400, 0, 0x0
BEGIN
DEFPUSHBUTTON "OK",IDOK,43,108,50,14
PUSHBUTTON "Cancel",IDCANCEL,107,108,50,14
LTEXT "Enter Directory:",IDC_FILTER_DESC_TEXT,21,14,95,14
EDITTEXT IDC_BATCH_DIR,21,30,160,14,ES_AUTOHSCROLL
CONTROL "Parse Subdirectories?",IDC_BATCH_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,57,89,85,10
LTEXT "Enter New Extension:",IDC_STATIC,21,55,69,8
EDITTEXT IDC_BATCH_NEWEXT,21,66,44,14,ES_AUTOHSCROLL
END
IDD_DIALOG_PROPERTIES DIALOGEX 0, 0, 243, 158
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Image Properties"
FONT 8, "MS Sans Serif", 400, 0, 0x0
BEGIN
DEFPUSHBUTTON "OK",IDOK,81,137,50,14
GROUPBOX "Info",IDC_STATIC,7,7,229,119
LTEXT "Filename:",IDC_STATIC,16,24,31,8
LTEXT "Width:",IDC_STATIC,25,43,22,8
LTEXT "Height:",IDC_STATIC,23,62,24,8
LTEXT "Depth:",IDC_STATIC,25,81,22,8
LTEXT "Filename",IDC_PROP_FILENAME,61,24,169,8
LTEXT "Width",IDC_PROP_WIDTH,61,43,42,8
LTEXT "Height",IDC_PROP_HEIGHT,61,62,42,8
LTEXT "Depth",IDC_PROP_DEPTH,61,81,42,8
LTEXT "Size:",IDC_STATIC,31,100,16,8
LTEXT "Size",IDC_PROP_SIZE,61,100,41,8
LTEXT "byte(s)",IDC_STATIC,111,100,22,8
LTEXT "pixel(s)",IDC_STATIC,111,81,22,8
LTEXT "pixel(s)",IDC_STATIC,111,62,22,8
LTEXT "pixel(s)",IDC_STATIC,111,43,22,8
END
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_MENU1 MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "&Open...\tCtrl+O", ID_FILE_LOAD
MENUITEM "Open &URL...\tCtrl+U", ID_FILE_OPENURL
MENUITEM "&Save...\tCtrl+S", ID_FILE_SAVE
MENUITEM "&Image Properties", ID_FILE_PROPERTIES
MENUITEM "&Print", ID_FILE_PRINT
MENUITEM "E&xit\tEsc", ID_FILE_EXIT
END
POPUP "&Convert"
BEGIN
MENUITEM "&Colour Indexed", ID_CONVERT_PALETTE
MENUITEM "&Luminance", ID_CONVERT_LUMINANCE
MENUITEM "L&uminance Alpha", ID_CONVERT_LUMINANCEALPHA
MENUITEM "&Rgb", ID_CONVERT_RGB
MENUITEM "Rgba", ID_CONVERT_RGBA
MENUITEM "&Bgr", ID_CONVERT_BGR
MENUITEM "Bgra", ID_CONVERT_BGRA
MENUITEM "&Alpha", ID_EDIT_VIEWALPHA
MENUITEM "Batch Convert", ID_BATCHCONVERT
END
POPUP "&Edit"
BEGIN
MENUITEM "&Undo", ID_EDIT_UNDO
MENUITEM "Undo &Level", ID_EDIT_UNDOLEVEL
MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY
MENUITEM "&Paste\tCtrl+V", ID_EDIT_PASTE
MENUITEM "View Mipmap", ID_EDIT_VIEWMIPMAP
MENUITEM "View ImageNum", ID_EDIT_VIEWIMAGENUM
MENUITEM "Next Image", ID_EDIT_NEXT
MENUITEM "Previous Image", ID_EDIT_PREV
END
POPUP "&Tools"
BEGIN
MENUITEM "&Count Colours", ID_EFFECTS_COUNTCOLORS
MENUITEM "&Background Colour", ID_EFFECTSTOOLS_BACKGROUNDCOLOUR
POPUP "&Filters"
BEGIN
MENUITEM "&Alienify", ID_FILTER_ALIENIFY
MENUITEM "Apply &Wave", ID_EFFECTS_FILTERS_WAVE
POPUP "Blur"
BEGIN
MENUITEM "&Average", ID_FILTERS_BLUR_AVERAGE
MENUITEM "&Gaussian", ID_FILTERS_BLUR_GAUSSIAN
END
POPUP "Ed&ge Detect"
BEGIN
MENUITEM "&Emboss", ID_EFFECTS_FILTERS_EDGEDETECT_EMBOSS
MENUITEM "Prewitt", ID_EFFECTS_FILTERS_EDGEDETECT_PREWITT
MENUITEM "Sobel", ID_EFFECTS_FILTERS_EDGEDETECT_SOBEL
END
MENUITEM "&Emboss", ID_FILTER_EMBOSS
MENUITEM "E&qualize", ID_FILTER_EQUALIZE
MENUITEM "&Gamma Correct", ID_FILTER_GAMMACORRECT
MENUITEM "&Negative", ID_FILTER_NEGATIVE
MENUITEM "N&oise", ID_FILTER_NOISE
MENUITEM "&Pixelize", ID_FILTER_PIXELIZE
MENUITEM "&Sharpen", ID_FILTER_SHARPEN
END
MENUITEM "Fli&p", ID_EFFECTS_FLIP
MENUITEM "&Mirror", ID_EFFECTS_MIRROR
MENUITEM "&Rotate", ID_EFFECTS_FILTERS_ROTATE
MENUITEM "&Scale", ID_EFFECTS_FILTERS_SCALE
MENUITEM "&ScaleBOX", ID_EFFECTS_FILTERS_SCALEBOX
END
POPUP "&Help"
BEGIN
MENUITEM "&About", ID_HELP_ABOUT
END
END
/////////////////////////////////////////////////////////////////////////////
//
// Accelerator
//
IDR_MENU1 ACCELERATORS
BEGIN
"C", ID_EDIT_COPY, VIRTKEY, CONTROL
"O", ID_FILE_LOAD, VIRTKEY, CONTROL
"S", ID_FILE_SAVE, VIRTKEY, CONTROL
"U", ID_FILE_OPENURL, VIRTKEY, CONTROL
"V", ID_EDIT_PASTE, VIRTKEY, CONTROL
END
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_ICON1 ICON "./resources/DevIL Logo.ico"
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource.\0"
END
3 TEXTINCLUDE
BEGIN
"\r\0"
END
2 TEXTINCLUDE
BEGIN
"#include ""afxres.h""\r\0"
END
#endif // APSTUDIO_INVOKED
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
@@ -0,0 +1,81 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by windows_example.rc
//
#define IDR_MENU1 101
#define IDI_ICON1 102
#define IDR_ACCELERATOR1 103
#define IDD_DIALOG_FILTER 104
#define IDC_FILTER_EDIT 1001
#define IDC_FILTER_DESC_TEXT 1002
#define ID_FILE_OPEN40001 40001
#define ID_FILE_OPENURL 40002
#define ID_FILE_SAVE40003 40003
#define ID_FILE_IMAGEPROPERTIES 40004
#define ID_FILE_PRINT40005 40005
#define ID_FILE_EXIT 40006
#define ID_EDIT_UNDO40007 40007
#define ID_EDIT_UNDOLEVEL 40008
#define ID_EDIT_COOPY 40009
#define ID_EDIT_PASTE40010 40010
#define ID_EDIT_VIEWMIPMAP 40011
#define ID_EDIT_VIEWIMAGENUMBER 40012
#define ID_EDIT_NEXTIMAGE 40013
#define ID_EDIT_C 40014
#define ID_CONVERT_COLORINDEXED 40015
#define ID_CONVERT_LUMINANCE 40016
#define ID_CONVERT_LUMINANCEALPHA 40017
#define ID_CONVERT_RGB 40018
#define ID_CONVERT_RGBA 40019
#define ID_CONVERT_BGR 40020
#define ID_CONVERT_BGRA 40021
#define ID_CONVERT_ALLPHA 40022
#define ID_CONVERT_BATCHCONVERT 40023
#define ID_CONVERT_UNSIGNEDBYTE 40024
#define ID_CONVERT_UNSIGNEDBYTE40025 40025
#define ID_CONVERT_UNSIGNEDSHORT 40026
#define ID_CONVERT_FLOAT 40027
#define ID_CONVERT_DOUBLE 40028
#define ID_CONVERT_HALF 40029
#define ID_HELP_ABOUT 40030
#define ID_TOOLS_COUNTCOLORS 40031
#define ID_TOOLS_BACKGROUNDCOLOR 40032
#define ID_TOOLS_FILTERS 40033
#define ID_TOOLS_FLIP 40034
#define ID_TOOLS_MIRROR 40035
#define ID_TOOLS_ROTATE 40036
#define ID_TOOLS_SCALE 40037
#define ID_TOOLS_SCALEBOX 40038
#define ID_FILTERS_ALIENIFY 40039
#define ID_FILTERS_APPLYWAVE 40040
#define ID_FILTERS_BLUR 40041
#define ID_FILTERS_EDGEDETECT 40042
#define ID_FILTERS_EMBOSS 40043
#define ID_FILTERS_EQUALIZE 40044
#define ID_FILTERS_GAMMACORRECT 40045
#define ID_FILTERS_NEGATIVE 40046
#define ID_FILTERS_NOISE 40047
#define ID_FILTERS_PIXELIZE 40048
#define ID_FILTERS_SHARPEN 40049
#define ID_EDIT_VIEWFACE 40050
#define ID_EDIT_VIEWBASEIMAGE 40051
#define ID_CONVERT_ALPHA 40052
#define ID_CONVERT_UNSIGNEDINT 40053
#define ID_EDIT_COPY40054 40054
#define ID_EDIT_PREVIOUSIMAGE 40055
#define ID_FILTERS_BLURGAUSSIAN 40064
#define ID_FILTERS_BLURAVERAGE 40065
#define ID_EDGEDETECT_SOBEL 40066
#define ID_EDGEDETECT_PREWITT 40067
#define ID_EDGEDETECT_EMBOSS 40068
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 105
#define _APS_NEXT_COMMAND_VALUE 40069
#define _APS_NEXT_CONTROL_VALUE 1003
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB