tabCycle = true;
size = { 440, 208 };
autoCreate = false;
-
+
public:
property char * searchString { set { findContent.contents = value; } get { return findContent.contents; } };
property bool contentWholeWord { set { contentWholeWord.checked = value; } get { return contentWholeWord.checked; } };
return true;
}
};
-
+
SearchThread searchThread { findDialog = this };
FileDialog fileDialog { master = this, type = selectDir, text = $"Select Search Location..." };
findWhere.disabled = disabled;
subDirs.disabled = disabled;*/
-
+
findContent.Activate();
return true;
}
void SearchStart()
{
char text[2048];
-
+
searchThread.active = true;
searchThread.project = null;
searchThread.projectNode = null;
//searchThread.nameWholeWord = nameWholeWord.checked;
searchThread.contentMatchCase = contentMatchCase.checked;
searchThread.contentWholeWord = contentWholeWord.checked;
-
+
searchThread.filter = filters[fileFilter];
strcpy(searchThread.nameCriteria, fileName.contents);
searchThread.replaceMode = replaceMode;
//cancel.text = "Stop";
-
+
ide.outputView.ShowClearSelectTab(find);
Destroy(0);
-
+
searchThread.Create();
}
//double lastTime = GetTime();
SearchStackFrame stack[stackSize];
FindInFilesMode mode = this.mode;
-
+
EditBox replaceEdit = null;
abort = false;
project.name, filterName, substring, and, containing);
}
app.Unlock();
-
+
if(replaceMode)
{
replaceEdit = EditBox
{
- multiLine = true,textHorzScroll = true,textVertScroll = true,
+ multiLine = true,textHorzScroll = true,textVertScroll = true,
text = $"Replacing Editbox", size = Size { 640,480 }/*,maxLineSize = 65536*/
};
}
if(mode == directory)
{
strcpy(stack[0].path, dir);
- stack[0].fileList = FileListing { dir, extensions = filter.extensions }; // there should be a sorted = true/false
+ stack[0].fileList = FileListing { dir, extensions = filter.extensions }; // there should be a sorted = true/false
for(frame = 0; frame >= 0 && frame < stackSize && !abort; )
{
{
MakePathRelative(stack[frame].fileList.path, dir, fileRelative);
relative = true;
-
+
filesSearchedCount++;
if(match && contentCriteria[0])
{
}
break;
case file:
- {
+ {
bool relative = true;
char fileRelative[MAX_LOCATION];
char filePath[MAX_LOCATION];
// todo
/*else
f.Seek(-strlen(contentCriteria), current);*/
-
+
}
delete f;
if(replaceCount)