//************************************************************************ void CScene::OnClose(HWND hWnd) //************************************************************************ { if ( m_hMidiTheme ) { // close any looping midi theme MCIClose( m_hMidiTheme ); m_hMidiTheme = NULL; } GetApp()->m_bAppNoErase = m_bSceneNoErase = m_bNoErase; // don't want the app background to paint in between GetApp()->ResetJoyMap(); DialogEnd( hWnd, TRUE ); }
void DialogEndAll( void ) /***********************************************************************/ { int i; HWND hDlg; for ( i=0; i<MAXDLG; i++ ) { if ( hDlg = MyDlgList[i].hdlg ) DialogEnd( hDlg, TRUE ); } }
do_menu(int item) { int xitem; char text[1000]; if (SAMP_MENU_1 <= item && item <= SAMP_MENU_N) { CheckMenuItem(MainMenu, SAMP_MENU_0+Sample, MF_BYCOMMAND|MF_UNCHECKED); CheckMenuItem(MainMenu, item, MF_BYCOMMAND|MF_CHECKED); Sample = item-SAMP_MENU_0; Redraw = 1; return(1); } switch (item) { case FILE_MENU_OPEN: open_file(); return(1); case CHAN_MENU_NCHAN: sprintf(text, "%d", Nchan); DialogSetText(text, CHAN_MENU_TEXTBOX); DialogBegin("ChanDlg"); return(1); case CHAN_MENU_TEXTBOX: return(0); case CHAN_MENU_SET: DialogGetText(text, CHAN_MENU_TEXTBOX); DialogEnd(); printf("Set channels to %s\n", text); Nchan = atoi(text); Redraw = 1; return(1); case CHAN_MENU_CANCEL: DialogEnd(); printf("cancelled channel dialog\n"); return(1); case PLOT_MENU_SETUP: /* used for setting menu items */ break; case PLOT_MENU_LINE: PlotType &= ~0xff; PlotType |= T_LINE; Redraw = 1; break; case PLOT_MENU_SCATTER: PlotType &= ~0xff; PlotType |= T_SCATTER; Redraw = 1; break; case PLOT_MENU_COLMAP: PlotType &= ~0xff; PlotType |= T_COLORMAP; Redraw = 1; break; case PLOT_MENU_STACKED: if (PlotType & T_STACKED) PlotType &= ~T_STACKED; else PlotType |= T_STACKED; Redraw = 1; break; default: printf("Didn't recognize menu pick %d\n", item); } CheckMenuItem(MainMenu, PLOT_MENU_LINE, MF_BYCOMMAND|(PlotType&T_LINE?MF_CHECKED:MF_UNCHECKED)); CheckMenuItem(MainMenu, PLOT_MENU_SCATTER, MF_BYCOMMAND|(PlotType&T_SCATTER?MF_CHECKED:MF_UNCHECKED)); CheckMenuItem(MainMenu, PLOT_MENU_COLMAP, MF_BYCOMMAND|(PlotType&T_COLORMAP?MF_CHECKED:MF_UNCHECKED)); CheckMenuItem(MainMenu, PLOT_MENU_STACKED, MF_BYCOMMAND|(PlotType&T_STACKED?MF_CHECKED:MF_UNCHECKED)); if (PlotType & T_COLORMAP) EnableMenuItem(MainMenu, PLOT_MENU_STACKED, MF_GRAYED); else EnableMenuItem(MainMenu, PLOT_MENU_STACKED, MF_ENABLED); return(1); }