void CRunView::ShowPictureComplete(LPCTSTR lpszPicture) { IDispatch* pMenuObject = GetMainMenu(); if (pMenuObject != NULL) { m_arrAccels.RemoveAll(); if (m_menu.m_hMenu != NULL) m_menu.DestroyMenu(); m_menu.CreateMenu(); CComQIPtr<IDrawMenu, &IID_IDrawMenu> spDrawMenu(pMenuObject); long lCount; spDrawMenu->get_ItemCount(&lCount); int nIndex = 0; AddMenuItems(m_menu.m_hMenu, spDrawMenu, nIndex, lCount, 0); if (m_pMenu == NULL) { CMenu* pMenu = AfxGetMainWnd()->GetMenu(); if (pMenu != NULL) m_hAltMenu = pMenu->GetSafeHmenu(); } AfxGetMainWnd()->SetMenu(&m_menu); m_pMenu = spDrawMenu; m_bLockMenu = FALSE; pMenuObject->Release(); if (m_arrAccels.GetSize() > 0) m_hAccelTable = CreateAcceleratorTable(m_arrAccels.GetData(), m_arrAccels.GetSize()); } else { if (m_pMenu != NULL) { ::SetMenu(AfxGetMainWnd()->GetSafeHwnd(), m_hAltMenu); m_hAltMenu = NULL; m_pMenu = NULL; } } }
/*-----------------------------------------------------------------------------------------------------------------------*/ int main(int argc,char *argv[]) { GtkWidget *Win,*VBox,*VBox2,*HBox,*MenuBox,*MenuBar,*But; gint i; static GdkColor White = {0,0xFFFF,0xFFFF,0xFFFF}; static GdkColor Red = {0,0xFFFF,0x0000,0x0000}; static GdkColor Blue = {0,0x0000,0x0000,0xFFFF}; GtkStyle *RedStyle,*BlueStyle; g_thread_init(NULL); gdk_threads_init(); gdk_threads_enter(); gtk_init(&argc,&argv); AcqOn=FALSE; strcpy(SetupFName,""); StnNo=1; NScalers=4; for (i=0;i<4;++i) SubA[i]=i; Interval[0]=1; Interval[1]=5; Interval[2]=60; Duration[0]=10; Duration[1]=60; RedStyle=gtk_style_copy(gtk_widget_get_default_style()); for (i=0;i<5;i++) { RedStyle->fg[i]=RedStyle->text[i]=Red; RedStyle->bg[i]=White; } BlueStyle=gtk_style_copy(gtk_widget_get_default_style()); for (i=0;i<5;i++) { BlueStyle->fg[i]=BlueStyle->text[i]=Blue; BlueStyle->bg[i]=White; } Win=gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_signal_connect(GTK_OBJECT(Win),"delete_event",GTK_SIGNAL_FUNC(DeleteMain),NULL); gtk_signal_connect(GTK_OBJECT(Win),"destroy",GTK_SIGNAL_FUNC(DestroyMain),NULL); gtk_window_set_title(GTK_WINDOW(Win),"SCALER (07 Aug 2009)"); gtk_widget_set_uposition(GTK_WIDGET(Win),100,50); gtk_widget_set_usize(GTK_WIDGET(Win),845,600); VBox=gtk_vbox_new(FALSE,0); gtk_container_add(GTK_CONTAINER(Win),VBox); MenuBox=gtk_vbox_new(FALSE,1); gtk_box_pack_start(GTK_BOX(VBox),MenuBox,FALSE,FALSE,0); GetMainMenu(Win,&MenuBar); gtk_box_pack_start(GTK_BOX(MenuBox),MenuBar,FALSE,TRUE,0); VBox2=gtk_vbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(VBox),VBox2,FALSE,FALSE,0); gtk_container_set_border_width(GTK_CONTAINER(VBox2),10); HBox=gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(VBox2),HBox,FALSE,FALSE,0); S_Start=gtk_label_new("Start:\n"); gtk_box_pack_start(GTK_BOX(HBox),S_Start,FALSE,FALSE,0); HBox=gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(VBox2),HBox,FALSE,FALSE,0); S_Stop=gtk_label_new("Stop:\n"); gtk_box_pack_start(GTK_BOX(HBox),S_Stop,FALSE,FALSE,0); HBox=gtk_hbox_new(FALSE,0); gtk_box_pack_start(GTK_BOX(VBox),HBox,FALSE,FALSE,0); But=gtk_button_new_with_label("Elapsed"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,0); gtk_widget_set_usize(But,56,24); But=gtk_button_new_with_label("Scaler1"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,40); gtk_widget_set_usize(But,50,24); But=gtk_button_new_with_label("Rate1"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,-20); gtk_widget_set_usize(But,50,24); But=gtk_button_new_with_label("Scaler2"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,70); gtk_widget_set_usize(But,50,24); But=gtk_button_new_with_label("Rate2"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,-50); gtk_widget_set_usize(But,50,24); But=gtk_button_new_with_label("Scaler3"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,100); gtk_widget_set_usize(But,50,24); But=gtk_button_new_with_label("Rate3"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,-80); gtk_widget_set_usize(But,50,24); But=gtk_button_new_with_label("Scaler4"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,135); gtk_widget_set_usize(But,50,24); But=gtk_button_new_with_label("Rate4"); SetStyleRecursively(But,BlueStyle); gtk_box_pack_start(GTK_BOX(HBox),But,FALSE,FALSE,-120); gtk_widget_set_usize(But,50,24); S_Output=gtk_text_new(NULL,NULL); gtk_widget_set_usize(GTK_WIDGET(S_Output),0,430); SetStyleRecursively(S_Output,RedStyle); gtk_box_pack_start(GTK_BOX(VBox),S_Output,FALSE,FALSE,0); gtk_text_set_word_wrap(GTK_TEXT(S_Output),TRUE); gtk_text_set_editable(GTK_TEXT(S_Output),FALSE); gtk_widget_show_all(Win); //gdk_threads_enter(); gtk_main(); gdk_threads_leave(); gtk_style_unref(RedStyle); gtk_style_unref(BlueStyle); return(0); }