2005-05-17 Not Zed <NotZed@Ximian.com> * Evolution.cs: added initial e_error wrapper. * Camel.cs: added multipart & contenttype wrappers. svn path=/trunk/; revision=29376
159 lines
4.4 KiB
C#
159 lines
4.4 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using System.Reflection;
|
|
|
|
using Camel;
|
|
|
|
namespace Evolution {
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class PopupTarget {
|
|
public IntPtr popup;
|
|
public IntPtr widget;
|
|
public int type;
|
|
public int mask;
|
|
};
|
|
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class MenuTarget {
|
|
public IntPtr menu;
|
|
public IntPtr widget;
|
|
public int type;
|
|
public int mask;
|
|
};
|
|
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class EventTarget {
|
|
public IntPtr aevent;
|
|
public int type;
|
|
public int mask;
|
|
};
|
|
};
|
|
|
|
namespace Evolution {
|
|
public class Error {
|
|
// can we marshal varags from c#?
|
|
[DllImport("eutil")] static extern int e_error_run(IntPtr parent, string tag, IntPtr end);
|
|
[DllImport("eutil")] static extern int e_error_run(IntPtr parent, string tag, string arg0, IntPtr end);
|
|
[DllImport("eutil")] static extern int e_error_run(IntPtr parent, string tag, string arg0, string arg1, IntPtr end);
|
|
[DllImport("eutil")] static extern int e_error_run(IntPtr parent, string tag, string arg0, string arg1, string arg2, IntPtr end);
|
|
|
|
public static int run(IntPtr parent, string tag) {
|
|
return e_error_run(parent, tag, (IntPtr)0);
|
|
}
|
|
public static int run(IntPtr parent, string tag, string arg0) {
|
|
return e_error_run(parent, tag, arg0, (IntPtr)0);
|
|
}
|
|
public static int run(IntPtr parent, string tag, string arg0, string arg1) {
|
|
return e_error_run(parent, tag, arg0, arg1, (IntPtr)0);
|
|
}
|
|
public static int run(IntPtr parent, string tag, string arg0, string arg1, string arg2) {
|
|
return e_error_run(parent, tag, arg0, arg1, arg2, (IntPtr)0);
|
|
}
|
|
}
|
|
}
|
|
|
|
namespace Evolution.Mail {
|
|
/* ********************************************************************** */
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class PopupTargetSelect : PopupTarget {
|
|
public IntPtr _folder;
|
|
public string uri;
|
|
public IntPtr _uids;
|
|
|
|
public static PopupTargetSelect get(IntPtr o) {
|
|
return (PopupTargetSelect)Marshal.PtrToStructure(o, typeof(PopupTargetSelect));
|
|
}
|
|
|
|
public Camel.Folder folder {
|
|
get { return (Camel.Folder)Camel.Object.fromCamel(_folder); }
|
|
}
|
|
|
|
public string [] uids {
|
|
get { return Camel.Util.getUIDArray(_uids); }
|
|
}
|
|
}
|
|
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class PopupTargetURI : Evolution.PopupTarget {
|
|
public string uri;
|
|
|
|
public static PopupTargetURI get(IntPtr o) {
|
|
return (PopupTargetURI)Marshal.PtrToStructure(o, typeof(PopupTargetURI));
|
|
}
|
|
}
|
|
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class PopupTargetPart : PopupTarget {
|
|
public string mimeType;
|
|
public IntPtr _part;
|
|
|
|
public static PopupTargetPart get(IntPtr o) {
|
|
return (PopupTargetPart)Marshal.PtrToStructure(o, typeof(PopupTargetPart));
|
|
}
|
|
|
|
public Camel.Object part {
|
|
get { return (Camel.Object)Camel.Object.fromCamel(_part); }
|
|
}
|
|
}
|
|
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public struct PopupTargetFolder {
|
|
public Evolution.PopupTarget target;
|
|
public string uri;
|
|
|
|
public static PopupTargetFolder get(IntPtr o) {
|
|
return (PopupTargetFolder)Marshal.PtrToStructure(o, typeof(PopupTargetFolder));
|
|
}
|
|
}
|
|
|
|
/* ********************************************************************** */
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class MenuTargetSelect : MenuTarget {
|
|
public IntPtr _folder;
|
|
public string uri;
|
|
public IntPtr _uids;
|
|
|
|
public static MenuTargetSelect get(IntPtr o) {
|
|
return (MenuTargetSelect)Marshal.PtrToStructure(o, typeof(MenuTargetSelect));
|
|
}
|
|
|
|
public Camel.Folder folder {
|
|
get { return (Camel.Folder)Camel.Object.fromCamel(_folder); }
|
|
}
|
|
|
|
public string [] uids {
|
|
get { return Camel.Util.getUIDArray(_uids); }
|
|
}
|
|
}
|
|
|
|
/* ********************************************************************** */
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class EventTargetFolder : EventTarget {
|
|
public string uri;
|
|
|
|
public static EventTargetFolder get(IntPtr o) {
|
|
return (EventTargetFolder)Marshal.PtrToStructure(o, typeof(EventTargetFolder));
|
|
}
|
|
}
|
|
|
|
[StructLayout (LayoutKind.Sequential)]
|
|
public class EventTargetMessage : EventTarget {
|
|
public IntPtr _folder;
|
|
public string uid;
|
|
public IntPtr _message;
|
|
|
|
public static EventTargetMessage get(IntPtr o) {
|
|
return (EventTargetMessage)Marshal.PtrToStructure(o, typeof(EventTargetMessage));
|
|
}
|
|
|
|
public Camel.Folder folder {
|
|
get { return (Camel.Folder)Camel.Object.fromCamel(_folder); }
|
|
}
|
|
|
|
public Camel.MimeMessage message {
|
|
get { return (Camel.MimeMessage)Camel.Object.fromCamel(_message); }
|
|
}
|
|
|
|
}
|
|
};
|