- (* Set callbacks for the buttons. *)
- ignore (connect_button#connect#clicked
- ~callback:Vc_connection_dlg.open_connection);
- ignore (open_button#connect#clicked
- ~callback:(open_domain_details tree model columns));
- ignore (start_button#connect#clicked
- ~callback:(start_domain tree model columns));
- ignore (pause_button#connect#clicked
- ~callback:(pause_domain tree model columns));
- ignore (resume_button#connect#clicked
- ~callback:(resume_domain tree model columns));
- ignore (shutdown_button#connect#clicked
- ~callback:(shutdown_domain tree model columns));
+ (* Add buttons to the toolbar (requires the treeview to
+ * have been made above).
+ *)
+ let () =
+ let connect_button_menu = GMenu.menu () in
+ let connect_button =
+ GButton.menu_tool_button
+ ~label:"Connect ..." ~stock:`CONNECT
+ ~menu:connect_button_menu
+ ~packing:toolbar#insert () in
+ ignore (GButton.separator_tool_item ~packing:toolbar#insert ());
+ let open_button =
+ GButton.tool_button ~label:"Details" ~stock:`OPEN
+ ~packing:toolbar#insert () in
+ ignore (GButton.separator_tool_item ~packing:toolbar#insert ());
+ let start_button =
+ GButton.tool_button ~label:"Start" ~stock:`ADD
+ ~packing:toolbar#insert () in
+ let pause_button =
+ GButton.tool_button ~label:"Pause" ~stock:`MEDIA_PAUSE
+ ~packing:toolbar#insert () in
+ let resume_button =
+ GButton.tool_button ~label:"Resume" ~stock:`MEDIA_PLAY
+ ~packing:toolbar#insert () in
+ ignore (GButton.separator_tool_item ~packing:toolbar#insert ());
+ let shutdown_button =
+ GButton.tool_button ~label:"Shutdown" ~stock:`STOP
+ ~packing:toolbar#insert () in
+
+ (* Set callbacks for the toolbar buttons. *)
+ ignore (connect_button#connect#clicked
+ ~callback:(Vc_connection_dlg.open_connection window));
+ ignore (open_button#connect#clicked
+ ~callback:(open_domain_details tree model columns));
+ ignore (start_button#connect#clicked
+ ~callback:(start_domain tree model columns));
+ ignore (pause_button#connect#clicked
+ ~callback:(pause_domain tree model columns));
+ ignore (resume_button#connect#clicked
+ ~callback:(resume_domain tree model columns));
+ ignore (shutdown_button#connect#clicked
+ ~callback:(shutdown_domain tree model columns));
+
+ (* Set a menu on the connect menu-button. *)
+ let () =
+ let factory = new GMenu.factory connect_button_menu (*~accel_group*) in
+ let local_xen = factory#add_item "Local Xen" in
+ let local_qemu = factory#add_item "Local QEMU/KVM" in
+ ignore (factory#add_separator ());
+ let open_dialog = factory#add_item "Connect to ..." in
+ ignore (local_xen#connect#activate
+ ~callback:Vc_connection_dlg.open_local_xen);
+ ignore (local_qemu#connect#activate
+ ~callback:Vc_connection_dlg.open_local_qemu);
+ ignore (open_dialog#connect#activate
+ ~callback:(Vc_connection_dlg.open_connection window)) in
+ () in