Exemple #1
0
        public static Gtk.Window Create()
        {
            window = new Window ("Toolbar");
            window.Resizable = false;

            toolbar = new Toolbar ();
            toolbar.InsertStock (Stock.New, "Stock icon: New", "Toolbar/New",
                         new SignalFunc (set_small_icon), IntPtr.Zero, -1);

            toolbar.InsertStock (Stock.Open, "Stock icon: Open", "Toolbar/Open",
                         new SignalFunc (set_large_icon), IntPtr.Zero, -1);

            toolbar.AppendSpace ();

            toolbar.AppendItem ("Toggle tooltips", "toggle showing of tooltips", "Toolbar/Tooltips",
                        new Image (Stock.DialogInfo, IconSize.LargeToolbar),
                        new SignalFunc (toggle_tooltips));

            toolbar.AppendSpace ();

            toolbar.AppendItem ("Horizontal", "Horizontal layout", "Toolbar/Horizontal",
                        new Image (Stock.GoForward, IconSize.LargeToolbar),
                        new SignalFunc (set_horizontal));

            toolbar.AppendItem ("Vertical", "Vertical layout", "Toolbar/Vertical",
                        new Image (Stock.GoUp, IconSize.LargeToolbar),
                        new SignalFunc (set_vertical));

            toolbar.AppendSpace ();

            toolbar.AppendItem ("Icons", "Only show icons", "Toolbar/IconsOnly",
                        new Image (Stock.Home, IconSize.LargeToolbar),
                        new SignalFunc (set_icon_only));

            toolbar.AppendItem ("Text", "Only show Text", "Toolbar/TextOnly",
                        new Image (Stock.JustifyFill, IconSize.LargeToolbar),
                        new SignalFunc (set_text_only));

            toolbar.AppendItem ("Both", "Show both Icon & Text", "Toolbar/Both",
                        new Image (Stock.Index, IconSize.LargeToolbar),
                        new SignalFunc (set_both));

            toolbar.AppendItem ("Both (Horizontal)", "Show Icon & Text horizontally", "Toolbar/BothHoriz",
                        new Image (Stock.Index, IconSize.LargeToolbar),
                        new SignalFunc (set_both_horiz));

            toolbar.AppendSpace ();

            toolbar.InsertStock (Stock.Close, "Stock icon: Close", "Toolbar/Close",
                         new SignalFunc (Close_Button), IntPtr.Zero, -1);

            window.Add (toolbar);
            window.ShowAll ();
            return window;
        }
Exemple #2
0
    public static void Main(string [] args)
    {
        if (args.Length <= 0)
        {
            Console.WriteLine("\nUSAGE: ImageViewer.exe <filename>\n");
            return;
        }

        string filename = args [0];

        Application.Init();
        window = new Gtk.Window("Image Viewer");
        window.SetDefaultSize(200, 200);

        window.DeleteEvent += new EventHandler(Window_Delete);

        Gtk.ScrolledWindow scrolled_window = new Gtk.ScrolledWindow(new Adjustment(IntPtr.Zero), new Adjustment(IntPtr.Zero));

        Gtk.VBox vbox    = new VBox(false, 2);
        Gtk.VBox menubox = new VBox(false, 0);

        // Pack menubar
        MenuBar mb = new MenuBar();

        Menu     file_menu = new Menu();
        MenuItem exit_item = new ImageMenuItem("gtk-close", new Gtk.AccelGroup(IntPtr.Zero));
        MenuItem open_item = new ImageMenuItem("gtk-open", new Gtk.AccelGroup(IntPtr.Zero));

        exit_item.Activated += new EventHandler(Window_Delete);
        open_item.Activated += new EventHandler(Window_Open);

        file_menu.Append(open_item);
        file_menu.Append(new Gtk.SeparatorMenuItem());
        file_menu.Append(exit_item);
        MenuItem file_item = new MenuItem("_File");

        file_item.Submenu = file_menu;

        mb.Append(file_item);
        menubox.PackStart(mb, false, false, 0);

        // Pack toolbar
        Gtk.Toolbar toolbar = new Gtk.Toolbar();
        toolbar.InsertStock("gtk-open", "Open", String.Empty, new Gtk.SignalFunc(Window_Open), IntPtr.Zero, 0);
        toolbar.InsertStock("gtk-close", "Close", String.Empty, new Gtk.SignalFunc(Window_Delete), IntPtr.Zero, 1);
        menubox.PackStart(toolbar, false, false, 0);
        vbox.PackStart(menubox, false, false, 0);

        Pixbuf pix = GetPixbufFromFile(filename);

        image = new Image(pix);

        Refresh(filename, pix);

        scrolled_window.AddWithViewport(image);
        vbox.PackStart(scrolled_window, true, true, 0);

        scrolled_window.SetPolicy(PolicyType.Automatic, PolicyType.Automatic);
        window.Add(vbox);
        window.ShowAll();

        Application.Run();
    }