1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-18 20:10:29 +01:00

Update for 0.52.0. This is a test version, which brings the Appearance

section to WPrefs for testing purposes.
This commit is contained in:
dan
1999-03-14 22:35:50 +00:00
parent ea5d3bcde3
commit c56756dc73
50 changed files with 2255 additions and 1007 deletions

View File

@@ -212,7 +212,7 @@ dgradient fix
Window list menu miniaturized/hidden hints, XDE support, XKB lock
language status, WINGs enhancements, bug fixes, window commands menu
enhancement, window move/resize by keyboard. GNUstepGlow.tiff icon,
WINGs color panel
WINGs color panel, Appearance section icon(s)
Trae Mc Combs <x@themes.org>

View File

@@ -1,3 +1,11 @@
Changes since version 0.51.2:
.............................
- made the Attributes panel be available for all windows, even
for completely broken apps (although settings wont be saved for
completely broken apps)
Changes since version 0.51.1:
.............................
@@ -10,11 +18,13 @@ Changes since version 0.51.1:
- fixed WPrefs crash in Mouse Preferences
- fixed crash bug in WINGs/wmaker startup
- added workaround for kde pager crash bug
- made %W in root menu and wmsetbg -w take numbers starting from 1
- fixed crash bugs with kpanel
Changes since version 0.51.0:
.............................
- icon explosion is stopped when clicking on anywhere
- put . to mark hidden apps
- fixed dont set xset stuff option in WPrefs
- fixed menu title messup in WPrefs
- fixed WPrefs message dialogs for invalid menus

View File

@@ -138,12 +138,12 @@ To get a list of other options, run ./configure --help
--with-libs-from
specify additional paths for libraries to be searched.
The -L flag must precede each path, like:
--with-libs-from=-L/opt/libs -L/usr/local/lib
--with-libs-from="-L/opt/libs -L/usr/local/lib"
--with-incs-from
specify additional paths for header files to be searched.
The -I flag must precede each paths, like:
--with-incs-from=-I/opt/headers -I/usr/local/include
--with-incs-from="-I/opt/headers -I/usr/local/include"
--enable-kanji
support to display Kanji characters, Korean, Chinese and other

7
NEWS
View File

@@ -4,6 +4,13 @@ NEWS for veteran Window Maker users
--- 0.51.2
New Themes
----------
Added 2 new cool themes (actually I added in 0.51.1, but forgot
to put it here...) from largo (LeetWM) and BadlandZ (STEP2000).
Full Screen Maximization
------------------------

View File

@@ -1,5 +1,11 @@
changes since wmaker 0.51.2:
............................
- added WMColorWellDidChangeNotification
- added wfindfileinarray()
changes since wmaker 0.51.1:
...........................
............................
- wusergnusteppath() will return a statically allocated string now.
DO NOT FREE IT ANYMORE!!

View File

@@ -971,6 +971,10 @@ WMColor *WMGetColorWellColor(WMColorWell *cPtr);
void WSetColorWellBordered(WMColorWell *cPtr, Bool flag);
extern char *WMColorWellDidChangeNotification;
/* ...................................................................... */
WMScrollView *WMCreateScrollView(WMWidget *parent);

View File

@@ -136,6 +136,8 @@ char *wfindfile(char *paths, char *file);
char *wfindfileinlist(char **path_list, char *file);
char *wfindfileinarray(proplist_t array, char *file);
char *wexpandpath(char *path);
/* don't free the returned string */

View File

@@ -283,3 +283,58 @@ wfindfileinlist(char **path_list, char *file)
char*
wfindfileinarray(proplist_t array, char *file)
{
int i;
char *path;
int len, flen;
char *fullpath;
if (!file)
return NULL;
if (*file=='/' || *file=='~' || !array) {
if (access(file, F_OK)<0) {
fullpath = wexpandpath(file);
if (!fullpath)
return NULL;
if (access(fullpath, F_OK)<0) {
free(fullpath);
return NULL;
} else {
return fullpath;
}
} else {
return wstrdup(file);
}
}
flen = strlen(file);
for (i=0; PLGetNumberOfElements(array); i++) {
char *p = PLGetString(PLGetArrayElement(array, i));
len = strlen(p);
path = wmalloc(len+flen+2);
path = memcpy(path, p, len);
path[len]=0;
strcat(path, "/");
strcat(path, file);
/* expand tilde */
fullpath = wexpandpath(path);
free(path);
if (fullpath) {
/* check if file exists */
if (access(fullpath, F_OK)==0) {
return fullpath;
}
free(fullpath);
}
}
return NULL;
}

View File

@@ -918,6 +918,7 @@ listCallback(void *self, void *clientData)
i = bPtr->usedColumnCount-bPtr->maxVisibleColumns;
scrollToColumn(bPtr, i, True);
}
/* call callback for click */
if (bPtr->action)

View File

@@ -320,8 +320,8 @@ WMGetColorRGBDescription(WMColor *color)
{
char *str = wmalloc(32);
sprintf(str, "rgb:%4x/%4x/%4x", color->color.red, color->color.green,
color->color.blue);
sprintf(str, "#%02x%02x%02x", color->color.red>>8, color->color.green>>8,
color->color.blue>>8);
return str;
}

View File

@@ -5,6 +5,9 @@
#include "WINGsP.h"
char *WMColorWellDidChangeNotification = "WMColorWellDidChangeNotification";
typedef struct W_ColorWell {
W_Class widgetClass;
WMView *view;
@@ -323,6 +326,8 @@ dragColor(ColorWell *cPtr, XEvent *event, WMPixmap *image)
case ButtonRelease:
if (activeWell != NULL) {
WMSetColorWellColor(activeWell, cPtr->color);
WMPostNotificationName(WMColorWellDidChangeNotification,
activeWell, NULL);
} else {
slideView(dragView, ev.xbutton.x_root, ev.xbutton.y_root,
event->xmotion.x_root, event->xmotion.y_root);
@@ -438,6 +443,8 @@ handleActionEvents(XEvent *event, void *data)
color = WMCreateNamedColor(scr, t, False);
if (color) {
WMSetColorWellColor(cPtr, color);
WMPostNotificationName(WMColorWellDidChangeNotification,
cPtr, NULL);
WMReleaseColor(color);
}
free(t);

View File

@@ -65,6 +65,7 @@ static void updateScroller(List *lPtr);
static void vScrollCallBack(WMWidget *scroller, void *self);
static void updateGeometry(WMList *lPtr);
static void resizeList();
@@ -187,7 +188,9 @@ WMInsertListItem(WMList *lPtr, int row, char *text)
memset(item, 0, sizeof(WMListItem));
item->text = wstrdup(text);
if (lPtr->selectedItem >= row && lPtr->selectedItem >= 0)
if (lPtr->selectedItem >= row && lPtr->selectedItem >= 0
&& row >= 0)
lPtr->selectedItem++;
if (lPtr->items==NULL) {
@@ -311,6 +314,8 @@ WMSetListUserDrawItemHeight(WMList *lPtr, unsigned short height)
lPtr->flags.userItemHeight = 1;
lPtr->itemHeight = height;
updateGeometry(lPtr);
}
@@ -804,14 +809,10 @@ handleActionEvents(XEvent *event, void *data)
static void
resizeList(WMList *lPtr, unsigned int width, unsigned int height)
{
W_ResizeView(lPtr->view, width, height);
WMResizeWidget(lPtr->vScroller, 1, height-2);
lPtr->fullFitLines = (height - 4) / lPtr->itemHeight;
if (lPtr->fullFitLines * lPtr->itemHeight < height-4) {
updateGeometry(WMList *lPtr)
{
lPtr->fullFitLines = (lPtr->view->size.height - 4) / lPtr->itemHeight;
if (lPtr->fullFitLines * lPtr->itemHeight < lPtr->view->size.height - 4) {
lPtr->flags.dontFitAll = 1;
} else {
lPtr->flags.dontFitAll = 0;
@@ -827,6 +828,17 @@ resizeList(WMList *lPtr, unsigned int width, unsigned int height)
}
static void
resizeList(WMList *lPtr, unsigned int width, unsigned int height)
{
W_ResizeView(lPtr->view, width, height);
WMResizeWidget(lPtr->vScroller, 1, height-2);
updateGeometry(lPtr);
}
static void
destroyList(List *lPtr)
{

View File

@@ -512,17 +512,17 @@ W_ResizeView(W_View *view, unsigned int width, unsigned int height)
void
W_RedisplayView(W_View *view)
{
XExposeEvent ev;
XEvent ev;
if (!view->flags.mapped)
return;
ev.type = Expose;
ev.display = view->screen->display;
ev.window = view->window;
ev.count = 0;
ev.xexpose.type = Expose;
ev.xexpose.display = view->screen->display;
ev.xexpose.window = view->window;
ev.xexpose.count = 0;
WMHandleEvent((XEvent*)&ev);
WMHandleEvent(&ev);
}

View File

@@ -23,6 +23,9 @@
#include "WPrefs.h"
#include <unistd.h>
#include <errno.h>
#include "TexturePanel.h"
typedef struct _Panel {
@@ -54,17 +57,17 @@ typedef struct _Panel {
proplist_t menuTex;
proplist_t mtitleTex;
proplist_t backTex;
int ftitleIndex;
int utitleIndex;
int ptitleIndex;
int iconIndex;
int menuIndex;
int mtitleIndex;
int backIndex;
int textureIndex[8];
WMFont *smallFont;
WMFont *normalFont;
WMFont *selectedFont;
WMFont *boldFont;
TexturePanel *texturePanel;
WMPixmap *onLed;
WMPixmap *offLed;
/* for preview shit */
Pixmap preview;
@@ -75,9 +78,26 @@ typedef struct _Panel {
Pixmap back;
Pixmap mtitle;
Pixmap mitem;
char *fprefix;
} _Panel;
typedef struct {
char *title;
char *texture;
proplist_t prop;
Pixmap preview;
char *path;
char selectedFor;
unsigned current:1;
} TextureListItem;
static void showData(_Panel *panel);
#define ICON_FILE "appearance"
@@ -87,23 +107,249 @@ typedef struct _Panel {
#define TEXTR_FILE "textr"
/* XPM */
static char * blueled_xpm[] = {
"8 8 17 1",
" c None",
". c #020204",
"+ c #16B6FC",
"@ c #176AFC",
"# c #163AFC",
"$ c #72D2FC",
"% c #224CF4",
"& c #76D6FC",
"* c #16AAFC",
"= c #CEE9FC",
"- c #229EFC",
"; c #164CFC",
"> c #FAFEFC",
", c #2482FC",
"' c #1652FC",
") c #1E76FC",
"! c #1A60FC",
" .... ",
" .=>-@. ",
".=>$@@'.",
".=$@!;;.",
".!@*+!#.",
".#'*+*,.",
" .@)@,. ",
" .... "};
/* XPM */
static char *blueled2_xpm[] = {
/* width height num_colors chars_per_pixel */
" 8 8 17 1",
/* colors */
". c None",
"# c #090909",
"a c #4b63a4",
"b c #011578",
"c c #264194",
"d c #04338c",
"e c #989dac",
"f c #011a7c",
"g c #465c9c",
"h c #03278a",
"i c #6175ac",
"j c #011e74",
"k c #043a90",
"l c #042f94",
"m c #0933a4",
"n c #022184",
"o c #012998",
/* pixels */
"..####..",
".#aimn#.",
"#aechnf#",
"#gchnjf#",
"#jndknb#",
"#bjdddl#",
".#nono#.",
"..####.."
};
#define FTITLE (1<<0)
#define UTITLE (1<<1)
#define OTITLE (1<<2)
#define ICON (1<<3)
#define BACK (1<<4)
#define MTITLE (1<<5)
#define MITEM (1<<6)
#define MTITLE (1<<3)
#define MITEM (1<<4)
#define ICON (1<<5)
#define BACK (1<<6)
#define EVERYTHING 0xff
static Pixmap
renderTexture(_Panel *panel, char *texture, int width, int height,
Bool bordered)
#define TEXPREV_WIDTH 40
#define TEXPREV_HEIGHT 24
static void
str2rcolor(RContext *rc, char *name, RColor *color)
{
return None;
XColor xcolor;
XParseColor(rc->dpy, rc->cmap, name, &xcolor);
color->alpha = 255;
color->red = xcolor.red >> 8;
color->green = xcolor.green >> 8;
color->blue = xcolor.blue >> 8;
}
static void
dumpRImage(char *path, RImage *image)
{
FILE *f;
f = fopen(path, "w");
if (!f) {
wsyserror(path);
return;
}
fprintf(f, "%02x%02x%1x", image->width, image->height,
image->data[3]!=NULL ? 4 : 3);
fwrite(image->data[0], 1, image->width * image->height, f);
fwrite(image->data[1], 1, image->width * image->height, f);
fwrite(image->data[2], 1, image->width * image->height, f);
if (image->data[3])
fwrite(image->data[3], 1, image->width * image->height, f);
if (fclose(f) < 0) {
wsyserror(path);
}
}
static Pixmap
renderTexture(WMScreen *scr, proplist_t texture, int width, int height,
char *path, Bool bordered)
{
char *type;
RImage *image;
Pixmap pixmap;
RContext *rc = WMScreenRContext(scr);
char *str;
RColor rcolor;
type = PLGetString(PLGetArrayElement(texture, 0));
image = RCreateImage(width, height, False);
if (strcasecmp(type, "solid")==0) {
str = PLGetString(PLGetArrayElement(texture, 1));
str2rcolor(rc, str, &rcolor);
RClearImage(image, &rcolor);
} else if (strcasecmp(&type[1], "gradient")==0) {
int style;
RColor rcolor2;
switch (toupper(type[0])) {
case 'V':
style = RVerticalGradient;
break;
case 'H':
style = RHorizontalGradient;
break;
case 'D':
style = RDiagonalGradient;
break;
}
str = PLGetString(PLGetArrayElement(texture, 1));
str2rcolor(rc, str, &rcolor);
str = PLGetString(PLGetArrayElement(texture, 2));
str2rcolor(rc, str, &rcolor2);
image = RRenderGradient(width, height, &rcolor, &rcolor2, style);
} else if (strcasecmp(&type[2], "gradient")==0) {
int style;
RColor **colors;
int i, j;
switch (toupper(type[1])) {
case 'V':
style = RVerticalGradient;
break;
case 'H':
style = RHorizontalGradient;
break;
case 'D':
style = RDiagonalGradient;
break;
}
j = PLGetNumberOfElements(texture);
if (j > 0) {
colors = wmalloc(j * sizeof(RColor*));
for (i = 2; i < j; i++) {
str = PLGetString(PLGetArrayElement(texture, i));
colors[i-2] = wmalloc(sizeof(RColor));
str2rcolor(rc, str, colors[i-2]);
}
colors[i-2] = NULL;
image = RRenderMultiGradient(width, height, colors, style);
for (i = 0; colors[i]!=NULL; i++)
free(colors[i]);
free(colors);
}
} else if (strcasecmp(&type[1], "pixmap")==0) {
int style;
RImage *timage;
int w, h;
char *path;
str = PLGetString(PLGetArrayElement(texture, 1));
path = wfindfileinarray(GetObjectForKey("PixmapPath"), str);
timage = RLoadImage(rc, path, 0);
free(path);
if (timage) {
w = timage->width;
h = timage->height;
if (w - TEXPREV_WIDTH > h - TEXPREV_HEIGHT) {
h = (w * TEXPREV_HEIGHT)/TEXPREV_WIDTH;
} else {
w = (h * TEXPREV_WIDTH)/TEXPREV_HEIGHT;
}
image = RScaleImage(timage, w, h);
RDestroyImage(timage);
}
}
if (path) {
dumpRImage(path, image);
}
RConvertImage(rc, image, &pixmap);
RDestroyImage(image);
return pixmap;
}
#if 0
static void
updatePreviewBox(_Panel *panel, int elements)
@@ -125,7 +371,7 @@ updatePreviewBox(_Panel *panel, int elements)
if (panel->ftitle)
XFreePixmap(dpy, panel->ftitle);
panel->ftitle = renderTexture(panel, tmp, 180, 20, True);
panel->ftitle = renderTexture(scr, tmp, 180, 20, NULL, True);
free(tmp);
}
@@ -163,11 +409,193 @@ getStrArrayForKey(char *key)
static void
newTexture(WMButton *bPtr, void *data)
cancelNewTexture(void *data)
{
_Panel *panel = (_Panel*)data;
HideTexturePanel(panel->texturePanel);
}
static char*
makeFileName(char *prefix, char *name)
{
char *fname, *str;
int i;
str = wstrappend(prefix, name);
fname = wstrdup(str);
i = 1;
while (access(fname, F_OK)==0) {
char buf[16];
free(fname);
sprintf(buf, "%i", i++);
fname = wstrappend(str, buf);
}
free(str);
return fname;
}
static void
okNewTexture(void *data)
{
_Panel *panel = (_Panel*)data;
WMListItem *item;
char *name;
char *str;
proplist_t prop;
TextureListItem *titem;
WMScreen *scr = WMWidgetScreen(panel->win);
titem = wmalloc(sizeof(TextureListItem));
memset(titem, 0, sizeof(TextureListItem));
HideTexturePanel(panel->texturePanel);
name = GetTexturePanelTextureName(panel->texturePanel);
prop = GetTexturePanelTexture(panel->texturePanel);
str = PLGetDescription(prop);
titem->title = name;
titem->prop = prop;
titem->texture = str;
titem->selectedFor = 0;
titem->path = makeFileName(panel->fprefix, name);
titem->preview = renderTexture(scr, prop, TEXPREV_WIDTH, TEXPREV_HEIGHT,
titem->path, False);
item = WMAddListItem(panel->texLs, "");
item->clientData = titem;
WMSetListPosition(panel->texLs, WMGetListNumberOfRows(panel->texLs));
}
static void
okEditTexture(void *data)
{
_Panel *panel = (_Panel*)data;
WMListItem *item;
char *name;
char *str;
proplist_t prop;
TextureListItem *titem;
item = WMGetListItem(panel->texLs, WMGetListSelectedItemRow(panel->texLs));
titem = (TextureListItem*)item->clientData;
HideTexturePanel(panel->texturePanel);
name = GetTexturePanelTextureName(panel->texturePanel);
prop = GetTexturePanelTexture(panel->texturePanel);
str = PLGetDescription(prop);
free(titem->title);
titem->title = name;
PLRelease(titem->prop);
titem->prop = prop;
free(titem->texture);
titem->texture = str;
XFreePixmap(WMScreenDisplay(WMWidgetScreen(panel->texLs)), titem->preview);
titem->preview = renderTexture(WMWidgetScreen(panel->texLs), titem->prop,
TEXPREV_WIDTH, TEXPREV_HEIGHT,
titem->path, False);
WMRedisplayWidget(panel->texLs);
}
static void
editTexture(WMWidget *w, void *data)
{
_Panel *panel = (_Panel*)data;
WMListItem *item;
TextureListItem *titem;
item = WMGetListItem(panel->texLs, WMGetListSelectedItemRow(panel->texLs));
titem = (TextureListItem*)item->clientData;
SetTexturePanelTexture(panel->texturePanel, titem->title, titem->prop);
SetTexturePanelCancelAction(panel->texturePanel, cancelNewTexture, panel);
SetTexturePanelOkAction(panel->texturePanel, okEditTexture, panel);
SetTexturePanelPixmapPath(panel->texturePanel,
GetObjectForKey("PixmapPath"));
ShowTexturePanel(panel->texturePanel);
}
static void
newTexture(WMWidget *w, void *data)
{
_Panel *panel = (_Panel*)data;
SetTexturePanelTexture(panel->texturePanel, "New Texture", NULL);
SetTexturePanelCancelAction(panel->texturePanel, cancelNewTexture, panel);
SetTexturePanelOkAction(panel->texturePanel, okNewTexture, panel);
SetTexturePanelPixmapPath(panel->texturePanel,
GetObjectForKey("PixmapPath"));
ShowTexturePanel(panel->texturePanel);
}
static void
deleteTexture(WMWidget *w, void *data)
{
_Panel *panel = (_Panel*)data;
WMListItem *item;
TextureListItem *titem;
int row;
int section;
section = WMGetPopUpButtonSelectedItem(panel->secP);
row = WMGetListSelectedItemRow(panel->texLs);
item = WMGetListItem(panel->texLs, row);
titem = (TextureListItem*)item->clientData;
if (titem->selectedFor & (1 << section)) {
TextureListItem *titem2;
panel->textureIndex[section] = section;
item = WMGetListItem(panel->texLs, section);
titem2 = (TextureListItem*)item->clientData;
titem2->selectedFor |= 1 << section;
}
free(titem->title);
free(titem->texture);
PLRelease(titem->prop);
if (titem->path) {
if (remove(titem->path) < 0 && errno != ENOENT) {
wsyserror("could not remove file %s", titem->path);
}
free(titem->path);
}
free(titem);
WMRemoveListItem(panel->texLs, row);
WMSetButtonEnabled(panel->delB, False);
}
@@ -179,34 +607,183 @@ changePage(WMWidget *w, void *data)
section = WMGetPopUpButtonSelectedItem(panel->secP);
WMSelectListItem(panel->texLs, section);
WMSelectListItem(panel->texLs, panel->textureIndex[section]);
WMSetListPosition(panel->texLs, panel->textureIndex[section]
- WMGetListNumberOfRows(panel->texLs)/2);
}
static void
selectTexture(WMWidget *w, void *data)
textureClick(WMWidget *w, void *data)
{
_Panel *panel = (_Panel*)data;
int section;
int i;
WMListItem *item;
TextureListItem *titem;
section = WMGetListSelectedItemRow(panel->secP);
i = WMGetListSelectedItemRow(panel->texLs);
item = WMGetListItem(panel->texLs, i);
titem = (TextureListItem*)item->clientData;
if (titem->current) {
WMSetButtonEnabled(panel->delB, False);
} else {
WMSetButtonEnabled(panel->delB, True);
}
}
static void
textureDoubleClick(WMWidget *w, void *data)
{
_Panel *panel = (_Panel*)data;
int i, section;
WMListItem *item;
TextureListItem *titem;
/* unselect old texture */
section = WMGetPopUpButtonSelectedItem(panel->secP);
item = WMGetListItem(panel->texLs, panel->textureIndex[section]);
titem = (TextureListItem*)item->clientData;
titem->selectedFor &= ~(1 << section);
/* select new texture */
i = WMGetListSelectedItemRow(panel->texLs);
item = WMGetListItem(panel->texLs, i);
titem = (TextureListItem*)item->clientData;
titem->selectedFor |= 1<<section;
panel->textureIndex[section] = i;
WMRedisplayWidget(panel->texLs);
}
static void
paintListItem(WMList *lPtr, int index, Drawable d, char *text, int state,
WMRect *rect)
{
_Panel *panel = (_Panel*)WMGetHangedData(lPtr);
WMScreen *scr = WMWidgetScreen(lPtr);
int width, height, x, y;
Display *dpy = WMScreenDisplay(scr);
WMColor *white = WMWhiteColor(scr);
WMListItem *item;
WMColor *black = WMBlackColor(scr);
TextureListItem *titem;
width = rect->size.width;
height = rect->size.height;
x = rect->pos.x;
y = rect->pos.y;
if (state & WLDSSelected)
XFillRectangle(dpy, d, WMColorGC(white), x, y, width, height);
else
XClearArea(dpy, d, x, y, width, height, False);
item = WMGetListItem(lPtr, index);
titem = (TextureListItem*)item->clientData;
if (titem->preview)
XCopyArea(dpy, titem->preview, d, WMColorGC(black), 0, 0, TEXPREV_WIDTH,
TEXPREV_HEIGHT, x + 5, y + 5);
if ((1 << WMGetPopUpButtonSelectedItem(panel->secP)) & titem->selectedFor)
WMDrawPixmap(panel->onLed, d, x + TEXPREV_WIDTH + 10, y + 6);
else if (titem->selectedFor)
WMDrawPixmap(panel->offLed, d, x + TEXPREV_WIDTH + 10, y + 6);
WMDrawString(scr, d, WMColorGC(black), panel->boldFont,
x + TEXPREV_WIDTH + 22, y + 2, titem->title,
strlen(titem->title));
WMDrawString(scr, d, WMColorGC(black), panel->smallFont,
x + TEXPREV_WIDTH + 14, y + 18, titem->texture,
strlen(titem->texture));
WMReleaseColor(white);
WMReleaseColor(black);
}
static Pixmap
loadRImage(WMScreen *scr, char *path)
{
FILE *f;
RImage *image;
int w, h, d;
int i;
Pixmap pixmap;
f = fopen(path, "r");
if (!f)
return None;
fscanf(f, "%02x%02x%1x", &w, &h, &d);
image = RCreateImage(w, h, d == 4);
for (i = 0; i < d; i++) {
fread(image->data[i], 1, w*h, f);
}
fclose(f);
RConvertImage(WMScreenRContext(scr), image, &pixmap);
RDestroyImage(image);
return pixmap;
}
static void
fillTextureList(WMList *lPtr)
{
proplist_t textures;
proplist_t textureList;
proplist_t texture;
WMUserDefaults *udb = WMGetStandardUserDefaults();
int i;
TextureListItem *titem;
WMScreen *scr = WMWidgetScreen(lPtr);
textures = WMGetUDObjectForKey(udb, "Textures");
if (!textures)
textureList = WMGetUDObjectForKey(udb, "TextureList");
if (!textureList)
return;
for (i = 0; i < PLGetNumberOfElements(textureList); i++) {
WMListItem *item;
texture = PLGetArrayElement(textureList, i);
titem = wmalloc(sizeof(TextureListItem));
memset(titem, 0, sizeof(TextureListItem));
titem->title = wstrdup(PLGetString(PLGetArrayElement(texture, 0)));
titem->prop = PLRetain(PLGetArrayElement(texture, 1));
titem->texture = PLGetDescription(titem->prop);
titem->selectedFor = 0;
titem->path = wstrdup(PLGetString(PLGetArrayElement(texture, 2)));
titem->preview = loadRImage(scr, titem->path);
if (!titem->preview) {
titem->preview = renderTexture(scr, titem->prop, TEXPREV_WIDTH,
TEXPREV_HEIGHT, NULL, False);
}
item = WMAddListItem(lPtr, "");
item->clientData = titem;
}
}
@@ -218,6 +795,35 @@ createPanel(Panel *p)
WMFont *font;
WMScreen *scr = WMWidgetScreen(panel->win);
char *tmp;
Bool ok = True;
panel->fprefix = wstrappend(wusergnusteppath(), "/.AppInfo");
if (access(panel->fprefix, F_OK)!=0) {
if (mkdir(panel->fprefix, 0755) < 0) {
wsyserror(panel->fprefix);
ok = False;
}
}
if (ok) {
tmp = wstrappend(panel->fprefix, "/WPrefs/");
free(panel->fprefix);
panel->fprefix = tmp;
if (access(panel->fprefix, F_OK)!=0) {
if (mkdir(panel->fprefix, 0755) < 0) {
wsyserror(panel->fprefix);
}
}
}
panel->smallFont = WMSystemFontOfSize(scr, 10);
panel->normalFont = WMSystemFontOfSize(scr, 12);
panel->boldFont = WMBoldSystemFontOfSize(scr, 12);
panel->onLed = WMCreatePixmapFromXPMData(scr, blueled_xpm);
panel->offLed = WMCreatePixmapFromXPMData(scr, blueled2_xpm);
panel->frame = WMCreateFrame(panel->win);
WMResizeWidget(panel->frame, FRAME_WIDTH, FRAME_HEIGHT);
WMMoveWidget(panel->frame, FRAME_LEFT, FRAME_TOP);
@@ -238,7 +844,8 @@ createPanel(Panel *p)
WMAddPopUpButtonItem(panel->secP, _("Titlebar of Menus"));
WMAddPopUpButtonItem(panel->secP, _("Menu Items"));
WMAddPopUpButtonItem(panel->secP, _("Icon Background"));
WMAddPopUpButtonItem(panel->secP, _("Workspace Backgrounds"));
/* WMAddPopUpButtonItem(panel->secP, _("Workspace Backgrounds"));
*/
WMSetPopUpButtonAction(panel->secP, changePage, panel);
/* texture list */
@@ -263,7 +870,12 @@ createPanel(Panel *p)
panel->texLs = WMCreateList(panel->frame);
WMResizeWidget(panel->texLs, 225, 144);
WMMoveWidget(panel->texLs, 285, 30);
WMSetListUserDrawItemHeight(panel->texLs, 35);
WMSetListUserDrawProc(panel->texLs, paintListItem);
WMHangData(panel->texLs, panel);
WMSetListAction(panel->texLs, textureClick, panel);
WMSetListDoubleAction(panel->texLs, textureDoubleClick, panel);
/* command buttons */
font = WMSystemFontOfSize(scr, 10);
@@ -275,6 +887,7 @@ createPanel(Panel *p)
WMSetButtonFont(panel->newB, font);
WMSetButtonImagePosition(panel->newB, WIPAbove);
WMSetButtonText(panel->newB, _("New"));
WMSetButtonAction(panel->newB, newTexture, panel);
SetButtonAlphaImage(scr, panel->newB, TNEW_FILE);
panel->ripB = WMCreateCommandButton(panel->frame);
@@ -285,6 +898,8 @@ createPanel(Panel *p)
WMSetButtonText(panel->ripB, _("Extract..."));
SetButtonAlphaImage(scr, panel->ripB, TEXTR_FILE);
WMSetButtonEnabled(panel->ripB, False);
panel->editB = WMCreateCommandButton(panel->frame);
WMResizeWidget(panel->editB, 56, 48);
WMMoveWidget(panel->editB, 397, 180);
@@ -292,7 +907,7 @@ createPanel(Panel *p)
WMSetButtonImagePosition(panel->editB, WIPAbove);
WMSetButtonText(panel->editB, _("Edit"));
SetButtonAlphaImage(scr, panel->editB, TEDIT_FILE);
WMSetButtonEnabled(panel->editB, False);
WMSetButtonAction(panel->editB, editTexture, panel);
panel->delB = WMCreateCommandButton(panel->frame);
WMResizeWidget(panel->delB, 56, 48);
@@ -302,6 +917,7 @@ createPanel(Panel *p)
WMSetButtonText(panel->delB, _("Delete"));
SetButtonAlphaImage(scr, panel->delB, TDEL_FILE);
WMSetButtonEnabled(panel->delB, False);
WMSetButtonAction(panel->delB, deleteTexture, panel);
WMReleaseFont(font);
@@ -316,61 +932,133 @@ createPanel(Panel *p)
fillTextureList(panel->texLs);
panel->texturePanel = CreateTexturePanel(panel->win);
}
static proplist_t
setupTextureFor(WMList *list, char *key, char *defValue, char *title)
setupTextureFor(WMList *list, char *key, char *defValue, char *title,
int index)
{
WMListItem *item;
char *tex, *str;
proplist_t prop;
TextureListItem *titem;
prop = GetObjectForKey(key);
if (!prop) {
prop = PLMakeString(defValue);
titem = wmalloc(sizeof(TextureListItem));
memset(titem, 0, sizeof(TextureListItem));
titem->title = wstrdup(title);
titem->prop = GetObjectForKey(key);
if (!titem->prop) {
titem->prop = PLGetProplistWithDescription(defValue);
} else {
PLRetain(titem->prop);
}
tex = PLGetDescription(prop);
str = wstrappend(title, tex);
free(tex);
item = WMAddListItem(list, str);
free(str);
item->clientData = prop;
titem->texture = PLGetDescription((proplist_t)titem->prop);
titem->current = 1;
titem->selectedFor = 1<<index;
return prop;
titem->preview = renderTexture(WMWidgetScreen(list), titem->prop,
TEXPREV_WIDTH, TEXPREV_HEIGHT, NULL, False);
item = WMAddListItem(list, "");
item->clientData = titem;
return titem->prop;
}
static void
showData(_Panel *panel)
{
int i = 0;
panel->ftitleTex = setupTextureFor(panel->texLs, "FTitleBack",
"(solid, black)", "[Focused]:");
panel->ftitleIndex = 0;
"(solid, black)", "[Focused]", i);
panel->textureIndex[i] = i++;
panel->utitleTex = setupTextureFor(panel->texLs, "UTitleBack",
"(solid, gray)", "[Unfocused]:");
panel->utitleIndex = 1;
"(solid, gray)", "[Unfocused]", i);
panel->textureIndex[i] = i++;
panel->ptitleTex = setupTextureFor(panel->texLs, "PTitleBack",
"(solid, \"#616161\")",
"[Owner of Focused]:");
panel->ptitleIndex = 2;
"[Owner of Focused]", i);
panel->textureIndex[i] = i++;
panel->mtitleTex = setupTextureFor(panel->texLs, "MenuTitleBack",
"(solid, black)", "[Menu Title]:");
panel->mtitleIndex = 3;
"(solid, black)", "[Menu Title]", i);
panel->textureIndex[i] = i++;
panel->menuTex = setupTextureFor(panel->texLs, "MenuTextBack",
"(solid, gray)", "[Menu Item]:");
panel->menuIndex = 4;
"(solid, gray)", "[Menu Item]", i);
panel->textureIndex[i] = i++;
panel->iconTex = setupTextureFor(panel->texLs, "IconBack",
"(solid, gray)", "[Icon]:");
panel->iconIndex = 5;
"(solid, gray)", "[Icon]", i);
panel->textureIndex[i] = i++;
/*
panel->backTex = setupTextureFor(panel->texLs, "WorkspaceBack",
"(solid, black)", "[Workspace]:");
panel->backIndex = 6;
"(solid, black)", "[Workspace]", i);
panel->textureIndex[i] = i++;
*/
}
static void
storeData(_Panel *panel)
{
proplist_t textureList;
proplist_t texture;
int i;
TextureListItem *titem;
WMListItem *item;
WMUserDefaults *udb = WMGetStandardUserDefaults();
textureList = PLMakeArrayFromElements(NULL, NULL);
/* store list of textures */
for (i = 6; i < WMGetListNumberOfRows(panel->texLs); i++) {
item = WMGetListItem(panel->texLs, i);
titem = (TextureListItem*)item->clientData;
texture = PLMakeArrayFromElements(PLMakeString(titem->title),
PLRetain(titem->prop),
PLMakeString(titem->path),
NULL);
PLAppendArrayElement(textureList, texture);
}
WMSetUDObjectForKey(udb, textureList, "TextureList");
PLRelease(textureList);
item = WMGetListItem(panel->texLs, panel->textureIndex[0]);
titem = (TextureListItem*)item->clientData;
SetObjectForKey(titem->prop, "FTitleBack");
item = WMGetListItem(panel->texLs, panel->textureIndex[1]);
titem = (TextureListItem*)item->clientData;
SetObjectForKey(titem->prop, "UTitleBack");
item = WMGetListItem(panel->texLs, panel->textureIndex[2]);
titem = (TextureListItem*)item->clientData;
SetObjectForKey(titem->prop, "PTitleBack");
item = WMGetListItem(panel->texLs, panel->textureIndex[3]);
titem = (TextureListItem*)item->clientData;
SetObjectForKey(titem->prop, "MenuTextBack");
item = WMGetListItem(panel->texLs, panel->textureIndex[4]);
titem = (TextureListItem*)item->clientData;
SetObjectForKey(titem->prop, "MenuItemBack");
item = WMGetListItem(panel->texLs, panel->textureIndex[5]);
titem = (TextureListItem*)item->clientData;
SetObjectForKey(titem->prop, "IconBack");
}
@@ -388,6 +1076,7 @@ InitAppearance(WMScreen *scr, WMWindow *win)
panel->win = win;
panel->callbacks.createWidgets = createPanel;
panel->callbacks.updateDomain = storeData;
AddSection(panel, ICON_FILE);

View File

@@ -884,7 +884,6 @@ storeCommandInScript(char *cmd, char *line)
system(buffer);
end:
free(p);
free(path);
if (f)
fclose(f);

File diff suppressed because it is too large Load Diff

View File

@@ -28,8 +28,7 @@
typedef struct _TexturePanel TexturePanel;
TexturePanel *CreateTexturePanel(WMScreen *scr);
TexturePanel *CreateTexturePanel(WMWindow *keyWindow);
void DestroyTexturePanel(TexturePanel *panel);
@@ -37,19 +36,24 @@ void ShowTexturePanel(TexturePanel *panel);
void HideTexturePanel(TexturePanel *panel);
void SetTexturePanelTexture(TexturePanel *panel, char *texture);
void SetTexturePanelTexture(TexturePanel *panel, char *name,
proplist_t texture);
char *GetTexturePanelTextureString(TexturePanel *panel);
char *GetTexturePanelTextureName(TexturePanel *panel);
proplist_t GetTexturePanelTexture(TexturePanel *panel);
RImage *RenderTexturePanelTexture(TexturePanel *panel, unsigned width,
unsigned height);
void SetTexturePanelOkAction(TexturePanel *panel, WMAction *action,
void SetTexturePanelOkAction(TexturePanel *panel, WMCallback *action,
void *clientData);
void SetTexturePanelCancelAction(TexturePanel *panel, WMAction *action,
void SetTexturePanelCancelAction(TexturePanel *panel, WMCallback *action,
void *clientData);
void SetTexturePanelPixmapPath(TexturePanel *panel, proplist_t array);
#endif

View File

@@ -518,8 +518,9 @@ Initialize(WMScreen *scr)
#endif
InitKeyboardShortcuts(scr, WPrefs.win);
InitMouseSettings(scr, WPrefs.win);
#ifdef not_yet_fully_implemented
InitAppearance(scr, WPrefs.win);
#ifdef not_yet_fully_implemented
InitText(scr, WPrefs.win);
InitThemes(scr, WPrefs.win);

View File

@@ -42,7 +42,7 @@
/****/
#define WVERSION "0.20"
#define WVERSION "0.30"
#define WMVERSION "0.51.x"

View File

@@ -165,7 +165,7 @@ main(int argc, char **argv)
wfatal(_("could not open display %s"), XDisplayName(display_name));
exit(0);
}
#if 0
#if 1
XSynchronize(dpy, 1);
#endif
scr = WMCreateScreen(dpy, DefaultScreen(dpy));

View File

@@ -45,15 +45,15 @@ WPrefs.pot: $(POTFILES)
install-data-local: $(CATALOGS)
$(mkinstalldirs) $(nlsdir)
chmod 755 $(nlsdir)
$(mkinstalldirs) $(DESTDIR)$(nlsdir)
chmod 755 $(DESTDIR)$(nlsdir)
for n in $(CATALOGS) __DuMmY ; do \
if test "$$n" -a "$$n" != "__DuMmY" ; then \
l=`basename $$n .mo`; \
$(mkinstalldirs) $(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(nlsdir)/$$l; \
chmod 755 $(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(nlsdir)/$$l/LC_MESSAGES/WPrefs.mo; \
$(mkinstalldirs) $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES/WPrefs.mo; \
fi; \
done

View File

@@ -219,15 +219,15 @@ WPrefs.pot: $(POTFILES)
fi
install-data-local: $(CATALOGS)
$(mkinstalldirs) $(nlsdir)
chmod 755 $(nlsdir)
$(mkinstalldirs) $(DESTDIR)$(nlsdir)
chmod 755 $(DESTDIR)$(nlsdir)
for n in $(CATALOGS) __DuMmY ; do \
if test "$$n" -a "$$n" != "__DuMmY" ; then \
l=`basename $$n .mo`; \
$(mkinstalldirs) $(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(nlsdir)/$$l; \
chmod 755 $(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(nlsdir)/$$l/LC_MESSAGES/WPrefs.mo; \
$(mkinstalldirs) $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES/WPrefs.mo; \
fi; \
done

View File

@@ -44,7 +44,10 @@ tiffdata_DATA = \
speed3s.tiff \
speed4.tiff \
speed4s.tiff \
tdel.tiff \
tedit.tiff \
temp.tiff \
textr.tiff \
theme.tiff \
timer0.tiff \
timer0s.tiff \
@@ -58,6 +61,7 @@ tiffdata_DATA = \
timer4s.tiff \
timer5.tiff \
timer5s.tiff \
tnew.tiff \
whandling.tiff \
windowfocus.tiff \
workspace.tiff \

View File

@@ -89,7 +89,7 @@ wprefsdir = @wprefsdir@
tiffdatadir = $(wprefsdir)/tiff
tiffdata_DATA = advancetonewworkspace.tiff animations.tiff appearance.tiff clip.tiff configs.tiff cycleworkspaces.tiff dock.tiff dontlinkworkspaces.tiff ergonomic.tiff ergowood.tiff expert.tiff fonts.tiff iconprefs.tiff keyboard.tiff keyboardprefs.tiff keyshortcuts.tiff menualign1.tiff menualign2.tiff menuprefs.tiff menus.tiff minimouseleft.tiff minimousemiddle.tiff minimouseright.tiff miscprefs2.tiff moreanim.tiff mousesettings.tiff mousespeed.tiff newstyle.tiff nonopaque.tiff oldstyle.tiff opaque.tiff paths.tiff sound.tiff speed0.tiff speed0s.tiff speed1.tiff speed1s.tiff speed2.tiff speed2s.tiff speed3.tiff speed3s.tiff speed4.tiff speed4s.tiff temp.tiff theme.tiff timer0.tiff timer0s.tiff timer1.tiff timer1s.tiff timer2.tiff timer2s.tiff timer3.tiff timer3s.tiff timer4.tiff timer4s.tiff timer5.tiff timer5s.tiff whandling.tiff windowfocus.tiff workspace.tiff xis.tiff
tiffdata_DATA = advancetonewworkspace.tiff animations.tiff appearance.tiff clip.tiff configs.tiff cycleworkspaces.tiff dock.tiff dontlinkworkspaces.tiff ergonomic.tiff ergowood.tiff expert.tiff fonts.tiff iconprefs.tiff keyboard.tiff keyboardprefs.tiff keyshortcuts.tiff menualign1.tiff menualign2.tiff menuprefs.tiff menus.tiff minimouseleft.tiff minimousemiddle.tiff minimouseright.tiff miscprefs2.tiff moreanim.tiff mousesettings.tiff mousespeed.tiff newstyle.tiff nonopaque.tiff oldstyle.tiff opaque.tiff paths.tiff sound.tiff speed0.tiff speed0s.tiff speed1.tiff speed1s.tiff speed2.tiff speed2s.tiff speed3.tiff speed3s.tiff speed4.tiff speed4s.tiff tdel.tiff tedit.tiff temp.tiff textr.tiff theme.tiff timer0.tiff timer0s.tiff timer1.tiff timer1s.tiff timer2.tiff timer2s.tiff timer3.tiff timer3s.tiff timer4.tiff timer4s.tiff timer5.tiff timer5s.tiff tnew.tiff whandling.tiff windowfocus.tiff workspace.tiff xis.tiff
EXTRA_DIST = $(tiffdata_DATA)

BIN
WPrefs.app/tiff/tdel.tiff Normal file

Binary file not shown.

BIN
WPrefs.app/tiff/tedit.tiff Normal file

Binary file not shown.

BIN
WPrefs.app/tiff/textr.tiff Normal file

Binary file not shown.

BIN
WPrefs.app/tiff/tnew.tiff Normal file

Binary file not shown.

View File

@@ -78,3 +78,6 @@
/* the place where the configuration is stored
* defined by configure */
#undef SYSCONFDIR
/* whether XKB language MODELOCK should be enabled */
#undef XKB_MODELOCK

123
configure vendored
View File

@@ -751,7 +751,7 @@ fi
PACKAGE=WindowMaker
VERSION=0.51.2
VERSION=0.52.0
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@@ -3939,7 +3939,10 @@ fi
# Check whether --enable-modelock or --disable-modelock was given.
if test "${enable_modelock+set}" = set; then
enableval="$enable_modelock"
X_CFLAGS="$X_CFLAGS -DXKB_MODELOCK"
cat >> confdefs.h <<\EOF
#define XKB_MODELOCK 1
EOF
fi
@@ -3959,7 +3962,7 @@ added_xext=no
if test "$shape" = yes; then
echo $ac_n "checking for XShapeSelectInput in -lXext""... $ac_c" 1>&6
echo "configure:3963: checking for XShapeSelectInput in -lXext" >&5
echo "configure:3966: checking for XShapeSelectInput in -lXext" >&5
ac_lib_var=`echo Xext'_'XShapeSelectInput | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -3967,7 +3970,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lXext $XLFLAGS $XLIBS $LIBS"
cat > conftest.$ac_ext <<EOF
#line 3971 "configure"
#line 3974 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -3978,7 +3981,7 @@ int main() {
XShapeSelectInput()
; return 0; }
EOF
if { (eval echo configure:3982: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:3985: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4019,7 +4022,7 @@ fi
if test "$shm" = yes; then
echo $ac_n "checking for XShmAttach in -lXext""... $ac_c" 1>&6
echo "configure:4023: checking for XShmAttach in -lXext" >&5
echo "configure:4026: checking for XShmAttach in -lXext" >&5
ac_lib_var=`echo Xext'_'XShmAttach | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4027,7 +4030,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lXext $XLFLAGS $XLIBS $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4031 "configure"
#line 4034 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4038,7 +4041,7 @@ int main() {
XShmAttach()
; return 0; }
EOF
if { (eval echo configure:4042: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4045: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4062,12 +4065,12 @@ fi
if test "$ok" = yes; then
echo $ac_n "checking for shmget""... $ac_c" 1>&6
echo "configure:4066: checking for shmget" >&5
echo "configure:4069: checking for shmget" >&5
if eval "test \"`echo '$''{'ac_cv_func_shmget'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 4071 "configure"
#line 4074 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char shmget(); below. */
@@ -4090,7 +4093,7 @@ shmget();
; return 0; }
EOF
if { (eval echo configure:4094: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4097: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_shmget=yes"
else
@@ -4139,7 +4142,7 @@ LIBPL=""
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for PLGetString in -lPropList""... $ac_c" 1>&6
echo "configure:4143: checking for PLGetString in -lPropList" >&5
echo "configure:4146: checking for PLGetString in -lPropList" >&5
ac_lib_var=`echo PropList'_'PLGetString | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4147,7 +4150,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lPropList $X_EXTRA_LIBS $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4151 "configure"
#line 4154 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4158,7 +4161,7 @@ int main() {
PLGetString()
; return 0; }
EOF
if { (eval echo configure:4162: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4187,17 +4190,17 @@ CPPFLAGS_old="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $inc_search_path"
ac_safe=`echo "proplist.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for proplist.h""... $ac_c" 1>&6
echo "configure:4191: checking for proplist.h" >&5
echo "configure:4194: checking for proplist.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 4196 "configure"
#line 4199 "configure"
#include "confdefs.h"
#include <proplist.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4201: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:4204: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4265,7 +4268,7 @@ if test "$xpm" = yes; then
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for XpmCreatePixmapFromData in -lXpm""... $ac_c" 1>&6
echo "configure:4269: checking for XpmCreatePixmapFromData in -lXpm" >&5
echo "configure:4272: checking for XpmCreatePixmapFromData in -lXpm" >&5
ac_lib_var=`echo Xpm'_'XpmCreatePixmapFromData | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4273,7 +4276,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lXpm $XLFLAGS $XLIBS $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4277 "configure"
#line 4280 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4284,7 +4287,7 @@ int main() {
XpmCreatePixmapFromData()
; return 0; }
EOF
if { (eval echo configure:4288: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4291: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4314,17 +4317,17 @@ CPPFLAGS_old="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $inc_search_path"
ac_safe=`echo "X11/xpm.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for X11/xpm.h""... $ac_c" 1>&6
echo "configure:4318: checking for X11/xpm.h" >&5
echo "configure:4321: checking for X11/xpm.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 4323 "configure"
#line 4326 "configure"
#include "confdefs.h"
#include <X11/xpm.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4328: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:4331: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4386,7 +4389,7 @@ if test "$png" = yes ; then
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for png_get_valid in -lpng""... $ac_c" 1>&6
echo "configure:4390: checking for png_get_valid in -lpng" >&5
echo "configure:4393: checking for png_get_valid in -lpng" >&5
ac_lib_var=`echo png'_'png_get_valid | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4394,7 +4397,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lpng -lz -lm $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4398 "configure"
#line 4401 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4405,7 +4408,7 @@ int main() {
png_get_valid()
; return 0; }
EOF
if { (eval echo configure:4409: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4412: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4435,17 +4438,17 @@ CPPFLAGS_old="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $inc_search_path"
ac_safe=`echo "png.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for png.h""... $ac_c" 1>&6
echo "configure:4439: checking for png.h" >&5
echo "configure:4442: checking for png.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 4444 "configure"
#line 4447 "configure"
#include "confdefs.h"
#include <png.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4449: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:4452: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4481,6 +4484,7 @@ fi
jpeg=yes
ljpeg=""
# Check whether --enable-jpeg or --disable-jpeg was given.
if test "${enable_jpeg+set}" = set; then
enableval="$enable_jpeg"
@@ -4495,7 +4499,7 @@ if test "$jpeg" = yes; then
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for jpeg_destroy_compress in -ljpeg""... $ac_c" 1>&6
echo "configure:4499: checking for jpeg_destroy_compress in -ljpeg" >&5
echo "configure:4503: checking for jpeg_destroy_compress in -ljpeg" >&5
ac_lib_var=`echo jpeg'_'jpeg_destroy_compress | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4503,7 +4507,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-ljpeg $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4507 "configure"
#line 4511 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4514,7 +4518,7 @@ int main() {
jpeg_destroy_compress()
; return 0; }
EOF
if { (eval echo configure:4518: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4522: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4539,22 +4543,25 @@ LDFLAGS="$LDFLAGS_old"
if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
ljpeg="-ljpeg"
CPPFLAGS_old="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $inc_search_path"
ac_safe=`echo "jpeglib.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for jpeglib.h""... $ac_c" 1>&6
echo "configure:4548: checking for jpeglib.h" >&5
echo "configure:4555: checking for jpeglib.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 4553 "configure"
#line 4560 "configure"
#include "confdefs.h"
#include <jpeglib.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4558: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:4565: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4605,7 +4612,7 @@ if test "$gif" = yes; then
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for DGifOpenFileName in -lungif""... $ac_c" 1>&6
echo "configure:4609: checking for DGifOpenFileName in -lungif" >&5
echo "configure:4616: checking for DGifOpenFileName in -lungif" >&5
ac_lib_var=`echo ungif'_'DGifOpenFileName | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4613,7 +4620,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lungif $XLFLAGS $XLIBS $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4617 "configure"
#line 4624 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4624,7 +4631,7 @@ int main() {
DGifOpenFileName()
; return 0; }
EOF
if { (eval echo configure:4628: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4635: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4655,7 +4662,7 @@ LDFLAGS="$LDFLAGS_old"
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for DGifOpenFileName in -lgif""... $ac_c" 1>&6
echo "configure:4659: checking for DGifOpenFileName in -lgif" >&5
echo "configure:4666: checking for DGifOpenFileName in -lgif" >&5
ac_lib_var=`echo gif'_'DGifOpenFileName | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4663,7 +4670,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-lgif $XLFLAGS $XLIBS $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4667 "configure"
#line 4674 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4674,7 +4681,7 @@ int main() {
DGifOpenFileName()
; return 0; }
EOF
if { (eval echo configure:4678: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4685: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4708,17 +4715,17 @@ CPPFLAGS_old="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $inc_search_path"
ac_safe=`echo "gif_lib.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for gif_lib.h""... $ac_c" 1>&6
echo "configure:4712: checking for gif_lib.h" >&5
echo "configure:4719: checking for gif_lib.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 4717 "configure"
#line 4724 "configure"
#include "confdefs.h"
#include <gif_lib.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4722: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:4729: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@@ -4779,7 +4786,7 @@ if test "$tif" = yes; then
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for TIFFGetVersion in -ltiff""... $ac_c" 1>&6
echo "configure:4783: checking for TIFFGetVersion in -ltiff" >&5
echo "configure:4790: checking for TIFFGetVersion in -ltiff" >&5
ac_lib_var=`echo tiff'_'TIFFGetVersion | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
@@ -4787,7 +4794,7 @@ else
ac_save_LIBS="$LIBS"
LIBS="-ltiff -lm $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4791 "configure"
#line 4798 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4798,7 +4805,7 @@ int main() {
TIFFGetVersion()
; return 0; }
EOF
if { (eval echo configure:4802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4809: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4830,15 +4837,15 @@ LDFLAGS="$LDFLAGS_old"
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for TIFFGetVersion in -ltiff""... $ac_c" 1>&6
echo "configure:4834: checking for TIFFGetVersion in -ltiff" >&5
echo "configure:4841: checking for TIFFGetVersion in -ltiff" >&5
ac_lib_var=`echo tiff'_'TIFFGetVersion | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
LIBS="-ltiff -lz -lm $LIBS"
LIBS="-ltiff $ljpeg -lz -lm $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4842 "configure"
#line 4849 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4849,7 +4856,7 @@ int main() {
TIFFGetVersion()
; return 0; }
EOF
if { (eval echo configure:4853: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4860: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4882,15 +4889,15 @@ LDFLAGS="$LDFLAGS_old"
LDFLAGS_old="$LDFLAGS"
LDFLAGS="$LDFLAGS $lib_search_path"
echo $ac_n "checking for TIFFGetVersion in -ltiff34""... $ac_c" 1>&6
echo "configure:4886: checking for TIFFGetVersion in -ltiff34" >&5
echo "configure:4893: checking for TIFFGetVersion in -ltiff34" >&5
ac_lib_var=`echo tiff34'_'TIFFGetVersion | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
LIBS="-ltiff34 -lm $LIBS"
LIBS="-ltiff34 $ljpeg -lm $LIBS"
cat > conftest.$ac_ext <<EOF
#line 4894 "configure"
#line 4901 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -4901,7 +4908,7 @@ int main() {
TIFFGetVersion()
; return 0; }
EOF
if { (eval echo configure:4905: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:4912: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
@@ -4936,17 +4943,17 @@ CPPFLAGS_old="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $inc_search_path"
ac_safe=`echo "tiffio.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for tiffio.h""... $ac_c" 1>&6
echo "configure:4940: checking for tiffio.h" >&5
echo "configure:4947: checking for tiffio.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 4945 "configure"
#line 4952 "configure"
#include "confdefs.h"
#include <tiffio.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:4950: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:4957: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*

View File

@@ -10,7 +10,7 @@ AC_INIT(src/WindowMaker.h)
AM_INIT_AUTOMAKE(WindowMaker, 0.51.2)
AM_INIT_AUTOMAKE(WindowMaker, 0.52.0)
AM_PROG_LIBTOOL
@@ -342,7 +342,7 @@ dnl XKB keyboard language status
dnl ============================
AC_ARG_ENABLE(modelock,
[ --enable-modelock XKB keyboard language status support],
X_CFLAGS="$X_CFLAGS -DXKB_MODELOCK",)
AC_DEFINE(XKB_MODELOCK))
@@ -496,6 +496,7 @@ fi
dnl JPEG Support
dnl ============
jpeg=yes
ljpeg=""
AC_ARG_ENABLE(jpeg,
[ --disable-jpeg disable JPEG support through libjpeg],
jpeg=$enableval, jpeg=yes, jpeg=no)
@@ -504,6 +505,9 @@ if test "$jpeg" = yes; then
WM_CHECK_LIB(jpeg, jpeg_destroy_compress)
if test "x$ac_cv_lib_jpeg_jpeg_destroy_compress" = xyes; then
ljpeg="-ljpeg"
WM_CHECK_HEADER(jpeglib.h)
if test "x$ac_cv_header_jpeglib_h" = xyes; then
GFXLIBS="$GFXLIBS -ljpeg"
@@ -576,14 +580,14 @@ dnl Retry with zlib
dnl
unset ac_cv_lib_tiff_TIFFGetVersion
if test "x$my_libname" = x; then
WM_CHECK_LIB(tiff, TIFFGetVersion, [-lz -lm])
WM_CHECK_LIB(tiff, TIFFGetVersion, [$ljpeg -lz -lm])
if test "x$ac_cv_lib_tiff_TIFFGetVersion" = xyes; then
my_libname="-ltiff -lz"
fi
fi
if test "x$my_libname" = x; then
WM_CHECK_LIB(tiff34, TIFFGetVersion, [-lm])
WM_CHECK_LIB(tiff34, TIFFGetVersion, [$ljpeg -lm])
if test "x$ac_cv_lib_tiff34_TIFFGetVersion" = xyes; then
my_libname="-ltiff34"
fi

View File

@@ -103,7 +103,7 @@ DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
TAR = tar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:

View File

@@ -53,14 +53,14 @@ WindowMaker.pot: $(POTFILES)
fi
install-data-local: $(CATALOGS)
$(mkinstalldirs) $(nlsdir)
chmod 755 $(nlsdir)
$(mkinstalldirs) $(DESTDIR)$(nlsdir)
chmod 755 $(DESTDIR)$(nlsdir)
for n in $(CATALOGS) __DuMmY ; do \
if test "$$n" -a "$$n" != "__DuMmY" ; then \
l=`basename $$n .mo`; \
$(mkinstalldirs) $(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(nlsdir)/$$l; \
chmod 755 $(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(nlsdir)/$$l/LC_MESSAGES/WindowMaker.mo; \
$(mkinstalldirs) $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES/WindowMaker.mo; \
fi; \
done

View File

@@ -113,7 +113,7 @@ DIST_COMMON = README Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
TAR = tar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
@@ -220,15 +220,15 @@ WindowMaker.pot: $(POTFILES)
fi
install-data-local: $(CATALOGS)
$(mkinstalldirs) $(nlsdir)
chmod 755 $(nlsdir)
$(mkinstalldirs) $(DESTDIR)$(nlsdir)
chmod 755 $(DESTDIR)$(nlsdir)
for n in $(CATALOGS) __DuMmY ; do \
if test "$$n" -a "$$n" != "__DuMmY" ; then \
l=`basename $$n .mo`; \
$(mkinstalldirs) $(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(nlsdir)/$$l; \
chmod 755 $(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(nlsdir)/$$l/LC_MESSAGES/WindowMaker.mo; \
$(mkinstalldirs) $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l; \
chmod 755 $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES; \
$(INSTALL_DATA) -m 644 $$n $(DESTDIR)$(nlsdir)/$$l/LC_MESSAGES/WindowMaker.mo; \
fi; \
done

View File

@@ -139,7 +139,7 @@ wconfig.h.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
TAR = tar
GZIP_ENV = --best
SOURCES = $(wmaker_SOURCES)
OBJECTS = $(wmaker_OBJECTS)

View File

@@ -125,6 +125,9 @@
* defined by configure */
#define SYSCONFDIR "/usr/local/etc/WindowMaker"
/* whether XKB language MODELOCK should be enabled */
/* #undef XKB_MODELOCK */
/* Define if you have the atexit function. */
#define HAVE_ATEXIT 1
@@ -174,5 +177,5 @@
#define PACKAGE "WindowMaker"
/* Version number of package */
#define VERSION "0.51.2"
#define VERSION "0.52.0"

View File

@@ -124,6 +124,9 @@
* defined by configure */
#undef SYSCONFDIR
/* whether XKB language MODELOCK should be enabled */
#undef XKB_MODELOCK
/* Define if you have the atexit function. */
#undef HAVE_ATEXIT

View File

@@ -66,10 +66,12 @@ typedef struct _AppSettingsPanel {
WMButton *browseBtn;
WMButton *autoLaunchBtn;
WMButton *okBtn;
WMButton *cancelBtn;
Window parent;
/* kluge */
unsigned int destroyed:1;
unsigned int choosingIcon:1;
@@ -392,6 +394,8 @@ ShowDockAppSettingsPanel(WAppIcon *aicon)
panel->wwin->client_leader = WMWidgetXID(panel->win);
panel->parent = parent;
WMMapWidget(panel->win);
wWindowMap(panel->wwin);
@@ -421,10 +425,10 @@ DestroyDockAppSettingsPanel(AppSettingsPanel *panel)
WMDestroyWidget(panel->win);
XDestroyWindow(dpy, panel->wwin->client_win);
XDestroyWindow(dpy, panel->parent);
panel->editedIcon->panel = NULL;
panel->editedIcon->editing = 0;
free(panel);

View File

@@ -639,11 +639,11 @@ handleButtonPress(XEvent *event)
wSelectWindows(scr, event);
}
#ifdef MOUSE_WS_SWITCH
else if (event->xbutton.button==Button4) {
else if (event->xbutton.button==Button5) {
wWorkspaceRelativeChange(scr, -1);
} else if (event->xbutton.button==Button5) {
} else if (event->xbutton.button==Button4) {
wWorkspaceRelativeChange(scr, 1);

View File

@@ -1008,7 +1008,7 @@ ExpandOptions(WScreen *scr, char *cmdline)
case 'W':
sprintf(tmpbuf, "0x%x",
(unsigned int)scr->current_workspace);
(unsigned int)scr->current_workspace + 1);
slen = strlen(tmpbuf);
olen += slen;
nout = realloc(out,olen);

View File

@@ -196,7 +196,7 @@ PlaceIcon(WScreen *scr, int *x_ret, int *y_ret)
#define INDEX(x,y) (((y)+1)*(sw+2) + (x) + 1)
for (level = WMNormalLevel; level >= WMDesktopLevel; level--) {
for (level = MAX_WINDOW_LEVELS-1; level >= WMDesktopLevel; level--) {
obj = scr->stacking_list[level];
while (obj) {

View File

@@ -1738,6 +1738,12 @@ OpenRootMenu(WScreen *scr, int x, int y, int keyboard)
if (!menu) {
/* menu hasn't changed or could not be read */
if (!scr->root_menu) {
wMessageDialog(scr, _("Error"),
_("The applications menu could not be loaded."
"Look at the console output for a detailed"
"description of the errors"),
_("OK"), NULL, NULL);
menu = makeDefaultMenu(scr);
scr->root_menu = menu;
}

View File

@@ -169,8 +169,7 @@ execMenuCommand(WMenu *menu, WMenuEntry *entry)
break;
case MC_PROPERTIES:
if (wwin->wm_class || wwin->wm_instance)
wShowInspectorForWindow(wwin);
wShowInspectorForWindow(wwin);
break;
case MC_HIDE:
@@ -581,7 +580,7 @@ updateMenuForWindow(WMenu *menu, WWindow *wwin)
wMenuSetEnabled(menu, MC_DUMMY_MOVETO, !IS_OMNIPRESENT(wwin));
if ((wwin->wm_class || wwin->wm_instance) && !wwin->flags.inspector_open) {
if (!wwin->flags.inspector_open) {
wMenuSetEnabled(menu, MC_PROPERTIES, True);
} else {
wMenuSetEnabled(menu, MC_PROPERTIES, False);

View File

@@ -1026,7 +1026,7 @@ createInspectorForWindow(WWindow *wwin)
WMMoveWidget(panel->saveBtn, (2 * (btn_width + 10)) + 15, 310);
WMSetButtonText(panel->saveBtn, _("Save"));
WMResizeWidget(panel->saveBtn, btn_width, 28);
if (wPreferences.flags.noupdates)
if (wPreferences.flags.noupdates || !(wwin->wm_class || wwin->wm_instance))
WMSetButtonEnabled(panel->saveBtn, False);
panel->applyBtn = WMCreateCommandButton(panel->win);
@@ -1362,8 +1362,8 @@ createInspectorForWindow(WWindow *wwin)
} else {
int tmp;
if (wwin->transient_for!=None
&& wwin->transient_for!=scr->root_win)
if ((wwin->transient_for!=None && wwin->transient_for!=scr->root_win)
|| !wwin->wm_class || !wwin->wm_instance)
tmp = False;
else
tmp = True;
@@ -1380,7 +1380,12 @@ createInspectorForWindow(WWindow *wwin)
else
WMSetButtonEnabled(panel->attrChk[3], True);
if (!wwin->wm_class && !wwin->wm_instance) {
WMSetPopUpButtonItemEnabled(panel->pagePopUp, 0, False);
}
WMRealizeWidget(panel->win);
WMMapSubwidgets(panel->win);
@@ -1428,6 +1433,7 @@ createInspectorForWindow(WWindow *wwin)
showIconFor(WMWidgetScreen(panel->alwChk), panel, wwin->wm_instance,
wwin->wm_class, UPDATE_TEXT_FIELD);
return panel;
}

View File

@@ -124,7 +124,7 @@ DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
TAR = tar
GZIP_ENV = --best
SOURCES = $(wtest_SOURCES)
OBJECTS = $(wtest_OBJECTS)

View File

@@ -185,7 +185,7 @@ DIST_COMMON = README Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
TAR = tar
GZIP_ENV = --best
SOURCES = $(wxcopy_SOURCES) $(wxpaste_SOURCES) $(wdwrite_SOURCES) $(getstyle_SOURCES) $(setstyle_SOURCES) $(seticons_SOURCES) $(geticonset_SOURCES) $(wmsetbg_SOURCES)
OBJECTS = $(wxcopy_OBJECTS) $(wxpaste_OBJECTS) $(wdwrite_OBJECTS) $(getstyle_OBJECTS) $(setstyle_OBJECTS) $(seticons_OBJECTS) $(geticonset_OBJECTS) $(wmsetbg_OBJECTS)

View File

@@ -289,6 +289,7 @@ for xinit in .xinitrc .Xclients .xsession; do
fi
done
if test $wmaker_found = 1; then
echo "Found Window Maker to already be your default window manager."
show_end_message
exit 0
fi

View File

@@ -1076,8 +1076,6 @@ changeTextureForWorkspace(char *domain, char *texture, int workspace)
proplist_t val;
char *value;
int j;
workspace++;
val = PLGetProplistWithDescription(texture);
if (!val) {

View File

@@ -125,7 +125,7 @@ DIST_COMMON = COPYING.LIB Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
TAR = tar
GZIP_ENV = --best
SOURCES = $(libWMaker_a_SOURCES)
OBJECTS = $(libWMaker_a_OBJECTS)

View File

@@ -165,7 +165,7 @@ Makefile.in NEWS TODO alloca.c configure.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = gtar
TAR = tar
GZIP_ENV = --best
SOURCES = $(libwraster_la_SOURCES) $(testgrad_SOURCES) $(testdraw_SOURCES) $(view_SOURCES)
OBJECTS = $(libwraster_la_OBJECTS) $(testgrad_OBJECTS) $(testdraw_OBJECTS) $(view_OBJECTS)