mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-19 04:20:27 +01:00
fixed bug in WMSetButtonEnabled and WMSetButtonSelected
This commit is contained in:
@@ -410,7 +410,7 @@ WMSetButtonDisabledTextColor(WMButton *bPtr, WMColor *color)
|
|||||||
void
|
void
|
||||||
WMSetButtonSelected(WMButton *bPtr, int isSelected)
|
WMSetButtonSelected(WMButton *bPtr, int isSelected)
|
||||||
{
|
{
|
||||||
bPtr->flags.selected = isSelected;
|
bPtr->flags.selected = isSelected ? 1 : 0;
|
||||||
|
|
||||||
if (bPtr->view->flags.realized) {
|
if (bPtr->view->flags.realized) {
|
||||||
paintButton(bPtr);
|
paintButton(bPtr);
|
||||||
@@ -453,7 +453,7 @@ WMSetButtonFont(WMButton *bPtr, WMFont *font)
|
|||||||
void
|
void
|
||||||
WMSetButtonEnabled(WMButton *bPtr, Bool flag)
|
WMSetButtonEnabled(WMButton *bPtr, Bool flag)
|
||||||
{
|
{
|
||||||
bPtr->flags.enabled = flag;
|
bPtr->flags.enabled = flag ? 1 : 0;
|
||||||
|
|
||||||
if (bPtr->view->flags.mapped) {
|
if (bPtr->view->flags.mapped) {
|
||||||
paintButton(bPtr);
|
paintButton(bPtr);
|
||||||
|
|||||||
145
WINGs/wfont.c
145
WINGs/wfont.c
@@ -460,132 +460,137 @@ makeFontSetOfSize(char *fontset, int size)
|
|||||||
static void
|
static void
|
||||||
changeFontProp(char *fname, char *newprop, int which)
|
changeFontProp(char *fname, char *newprop, int which)
|
||||||
{
|
{
|
||||||
char before[128], prop[128], after[128];
|
char before[128], prop[128], after[128];
|
||||||
char *ptr, *bptr;
|
char *ptr, *bptr;
|
||||||
int part=0;
|
int part=0;
|
||||||
|
|
||||||
if(!fname || !prop)
|
|
||||||
return;
|
|
||||||
|
|
||||||
ptr = fname;
|
if(!fname || !prop)
|
||||||
bptr = before;
|
return;
|
||||||
while (*ptr) {
|
|
||||||
if(*ptr == '-') {
|
ptr = fname;
|
||||||
*bptr = 0;
|
bptr = before;
|
||||||
if(part==which) bptr = prop;
|
while (*ptr) {
|
||||||
else if(part==which+1) bptr = after;
|
if(*ptr == '-') {
|
||||||
*bptr++ = *ptr;
|
*bptr = 0;
|
||||||
part++;
|
if(part==which)
|
||||||
} else {
|
bptr = prop;
|
||||||
*bptr++ = *ptr;
|
else if(part==which+1)
|
||||||
} ptr++;
|
bptr = after;
|
||||||
}*bptr = 0;
|
*bptr++ = *ptr;
|
||||||
snprintf(fname, 255, "%s-%s%s", before, newprop, after);
|
part++;
|
||||||
|
} else {
|
||||||
|
*bptr++ = *ptr;
|
||||||
|
}
|
||||||
|
ptr++;
|
||||||
|
}
|
||||||
|
*bptr = 0;
|
||||||
|
snprintf(fname, 255, "%s-%s%s", before, newprop, after);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
WMFont *
|
WMFont*
|
||||||
WMNormalizeFont(WMScreen *scr, WMFont *font)
|
WMNormalizeFont(WMScreen *scr, WMFont *font)
|
||||||
{
|
{
|
||||||
WMFont *newfont=NULL;
|
WMFont *newfont=NULL;
|
||||||
char fname[256];
|
char fname[256];
|
||||||
|
|
||||||
if(!scr || !font)
|
if(!scr || !font)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
snprintf(fname, 255, font->name);
|
snprintf(fname, 255, font->name);
|
||||||
changeFontProp(fname, "medium", 2);
|
changeFontProp(fname, "medium", 2);
|
||||||
changeFontProp(fname, "r", 3);
|
changeFontProp(fname, "r", 3);
|
||||||
newfont = WMCreateNormalFont(scr, fname);
|
newfont = WMCreateNormalFont(scr, fname);
|
||||||
|
|
||||||
if(!newfont)
|
if(!newfont)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return newfont;
|
return newfont;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
WMFont *
|
WMFont*
|
||||||
WMStrengthenFont(WMScreen *scr, WMFont *font)
|
WMStrengthenFont(WMScreen *scr, WMFont *font)
|
||||||
{
|
{
|
||||||
WMFont *newfont=NULL;
|
WMFont *newfont=NULL;
|
||||||
char fname[256];
|
char fname[256];
|
||||||
|
|
||||||
if(!scr || !font)
|
if(!scr || !font)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
snprintf(fname, 255, font->name);
|
snprintf(fname, 255, font->name);
|
||||||
changeFontProp(fname, "bold", 2);
|
changeFontProp(fname, "bold", 2);
|
||||||
newfont = WMCreateNormalFont(scr, fname);
|
newfont = WMCreateNormalFont(scr, fname);
|
||||||
|
|
||||||
if(!newfont)
|
if(!newfont)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return newfont;
|
return newfont;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
WMFont *
|
WMFont*
|
||||||
WMUnstrengthenFont(WMScreen *scr, WMFont *font)
|
WMUnstrengthenFont(WMScreen *scr, WMFont *font)
|
||||||
{
|
{
|
||||||
WMFont *newfont=NULL;
|
WMFont *newfont=NULL;
|
||||||
char fname[256];
|
char fname[256];
|
||||||
|
|
||||||
if(!scr || !font)
|
if(!scr || !font)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
snprintf(fname, 255, font->name);
|
snprintf(fname, 255, font->name);
|
||||||
changeFontProp(fname, "medium", 2);
|
changeFontProp(fname, "medium", 2);
|
||||||
newfont = WMCreateNormalFont(scr, fname);
|
newfont = WMCreateNormalFont(scr, fname);
|
||||||
|
|
||||||
if(!newfont)
|
if(!newfont)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return newfont;
|
return newfont;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
WMFont *
|
WMFont*
|
||||||
WMEmphasizeFont(WMScreen *scr, WMFont *font)
|
WMEmphasizeFont(WMScreen *scr, WMFont *font)
|
||||||
{
|
{
|
||||||
WMFont *newfont=NULL;
|
WMFont *newfont=NULL;
|
||||||
char fname[256];
|
char fname[256];
|
||||||
|
|
||||||
if(!scr || !font)
|
if(!scr || !font)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
snprintf(fname, 255, font->name);
|
snprintf(fname, 255, font->name);
|
||||||
changeFontProp(fname, "o", 3);
|
changeFontProp(fname, "o", 3);
|
||||||
newfont = WMCreateNormalFont(scr, fname);
|
newfont = WMCreateNormalFont(scr, fname);
|
||||||
|
|
||||||
if(!newfont)
|
if(!newfont)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return newfont;
|
return newfont;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
WMFont *
|
WMFont*
|
||||||
WMUnemphasizeFont(WMScreen *scr, WMFont *font)
|
WMUnemphasizeFont(WMScreen *scr, WMFont *font)
|
||||||
{
|
{
|
||||||
WMFont *newfont=NULL;
|
WMFont *newfont=NULL;
|
||||||
char fname[256];
|
char fname[256];
|
||||||
|
|
||||||
if(!scr || !font)
|
if(!scr || !font)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
snprintf(fname, 255, font->name);
|
snprintf(fname, 255, font->name);
|
||||||
changeFontProp(fname, "r", 3);
|
changeFontProp(fname, "r", 3);
|
||||||
newfont = WMCreateNormalFont(scr, fname);
|
newfont = WMCreateNormalFont(scr, fname);
|
||||||
|
|
||||||
if(!newfont)
|
if(!newfont)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return newfont;
|
return newfont;
|
||||||
}
|
}
|
||||||
|
|
||||||
WMFont *
|
|
||||||
WMGetFontOfSize(WMScreen *scr, WMFont *font, int size)
|
WMFont*
|
||||||
|
WMGetFontOfSize(WMScreen *scr, WMFont *font, int size)
|
||||||
{
|
{
|
||||||
if(!scr || !font || size<1)
|
if(!scr || !font || size<1)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|||||||
Reference in New Issue
Block a user