~ubuntu-branches/ubuntu/trusty/smuxi/trusty-proposed

« back to all changes in this revision

Viewing changes to src/Frontend-GNOME/osx/IgeMacMenu.cs

  • Committer: Package Import Robot
  • Author(s): Mirco Bauer
  • Date: 2013-05-25 22:11:31 UTC
  • mfrom: (1.2.12)
  • Revision ID: package-import@ubuntu.com-20130525221131-nd2mc0kzubuwyx20
Tags: 0.8.11-1
* [22d13d5] Imported Upstream version 0.8.11
* [6d2b95a] Refreshed patches
* [89eb66e] Added ServiceStack libraries to smuxi-engine package
* [848ab10] Enable Campfire engine
* [c6dbdc7] Always build db4o for predictable build result
* [13ec489] Exclude OS X specific libraries from dh_clideps

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
using System;
 
2
using System.Collections;
 
3
using System.Runtime.InteropServices;
 
4
 
 
5
namespace IgeMacIntegration {
 
6
 
 
7
    public class IgeMacMenu {
 
8
 
 
9
        [DllImport("libigemacintegration.dylib")]
 
10
        static extern void ige_mac_menu_connect_window_key_handler (IntPtr window);
 
11
 
 
12
        public static void ConnectWindowKeyHandler (Gtk.Window window)
 
13
        {
 
14
            ige_mac_menu_connect_window_key_handler (window.Handle);
 
15
        }
 
16
 
 
17
        [DllImport("libigemacintegration.dylib")]
 
18
        static extern void ige_mac_menu_set_global_key_handler_enabled (bool enabled);
 
19
 
 
20
        public static bool GlobalKeyHandlerEnabled {
 
21
            set { 
 
22
                ige_mac_menu_set_global_key_handler_enabled (value);
 
23
            }
 
24
        }
 
25
 
 
26
        [DllImport("libigemacintegration.dylib")]
 
27
        static extern void ige_mac_menu_set_menu_bar(IntPtr menu_shell);
 
28
 
 
29
        public static Gtk.MenuShell MenuBar { 
 
30
            set {
 
31
                ige_mac_menu_set_menu_bar(value == null ? IntPtr.Zero : value.Handle);
 
32
            }
 
33
        }
 
34
 
 
35
        [DllImport("libigemacintegration.dylib")]
 
36
        static extern void ige_mac_menu_set_quit_menu_item(IntPtr quit_item);
 
37
 
 
38
        public static Gtk.MenuItem QuitMenuItem { 
 
39
            set {
 
40
                ige_mac_menu_set_quit_menu_item(value == null ? IntPtr.Zero : value.Handle);
 
41
            }
 
42
        }
 
43
 
 
44
        [DllImport("libigemacintegration.dylib")]
 
45
        static extern IntPtr ige_mac_menu_add_app_menu_group();
 
46
 
 
47
        public static IgeMacIntegration.IgeMacMenuGroup AddAppMenuGroup() {
 
48
            IntPtr raw_ret = ige_mac_menu_add_app_menu_group();
 
49
            IgeMacIntegration.IgeMacMenuGroup ret = raw_ret == IntPtr.Zero ? null : (IgeMacIntegration.IgeMacMenuGroup) GLib.Opaque.GetOpaque (raw_ret, typeof (IgeMacIntegration.IgeMacMenuGroup), false);
 
50
            return ret;
 
51
        }
 
52
    }
 
53
 
 
54
    public class IgeMacMenuGroup : GLib.Opaque {
 
55
 
 
56
        [DllImport("libigemacintegration.dylib")]
 
57
        static extern void ige_mac_menu_add_app_menu_item(IntPtr raw, IntPtr menu_item, IntPtr label);
 
58
 
 
59
        public void AddMenuItem(Gtk.MenuItem menu_item, string label) {
 
60
            IntPtr native_label = GLib.Marshaller.StringToPtrGStrdup (label);
 
61
            ige_mac_menu_add_app_menu_item(Handle, menu_item == null ? IntPtr.Zero : menu_item.Handle, native_label);
 
62
            GLib.Marshaller.Free (native_label);
 
63
        }
 
64
 
 
65
        public IgeMacMenuGroup(IntPtr raw) : base(raw) {}
 
66
    }
 
67
}
 
 
b'\\ No newline at end of file'