extern int __ecereVMethodID___ecereNameSpace__ecere__gui__Window_OnKeyHit;
private:
-static char * iconNames[] =
+static char * iconNames[] =
{
"<:ecere>places/folder.png",
"<:ecere>status/folderOpen.png",
textFile, webFile, pictureFile, soundFile,
archiveFile, packageFile, opticalMediaImageFile; /* these (all previous) are sort equal */
- /*property char *
+ /*property char *
{
set
{
public enum FileForceExtension { never, always, whenNoneGiven };
public struct FileType
{
- char * name, * typeExtension;
+ char * name, * typeExtension;
FileForceExtension forceExtension;
};
indentSize = 8;
}
textOffset = indent * indentSize + (icon ? (icon.width + 4) : 0);
-
+
surface.WriteTextDots
(alignment, x + textOffset, y + 2, width - textOffset, name, strlen(name));
if(icon)
// Stuff currently in config moving to FileDialog:
property char * filePath { set { strcpy(filePath, value); } get { return (char *)filePath; } };
property char * currentDirectory
- {
+ {
set
{
GetWorkingDir(currentDirectory, MAX_DIRECTORY);
listing.name[1] == currentDirectory[1])
{
#endif
- for(c = start; currentDirectory[c]; )
+ for(c = start; currentDirectory[c]; )
{
int len = 0;
char ch;
for(;(ch = currentDirectory[c]) && (ch != '/' && ch != '\\'); c++)
{
if(len < MAX_FILENAME)
- tmpDir[len++] = ch;
+ tmpDir[len++] = ch;
}
for(;(ch = currentDirectory[c]) && (ch == '/' || ch == '\\'); c++);
tmpDir[len] = '\0';
{
if(currentDirectory[0] == '\\' && currentDirectory[1] == '\\')
{
- for(c = 2; currentDirectory[c]; )
+ for(c = 2; currentDirectory[c]; )
{
int len = 0;
char ch;
for(;(ch = currentDirectory[c]) && (ch != '/' && ch != '\\'); c++)
{
if(len < MAX_FILENAME)
- tmpDir[len++] = ch;
+ tmpDir[len++] = ch;
}
for(;(ch = currentDirectory[c]) && (ch == '/' || ch == '\\'); c++);
tmpDir[len] = '\0';
if(sizeFilters < sizeof(FileFilter) && !fileFilter)
listing.extensions = null;
else if(filters && fileFilter < sizeFilters / (int)sizeof(FileFilter))
- listing.extensions = filters[fileFilter].extensions;
+ listing.extensions = filters[fileFilter].extensions;
else
listing.extensions = customFilter.extensions;
-
+
listBox.Clear();
fileName.indent = 0;
if(listing.stats.attribs.isShare) fileName.type = share;
if(listing.stats.attribs.isCDROM) fileName.type = cdrom;
if(listing.stats.attribs.isRemote) fileName.type = netDrive;
- if(listing.stats.attribs.isRemovable)
+ if(listing.stats.attribs.isRemovable)
{
if(listing.name[0] == 'A' || listing.name[0] == 'B')
fileName.type = floppy;
#endif
goUp.disabled = true;
}
- else
+ else
goUp.disabled = false;
ListDrives();
strcat(*selectedFileName, name);
}
else
- #endif
+ #endif
strcat(*selectedFileName, fileName->name);
if(selection.count > 1) strcat(*selectedFileName, "\"");
}
bool result = true;
FileAttribs exists = 0;
char * wildcardPointer = strstr(fileName, "*");
-
+
if(wildcardPointer)
{
if(style != selectDir)
while(pointer)
{
if(pointer[1] == '.' && pointer[2])
- pointer +=3;
- else
+ pointer +=3;
+ else
pointer ++;
pointer = strstr(pointer, "*");
numExtensions++;
extension[len++] = ch;
}
extension[len] = '\0';
-
+
if(!strcmpi(extension, compared))
{
matched = true;
char * name = new char[numExtensions * (4 + MAX_EXTENSION)];
delete customFilter.extensions;
-
+
if(!strcmp(wildcardPointer, "*") || strstr(wildcardPointer, "*.*"))
{
strcpy(name, $"All Files");
customFilter.extensions = new char[numExtensions * (2 + MAX_EXTENSION)];
customFilter.extensions[0] = '\0';
name[0] = '\0';
-
+
numExtensions = 0;
for(c = 0; wildcardPointer[c]; )
{
for(;(ch = wildcardPointer[c]) && IS_ALUNDER(ch); c++)
{
if(len < MAX_EXTENSION)
- extension[len++] = ch;
+ extension[len++] = ch;
}
extension[len] = '\0';
}
strcat(name, "*.");
strcat(name, extension);
- if(!extension[0])
+ if(!extension[0])
strcat(customFilter.extensions, ".");
else
strcat(customFilter.extensions, extension);
delete name;
}
-
+
filter.currentRow = filter.FindRow(fileFilter);
ListFiles();
result = true;
for(selection = selections.first; selection; selection = selection.next)
{
char * fileName = selection.data;
-
+
// For every file
strcpy(currentFileName, currentDirectory);
if(PathCat(currentFileName, fileName))
ListFiles();
}
- else
+ else
{
// *** SAVING ONLY ****
if(style == save)
DropBox filter
{
this, text = $"Filter:", anchor = { left = 96, right = 104, bottom = 16 }, hotKey = altR;
-
+
bool NotifySelect(DropBox control, DataRow row, Modifiers mods)
{
- fileFilter = row ? row.tag : 0;
+ fileFilter = (int)(row ? row.tag : 0);
ListFiles();
return true;
}
bool NotifySelect(DropBox control, DataRow row, Modifiers mods)
{
char * selectedFileName = null;
- fileType = row ? row.tag : 0;
+ fileType = (int)(row ? row.tag : 0);
if(style == save && types && types[fileType].typeExtension)
{
if(getNameFromListBox)
return true;
}
};
-
+
Label typeLabel
{
this, inactive = true, visible = false, anchor = { left = 8, bottom = 19 }, labeledWindow = type;
if(getNameFromListBox)
{
GetNamesFromRow(listBox.currentRow, &selectedFileName);
- result = SelectFile(selectedFileName, fromEditBox, control.id == DialogResult::ok);
+ result = SelectFile(selectedFileName, fromListBox, control.id == DialogResult::ok);
if(result && style == selectDir)
listBox.MakeActive();
}
char * fileName = this.fileName.line.text;
selectedFileName = new char[strlen(fileName)+1];
strcpy(selectedFileName, fileName);
- result = SelectFile(selectedFileName, fromListBox, control.id == DialogResult::ok);
+ result = SelectFile(selectedFileName, fromEditBox, control.id == DialogResult::ok);
if(result && style == selectDir)
this.fileName.MakeActive();
}
#endif
if(indent < fileName->indent)
{
- for(; currentDirectory[c]; )
+ for(; currentDirectory[c]; )
{
int len = 0;
char ch;
for(;(ch = currentDirectory[c]) && (ch != '/' && ch != '\\'); c++)
{
if(len < MAX_FILENAME)
- directory[len++] = ch;
+ directory[len++] = ch;
}
for(;(ch = currentDirectory[c]) && (ch == '/' || ch == '\\'); c++);
directory[len] = '\0';
};
DataField lookInField { dataType = "FileName", userData = this };
-
+
Label lookInLabel
{
this, position = { 10, 11 }, labeledWindow = lookIn;
return true;
}
};
-
+
Button cancel
{
parent = this, position = { 140, 60 }, size = { 60 }, hotKey = escape, text = $"Cancel";