Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

[r8765]: main / trunk / extensions / platform / windows / oodialog / oodMouse.hpp Maximize Restore History

Download this file

oodMouse.hpp    69 lines (62 with data), 4.6 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/*----------------------------------------------------------------------------*/;
/* */;
/* Copyright (c) 2011-2013 Rexx Language Association. All rights reserved. */;
/* */;
/* This program and the accompanying materials are made available under */;
/* the terms of the Common Public License v1.0 which accompanies this */;
/* distribution. A copy is also available at the following address: */;
/* http://www.oorexx.org/license.html */;
/* */;
/* Redistribution and use in source and binary forms, with or */;
/* without modification, are permitted provided that the following */;
/* conditions are met: */;
/* */;
/* Redistributions of source code must retain the above copyright */;
/* notice, this list of conditions and the following disclaimer. */;
/* Redistributions in binary form must reproduce the above copyright */;
/* notice, this list of conditions and the following disclaimer in */;
/* the documentation and/or other materials provided with the distribution. */;
/* */;
/* Neither the name of Rexx Language Association nor the names */;
/* of its contributors may be used to endorse or promote products */;
/* derived from this software without specific prior written permission. */;
/* */;
/* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS */;
/* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT */;
/* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS */;
/* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT */;
/* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, */;
/* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED */;
/* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, */;
/* OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY */;
/* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING */;
/* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS */;
/* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */;
/* */;
/*----------------------------------------------------------------------------*/;
#ifndef oodMouse_Included
#define oodMouse_Included
// Struct for instantiating a new Rexx Mouse object.
typedef struct newMouseParams
{
pCPlainBaseDialog dlgCSelf; // Pointer to dialog owner CSelf struct, if owner is a dialog window
pCDialogControl controlCSelf; // Pointer to dialog control owner CSelf struct, if owner is a dialog control window
bool isDlgWindow; // True if owner window is a dialog, false if owner window is a dialog control
} NEWMOUSEPARAMS;
typedef NEWMOUSEPARAMS *PNEWMOUSEPARAMS;
// Struct for mouse wheel notify processing.
typedef struct {
pCPlainBaseDialog pcpbd; // The owner dialog CSelf.
RexxObjectPtr mouse; // The Rexx mouse object
HWND hwnd; // Window handle of window receiving WM_MOUSEWHEEL.
char *method; // Name of method to invoke.
uint32_t tag; // The internal ooDialog event message tag.
bool isControlMouse; // True if a dialog control mouse processing, false if a dialog mouse processing.
bool willReply; // User wants event handler invoked directly, or not.
} MOUSEWHEELDATA;
typedef MOUSEWHEELDATA *PMOUSEWHEELDATA;
extern MsgReplyType processMouseMsg(RexxThreadContext *c, char *methodName, uint32_t tag, uint32_t msg, WPARAM wParam,
LPARAM lParam, pCPlainBaseDialog pcpbd);
extern LRESULT processMouseMsg(RexxThreadContext *c, char *methodName, uint32_t tag, uint32_t msg, HWND hwnd,
WPARAM wParam, LPARAM lParam, pCDialogControl pcdc);
#endif