#include <webchild.h>
Public Types | |
typedef BASE | super |
Public Member Functions | |
IPCtrlWindow (HWND hwnd) | |
template<typename T > | |
IPCtrlWindow (HWND hwnd, T &info) | |
HRESULT | create_control (HWND hwnd, REFIID clsid, REFIID riid) |
Protected Member Functions | |
LRESULT | WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam) |
Protected Attributes | |
ComInit | _usingCOM |
SMARTPTR | _control |
OleInPlaceClient | _client_side |
SIfacePtr< IOleInPlaceObject > | _in_place_object |
Definition at line 321 of file webchild.h.
typedef BASE IPCtrlWindow< BASE, SMARTPTR >::super |
Reimplemented in WebChildWindow.
Definition at line 323 of file webchild.h.
IPCtrlWindow< BASE, SMARTPTR >::IPCtrlWindow | ( | HWND | hwnd ) | [inline] |
Definition at line 325 of file webchild.h.
: super(hwnd) { }
IPCtrlWindow< BASE, SMARTPTR >::IPCtrlWindow | ( | HWND | hwnd, |
T & | info | ||
) | [inline] |
Definition at line 330 of file webchild.h.
: super(hwnd, info) { }
HRESULT IPCtrlWindow< BASE, SMARTPTR >::create_control | ( | HWND | hwnd, |
REFIID | clsid, | ||
REFIID | riid | ||
) | [inline] |
Definition at line 335 of file webchild.h.
{ // Erzeugen einer Instanz des Controls HRESULT hr = _control.CreateInstance(clsid, riid); if (FAILED(hr)) return hr; _client_side.attach(hwnd); hr = _client_side.attach_control(SIfacePtr<IOleObject>(_control, IID_IOleObject)/*, OLEIVERB_INPLACEACTIVATE, hwnd, &Rect(10, 10, 500, 500)*/); if (FAILED(hr)) return hr; // try to get a IOleInPlaceObject interface for window resizing return _control.QueryInterface(IID_IOleInPlaceObject, &_in_place_object); // _in_place_object = _control }
LRESULT IPCtrlWindow< BASE, SMARTPTR >::WndProc | ( | UINT | nmsg, |
WPARAM | wparam, | ||
LPARAM | lparam | ||
) | [inline, protected] |
Reimplemented in WebChildWindow.
Definition at line 354 of file webchild.h.
Referenced by IPCtrlWindow< ChildWindow, SIfacePtr< IWebBrowser2 > >::WndProc().
{ if (nmsg == WM_SIZE) { if (_in_place_object) { RECT rect = {0, 0, LOWORD(lparam), HIWORD(lparam)}; _in_place_object->SetObjectRects(&rect, &rect); } } else if (nmsg == WM_CLOSE) { _in_place_object = NULL; if (_control) { _client_side.detach(SIfacePtr<IOleObject>(_control, IID_IOleObject), OLECLOSE_NOSAVE); _control = NULL; } } return super::WndProc(nmsg, wparam, lparam); }
OleInPlaceClient IPCtrlWindow< BASE, SMARTPTR >::_client_side [protected] |
Definition at line 376 of file webchild.h.
Referenced by IPCtrlWindow< ChildWindow, SIfacePtr< IWebBrowser2 > >::create_control(), and IPCtrlWindow< ChildWindow, SIfacePtr< IWebBrowser2 > >::WndProc().
SMARTPTR IPCtrlWindow< BASE, SMARTPTR >::_control [protected] |
Definition at line 375 of file webchild.h.
Referenced by IPCtrlWindow< ChildWindow, SIfacePtr< IWebBrowser2 > >::create_control(), and IPCtrlWindow< ChildWindow, SIfacePtr< IWebBrowser2 > >::WndProc().
SIfacePtr<IOleInPlaceObject> IPCtrlWindow< BASE, SMARTPTR >::_in_place_object [protected] |
Definition at line 377 of file webchild.h.
Referenced by IPCtrlWindow< ChildWindow, SIfacePtr< IWebBrowser2 > >::create_control(), and IPCtrlWindow< ChildWindow, SIfacePtr< IWebBrowser2 > >::WndProc().
ComInit IPCtrlWindow< BASE, SMARTPTR >::_usingCOM [protected] |
Definition at line 374 of file webchild.h.
ROS Explorer Source Code Documentation
generated on 02.01.2013 by ![]() |