コード例 #1
0
BOOL CVirtualHelper::call(WPARAM w, LPARAM l)
{
	if (!handler) return FALSE;
	CEnterLeavePython _celp;
	PyObject *arglst = Py_BuildValue("NN",PyWinObject_FromPARAM(w), PyWinObject_FromPARAM(l));
	return do_call(arglst);
}
コード例 #2
0
ファイル: PyWinTypesmodule.cpp プロジェクト: malrsrch/pywin32
PyObject *PyWinObject_FromMSG(const MSG *pMsg)
{
	return Py_BuildValue("NiNNi(ii)",
				PyWinLong_FromHANDLE(pMsg->hwnd),
				pMsg->message,
				PyWinObject_FromPARAM(pMsg->wParam),
				PyWinObject_FromPARAM(pMsg->lParam),
				pMsg->time,
				pMsg->pt.x,
				pMsg->pt.y);
}
コード例 #3
0
ファイル: PyIContextMenu2.cpp プロジェクト: malrsrch/pywin32
STDMETHODIMP PyGContextMenu2::HandleMenuMsg( 
                UINT uMsg,
                WPARAM wParam,
                LPARAM lParam)
{
	PY_GATEWAY_METHOD;
	HRESULT hr=InvokeViaPolicy("HandleMenuMsg", NULL, "INN", uMsg,
				   PyWinObject_FromPARAM(wParam),
				   PyWinObject_FromPARAM(lParam));
	if (FAILED(hr)) return hr;
	return S_OK;
}
コード例 #4
0
// @pymethod |PyCPropertyPage|OnWizardNext|Calls the default MFC OnWizardNext handler.
PyObject *ui_proppage_on_wizard_next( PyObject *self, PyObject *args )
{
	CPythonPropertyPage *pPP;
	if (!(pPP=GetPropPage(self)))
		return NULL;
	CHECK_NO_ARGS2(args,OnWizardNext  );
	// @xref <vm PyCPropertyPage.OnWizardNext>
	GUI_BGN_SAVE;
	LRESULT result = pPP->CPropertyPage::OnWizardNext();
	GUI_END_SAVE;
	return PyWinObject_FromPARAM(result);
}
コード例 #5
0
ファイル: PyIContextMenu3.cpp プロジェクト: vmuriart/pywin32
STDMETHODIMP PyGContextMenu3::HandleMenuMsg2(
    UINT uMsg,
    WPARAM wParam,
    LPARAM lParam,
    LRESULT *lpResult)
{
    PY_GATEWAY_METHOD;
    PyObject *ret;
    HRESULT hr=InvokeViaPolicy("HandleMenuMsg2", &ret, "INN", uMsg,
                               PyWinObject_FromPARAM(wParam),
                               PyWinObject_FromPARAM(lParam));
    if (FAILED(hr)) return hr;
    if (lpResult) {
        if (ret == Py_None)
            *lpResult = FALSE;
        else {
            PyWinObject_AsPARAM(ret, (WPARAM *)lpResult);
            hr = PyCom_SetAndLogCOMErrorFromPyException("HandleMenuMsg2",
                    IID_IContextMenu3);
        }
    }
    Py_DECREF(ret);
    return hr;
}
コード例 #6
0
ファイル: PyIShellBrowser.cpp プロジェクト: malrsrch/pywin32
STDMETHODIMP PyGShellBrowser::SendControlMsg(
		/* [in] */ UINT id,
		/* [in] */ UINT uMsg,
		/* [in] */ WPARAM wParam,
		/* [in] */ LPARAM lParam,
		/* [in] */ LRESULT * pret)
{
	PY_GATEWAY_METHOD;
	PyObject *result;
	HRESULT hr=InvokeViaPolicy("SendControlMsg", &result, "iiNN", id, uMsg, PyWinObject_FromPARAM(wParam), PyWinObject_FromPARAM(lParam));
	if (PyInt_Check(result) || PyLong_Check(result))
		PyWinLong_AsULONG_PTR(result, (ULONG_PTR *)pret);
	Py_DECREF(result);
	return hr;
}
コード例 #7
0
STDMETHODIMP PyGShellView::AddPropertySheetPages(
		/* [in] */ DWORD dwReserved,
		/* [in] */ LPFNSVADDPROPSHEETPAGE pfn,
		/* [in] */ LPARAM lparam)
{
	PY_GATEWAY_METHOD;
// *** The input argument pfn of type "LPFNSVADDPROPSHEETPAGE" was not processed ***
//   - Please ensure this conversion function exists, and is appropriate
//   - The type 'LPFNSVADDPROPSHEETPAGE' (pfn) is unknown.
	PyObject *obpfn = Py_None;
	Py_INCREF(Py_None);
	if (obpfn==NULL) return MAKE_PYCOM_GATEWAY_FAILURE_CODE("AddPropertySheetPages");
	HRESULT hr=InvokeViaPolicy("AddPropertySheetPages", NULL, "lON", dwReserved, obpfn, PyWinObject_FromPARAM(lparam));
	Py_DECREF(obpfn);
	return hr;
}