mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-19 20:38:08 +01:00
Make draw string plugin more extendable in future.
This commit is contained in:
@@ -2211,7 +2211,7 @@ getTextRenderer(WScreen *scr, WDefaultEntry *entry, proplist_t value,
|
||||
func = PLGetString(elem);
|
||||
scr->drawstring_func[changed] = wPluginCreateFunction (W_FUNCTION_DRAWSTRING,
|
||||
lib, "initDrawString", func, "destroyDrawString", value,
|
||||
wPluginPackInitData(3, dpy, scr->w_colormap,"-DATA-"));
|
||||
wPluginPackData(3, dpy, scr->w_colormap,"-DATA-"));
|
||||
}
|
||||
|
||||
return getColor(scr, entry, PLGetArrayElement(value,3), addr, ret);
|
||||
|
||||
@@ -1085,10 +1085,10 @@ wFrameWindowPaint(WFrameWindow *fwin)
|
||||
if (scr->drawstring_func[fwin->flags.state + fwin->drawstring_proc_offset]) {
|
||||
scr->drawstring_func[fwin->flags.state + fwin->drawstring_proc_offset]->
|
||||
proc.drawString(scr->drawstring_func[fwin->flags.state
|
||||
+ fwin->drawstring_proc_offset]->arg,
|
||||
fwin->titlebar->window, *fwin->title_gc,
|
||||
*fwin->font, x, *fwin->title_clearance + TITLEBAR_EXTEND_SPACE,
|
||||
fwin->titlebar->width, fwin->top_width, fwin->title, titlelen);
|
||||
+ fwin->drawstring_proc_offset]->arg, fwin->titlebar->window,
|
||||
x, *fwin->title_clearance + TITLEBAR_EXTEND_SPACE,
|
||||
fwin->titlebar->width, fwin->top_width,
|
||||
fwin->title, wPluginPackData(2, *fwin->title_gc, *fwin->font));
|
||||
} else {
|
||||
WMDrawString(scr->wmscreen, fwin->titlebar->window,
|
||||
*fwin->title_gc, *fwin->font, x, *fwin->title_clearance + TITLEBAR_EXTEND_SPACE,
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
|
||||
|
||||
void**
|
||||
wPluginPackInitData(int members, ...)
|
||||
wPluginPackData(int members, ...)
|
||||
{
|
||||
void **p;
|
||||
va_list vp;
|
||||
@@ -56,9 +56,7 @@ wPluginPackInitData(int members, ...)
|
||||
va_start(vp, members);
|
||||
for(i=0;i<members;i++) {
|
||||
p[i] = va_arg(vp, void *);
|
||||
printf(" %d > %d\n",i,(int)p[i]);
|
||||
}
|
||||
printf(" s> %s\n",(char*)p[2]);
|
||||
va_end(vp);
|
||||
return p;
|
||||
}
|
||||
|
||||
@@ -95,6 +95,6 @@ WFunction* wPluginCreateFunction(int type, char *library_name,
|
||||
|
||||
void wPluginDestroyFunction(WFunction *function);
|
||||
|
||||
void** wPluginPackInitData(int members, ...);
|
||||
void** wPluginPackData(int members, ...);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user