public static void Register (IntPtr hwnd, Action<ThumbnailToolbar> toolbar_created_callback)
 {
     Win32WinProc proc = new Win32WinProc (WndProc);
     orig_winproc_dict[hwnd] = new Registration ()
     {
         ManagedProc = proc,
         OrigWinProc = SetWindowLongW (hwnd, GWL_WNDPROC, Marshal.GetFunctionPointerForDelegate (proc)),
         CreationCallback = toolbar_created_callback
     };
 }
        public static void Register(IntPtr hwnd, Action <ThumbnailToolbar> toolbar_created_callback)
        {
            Win32WinProc proc = new Win32WinProc(WndProc);

            orig_winproc_dict[hwnd] = new Registration()
            {
                ManagedProc      = proc,
                OrigWinProc      = SetWindowLongW(hwnd, GWL_WNDPROC, Marshal.GetFunctionPointerForDelegate(proc)),
                CreationCallback = toolbar_created_callback
            };
        }