From: Christophe CURIS <christophe.cu...@free.fr> The declarations have been split by source file, adding the usual separation mark. Removed these 2 prototypes: - W_SetFocusOfToplevel: case typo, the correct prototype already existed in the file; - W_TextWidth: function is not defined anywhere --- WINGs/WINGs/WINGsP.h | 627 ++++++++++++++++++++++++++------------------------ 1 file changed, 327 insertions(+), 300 deletions(-)
diff --git a/WINGs/WINGs/WINGsP.h b/WINGs/WINGs/WINGsP.h index 40debb9..91b4d59 100644 --- a/WINGs/WINGs/WINGsP.h +++ b/WINGs/WINGs/WINGsP.h @@ -23,104 +23,33 @@ extern "C" { #endif /* __cplusplus */ +/* ---[ global settigns ]------------------------------------------------- */ #define DOUBLE_BUFFER 1 -#define WC_UserWidget 128 - #define SCROLLER_WIDTH 20 -#define XDND_VERSION 3 - - -typedef struct W_Application { - char *applicationName; - int argc; - char **argv; - char *resourcePath; -} W_Application; - - -typedef struct W_Font { - struct W_Screen *screen; - - struct _XftFont *font; - - short height; - short y; - short refCount; - char *name; -} W_Font; - - -typedef struct W_Pixmap { - struct W_Screen *screen; - Pixmap pixmap; - Pixmap mask; - unsigned short width; - unsigned short height; - short depth; - short refCount; -} W_Pixmap; - - -typedef struct W_Color { - struct W_Screen *screen; - - XColor color; - unsigned short alpha; - short refCount; - GC gc; - struct { - unsigned int exact:1; - } flags; -} W_Color; - - -typedef struct W_FocusInfo { - struct W_View *toplevel; - struct W_View *focused; /* view that has the focus in this toplevel */ - struct W_FocusInfo *next; -} W_FocusInfo; - - - -typedef void* W_DndState(WMView *destView, XClientMessageEvent *event, - WMDraggingInfo *info); - - -typedef struct W_DragOperationItem { - WMDragOperationType type; - char* text; -} W_DragOperationItem; - +typedef struct _WINGsConfiguration { + char *systemFont; + char *boldSystemFont; + int defaultFontSize; + Bool antialiasedText; + char *floppyPath; + unsigned doubleClickDelay; + unsigned mouseWheelUp; + unsigned mouseWheelDown; +} _WINGsConfiguration; -typedef struct W_DragSourceInfo { - WMView *sourceView; - Window destinationWindow; - W_DndState *state; - WMSelectionProcs *selectionProcs; - Window icon; - WMPoint imageLocation; - WMPoint mouseOffset; /* mouse pos in icon */ - Cursor dragCursor; - WMRect noPositionMessageZone; - Atom firstThreeTypes[3]; -} W_DragSourceInfo; +extern _WINGsConfiguration WINGsConfiguration; -typedef struct W_DragDestinationInfo { - WMView *destView; - WMView *xdndAwareView; - Window sourceWindow; - W_DndState *state; - Bool sourceActionChanged; - WMArray *sourceTypes; - WMArray *requiredTypes; - Bool typeListAvailable; - WMArray *dropDatas; -} W_DragDestinationInfo; +/* ---[ drag*.c ]--------------------------------------------------------- */ +/* + * We need to define these structure first because they are used in W_Screen + * below. The rest of drag-related stuff if after because it needs W_Screen + */ +#define XDND_VERSION 3 typedef struct W_DraggingInfo { unsigned char protocolVersion; /* version supported on the other side */ @@ -129,10 +58,22 @@ typedef struct W_DraggingInfo { Atom sourceAction; Atom destinationAction; - W_DragSourceInfo* sourceInfo; /* infos needed by source */ - W_DragDestinationInfo* destInfo; /* infos needed by destination */ + struct W_DragSourceInfo* sourceInfo; /* infos needed by source */ + struct W_DragDestinationInfo* destInfo; /* infos needed by destination */ } W_DraggingInfo; +/* ---[ Structures from WINGs.h ]----------------------------------------- */ + +/* Pre-definition of internal structs */ +typedef struct W_Color W_Color; +typedef struct W_Pixmap W_Pixmap; +typedef struct W_View W_View; + +typedef struct W_FocusInfo { + W_View *toplevel; + W_View *focused; /* view that has the focus in this toplevel */ + struct W_FocusInfo *next; +} W_FocusInfo; typedef struct W_Screen { Display *display; @@ -147,7 +88,7 @@ typedef struct W_Screen { Window rootWin; - struct W_View *rootView; + W_View *rootView; RContext *rcontext; @@ -160,7 +101,7 @@ typedef struct W_Screen { W_FocusInfo *focusInfo; RImage *applicationIconImage; /* image (can have alpha channel) */ - struct W_Pixmap *applicationIconPixmap; /* pixmap - no alpha channel */ + W_Pixmap *applicationIconPixmap; /* pixmap - no alpha channel */ Window applicationIconWindow; struct W_Window *windowList; /* list of windows in the app */ @@ -184,8 +125,8 @@ typedef struct W_Screen { Pixmap stipple; - struct W_View *dragSourceView; - struct W_DraggingInfo dragInfo; + W_View *dragSourceView; + W_DraggingInfo dragInfo; /* colors */ W_Color *white; @@ -208,9 +149,9 @@ typedef struct W_Screen { GC drawImStringGC; /* for WMDrawImageString() */ - W_Font *normalFont; + struct W_Font *normalFont; - W_Font *boldFont; + struct W_Font *boldFont; WMHashTable *fontCache; @@ -221,57 +162,57 @@ typedef struct W_Screen { struct W_Balloon *balloon; - struct W_Pixmap *checkButtonImageOn; - struct W_Pixmap *checkButtonImageOff; + W_Pixmap *checkButtonImageOn; + W_Pixmap *checkButtonImageOff; - struct W_Pixmap *radioButtonImageOn; - struct W_Pixmap *radioButtonImageOff; + W_Pixmap *radioButtonImageOn; + W_Pixmap *radioButtonImageOff; - struct W_Pixmap *buttonArrow; - struct W_Pixmap *pushedButtonArrow; + W_Pixmap *buttonArrow; + W_Pixmap *pushedButtonArrow; - struct W_Pixmap *scrollerDimple; + W_Pixmap *scrollerDimple; - struct W_Pixmap *upArrow; - struct W_Pixmap *downArrow; - struct W_Pixmap *leftArrow; - struct W_Pixmap *rightArrow; + W_Pixmap *upArrow; + W_Pixmap *downArrow; + W_Pixmap *leftArrow; + W_Pixmap *rightArrow; - struct W_Pixmap *hiUpArrow; - struct W_Pixmap *hiDownArrow; - struct W_Pixmap *hiLeftArrow; - struct W_Pixmap *hiRightArrow; + W_Pixmap *hiUpArrow; + W_Pixmap *hiDownArrow; + W_Pixmap *hiLeftArrow; + W_Pixmap *hiRightArrow; - struct W_Pixmap *pullDownIndicator; - struct W_Pixmap *popUpIndicator; + W_Pixmap *pullDownIndicator; + W_Pixmap *popUpIndicator; - struct W_Pixmap *checkMark; + W_Pixmap *checkMark; - struct W_Pixmap *homeIcon; - struct W_Pixmap *altHomeIcon; + W_Pixmap *homeIcon; + W_Pixmap *altHomeIcon; - struct W_Pixmap *trashcanIcon; - struct W_Pixmap *altTrashcanIcon; + W_Pixmap *trashcanIcon; + W_Pixmap *altTrashcanIcon; - struct W_Pixmap *createDirIcon; - struct W_Pixmap *altCreateDirIcon; + W_Pixmap *createDirIcon; + W_Pixmap *altCreateDirIcon; - struct W_Pixmap *disketteIcon; - struct W_Pixmap *altDisketteIcon; - struct W_Pixmap *unmountIcon; - struct W_Pixmap *altUnmountIcon; + W_Pixmap *disketteIcon; + W_Pixmap *altDisketteIcon; + W_Pixmap *unmountIcon; + W_Pixmap *altUnmountIcon; - struct W_Pixmap *magnifyIcon; - /*struct W_Pixmap *altMagnifyIcon;*/ - struct W_Pixmap *wheelIcon; - struct W_Pixmap *grayIcon; - struct W_Pixmap *rgbIcon; - struct W_Pixmap *cmykIcon; - struct W_Pixmap *hsbIcon; - struct W_Pixmap *customPaletteIcon; - struct W_Pixmap *colorListIcon; + W_Pixmap *magnifyIcon; + /*W_Pixmap *altMagnifyIcon;*/ + W_Pixmap *wheelIcon; + W_Pixmap *grayIcon; + W_Pixmap *rgbIcon; + W_Pixmap *cmykIcon; + W_Pixmap *hsbIcon; + W_Pixmap *customPaletteIcon; + W_Pixmap *colorListIcon; - struct W_Pixmap *defaultObjectIcon; + W_Pixmap *defaultObjectIcon; Cursor defaultCursor; @@ -324,189 +265,215 @@ typedef struct W_Screen { unsigned ignoreNextDoubleClick:1; } W_Screen; +#define W_DRAWABLE(scr) (scr)->rcontext->drawable -typedef struct W_ViewDelegate { - void *data; +/* ---[ drag*.c ]--------------------------------------------------------- */ - void (*didMove)(struct W_ViewDelegate*, WMView*); +typedef struct W_DragOperationItem { + WMDragOperationType type; + char* text; +} W_DragOperationItem; - void (*didResize)(struct W_ViewDelegate*, WMView*); +typedef void* W_DndState(WMView *destView, XClientMessageEvent *event, + WMDraggingInfo *info); - void (*willMove)(struct W_ViewDelegate*, WMView*, int*, int*); +typedef struct W_DragSourceInfo { + WMView *sourceView; + Window destinationWindow; + W_DndState *state; + WMSelectionProcs *selectionProcs; + Window icon; + WMPoint imageLocation; + WMPoint mouseOffset; /* mouse pos in icon */ + Cursor dragCursor; + WMRect noPositionMessageZone; + Atom firstThreeTypes[3]; +} W_DragSourceInfo; - void (*willResize)(struct W_ViewDelegate*, WMView*, - unsigned int*, unsigned int*); -} W_ViewDelegate; +typedef struct W_DragDestinationInfo { + WMView *destView; + WMView *xdndAwareView; + Window sourceWindow; + W_DndState *state; + Bool sourceActionChanged; + WMArray *sourceTypes; + WMArray *requiredTypes; + Bool typeListAvailable; + WMArray *dropDatas; +} W_DragDestinationInfo; +/* -- Functions -- */ +void W_HandleDNDClientMessage(WMView *toplevel, XClientMessageEvent *event); -typedef struct W_View { - struct W_Screen *screen; +Atom W_OperationToAction(WMScreen *scr, WMDragOperationType operation); - WMWidget *self; /* must point to the widget the view belongs to */ +WMDragOperationType W_ActionToOperation(WMScreen *scr, Atom action); - W_ViewDelegate *delegate; +void W_FreeDragOperationItem(void* item); - Window window; +Bool W_SendDnDClientMessage(Display *dpy, Window win, Atom message, + unsigned long data1, unsigned long data2, + unsigned long data3, unsigned long data4, + unsigned long data5); - WMSize size; +void W_DragSourceStartTimer(WMDraggingInfo *info); - short topOffs; - short leftOffs; - short bottomOffs; - short rightOffs; +void W_DragSourceStopTimer(void); - WMPoint pos; +void W_DragSourceStateHandler(WMDraggingInfo *info, XClientMessageEvent *event); - struct W_View *nextFocusChain; /* next/prev in focus chain */ - struct W_View *prevFocusChain; +void W_DragDestinationStartTimer(WMDraggingInfo *info); - struct W_View *nextResponder; /* next to receive keyboard events */ +void W_DragDestinationStopTimer(void); - struct W_View *parent; /* parent WMView */ +void W_DragDestinationStoreEnterMsgInfo(WMDraggingInfo *info, WMView *toplevel, + XClientMessageEvent *event); - struct W_View *childrenList; /* first in list of child windows */ +void W_DragDestinationStorePositionMsgInfo(WMDraggingInfo *info, + WMView *toplevel, + XClientMessageEvent *event); - struct W_View *nextSister; /* next on parent's children list */ +void W_DragDestinationCancelDropOnEnter(WMView *toplevel, WMDraggingInfo *info); - WMArray *eventHandlers; /* event handlers for this window */ +void W_DragDestinationStateHandler(WMDraggingInfo *info, + XClientMessageEvent *event); - unsigned long attribFlags; - XSetWindowAttributes attribs; +void W_DragDestinationInfoClear(WMDraggingInfo *info); - void *hangedData; /* data holder for user program */ +void W_FreeViewXdndPart(WMView *view); - WMColor *backColor; - Cursor cursor; +/* ---[ handlers.c ]------------------------------------------------------ */ - Atom *droppableTypes; - struct W_DragSourceProcs *dragSourceProcs; - struct W_DragDestinationProcs *dragDestinationProcs; - WMPixmap *dragImage; - int helpContext; +Bool W_CheckIdleHandlers(void); - XIC xic; +void W_CheckTimerHandlers(void); - struct { - unsigned int realized:1; - unsigned int mapped:1; - unsigned int parentDying:1; - unsigned int dying:1; /* the view is being destroyed */ - unsigned int topLevel:1; /* is a top level window */ - unsigned int root:1; /* is the root window */ - unsigned int mapWhenRealized:1; /* map the view when it's realized */ - unsigned int alreadyDead:1; /* view was freed */ +Bool W_HandleInputEvents(Bool waitForInput, int inputfd); - unsigned int dontCompressMotion:1; /* motion notify event compress */ - unsigned int notifySizeChanged:1; - unsigned int dontCompressExpose:1; /* expose event compress */ - /* toplevel only */ - unsigned int worksWhenModal:1; - unsigned int pendingRelease1:1; - unsigned int pendingRelease2:1; - unsigned int pendingRelease3:1; - unsigned int pendingRelease4:1; - unsigned int pendingRelease5:1; - unsigned int xdndHintSet:1; - } flags; +/* ---[ notification.c ]-------------------------------------------------- */ - int refCount; -} W_View; +void W_InitNotificationCenter(void); +void W_FlushASAPNotificationQueue(void); -typedef struct W_EventHandler { - unsigned long eventMask; +void W_FlushIdleNotificationQueue(void); - WMEventProc *proc; - void *clientData; -} W_EventHandler; +/* ---[ selection.c ]----------------------------------------------------- */ +void W_HandleSelectionEvent(XEvent *event); +/* ---[ wapplication.c ]-------------------------------------------------- */ -typedef struct _WINGsConfiguration { - char *systemFont; - char *boldSystemFont; - int defaultFontSize; - Bool antialiasedText; - char *floppyPath; - unsigned doubleClickDelay; - unsigned mouseWheelUp; - unsigned mouseWheelDown; -} _WINGsConfiguration; +typedef struct W_Application { + char *applicationName; + int argc; + char **argv; + char *resourcePath; +} W_Application; -extern _WINGsConfiguration WINGsConfiguration; +/* -- Functions -- */ +void W_InitApplication(WMScreen *scr); +Bool W_ApplicationInitialized(void); -#define CHECK_CLASS(widget, class) assert(W_CLASS(widget)==(class)) +/* ---[ wballoon.c ]------------------------------------------------------ */ -#define W_CLASS(widget) (((W_WidgetType*)(widget))->widgetClass) -#define W_VIEW(widget) (((W_WidgetType*)(widget))->view) +struct W_Balloon *W_CreateBalloon(WMScreen *scr); -#define W_VIEW_REALIZED(view) (view)->flags.realized -#define W_VIEW_MAPPED(view) (view)->flags.mapped +void W_BalloonHandleEnterView(WMView *view); -#define W_VIEW_DISPLAY(view) (view)->screen->display -#define W_VIEW_SCREEN(view) (view)->screen -#define W_VIEW_DRAWABLE(view) (view)->window +void W_BalloonHandleLeaveView(WMView *view); -#define W_VIEW_WIDTH(view) (view)->size.width -#define W_VIEW_HEIGHT(view) (view)->size.height +/* ---[ wcolor.c ]-------------------------------------------------------- */ + +typedef struct W_Color { + struct W_Screen *screen; + + XColor color; + unsigned short alpha; + short refCount; + GC gc; + struct { + unsigned int exact:1; + } flags; +} W_Color; #define W_PIXEL(c) (c)->color.pixel -#define W_FONTID(f) (f)->font->fid -#define W_DRAWABLE(scr) (scr)->rcontext->drawable +/* ---[ wevent.c ]-------------------------------------------------------- */ +typedef struct W_EventHandler { + unsigned long eventMask; + WMEventProc *proc; -W_View *W_GetViewForXWindow(Display *display, Window window); + void *clientData; +} W_EventHandler; -W_View *W_CreateView(W_View *parent); +/* -- Functions -- */ -W_View *W_CreateTopView(W_Screen *screen); +void W_CallDestroyHandlers(W_View *view); -W_View *W_CreateUnmanagedTopView(W_Screen *screen); +/* ---[ wfont.c ]--------------------------------------------------------- */ -W_View *W_CreateRootView(W_Screen *screen); +typedef struct W_Font { + struct W_Screen *screen; -void W_DestroyView(W_View *view); + struct _XftFont *font; -void W_RealizeView(W_View *view); + short height; + short y; + short refCount; + char *name; +} W_Font; -void W_ReparentView(W_View *view, W_View *newParent, int x, int y); +#define W_FONTID(f) (f)->font->fid -void W_RaiseView(W_View *view); -void W_LowerView(W_View *view); +/* ---[ widgets.c ]------------------------------------------------------- */ +#define WC_UserWidget 128 -void W_MapView(W_View *view); +#define CHECK_CLASS(widget, class) assert(W_CLASS(widget)==(class)) -void W_MapSubviews(W_View *view); +#define W_CLASS(widget) (((W_WidgetType*)(widget))->widgetClass) +#define W_VIEW(widget) (((W_WidgetType*)(widget))->view) -void W_UnmapSubviews(W_View *view); +/* -- Functions -- */ -W_View *W_TopLevelOfView(W_View *view); +W_Class W_RegisterUserWidget(void); -void W_UnmapView(W_View *view); -void W_MoveView(W_View *view, int x, int y); +/* ---[ winputmethod.c ]-------------------------------------------------- */ -void W_ResizeView(W_View *view, unsigned int width, unsigned int height); +void W_InitIM(WMScreen *scr); -void W_SetViewBackgroundColor(W_View *view, WMColor *color); +void W_CreateIC(WMView *view); + +void W_DestroyIC(WMView *view); + +void W_FocusIC(WMView *view); + +void W_UnFocusIC(WMView *view); + +void W_SetPreeditPositon(W_View *view, int x, int y); + +int W_LookupString(W_View *view, XKeyPressedEvent *event, char *buffer, + int buflen, KeySym *keysym, Status *status); -void W_SetViewCursor(W_View *view, Cursor cursor); + +/* ---[ wmisc.c ]--------------------------------------------------------- */ void W_DrawRelief(W_Screen *scr, Drawable d, int x, int y, unsigned int width, unsigned int height, WMReliefType relief); @@ -516,8 +483,6 @@ void W_DrawReliefWithGC(W_Screen *scr, Drawable d, int x, int y, WMReliefType relief, GC black, GC dark, GC light, GC white); -void W_CallDestroyHandlers(W_View *view); - void W_PaintTextAndImage(W_View *view, int wrap, WMColor *textColor, W_Font *font, WMReliefType relief, const char *text, WMAlignment alignment, W_Pixmap *image, @@ -530,110 +495,172 @@ void W_PaintText(W_View *view, Drawable d, WMFont *font, int x, int y, int W_GetTextHeight(WMFont *font, const char *text, int width, int wrap); -int W_TextWidth(WMFont *font, const char *text, int length); +/* ---[ wpixmap.c ]------------------------------------------------------- */ +typedef struct W_Pixmap { + struct W_Screen *screen; + Pixmap pixmap; + Pixmap mask; + unsigned short width; + unsigned short height; + short depth; + short refCount; +} W_Pixmap; -void W_BroadcastMessage(W_View *targetParent, XEvent *event); -void W_DispatchMessage(W_View *target, XEvent *event); +/* ---[ wview.c ]--------------------------------------------------------- */ -void W_SetFocusOfToplevel(W_View *toplevel, W_View *view); +typedef struct W_ViewDelegate { + void *data; + void (*didMove)(struct W_ViewDelegate*, WMView*); + void (*didResize)(struct W_ViewDelegate*, WMView*); + void (*willMove)(struct W_ViewDelegate*, WMView*, int*, int*); + void (*willResize)(struct W_ViewDelegate*, WMView*, + unsigned int*, unsigned int*); +} W_ViewDelegate; -W_View *W_FocusedViewOfToplevel(W_View *view); +typedef struct W_View { + struct W_Screen *screen; -void W_SetFocusOfTopLevel(W_View *toplevel, W_View *view); + WMWidget *self; /* must point to the widget the view belongs to */ -void W_ReleaseView(WMView *view); + W_ViewDelegate *delegate; -WMView *W_RetainView(WMView *view); + Window window; -void W_InitApplication(WMScreen *scr); + WMSize size; -void W_InitNotificationCenter(void); + short topOffs; + short leftOffs; + short bottomOffs; + short rightOffs; -W_Class W_RegisterUserWidget(void); + WMPoint pos; -void W_RedisplayView(WMView *view); + struct W_View *nextFocusChain; /* next/prev in focus chain */ + struct W_View *prevFocusChain; -Bool W_ApplicationInitialized(void); + struct W_View *nextResponder; /* next to receive keyboard events */ -void W_HandleSelectionEvent(XEvent *event); + struct W_View *parent; /* parent WMView */ -void W_HandleDNDClientMessage(WMView *toplevel, XClientMessageEvent *event); + struct W_View *childrenList; /* first in list of child windows */ -void W_FlushASAPNotificationQueue(void); + struct W_View *nextSister; /* next on parent's children list */ -void W_FlushIdleNotificationQueue(void); + WMArray *eventHandlers; /* event handlers for this window */ -struct W_Balloon *W_CreateBalloon(WMScreen *scr); + unsigned long attribFlags; + XSetWindowAttributes attribs; -void W_BalloonHandleEnterView(WMView *view); + void *hangedData; /* data holder for user program */ -void W_BalloonHandleLeaveView(WMView *view); + WMColor *backColor; -Bool W_CheckIdleHandlers(void); + Cursor cursor; -void W_CheckTimerHandlers(void); + Atom *droppableTypes; + struct W_DragSourceProcs *dragSourceProcs; + struct W_DragDestinationProcs *dragDestinationProcs; + WMPixmap *dragImage; + int helpContext; -Bool W_HandleInputEvents(Bool waitForInput, int inputfd); + XIC xic; -/* XDnD */ -Atom W_OperationToAction(WMScreen *scr, WMDragOperationType operation); + struct { + unsigned int realized:1; + unsigned int mapped:1; + unsigned int parentDying:1; + unsigned int dying:1; /* the view is being destroyed */ + unsigned int topLevel:1; /* is a top level window */ + unsigned int root:1; /* is the root window */ + unsigned int mapWhenRealized:1; /* map the view when it's realized */ + unsigned int alreadyDead:1; /* view was freed */ -WMDragOperationType W_ActionToOperation(WMScreen *scr, Atom action); + unsigned int dontCompressMotion:1; /* motion notify event compress */ + unsigned int notifySizeChanged:1; + unsigned int dontCompressExpose:1; /* expose event compress */ -void W_FreeDragOperationItem(void* item); + /* toplevel only */ + unsigned int worksWhenModal:1; + unsigned int pendingRelease1:1; + unsigned int pendingRelease2:1; + unsigned int pendingRelease3:1; + unsigned int pendingRelease4:1; + unsigned int pendingRelease5:1; + unsigned int xdndHintSet:1; + } flags; -Bool W_SendDnDClientMessage(Display *dpy, Window win, Atom message, - unsigned long data1, unsigned long data2, - unsigned long data3, unsigned long data4, - unsigned long data5); + int refCount; +} W_View; -void W_DragSourceStartTimer(WMDraggingInfo *info); +#define W_VIEW_REALIZED(view) (view)->flags.realized +#define W_VIEW_MAPPED(view) (view)->flags.mapped -void W_DragSourceStopTimer(void); +#define W_VIEW_DISPLAY(view) (view)->screen->display +#define W_VIEW_SCREEN(view) (view)->screen +#define W_VIEW_DRAWABLE(view) (view)->window -void W_DragSourceStateHandler(WMDraggingInfo *info, XClientMessageEvent *event); +#define W_VIEW_WIDTH(view) (view)->size.width +#define W_VIEW_HEIGHT(view) (view)->size.height -void W_DragDestinationStartTimer(WMDraggingInfo *info); +/* -- Functions -- */ -void W_DragDestinationStopTimer(void); +W_View *W_GetViewForXWindow(Display *display, Window window); -void W_DragDestinationStoreEnterMsgInfo(WMDraggingInfo *info, WMView *toplevel, - XClientMessageEvent *event); +W_View *W_CreateView(W_View *parent); -void W_DragDestinationStorePositionMsgInfo(WMDraggingInfo *info, - WMView *toplevel, - XClientMessageEvent *event); +W_View *W_CreateTopView(W_Screen *screen); -void W_DragDestinationCancelDropOnEnter(WMView *toplevel, WMDraggingInfo *info); +W_View *W_CreateUnmanagedTopView(W_Screen *screen); -void W_DragDestinationStateHandler(WMDraggingInfo *info, - XClientMessageEvent *event); +W_View *W_CreateRootView(W_Screen *screen); -void W_DragDestinationInfoClear(WMDraggingInfo *info); +void W_DestroyView(W_View *view); -void W_FreeViewXdndPart(WMView *view); +void W_RealizeView(W_View *view); -/* XIM */ -void W_InitIM(WMScreen *scr); +void W_RedisplayView(WMView *view); -void W_CreateIC(WMView *view); +void W_ReparentView(W_View *view, W_View *newParent, int x, int y); -void W_DestroyIC(WMView *view); +void W_RaiseView(W_View *view); -void W_FocusIC(WMView *view); +void W_LowerView(W_View *view); -void W_UnFocusIC(WMView *view); +void W_MapView(W_View *view); -void W_SetPreeditPositon(W_View *view, int x, int y); +void W_MapSubviews(W_View *view); + +void W_UnmapSubviews(W_View *view); + +W_View *W_TopLevelOfView(W_View *view); + +void W_UnmapView(W_View *view); + +WMView *W_RetainView(WMView *view); + +void W_ReleaseView(WMView *view); + +void W_MoveView(W_View *view, int x, int y); + +void W_ResizeView(W_View *view, unsigned int width, unsigned int height); + +void W_SetViewBackgroundColor(W_View *view, WMColor *color); + +void W_SetViewCursor(W_View *view, Cursor cursor); + +void W_SetFocusOfTopLevel(W_View *toplevel, W_View *view); + +W_View *W_FocusedViewOfToplevel(W_View *view); + +void W_BroadcastMessage(W_View *targetParent, XEvent *event); + +void W_DispatchMessage(W_View *target, XEvent *event); -int W_LookupString(W_View *view, XKeyPressedEvent *event, char *buffer, - int buflen, KeySym *keysym, Status *status); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* _WINGSP_H_ */ - -- 1.7.10.4 -- To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.