Skip to content

Use TCHAR in mp3checker #23

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions mp3checker/windows/fileinfo.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@

#include "mp3checker.h"
#include "vector.h"
#include <tchar.h>

#define CVECTORS 26
#define FI_HASH(filename) abs(filename[0]%(CVECTORS))
Expand Down Expand Up @@ -76,8 +77,8 @@ FileInfo * FI_GetFile(TCHAR * filename, TCHAR * dirname) {

v=fileinfo[FI_HASH(filename)];
while (fi=(FileInfo *)Vector_Get(v, i++)) {
if ((stricmp(filename, fi->filename)==0)
&&(stricmp(dirname, fi->dirname)==0)) {
if ((_tcsicmp(filename, fi->filename)==0)
&&(_tcsicmp(dirname, fi->dirname)==0)) {
return fi;
}
}
Expand Down
2 changes: 1 addition & 1 deletion mp3checker/windows/fileinfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,6 @@
BOOL FI_Create();
void FI_Destroy();
void FI_AddFile(FileInfo * fi);
FileInfo * FI_GetFile(char * filename, char * dirname);
FileInfo * FI_GetFile(TCHAR * filename, TCHAR * dirname);
FI_GetFileType(WIN32_FIND_DATA * FileData);
BOOL FI_FreeAll(void);
71 changes: 36 additions & 35 deletions mp3checker/windows/listview.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "mp3checker.h"
#include <windows.h>
#include <commctrl.h>
#include <tchar.h>
#include "vector.h"
#include "fileinfo.h"
#include "resource.h"
Expand Down Expand Up @@ -113,7 +114,7 @@ static BOOL LV_InitColumns(HWND hWndListView) {
LVCOLUMN lvc;
int iCol;
int nElem;
char buf[256];
TCHAR buf[256];

ColInfo colinfo[]={
/* identifier | alignment | width */
Expand Down Expand Up @@ -152,14 +153,14 @@ static BOOL LV_InitColumns(HWND hWndListView) {
*/
static BOOL LV_UpdateFindFile(WIN32_FIND_DATA * FileData) {
FileInfo * fi;
char curdir[MAX_PATH];
TCHAR curdir[MAX_PATH];
GetCurrentDirectory(sizeof(curdir), curdir);

fi=FI_GetFile(FileData->cFileName, curdir);
if (fi==NULL) { /* no information is available for this file */
fi=HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(FileInfo));
strcpy(fi->filename, FileData->cFileName);
strcpy(fi->dirname, curdir);
_tcscpy(fi->filename, FileData->cFileName);
_tcscpy(fi->dirname, curdir);
fi->filesize=((UINT64)FileData->nFileSizeHigh << 32)+FileData->nFileSizeLow;
fi->filetype=FI_GetFileType(FileData);
}
Expand Down Expand Up @@ -213,7 +214,7 @@ static int LV_FindSelected(int start) {
}

/* does the actual renaming of the file indicated by index */
BOOL LV_RenameFile(int index, char * newname) {
BOOL LV_RenameFile(int index, TCHAR * newname) {
FileInfo * fi;
BOOL retval;

Expand All @@ -225,7 +226,7 @@ BOOL LV_RenameFile(int index, char * newname) {
retval=MoveFile(fi->filename, newname);
if (retval) {
/* update vector */
strcpy(fi->filename, newname);
_tcscpy(fi->filename, newname);
} else {
ErrorBox(IDS_RENAMEFAILED, MB_OK | MB_ICONEXCLAMATION);
}
Expand Down Expand Up @@ -259,7 +260,7 @@ static BOOL LV_AddItem(HWND hWndListView, FileInfo * fi, int item) {


static BOOL LV_UpdateDirItem(HWND hWndListView, FileInfo * fi, int item) {
char buf[20];
TCHAR buf[20];
LVITEM lv;
int iRes;

Expand All @@ -274,7 +275,7 @@ static BOOL LV_UpdateDirItem(HWND hWndListView, FileInfo * fi, int item) {

/* result */
lv.iSubItem=COL_RESULT;
sprintf(buf, "%d/%d", fi->dirinfo->cGood, fi->dirinfo->cIsMP3);
_stprintf(buf, TEXT("%d/%d"), fi->dirinfo->cGood, fi->dirinfo->cIsMP3);
lv.pszText=buf;
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;
Expand All @@ -283,7 +284,7 @@ static BOOL LV_UpdateDirItem(HWND hWndListView, FileInfo * fi, int item) {
}

static BOOL LV_UpdateFileItem(HWND hWndListView, FileInfo * fi, int item) {
char buf[20];
TCHAR buf[20];
LVITEM lv;
int iRes;

Expand Down Expand Up @@ -320,53 +321,53 @@ static BOOL LV_UpdateFileItem(HWND hWndListView, FileInfo * fi, int item) {

/* layer */
lv.iSubItem=COL_LAYER;
sprintf(buf, "%d", fi->info->layer);
_stprintf(buf, TEXT("%d"), fi->info->layer);
lv.pszText=buf;
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;

/* bitrate */
lv.iSubItem=COL_BITRATE;
sprintf(buf, "%d bps", fi->info->bitrate);
_stprintf(buf, TEXT("%d bps"), fi->info->bitrate);
lv.pszText=buf;
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;

/* vbr/cbr */
lv.iSubItem=COL_VBR;
if (fi->info->vbr) {
lv.pszText="VBR";
lv.pszText=TEXT("VBR");
} else {
lv.pszText="CBR";
lv.pszText=TEXT("CBR");
}
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;

/* samplerate */
lv.iSubItem=COL_SAMPLERATE;
sprintf(buf, "%d Hz", fi->info->samplerate);
_stprintf(buf, TEXT("%d Hz"), fi->info->samplerate);
lv.pszText=buf;
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;

/* frames */
lv.iSubItem=COL_FRAMES;
sprintf(buf, "%d", fi->info->frames);
_stprintf(buf, TEXT("%d"), fi->info->frames);
lv.pszText=buf;
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;

/* time */
lv.iSubItem=COL_TIME;
sprintf(buf, "%d:%02d", fi->info->time/60, fi->info->time%60);
_stprintf(buf, TEXT("%d:%02d"), fi->info->time/60, fi->info->time%60);
lv.pszText=buf;
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;
}

/* size */
lv.iSubItem=COL_SIZE;
sprintf(buf, "%I64u KiB", fi->filesize/1024);
_stprintf(buf, TEXT("%I64u KiB"), fi->filesize/1024);
lv.pszText=buf;
iRes=ListView_SetItem(hWndListView, &lv);
if (!iRes) return FALSE;
Expand Down Expand Up @@ -459,7 +460,7 @@ BOOL LV_ScanDir(int item, int * filetype) {
fi->dirinfo->cFiles=cTotal;
fi->dirinfo->cIsMP3=cIsMP3;

iRes=SetCurrentDirectory("..");
iRes = SetCurrentDirectory(TEXT(".."));
LV_Refresh();

return TRUE;
Expand Down Expand Up @@ -567,19 +568,19 @@ BOOL LV_ActivateSelected() {
BOOL LV_OpenSelected() {
int index=-1;
FileInfo * fi;
char filename[512];
TCHAR filename[512];

if (LV_GetSelectedCount()<1) return FALSE;

while (-1!=(index=LV_FindSelected(index))) {
fi=Vector_Get(CurrentVector, index);
if (fi==NULL) return FALSE;
strcpy(filename, "\"");
strcat(filename, fi->dirname);
strcat(filename, "\\");
strcat(filename, fi->filename);
strcat(filename, "\"");
ShellExecute(NULL, "OPEN", fi->filename, NULL, NULL, SW_SHOWDEFAULT);
_tcscpy(filename, TEXT("\""));
_tcscat(filename, fi->dirname);
_tcscat(filename, TEXT("\\"));
_tcscat(filename, fi->filename);
_tcscat(filename, TEXT("\""));
ShellExecute(NULL, TEXT("OPEN"), fi->filename, NULL, NULL, SW_SHOWDEFAULT);
}
return TRUE;
}
Expand Down Expand Up @@ -622,13 +623,13 @@ static BOOL LV_UpdateDirectory(HWND hWndListView) {

LV_CleanVector();

hFind=FindFirstFile("*", &FindFileData);
hFind=FindFirstFile(TEXT("*"), &FindFileData);
if (hFind==INVALID_HANDLE_VALUE) {
return FALSE;
}

do {
if (strcmp(FindFileData.cFileName, ".")) LV_UpdateFindFile(&FindFileData);
if (_tcscmp(FindFileData.cFileName, TEXT("."))) LV_UpdateFindFile(&FindFileData);
} while (FindNextFile(hFind, &FindFileData));

FindClose(hFind);
Expand All @@ -653,7 +654,7 @@ BOOL LV_DeleteSelected() {
int index=-1; /* file index in CurrentVector */
FileInfo * fi; /* info from CurrentVector */
BOOL retval; /* value of DeleteFile() */
char * files; /* buffer with files, seperated by NULL */
TCHAR * files; /* buffer with files, seperated by NULL */
ptrdiff_t offset=0; /* offset of current/next file */
size_t cursize=block_size; /* current size of buffer */
size_t sizeleft=cursize; /* number of bytes left in buffer */
Expand All @@ -677,13 +678,13 @@ BOOL LV_DeleteSelected() {
*/
while (-1!=(index=LV_FindSelected(index))) {
fi=Vector_Get(CurrentVector, index);
namelen=strlen(fi->filename);
namelen=_tcslen(fi->filename);
while (namelen>=sizeleft) { /* buffer is full, enlarge it */
cursize+=block_size;
sizeleft+=block_size;
files=HeapReAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, files, cursize);
}
strncpy(files+offset, fi->filename, namelen);
_tcsncpy(files+offset, fi->filename, namelen);
offset+=namelen+1; /* +1 because of trailing zero */
sizeleft-=namelen+1;
}
Expand Down Expand Up @@ -713,7 +714,7 @@ HWND LV_Create(HWND hWndParent) {
InitCommonControlsEx(&icex);

GetClientRect (hWndParent, &rcl);
hWndListView = CreateWindow (WC_LISTVIEW, "",
hWndListView = CreateWindow (WC_LISTVIEW, TEXT(""),
WS_CHILD | LVS_REPORT | LVS_EDITLABELS,
0, 0, rcl.right - rcl.left, rcl.bottom -
rcl.top,
Expand Down Expand Up @@ -793,7 +794,7 @@ int LV_SortColumn(int column) {

/* Go one directory up */
BOOL LV_DirUp() {
SetCurrentDirectory("..");
SetCurrentDirectory(TEXT(".."));
LV_Refresh();
return TRUE;
}
Expand All @@ -807,12 +808,12 @@ void LV_Select(int index) {
int LV_SelectAll() {
FileInfo * fi;
int i=0;
char * ext;
TCHAR * ext;

while (fi=Vector_Get(CurrentVector, i)) {
ext=strrchr(fi->filename, '.');
ext= _tcsrchr(fi->filename, '.');
if (ext!=NULL) {
if (0==stricmp(ext, ".mp3")) LV_Select(i);
if (0== _tcsicmp(ext, TEXT(".mp3"))) LV_Select(i);
}
i++;
}
Expand Down
4 changes: 2 additions & 2 deletions mp3checker/windows/listview.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ BOOL LV_DeleteSelected(void);
int LV_GetSelectedCount(void);
BOOL LV_StartRename(void);
BOOL LV_Refresh(void);
BOOL LV_RenameFile(int index, char * newname);
BOOL LV_RenameFile(int index, TCHAR * newname);
BOOL LV_Resize(int width, int height);
BOOL LV_ActivateSelected(void);
BOOL LV_Activate(int item);
Expand All @@ -57,7 +57,7 @@ typedef struct {
} ColInfo;

typedef struct {
char name[255];
TCHAR name[255];
int filesize;
} ItemInfo;

Expand Down
7 changes: 3 additions & 4 deletions mp3checker/windows/mp3checker.c
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ INT_PTR CALLBACK AboutProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) {
}

BOOL DirectoryChange() {
char * text;
TCHAR * text;
BOOL retval;
text=Rebar_GetText();
retval=SetCurrentDirectory(text);
Expand Down Expand Up @@ -355,11 +355,10 @@ LRESULT CALLBACK MainWndProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam) {


int ErrorBox(int iError, UINT uType) {
char text[1024];
char caption[256];
TCHAR text[1024];
TCHAR caption[256];
LoadString(hInst, iError, text, 1023);
LoadString(hInst, iError+1, caption, 255);
// sprintf(text, "%s\nError #%d.", text, GetLastError());

return MessageBox(hWndMain, text, caption, uType);
}
8 changes: 4 additions & 4 deletions mp3checker/windows/mp3checker.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ typedef struct _DirInfo {
typedef struct _FileInfo FileInfo;
struct _FileInfo {
int filetype;
char filename[MAX_PATH];
char dirname[MAX_PATH];
TCHAR filename[MAX_PATH];
TCHAR dirname[MAX_PATH];
union {
file_info * info;
DirInfo * dirinfo;
Expand All @@ -60,8 +60,8 @@ struct _FileInfo {


/* definitions */
#define MP3CHECKER_CLASSNAME "MP3Checker"
#define MP3CHECKER_TITLE "Checkmate MP3 Checker" /* window name */
#define MP3CHECKER_CLASSNAME TEXT("MP3Checker")
#define MP3CHECKER_TITLE TEXT("Checkmate MP3 Checker") /* window name */

/* icons */
enum{
Expand Down
Loading