mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-20 21:08:08 +01:00
- Added WMSetButtonImageDimsWhenDisabled() and WMGetButtonEnabled()
- Cleaned-up the header files of functions/vars declared but not implemented
This commit is contained in:
@@ -17,6 +17,8 @@ Changes since wmaker 0.80.0:
|
||||
1 or 0 for the flag value, not the flag passed by the user.
|
||||
- Added 2 functions to retrieve the default system fonts:
|
||||
WMDefaultSystemFont(WMScreen *scr) and WMDefaultBoldSystemFont(WMScreen *scr)
|
||||
- Added WMSetButtonImageDimsWhenDisabled() and WMGetButtonEnabled()
|
||||
- Cleaned-up the header files of functions/vars declared but not implemented
|
||||
|
||||
|
||||
Changes since wmaker 0.70.0:
|
||||
|
||||
@@ -654,7 +654,7 @@ void WMDeleteEventHandler(WMView *view, unsigned long mask,
|
||||
|
||||
int WMIsDoubleClick(XEvent *event);
|
||||
|
||||
int WMIsTripleClick(XEvent *event);
|
||||
//int WMIsTripleClick(XEvent *event);
|
||||
|
||||
void WMNextEvent(Display *dpy, XEvent *event);
|
||||
|
||||
@@ -895,9 +895,9 @@ void WMRelayToNextResponder(WMView *view, XEvent *event);
|
||||
/* notifications */
|
||||
extern char *WMViewSizeDidChangeNotification;
|
||||
|
||||
extern char *WMViewRealizedNotification;
|
||||
extern char *WMViewFocusDidChangeNotification;
|
||||
|
||||
extern char *WMFontPanelDidChangeNotification;
|
||||
extern char *WMViewRealizedNotification;
|
||||
|
||||
|
||||
/* ....................................................................... */
|
||||
@@ -1007,7 +1007,9 @@ void WMSetButtonBordered(WMButton *bPtr, int isBordered);
|
||||
|
||||
void WMSetButtonEnabled(WMButton *bPtr, Bool flag);
|
||||
|
||||
//void WMSetButtonImageDimsWhenDisabled(WMButton *bPtr, Bool flag);
|
||||
int WMGetButtonEnabled(WMButton *bPtr);
|
||||
|
||||
void WMSetButtonImageDimsWhenDisabled(WMButton *bPtr, Bool flag);
|
||||
|
||||
void WMSetButtonTag(WMButton *bPtr, int tag);
|
||||
|
||||
|
||||
@@ -44,6 +44,8 @@ typedef struct W_Button {
|
||||
|
||||
unsigned int enabled:1;
|
||||
|
||||
unsigned int dimsWhenDisabled:1;
|
||||
|
||||
unsigned int bordered:1;
|
||||
|
||||
unsigned int springLoaded:1;
|
||||
@@ -135,13 +137,13 @@ WMCreateCustomButton(WMWidget *parent, int behaviourMask)
|
||||
bPtr->flags.stateLight = (behaviourMask & WBBStateLightMask)!=0;
|
||||
bPtr->flags.stateChange = (behaviourMask & WBBStateChangeMask)!=0;
|
||||
bPtr->flags.statePush = (behaviourMask & WBBStatePushMask)!=0;
|
||||
|
||||
|
||||
W_ResizeView(bPtr->view, DEFAULT_BUTTON_WIDTH, DEFAULT_BUTTON_HEIGHT);
|
||||
bPtr->flags.alignment = DEFAULT_BUTTON_ALIGNMENT;
|
||||
bPtr->flags.bordered = DEFAULT_BUTTON_IS_BORDERED;
|
||||
|
||||
bPtr->flags.enabled = 1;
|
||||
|
||||
bPtr->flags.enabled = 1;
|
||||
bPtr->flags.dimsWhenDisabled = 1;
|
||||
|
||||
WMCreateEventHandler(bPtr->view, ExposureMask|StructureNotifyMask,
|
||||
handleEvents, bPtr);
|
||||
@@ -239,31 +241,38 @@ updateDisabledMask(WMButton *bPtr)
|
||||
if (bPtr->image) {
|
||||
XGCValues gcv;
|
||||
|
||||
bPtr->dimage->mask = XCreatePixmap(dpy, scr->stipple,
|
||||
bPtr->dimage->width,
|
||||
bPtr->dimage->height, 1);
|
||||
if (bPtr->dimage->mask) {
|
||||
XFreePixmap(dpy, bPtr->dimage->mask);
|
||||
bPtr->dimage->mask = None;
|
||||
}
|
||||
|
||||
XSetForeground(dpy, scr->monoGC, 0);
|
||||
XFillRectangle(dpy, bPtr->dimage->mask, scr->monoGC, 0, 0,
|
||||
bPtr->dimage->width, bPtr->dimage->height);
|
||||
if (bPtr->flags.dimsWhenDisabled) {
|
||||
bPtr->dimage->mask = XCreatePixmap(dpy, scr->stipple,
|
||||
bPtr->dimage->width,
|
||||
bPtr->dimage->height, 1);
|
||||
|
||||
gcv.foreground = 1;
|
||||
gcv.background = 0;
|
||||
gcv.stipple = scr->stipple;
|
||||
gcv.fill_style = FillStippled;
|
||||
gcv.clip_mask = bPtr->image->mask;
|
||||
gcv.clip_x_origin = 0;
|
||||
gcv.clip_y_origin = 0;
|
||||
|
||||
XChangeGC(dpy, scr->monoGC, GCForeground|GCBackground|GCStipple
|
||||
|GCFillStyle|GCClipMask|GCClipXOrigin|GCClipYOrigin, &gcv);
|
||||
XSetForeground(dpy, scr->monoGC, 0);
|
||||
XFillRectangle(dpy, bPtr->dimage->mask, scr->monoGC, 0, 0,
|
||||
bPtr->dimage->width, bPtr->dimage->height);
|
||||
|
||||
XFillRectangle(dpy, bPtr->dimage->mask, scr->monoGC, 0, 0,
|
||||
bPtr->dimage->width, bPtr->dimage->height);
|
||||
gcv.foreground = 1;
|
||||
gcv.background = 0;
|
||||
gcv.stipple = scr->stipple;
|
||||
gcv.fill_style = FillStippled;
|
||||
gcv.clip_mask = bPtr->image->mask;
|
||||
gcv.clip_x_origin = 0;
|
||||
gcv.clip_y_origin = 0;
|
||||
|
||||
gcv.fill_style = FillSolid;
|
||||
gcv.clip_mask = None;
|
||||
XChangeGC(dpy, scr->monoGC, GCFillStyle|GCClipMask, &gcv);
|
||||
XChangeGC(dpy, scr->monoGC, GCForeground|GCBackground|GCStipple
|
||||
|GCFillStyle|GCClipMask|GCClipXOrigin|GCClipYOrigin, &gcv);
|
||||
|
||||
XFillRectangle(dpy, bPtr->dimage->mask, scr->monoGC, 0, 0,
|
||||
bPtr->dimage->width, bPtr->dimage->height);
|
||||
|
||||
gcv.fill_style = FillSolid;
|
||||
gcv.clip_mask = None;
|
||||
XChangeGC(dpy, scr->monoGC, GCFillStyle|GCClipMask, &gcv);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -461,19 +470,36 @@ WMSetButtonEnabled(WMButton *bPtr, Bool flag)
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
WMGetButtonEnabled(WMButton *bPtr)
|
||||
{
|
||||
CHECK_CLASS(bPtr, WC_Button);
|
||||
|
||||
return bPtr->flags.enabled;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
WMSetButtonImageDimsWhenDisabled(WMButton *bPtr, Bool flag)
|
||||
{
|
||||
bPtr->flags.dimsWhenDisabled = ((flag==0) ? 0 : 1);
|
||||
|
||||
updateDisabledMask(bPtr);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
WMSetButtonTag(WMButton *bPtr, int tag)
|
||||
{
|
||||
bPtr->tag = tag;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void
|
||||
WMPerformButtonClick(WMButton *bPtr)
|
||||
{
|
||||
CHECK_CLASS(bPtr, WC_Button);
|
||||
|
||||
|
||||
if (!bPtr->flags.enabled)
|
||||
return;
|
||||
|
||||
|
||||
@@ -3191,8 +3191,8 @@ WMCreateTextForDocumentType(WMWidget *parent, WMAction *parser, WMAction *writer
|
||||
WMRegisterViewForDraggedTypes(tPtr->view, types);
|
||||
}
|
||||
|
||||
WMAddNotificationObserver(fontChanged, tPtr,
|
||||
"WMFontPanelDidChangeNotification", tPtr);
|
||||
/*WMAddNotificationObserver(fontChanged, tPtr,
|
||||
WMFontPanelDidChangeNotification, tPtr);*/
|
||||
|
||||
tPtr->firstTextBlock = NULL;
|
||||
tPtr->lastTextBlock = NULL;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
SystemFont = "-*-helvetica-medium-r-normal-*-%d-*-*-*-*-*-*-*,-*-*-medium-r-normal-*-%d-*,-*-*-medium-r-normal-*-*-*";
|
||||
BoldSystemFont = "-*-helvetica-bold-r-normal-*-%d-*-*-*-*-*-*-*,-*-*-bold-r-normal-*-%d-*,-*-*-medium-r-normal-*-*-*";
|
||||
DefaultFontSize = 12;
|
||||
FloppyPath = "/floppy";
|
||||
MultiByteText = AUTO;
|
||||
DoubleClickTime = 250;
|
||||
|
||||
Reference in New Issue
Block a user