Added uiAreaHandler.DragBroken() and implemented it on Windows.
This commit is contained in:
parent
0560d14a52
commit
bc5c6dac58
|
@ -118,6 +118,11 @@ static void handlerMouseEvent(uiAreaHandler *a, uiArea *area, uiAreaMouseEvent *
|
||||||
e->Held1To64);
|
e->Held1To64);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void handlerDragBroken(uiAreaHandler *ah, uiArea *a)
|
||||||
|
{
|
||||||
|
printf("drag broken\n");
|
||||||
|
}
|
||||||
|
|
||||||
static void recalcScroll(GtkSpinButton *sb, gpointer data)
|
static void recalcScroll(GtkSpinButton *sb, gpointer data)
|
||||||
{
|
{
|
||||||
areaUpdateScroll(area);
|
areaUpdateScroll(area);
|
||||||
|
@ -145,6 +150,7 @@ int main(void)
|
||||||
h.ah.VScrollMax = handlerVScrollMax;
|
h.ah.VScrollMax = handlerVScrollMax;
|
||||||
h.ah.RedrawOnResize = handlerRedrawOnResize;
|
h.ah.RedrawOnResize = handlerRedrawOnResize;
|
||||||
h.ah.MouseEvent = handlerMouseEvent;
|
h.ah.MouseEvent = handlerMouseEvent;
|
||||||
|
h.ah.DragBroken = handlerDragBroken;
|
||||||
|
|
||||||
gtk_init(NULL, NULL);
|
gtk_init(NULL, NULL);
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,7 @@ struct uiAreaHandler {
|
||||||
uintmax_t (*VScrollMax)(uiAreaHandler *, uiArea *);
|
uintmax_t (*VScrollMax)(uiAreaHandler *, uiArea *);
|
||||||
int (*RedrawOnResize)(uiAreaHandler *, uiArea *);
|
int (*RedrawOnResize)(uiAreaHandler *, uiArea *);
|
||||||
void (*MouseEvent)(uiAreaHandler *, uiArea *, uiAreaMouseEvent *);
|
void (*MouseEvent)(uiAreaHandler *, uiArea *, uiAreaMouseEvent *);
|
||||||
|
void (*DragBroken)(uiAreaHandler *, uiArea *);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct uiAreaDrawParams {
|
struct uiAreaDrawParams {
|
||||||
|
|
|
@ -124,6 +124,11 @@ static void handlerMouseEvent(uiAreaHandler *a, uiArea *area, uiAreaMouseEvent *
|
||||||
e->Held1To64);
|
e->Held1To64);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void handlerDragBroken(uiAreaHandler *ah, uiArea *a)
|
||||||
|
{
|
||||||
|
printf("drag broken\n");
|
||||||
|
}
|
||||||
|
|
||||||
// areaUpdateScroll(area);
|
// areaUpdateScroll(area);
|
||||||
|
|
||||||
@interface appDelegate : NSObject<NSApplicationDelegate, NSTextFieldDelegate>
|
@interface appDelegate : NSObject<NSApplicationDelegate, NSTextFieldDelegate>
|
||||||
|
@ -183,6 +188,7 @@ int main(void)
|
||||||
h.ah.VScrollMax = handlerVScrollMax;
|
h.ah.VScrollMax = handlerVScrollMax;
|
||||||
h.ah.RedrawOnResize = handlerRedrawOnResize;
|
h.ah.RedrawOnResize = handlerRedrawOnResize;
|
||||||
h.ah.MouseEvent = handlerMouseEvent;
|
h.ah.MouseEvent = handlerMouseEvent;
|
||||||
|
h.ah.DragBroken = handlerDragBroken;
|
||||||
|
|
||||||
app = [NSApplication sharedApplication];
|
app = [NSApplication sharedApplication];
|
||||||
[app setActivationPolicy:NSApplicationActivationPolicyRegular];
|
[app setActivationPolicy:NSApplicationActivationPolicyRegular];
|
||||||
|
|
|
@ -13,6 +13,7 @@ struct uiAreaHandler {
|
||||||
uintmax_t (*VScrollMax)(uiAreaHandler *, uiArea *);
|
uintmax_t (*VScrollMax)(uiAreaHandler *, uiArea *);
|
||||||
int (*RedrawOnResize)(uiAreaHandler *, uiArea *);
|
int (*RedrawOnResize)(uiAreaHandler *, uiArea *);
|
||||||
void (*MouseEvent)(uiAreaHandler *, uiArea *, uiAreaMouseEvent *);
|
void (*MouseEvent)(uiAreaHandler *, uiArea *, uiAreaMouseEvent *);
|
||||||
|
void (*DragBroken)(uiAreaHandler *, uiArea *);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct uiAreaDrawParams {
|
struct uiAreaDrawParams {
|
||||||
|
|
|
@ -425,7 +425,7 @@ static LRESULT CALLBACK areaWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM
|
||||||
case WM_CAPTURECHANGED:
|
case WM_CAPTURECHANGED:
|
||||||
if (a->capturing) {
|
if (a->capturing) {
|
||||||
a->capturing = FALSE;
|
a->capturing = FALSE;
|
||||||
// TODO raise DragBroken()
|
(*(a->ah->DragBroken))(a->ah, a);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,6 +124,11 @@ static void handlerMouseEvent(uiAreaHandler *a, uiArea *area, uiAreaMouseEvent *
|
||||||
e->Held1To64);
|
e->Held1To64);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void handlerDragBroken(uiAreaHandler *ah, uiArea *a)
|
||||||
|
{
|
||||||
|
printf("drag broken\n");
|
||||||
|
}
|
||||||
|
|
||||||
static void repos(HWND hwnd)
|
static void repos(HWND hwnd)
|
||||||
{
|
{
|
||||||
RECT r;
|
RECT r;
|
||||||
|
@ -176,6 +181,7 @@ int main(void)
|
||||||
h.ah.VScrollMax = handlerVScrollMax;
|
h.ah.VScrollMax = handlerVScrollMax;
|
||||||
h.ah.RedrawOnResize = handlerRedrawOnResize;
|
h.ah.RedrawOnResize = handlerRedrawOnResize;
|
||||||
h.ah.MouseEvent = handlerMouseEvent;
|
h.ah.MouseEvent = handlerMouseEvent;
|
||||||
|
h.ah.DragBroken = handlerDragBroken;
|
||||||
|
|
||||||
registerAreaClass();
|
registerAreaClass();
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,7 @@ struct uiAreaHandler {
|
||||||
uintmax_t (*VScrollMax)(uiAreaHandler *, uiArea *);
|
uintmax_t (*VScrollMax)(uiAreaHandler *, uiArea *);
|
||||||
int (*RedrawOnResize)(uiAreaHandler *, uiArea *);
|
int (*RedrawOnResize)(uiAreaHandler *, uiArea *);
|
||||||
void (*MouseEvent)(uiAreaHandler *, uiArea *, uiAreaMouseEvent *);
|
void (*MouseEvent)(uiAreaHandler *, uiArea *, uiAreaMouseEvent *);
|
||||||
|
void (*DragBroken)(uiAreaHandler *, uiArea *);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct uiAreaDrawParams {
|
struct uiAreaDrawParams {
|
||||||
|
|
Loading…
Reference in New Issue