background = { 224, 224, 224 };
hasClose = true;
mergeMenus = false;
- text = "Call Stack";
+ text = $"Call Stack";
menu = Menu { };
anchor = Anchor { left = 0, right = 0.2, top = 0 };
size.h = 200;
- virtual void OnGotoLine(char * line);
- virtual void OnSelectFrame(int lineNumber);
+ virtual void OnSelectFrame(int frameIndex);
virtual void OnToggleBreakpoint();
bool moved, logging;
- FindDialog findDialog { master = this, editBox = editBox, isModal = true, autoCreate = false, text = "Find" };
-
+ FindDialog findDialog { master = this, editBox = editBox, isModal = true, autoCreate = false, text = $"Find" };
+
EditBox editBox
{
parent = this, freeCaret = true, autoEmpty = true, multiLine = true, readOnly = true;
bool NotifyDoubleClick(EditBox editBox, EditLine line, Modifiers mods)
{
- OnGotoLine(editBox.line.text);
+ int frameIndex = -1;
if(strcmp(editBox.line.text, "..."))
- {
- int lineNumber = atoi(editBox.line.text);
- OnSelectFrame(lineNumber);
- }
- return true;
+ frameIndex = atoi(editBox.line.text);
+ OnSelectFrame(frameIndex);
+ return false;
}
bool NotifyKeyDown(EditBox editBox, Key key, unichar ch)
{
if(key == enter || key == keyPadEnter)
{
- OnGotoLine(editBox.line.text);
+ int frameIndex = -1;
if(strcmp(editBox.line.text, "..."))
- {
- int lineNumber = atoi(editBox.line.text);
- OnSelectFrame(lineNumber);
- }
+ frameIndex = atoi(editBox.line.text);
+ OnSelectFrame(frameIndex);
return false;
}
if(key == f9)
}
};
- Menu editMenu { menu, "Edit", e };
+ Menu editMenu { menu, $"Edit", e };
MenuItem item;
-
+
MenuItem copyItem
{
- editMenu, "Copy", c, ctrlC;
+ editMenu, $"Copy", c, ctrlC;
bool NotifySelect(MenuItem selection, Modifiers mods)
{
editBox.Copy();
}
};
MenuDivider { editMenu };
- MenuItem { editMenu, "Find Previous", e, Key { f3, shift = true }, NotifySelect = MenuEditFind, id = 0 };
- MenuItem { editMenu, "Find Next", n, f3, NotifySelect = MenuEditFind, id = 1 };
- MenuItem { editMenu, "Find", f, ctrlF, NotifySelect = MenuEditFind, id = 2 };
+ MenuItem { editMenu, $"Find Previous", e, Key { f3, shift = true }, NotifySelect = MenuEditFind, id = 0 };
+ MenuItem { editMenu, $"Find Next", n, f3, NotifySelect = MenuEditFind, id = 1 };
+ MenuItem { editMenu, $"Find", f, ctrlF, NotifySelect = MenuEditFind, id = 2 };
bool MenuEditFind(MenuItem selection, Modifiers mods)
{
- int id = selection.id;
+ int64 id = selection.id;
char * searchString = findDialog.searchString;
if(id != 2 && searchString[0])
{
- editBox.Find(searchString, findDialog.wholeWord, findDialog.matchCase, id);
+ editBox.Find(searchString, findDialog.wholeWord, findDialog.matchCase, (bool)id);
return true;
}
findDialog.Create();
void Logf(char * format, ...)
{
char string[MAX_F_STRING*10];
-
va_list args;
va_start(args, format);
- vsprintf(string, format, args);
+ vsnprintf(string, sizeof(string), format, args);
+ string[sizeof(string)-1] = 0;
va_end(args);
Log(string);
void Show()
{
visible = true;
+ ide.RepositionWindows(false);
Activate();
}
}