diff options
Diffstat (limited to 'ldmicro/maincontrols.cpp')
-rw-r--r-- | ldmicro/maincontrols.cpp | 676 |
1 files changed, 337 insertions, 339 deletions
diff --git a/ldmicro/maincontrols.cpp b/ldmicro/maincontrols.cpp index 38c9b9f..5e328cf 100644 --- a/ldmicro/maincontrols.cpp +++ b/ldmicro/maincontrols.cpp @@ -22,9 +22,9 @@ // scrolling, I/O list, menus. // Jonathan Westhues, Nov 2004 //----------------------------------------------------------------------------- -#include <windows.h> -#include <commctrl.h> -#include <commdlg.h> +#include "linuxUI.h" +//#include <commctrl.h> +//#include <commdlg.h> #include <stdio.h> #include <stdlib.h> #include "ldmicro.h" @@ -103,26 +103,26 @@ HMENU MNU_ABOUT; HMENU MNU_ADV_SIMULATION; // scrollbars for the ladder logic area -static HWND HorizScrollBar; -static HWND VertScrollBar; +// static HWND HorizScrollBar; +// static HWND VertScrollBar; int ScrollWidth; int ScrollHeight; BOOL NeedHoriz; // status bar at the bottom of the screen, to display settings -static HWND StatusBar; +// static HWND StatusBar; // have to get back to the menus to gray/ungray, check/uncheck things -static HMENU FileMenu; -static HMENU EditMenu; -static HMENU InstructionMenu; -static HMENU ProcessorMenu; -static HMENU SimulateMenu; -static HMENU TopMenu; +// static HMENU FileMenu; +// static HMENU EditMenu; +// static HMENU InstructionMenu; +// static HMENU ProcessorMenu; +// static HMENU SimulateMenu; +// static HMENU TopMenu; // listview used to maintain the list of I/O pins with symbolic names, plus // the internal relay too -HWND IoList; +// HWND IoList; static int IoListSelectionPoint; static BOOL IoListOutOfSync; int IoListHeight; @@ -247,7 +247,6 @@ void UpdateMainWindowTitleBar(void) } gtk_window_set_title (GTK_WINDOW (window), line); - } //----------------------------------------------------------------------------- @@ -258,66 +257,66 @@ void SetMenusEnabled(BOOL canNegate, BOOL canNormal, BOOL canResetOnly, BOOL canSetOnly, BOOL canDelete, BOOL canInsertEnd, BOOL canInsertOther, BOOL canPushDown, BOOL canPushUp, BOOL canInsertComment) { - EnableMenuItem(EditMenu, MNU_PUSH_RUNG_UP, - canPushUp ? MF_ENABLED : MF_GRAYED); - EnableMenuItem(EditMenu, MNU_PUSH_RUNG_DOWN, - canPushDown ? MF_ENABLED : MF_GRAYED); - EnableMenuItem(EditMenu, MNU_DELETE_RUNG, - (Prog.numRungs > 1) ? MF_ENABLED : MF_GRAYED); - - EnableMenuItem(InstructionMenu, MNU_NEGATE, - canNegate ? MF_ENABLED : MF_GRAYED); - EnableMenuItem(InstructionMenu, MNU_MAKE_NORMAL, - canNormal ? MF_ENABLED : MF_GRAYED); - EnableMenuItem(InstructionMenu, MNU_MAKE_RESET_ONLY, - canResetOnly ? MF_ENABLED : MF_GRAYED); - EnableMenuItem(InstructionMenu, MNU_MAKE_SET_ONLY, - canSetOnly ? MF_ENABLED : MF_GRAYED); - - EnableMenuItem(InstructionMenu, MNU_INSERT_COMMENT, - canInsertComment ? MF_ENABLED : MF_GRAYED); - - EnableMenuItem(EditMenu, MNU_DELETE_ELEMENT, - canDelete ? MF_ENABLED : MF_GRAYED); - - int t; - t = canInsertEnd ? MF_ENABLED : MF_GRAYED; - EnableMenuItem(InstructionMenu, MNU_INSERT_COIL, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_RES, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_MOV, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_ADD, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_SUB, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_MUL, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_DIV, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_CTC, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_PERSIST, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_READ_ADC, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_SET_PWM, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_MASTER_RLY, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_SHIFT_REG, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_LUT, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_PWL, t); - - t = canInsertOther ? MF_ENABLED : MF_GRAYED; - EnableMenuItem(InstructionMenu, MNU_INSERT_TON, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_TOF, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_OSR, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_OSF, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_RTO, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_CONTACTS, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_CTU, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_CTD, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_EQU, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_NEQ, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_GRT, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_GEQ, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_LES, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_LEQ, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_SHORT, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_OPEN, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_UART_SEND, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_UART_RECV, t); - EnableMenuItem(InstructionMenu, MNU_INSERT_FMTD_STR, t); + // EnableMenuItem(EditMenu, MNU_PUSH_RUNG_UP, + // canPushUp ? MF_ENABLED : MF_GRAYED); + // EnableMenuItem(EditMenu, MNU_PUSH_RUNG_DOWN, + // canPushDown ? MF_ENABLED : MF_GRAYED); + // EnableMenuItem(EditMenu, MNU_DELETE_RUNG, + // (Prog.numRungs > 1) ? MF_ENABLED : MF_GRAYED); + + // EnableMenuItem(InstructionMenu, MNU_NEGATE, + // canNegate ? MF_ENABLED : MF_GRAYED); + // EnableMenuItem(InstructionMenu, MNU_MAKE_NORMAL, + // canNormal ? MF_ENABLED : MF_GRAYED); + // EnableMenuItem(InstructionMenu, MNU_MAKE_RESET_ONLY, + // canResetOnly ? MF_ENABLED : MF_GRAYED); + // EnableMenuItem(InstructionMenu, MNU_MAKE_SET_ONLY, + // canSetOnly ? MF_ENABLED : MF_GRAYED); + + // EnableMenuItem(InstructionMenu, MNU_INSERT_COMMENT, + // canInsertComment ? MF_ENABLED : MF_GRAYED); + + // EnableMenuItem(EditMenu, MNU_DELETE_ELEMENT, + // canDelete ? MF_ENABLED : MF_GRAYED); + + // int t; + // t = canInsertEnd ? MF_ENABLED : MF_GRAYED; + // EnableMenuItem(InstructionMenu, MNU_INSERT_COIL, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_RES, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_MOV, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_ADD, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_SUB, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_MUL, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_DIV, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_CTC, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_PERSIST, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_READ_ADC, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_SET_PWM, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_MASTER_RLY, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_SHIFT_REG, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_LUT, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_PWL, t); + + // t = canInsertOther ? MF_ENABLED : MF_GRAYED; + // EnableMenuItem(InstructionMenu, MNU_INSERT_TON, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_TOF, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_OSR, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_OSF, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_RTO, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_CONTACTS, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_CTU, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_CTD, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_EQU, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_NEQ, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_GRT, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_GEQ, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_LES, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_LEQ, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_SHORT, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_OPEN, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_UART_SEND, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_UART_RECV, t); + // EnableMenuItem(InstructionMenu, MNU_INSERT_FMTD_STR, t); } //----------------------------------------------------------------------------- @@ -325,15 +324,14 @@ void SetMenusEnabled(BOOL canNegate, BOOL canNormal, BOOL canResetOnly, //----------------------------------------------------------------------------- void SetUndoEnabled(BOOL undoEnabled, BOOL redoEnabled) { - EnableMenuItem(EditMenu, MNU_UNDO, undoEnabled ? MF_ENABLED : MF_GRAYED); - EnableMenuItem(EditMenu, MNU_REDO, redoEnabled ? MF_ENABLED : MF_GRAYED); + // EnableMenuItem(EditMenu, MNU_UNDO, undoEnabled ? MF_ENABLED : MF_GRAYED); + // EnableMenuItem(EditMenu, MNU_REDO, redoEnabled ? MF_ENABLED : MF_GRAYED); } //----------------------------------------------------------------------------- // Create the top-level menu bar for the main window. Mostly static, but we // create the "select processor" menu from the list in mcutable.h dynamically. //----------------------------------------------------------------------------- - HMENU MakeMainWindowMenus(void) { HMENU MenuBox; // Box for alignment @@ -613,29 +611,29 @@ HMENU MakeMainWindowMenus(void) //----------------------------------------------------------------------------- void RefreshScrollbars(void) { - SCROLLINFO vert, horiz; - SetUpScrollbars(&NeedHoriz, &horiz, &vert); - SetScrollInfo(HorizScrollBar, SB_CTL, &horiz, TRUE); - SetScrollInfo(VertScrollBar, SB_CTL, &vert, TRUE); - - RECT main; - GetClientRect(MainWindow, &main); - - if(NeedHoriz) { - MoveWindow(HorizScrollBar, 0, IoListTop - ScrollHeight - 2, - main.right - ScrollWidth - 2, ScrollHeight, TRUE); - ShowWindow(HorizScrollBar, SW_SHOW); - EnableWindow(HorizScrollBar, TRUE); - } else { - ShowWindow(HorizScrollBar, SW_HIDE); - } - MoveWindow(VertScrollBar, main.right - ScrollWidth - 2, 1, ScrollWidth, - NeedHoriz ? (IoListTop - ScrollHeight - 4) : (IoListTop - 3), TRUE); - - MoveWindow(VertScrollBar, main.right - ScrollWidth - 2, 1, ScrollWidth, - NeedHoriz ? (IoListTop - ScrollHeight - 4) : (IoListTop - 3), TRUE); - - InvalidateRect(MainWindow, NULL, FALSE); + // SCROLLINFO vert, horiz; + // SetUpScrollbars(&NeedHoriz, &horiz, &vert); + // SetScrollInfo(HorizScrollBar, SB_CTL, &horiz, TRUE); + // SetScrollInfo(VertScrollBar, SB_CTL, &vert, TRUE); + + // RECT main; + // GetClientRect(MainWindow, &main); + + // if(NeedHoriz) { + // MoveWindow(HorizScrollBar, 0, IoListTop - ScrollHeight - 2, + // main.right - ScrollWidth - 2, ScrollHeight, TRUE); + // ShowWindow(HorizScrollBar, SW_SHOW); + // EnableWindow(HorizScrollBar, TRUE); + // } else { + // ShowWindow(HorizScrollBar, SW_HIDE); + // } + // MoveWindow(VertScrollBar, main.right - ScrollWidth - 2, 1, ScrollWidth, + // NeedHoriz ? (IoListTop - ScrollHeight - 4) : (IoListTop - 3), TRUE); + + // MoveWindow(VertScrollBar, main.right - ScrollWidth - 2, 1, ScrollWidth, + // NeedHoriz ? (IoListTop - ScrollHeight - 4) : (IoListTop - 3), TRUE); + + // InvalidateRect(MainWindow, NULL, FALSE); } //----------------------------------------------------------------------------- @@ -644,44 +642,44 @@ void RefreshScrollbars(void) //----------------------------------------------------------------------------- void VscrollProc(WPARAM wParam) { - int prevY = ScrollYOffset; - switch(LOWORD(wParam)) { - case SB_LINEUP: - case SB_PAGEUP: - if(ScrollYOffset > 0) { - ScrollYOffset--; - } - break; - - case SB_LINEDOWN: - case SB_PAGEDOWN: - if(ScrollYOffset < ScrollYOffsetMax) { - ScrollYOffset++; - } - break; - - case SB_TOP: - ScrollYOffset = 0; - break; - - case SB_BOTTOM: - ScrollYOffset = ScrollYOffsetMax; - break; - - case SB_THUMBTRACK: - case SB_THUMBPOSITION: - ScrollYOffset = HIWORD(wParam); - break; - } - if(prevY != ScrollYOffset) { - SCROLLINFO si; - si.cbSize = sizeof(si); - si.fMask = SIF_POS; - si.nPos = ScrollYOffset; - SetScrollInfo(VertScrollBar, SB_CTL, &si, TRUE); - - InvalidateRect(MainWindow, NULL, FALSE); - } + // int prevY = ScrollYOffset; + // switch(LOWORD(wParam)) { + // case SB_LINEUP: + // case SB_PAGEUP: + // if(ScrollYOffset > 0) { + // ScrollYOffset--; + // } + // break; + + // case SB_LINEDOWN: + // case SB_PAGEDOWN: + // if(ScrollYOffset < ScrollYOffsetMax) { + // ScrollYOffset++; + // } + // break; + + // case SB_TOP: + // ScrollYOffset = 0; + // break; + + // case SB_BOTTOM: + // ScrollYOffset = ScrollYOffsetMax; + // break; + + // case SB_THUMBTRACK: + // case SB_THUMBPOSITION: + // ScrollYOffset = HIWORD(wParam); + // break; + // } + // if(prevY != ScrollYOffset) { + // SCROLLINFO si; + // si.cbSize = sizeof(si); + // si.fMask = SIF_POS; + // si.nPos = ScrollYOffset; + // SetScrollInfo(VertScrollBar, SB_CTL, &si, TRUE); + + // InvalidateRect(MainWindow, NULL, FALSE); + // } } //----------------------------------------------------------------------------- @@ -690,50 +688,50 @@ void VscrollProc(WPARAM wParam) //----------------------------------------------------------------------------- void HscrollProc(WPARAM wParam) { - int prevX = ScrollXOffset; - switch(LOWORD(wParam)) { - case SB_LINEUP: - ScrollXOffset -= FONT_WIDTH; - break; - - case SB_PAGEUP: - ScrollXOffset -= POS_WIDTH*FONT_WIDTH; - break; - - case SB_LINEDOWN: - ScrollXOffset += FONT_WIDTH; - break; - - case SB_PAGEDOWN: - ScrollXOffset += POS_WIDTH*FONT_WIDTH; - break; - - case SB_TOP: - ScrollXOffset = 0; - break; - - case SB_BOTTOM: - ScrollXOffset = ScrollXOffsetMax; - break; - - case SB_THUMBTRACK: - case SB_THUMBPOSITION: - ScrollXOffset = HIWORD(wParam); - break; - } - - if(ScrollXOffset > ScrollXOffsetMax) ScrollXOffset = ScrollXOffsetMax; - if(ScrollXOffset < 0) ScrollXOffset = 0; - - if(prevX != ScrollXOffset) { - SCROLLINFO si; - si.cbSize = sizeof(si); - si.fMask = SIF_POS; - si.nPos = ScrollXOffset; - SetScrollInfo(HorizScrollBar, SB_CTL, &si, TRUE); - - InvalidateRect(MainWindow, NULL, FALSE); - } + // int prevX = ScrollXOffset; + // switch(LOWORD(wParam)) { + // case SB_LINEUP: + // ScrollXOffset -= FONT_WIDTH; + // break; + + // case SB_PAGEUP: + // ScrollXOffset -= POS_WIDTH*FONT_WIDTH; + // break; + + // case SB_LINEDOWN: + // ScrollXOffset += FONT_WIDTH; + // break; + + // case SB_PAGEDOWN: + // ScrollXOffset += POS_WIDTH*FONT_WIDTH; + // break; + + // case SB_TOP: + // ScrollXOffset = 0; + // break; + + // case SB_BOTTOM: + // ScrollXOffset = ScrollXOffsetMax; + // break; + + // case SB_THUMBTRACK: + // case SB_THUMBPOSITION: + // ScrollXOffset = HIWORD(wParam); + // break; + // } + + // if(ScrollXOffset > ScrollXOffsetMax) ScrollXOffset = ScrollXOffsetMax; + // if(ScrollXOffset < 0) ScrollXOffset = 0; + + // if(prevX != ScrollXOffset) { + // SCROLLINFO si; + // si.cbSize = sizeof(si); + // si.fMask = SIF_POS; + // si.nPos = ScrollXOffset; + // SetScrollInfo(HorizScrollBar, SB_CTL, &si, TRUE); + + // InvalidateRect(MainWindow, NULL, FALSE); + // } } //----------------------------------------------------------------------------- @@ -744,72 +742,72 @@ void HscrollProc(WPARAM wParam) //----------------------------------------------------------------------------- void RefreshControlsToSettings(void) { - int i; - - if(!IoListOutOfSync) { - IoListSelectionPoint = -1; - for(i = 0; i < Prog.io.count; i++) { - if(ListView_GetItemState(IoList, i, LVIS_SELECTED)) { - IoListSelectionPoint = i; - break; - } - } - } - - ListView_DeleteAllItems(IoList); - for(i = 0; i < Prog.io.count; i++) { - LVITEM lvi; - lvi.mask = LVIF_TEXT | LVIF_PARAM | LVIF_STATE; - lvi.state = lvi.stateMask = 0; - lvi.iItem = i; - lvi.iSubItem = 0; - lvi.pszText = LPSTR_TEXTCALLBACK; - lvi.lParam = i; - - if(ListView_InsertItem(IoList, &lvi) < 0) oops(); - } - if(IoListSelectionPoint >= 0) { - for(i = 0; i < Prog.io.count; i++) { - ListView_SetItemState(IoList, i, 0, LVIS_SELECTED); - } - ListView_SetItemState(IoList, IoListSelectionPoint, LVIS_SELECTED, - LVIS_SELECTED); - ListView_EnsureVisible(IoList, IoListSelectionPoint, FALSE); - } - IoListOutOfSync = FALSE; - - if(Prog.mcu) { - SendMessage(StatusBar, SB_SETTEXT, 0, (LPARAM)Prog.mcu->mcuName); - } else { - SendMessage(StatusBar, SB_SETTEXT, 0, (LPARAM)_("no MCU selected")); - } - char buf[256]; - sprintf(buf, _("cycle time %.2f ms"), (double)Prog.cycleTime/1000.0); - SendMessage(StatusBar, SB_SETTEXT, 1, (LPARAM)buf); - - if(Prog.mcu && (Prog.mcu->whichIsa == ISA_ANSIC || - Prog.mcu->whichIsa == ISA_INTERPRETED)) - { - strcpy(buf, ""); - } else { - sprintf(buf, _("processor clock %.4f MHz"), - (double)Prog.mcuClock/1000000.0); - } - SendMessage(StatusBar, SB_SETTEXT, 2, (LPARAM)buf); - - for(i = 0; i < NUM_SUPPORTED_MCUS; i++) { - if(&SupportedMcus[i] == Prog.mcu) { - CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_CHECKED); - } else { - CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_UNCHECKED); - } - } - // `(no microcontroller)' setting - if(!Prog.mcu) { - CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_CHECKED); - } else { - CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_UNCHECKED); - } + // int i; + + // if(!IoListOutOfSync) { + // IoListSelectionPoint = -1; + // for(i = 0; i < Prog.io.count; i++) { + // if(ListView_GetItemState(IoList, i, LVIS_SELECTED)) { + // IoListSelectionPoint = i; + // break; + // } + // } + // } + + // ListView_DeleteAllItems(IoList); + // for(i = 0; i < Prog.io.count; i++) { + // LVITEM lvi; + // lvi.mask = LVIF_TEXT | LVIF_PARAM | LVIF_STATE; + // lvi.state = lvi.stateMask = 0; + // lvi.iItem = i; + // lvi.iSubItem = 0; + // lvi.pszText = LPSTR_TEXTCALLBACK; + // lvi.lParam = i; + + // if(ListView_InsertItem(IoList, &lvi) < 0) oops(); + // } + // if(IoListSelectionPoint >= 0) { + // for(i = 0; i < Prog.io.count; i++) { + // ListView_SetItemState(IoList, i, 0, LVIS_SELECTED); + // } + // ListView_SetItemState(IoList, IoListSelectionPoint, LVIS_SELECTED, + // LVIS_SELECTED); + // ListView_EnsureVisible(IoList, IoListSelectionPoint, FALSE); + // } + // IoListOutOfSync = FALSE; + + // if(Prog.mcu) { + // SendMessage(StatusBar, SB_SETTEXT, 0, (LPARAM)Prog.mcu->mcuName); + // } else { + // SendMessage(StatusBar, SB_SETTEXT, 0, (LPARAM)_("no MCU selected")); + // } + // char buf[256]; + // sprintf(buf, _("cycle time %.2f ms"), (double)Prog.cycleTime/1000.0); + // SendMessage(StatusBar, SB_SETTEXT, 1, (LPARAM)buf); + + // if(Prog.mcu && (Prog.mcu->whichIsa == ISA_ANSIC || + // Prog.mcu->whichIsa == ISA_INTERPRETED)) + // { + // strcpy(buf, ""); + // } else { + // sprintf(buf, _("processor clock %.4f MHz"), + // (double)Prog.mcuClock/1000000.0); + // } + // SendMessage(StatusBar, SB_SETTEXT, 2, (LPARAM)buf); + + // for(i = 0; i < NUM_SUPPORTED_MCUS; i++) { + // if(&SupportedMcus[i] == Prog.mcu) { + // CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_CHECKED); + // } else { + // CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_UNCHECKED); + // } + // } + // // `(no microcontroller)' setting + // if(!Prog.mcu) { + // CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_CHECKED); + // } else { + // CheckMenuItem(ProcessorMenu, MNU_PROCESSOR_0+i, MF_UNCHECKED); + // } } //----------------------------------------------------------------------------- @@ -844,32 +842,32 @@ void GenerateIoListDontLoseSelection(void) //----------------------------------------------------------------------------- void MainWindowResized(void) { - RECT main; - GetClientRect(MainWindow, &main); - - RECT status; - GetWindowRect(StatusBar, &status); - int statusHeight = status.bottom - status.top; - - MoveWindow(StatusBar, 0, main.bottom - statusHeight, main.right, - statusHeight, TRUE); - - // Make sure that the I/O list can't disappear entirely. - if(IoListHeight < 30) { - IoListHeight = 30; - } - IoListTop = main.bottom - IoListHeight - statusHeight; - // Make sure that we can't drag the top of the I/O list above the - // bottom of the menu bar, because it then becomes inaccessible. - if(IoListTop < 5) { - IoListHeight = main.bottom - statusHeight - 5; - IoListTop = main.bottom - IoListHeight - statusHeight; - } - MoveWindow(IoList, 0, IoListTop, main.right, IoListHeight, TRUE); - - RefreshScrollbars(); - - InvalidateRect(MainWindow, NULL, FALSE); + // RECT main; + // GetClientRect(MainWindow, &main); + + // RECT status; + // GetWindowRect(StatusBar, &status); + // int statusHeight = status.bottom - status.top; + + // MoveWindow(StatusBar, 0, main.bottom - statusHeight, main.right, + // statusHeight, TRUE); + + // // Make sure that the I/O list can't disappear entirely. + // if(IoListHeight < 30) { + // IoListHeight = 30; + // } + // IoListTop = main.bottom - IoListHeight - statusHeight; + // // Make sure that we can't drag the top of the I/O list above the + // // bottom of the menu bar, because it then becomes inaccessible. + // if(IoListTop < 5) { + // IoListHeight = main.bottom - statusHeight - 5; + // IoListTop = main.bottom - IoListHeight - statusHeight; + // } + // MoveWindow(IoList, 0, IoListTop, main.right, IoListHeight, TRUE); + + // RefreshScrollbars(); + + // InvalidateRect(MainWindow, NULL, FALSE); } //----------------------------------------------------------------------------- @@ -878,62 +876,62 @@ void MainWindowResized(void) //----------------------------------------------------------------------------- void ToggleSimulationMode(void) { - InSimulationMode = !InSimulationMode; - - if(InSimulationMode) { - EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_ENABLED); - EnableMenuItem(SimulateMenu, MNU_SINGLE_CYCLE, MF_ENABLED); - - EnableMenuItem(FileMenu, MNU_OPEN, MF_GRAYED); - EnableMenuItem(FileMenu, MNU_SAVE, MF_GRAYED); - EnableMenuItem(FileMenu, MNU_SAVE_AS, MF_GRAYED); - EnableMenuItem(FileMenu, MNU_NEW, MF_GRAYED); - EnableMenuItem(FileMenu, MNU_EXPORT, MF_GRAYED); - - EnableMenuItem(TopMenu, 1, MF_GRAYED | MF_BYPOSITION); - EnableMenuItem(TopMenu, 2, MF_GRAYED | MF_BYPOSITION); - EnableMenuItem(TopMenu, 3, MF_GRAYED | MF_BYPOSITION); - EnableMenuItem(TopMenu, 5, MF_GRAYED | MF_BYPOSITION); + // InSimulationMode = !InSimulationMode; + + // if(InSimulationMode) { + // EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_ENABLED); + // EnableMenuItem(SimulateMenu, MNU_SINGLE_CYCLE, MF_ENABLED); + + // EnableMenuItem(FileMenu, MNU_OPEN, MF_GRAYED); + // EnableMenuItem(FileMenu, MNU_SAVE, MF_GRAYED); + // EnableMenuItem(FileMenu, MNU_SAVE_AS, MF_GRAYED); + // EnableMenuItem(FileMenu, MNU_NEW, MF_GRAYED); + // EnableMenuItem(FileMenu, MNU_EXPORT, MF_GRAYED); + + // EnableMenuItem(TopMenu, 1, MF_GRAYED | MF_BYPOSITION); + // EnableMenuItem(TopMenu, 2, MF_GRAYED | MF_BYPOSITION); + // EnableMenuItem(TopMenu, 3, MF_GRAYED | MF_BYPOSITION); + // EnableMenuItem(TopMenu, 5, MF_GRAYED | MF_BYPOSITION); - CheckMenuItem(SimulateMenu, MNU_SIMULATION_MODE, MF_CHECKED); - - ClearSimulationData(); - // Recheck InSimulationMode, because there could have been a compile - // error, which would have kicked us out of simulation mode. - if(UartFunctionUsed() && InSimulationMode) { - ShowUartSimulationWindow(); - } - } else { - RealTimeSimulationRunning = FALSE; - KillTimer(MainWindow, TIMER_SIMULATE); - - EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_GRAYED); - EnableMenuItem(SimulateMenu, MNU_STOP_SIMULATION, MF_GRAYED); - EnableMenuItem(SimulateMenu, MNU_SINGLE_CYCLE, MF_GRAYED); - - EnableMenuItem(FileMenu, MNU_OPEN, MF_ENABLED); - EnableMenuItem(FileMenu, MNU_SAVE, MF_ENABLED); - EnableMenuItem(FileMenu, MNU_SAVE_AS, MF_ENABLED); - EnableMenuItem(FileMenu, MNU_NEW, MF_ENABLED); - EnableMenuItem(FileMenu, MNU_EXPORT, MF_ENABLED); - - EnableMenuItem(TopMenu, 1, MF_ENABLED | MF_BYPOSITION); - EnableMenuItem(TopMenu, 2, MF_ENABLED | MF_BYPOSITION); - EnableMenuItem(TopMenu, 3, MF_ENABLED | MF_BYPOSITION); - EnableMenuItem(TopMenu, 5, MF_ENABLED | MF_BYPOSITION); - - CheckMenuItem(SimulateMenu, MNU_SIMULATION_MODE, MF_UNCHECKED); - - if(UartFunctionUsed()) { - DestroyUartSimulationWindow(); - } - } - - UpdateMainWindowTitleBar(); - - DrawMenuBar(MainWindow); - InvalidateRect(MainWindow, NULL, FALSE); - ListView_RedrawItems(IoList, 0, Prog.io.count - 1); + // CheckMenuItem(SimulateMenu, MNU_SIMULATION_MODE, MF_CHECKED); + + // ClearSimulationData(); + // // Recheck InSimulationMode, because there could have been a compile + // // error, which would have kicked us out of simulation mode. + // if(UartFunctionUsed() && InSimulationMode) { + // ShowUartSimulationWindow(); + // } + // } else { + // RealTimeSimulationRunning = FALSE; + // KillTimer(MainWindow, TIMER_SIMULATE); + + // EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_GRAYED); + // EnableMenuItem(SimulateMenu, MNU_STOP_SIMULATION, MF_GRAYED); + // EnableMenuItem(SimulateMenu, MNU_SINGLE_CYCLE, MF_GRAYED); + + // EnableMenuItem(FileMenu, MNU_OPEN, MF_ENABLED); + // EnableMenuItem(FileMenu, MNU_SAVE, MF_ENABLED); + // EnableMenuItem(FileMenu, MNU_SAVE_AS, MF_ENABLED); + // EnableMenuItem(FileMenu, MNU_NEW, MF_ENABLED); + // EnableMenuItem(FileMenu, MNU_EXPORT, MF_ENABLED); + + // EnableMenuItem(TopMenu, 1, MF_ENABLED | MF_BYPOSITION); + // EnableMenuItem(TopMenu, 2, MF_ENABLED | MF_BYPOSITION); + // EnableMenuItem(TopMenu, 3, MF_ENABLED | MF_BYPOSITION); + // EnableMenuItem(TopMenu, 5, MF_ENABLED | MF_BYPOSITION); + + // CheckMenuItem(SimulateMenu, MNU_SIMULATION_MODE, MF_UNCHECKED); + + // if(UartFunctionUsed()) { + // DestroyUartSimulationWindow(); + // } + // } + + // UpdateMainWindowTitleBar(); + + // DrawMenuBar(MainWindow); + // InvalidateRect(MainWindow, NULL, FALSE); + // ListView_RedrawItems(IoList, 0, Prog.io.count - 1); } //----------------------------------------------------------------------------- @@ -942,11 +940,11 @@ void ToggleSimulationMode(void) //----------------------------------------------------------------------------- void StartSimulation(void) { - RealTimeSimulationRunning = TRUE; - EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_GRAYED); - EnableMenuItem(SimulateMenu, MNU_STOP_SIMULATION, MF_ENABLED); - StartSimulationTimer(); - UpdateMainWindowTitleBar(); + // RealTimeSimulationRunning = TRUE; + // EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_GRAYED); + // EnableMenuItem(SimulateMenu, MNU_STOP_SIMULATION, MF_ENABLED); + // StartSimulationTimer(); + // UpdateMainWindowTitleBar(); } //----------------------------------------------------------------------------- @@ -955,11 +953,11 @@ void StartSimulation(void) //----------------------------------------------------------------------------- void StopSimulation(void) { - RealTimeSimulationRunning = FALSE; + // RealTimeSimulationRunning = FALSE; - EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_ENABLED); - EnableMenuItem(SimulateMenu, MNU_STOP_SIMULATION, MF_GRAYED); - KillTimer(MainWindow, TIMER_SIMULATE); + // EnableMenuItem(SimulateMenu, MNU_START_SIMULATION, MF_ENABLED); + // EnableMenuItem(SimulateMenu, MNU_STOP_SIMULATION, MF_GRAYED); + // KillTimer(MainWindow, TIMER_SIMULATE); - UpdateMainWindowTitleBar(); + // UpdateMainWindowTitleBar(); } |