mirror of
https://github.com/gryf/wmaker.git
synced 2026-07-12 08:56:29 +02:00
Compare commits
93 Commits
82ab2d2d06
..
next
| Author | SHA1 | Date | |
|---|---|---|---|
| ddacfa5d63 | |||
| 0718297e9a | |||
| 9cc16182d3 | |||
| f6165d6e80 | |||
| 10c36d244e | |||
| 515eb652c7 | |||
| 8ed92efa3c | |||
| cc839f8bc5 | |||
| 48d4820dee | |||
| d4f5f3ec7f | |||
| 83f7fa43ce | |||
| 55a816bdbc | |||
| 7639fa1c15 | |||
| 93b411f258 | |||
| 326a67e18f | |||
| c089c6aea4 | |||
| 66b0ee3c4d | |||
| a6c8577eb4 | |||
| 094001a53d | |||
| deba131857 | |||
| a9bc9751a2 | |||
| 58b6728743 | |||
| 894d096d6e | |||
| a41b0aa21d | |||
| d4cc033379 | |||
| 308b9f4975 | |||
| 1d1c904126 | |||
| ca4ae5068b | |||
| 26491867a3 | |||
| dce34e926b | |||
| a0b283a60f | |||
| 671db45007 | |||
| 0c6ad643c8 | |||
| 5076b6f496 | |||
| 54c8535365 | |||
| 24f5b32469 | |||
| 85169642ca | |||
| 9f9ef6417e | |||
| fb2a6d2e61 | |||
| 8219c36488 | |||
| bd38778bef | |||
| 1e45ff2305 | |||
| 7e1cdf2d59 | |||
| 43f0474013 | |||
| a079544647 | |||
| 03ec24502d | |||
| 5c90ed9d2d | |||
| 735651df55 | |||
| bfab769065 | |||
| c060477d57 | |||
| 75f133285f | |||
| a6ec6a30a3 | |||
| 6afa419b01 | |||
| a2bf67f54c | |||
| 351e05dca9 | |||
| ae78e88eef | |||
| f049635fa5 | |||
| 4221e30bd2 | |||
| 71558f4ce3 | |||
| 4b61081353 | |||
| 4138c57631 | |||
| 0bbb122b94 | |||
| 0e274dc979 | |||
| 4dfb0dd059 | |||
| bcb53700d6 | |||
| e5f7ef23a6 | |||
| 70f89fd9c5 | |||
| 19202fd2db | |||
| aadd694a6b | |||
| fbec3a728f | |||
| 944bb49997 | |||
| 0ac6827a9b | |||
| f030ab7664 | |||
| 2a8fc1df9a | |||
| 296456f361 | |||
| f2cd2c9f03 | |||
| d125f80dee | |||
| 8e47ca8e62 | |||
| 29cf48b934 | |||
| 816fa00625 | |||
| 6ebec0bb9f | |||
| 7c50721747 | |||
| 4559cbbccc | |||
| e828e1c074 | |||
| 97a9300aa4 | |||
| fd56152202 | |||
| 58862300f9 | |||
| 1612d2f345 | |||
| 920c6d16b1 | |||
| 8aecba27d1 | |||
| fc63d72032 | |||
| eb2a9d97a2 | |||
| 9abe4165d1 |
@@ -120,6 +120,8 @@ WindowMaker/Defaults/WMWindowAttributes
|
|||||||
WindowMaker/Defaults/WindowMaker
|
WindowMaker/Defaults/WindowMaker
|
||||||
WindowMaker/IconSets/Default.iconset
|
WindowMaker/IconSets/Default.iconset
|
||||||
|
|
||||||
|
WPrefs.app/WPrefs.desktop
|
||||||
|
|
||||||
# These files are generated by the i18n process
|
# These files are generated by the i18n process
|
||||||
/po/WindowMaker.pot
|
/po/WindowMaker.pot
|
||||||
/po/*.mo
|
/po/*.mo
|
||||||
|
|||||||
+40
-4
@@ -19,10 +19,19 @@ config-paths.h: Makefile
|
|||||||
@echo '#define PIXMAPDIR "$(pixmapdir)"' >> $@
|
@echo '#define PIXMAPDIR "$(pixmapdir)"' >> $@
|
||||||
@echo '' >> $@
|
@echo '' >> $@
|
||||||
@echo '/* where shared data is stored */' >> $@
|
@echo '/* where shared data is stored */' >> $@
|
||||||
@echo '#define PKGDATADIR "$(datadir)/WindowMaker"' >> $@
|
@echo '#define PKGDATADIR "$(datadir)/$(PACKAGE_TARNAME)"' >> $@
|
||||||
@echo '' >> $@
|
@echo '' >> $@
|
||||||
@echo '/* where the global defaults are stored */' >> $@
|
@echo '/* where the global defaults are stored */' >> $@
|
||||||
@echo '#define DEFSDATADIR "$(defsdatadir)"' >> $@
|
@echo '#define PKGCONFDIR "$(pkgconfdir)"' >> $@
|
||||||
|
@echo '' >> $@
|
||||||
|
@echo '/* where the user data root is located */' >> $@
|
||||||
|
@echo '#define GSUSER_SUBDIR "GNUstep"' >> $@
|
||||||
|
@echo '' >> $@
|
||||||
|
@echo '/* where the user defaults are stored */' >> $@
|
||||||
|
@echo '#define DEFAULTS_SUBDIR "Defaults"' >> $@
|
||||||
|
@echo '' >> $@
|
||||||
|
@echo '/* where the user data are stored */' >> $@
|
||||||
|
@echo '#define USERDATA_SUBDIR "Library"' >> $@
|
||||||
|
|
||||||
ACLOCAL_AMFLAGS = -I m4
|
ACLOCAL_AMFLAGS = -I m4
|
||||||
|
|
||||||
@@ -41,11 +50,13 @@ EXTRA_DIST = TODO BUGS BUGFORM FAQ INSTALL \
|
|||||||
script/check-cmdline-options-doc.sh \
|
script/check-cmdline-options-doc.sh \
|
||||||
script/check-translation-sources.sh \
|
script/check-translation-sources.sh \
|
||||||
script/check-wmaker-loaddef-callbacks.sh \
|
script/check-wmaker-loaddef-callbacks.sh \
|
||||||
|
script/generate-html-from-man.sh \
|
||||||
script/generate-mapfile-from-header.sh \
|
script/generate-mapfile-from-header.sh \
|
||||||
script/generate-po-from-template.sh \
|
script/generate-po-from-template.sh \
|
||||||
script/generate-txt-from-texi.sh \
|
script/generate-txt-from-texi.sh \
|
||||||
script/nested-func-to-macro.sh \
|
script/nested-func-to-macro.sh \
|
||||||
script/replace-ac-keywords.sh
|
script/replace-ac-keywords.sh \
|
||||||
|
script/replace-generated-content.sh
|
||||||
|
|
||||||
|
|
||||||
.PHONY: coverage-reset coverage
|
.PHONY: coverage-reset coverage
|
||||||
@@ -62,6 +73,10 @@ coverage:
|
|||||||
genhtml --output-directory @lcov_output_directory@ coverage/coverage.info
|
genhtml --output-directory @lcov_output_directory@ coverage/coverage.info
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# Section for the I18N processing
|
||||||
|
################################################################################
|
||||||
|
|
||||||
# make update-lang PO=<lang>
|
# make update-lang PO=<lang>
|
||||||
# ==========================
|
# ==========================
|
||||||
# Update the PO files against the POT file in all the translation sub-directories
|
# Update the PO files against the POT file in all the translation sub-directories
|
||||||
@@ -80,13 +95,34 @@ if HAVE_XGETTEXT
|
|||||||
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) update-lang || exit $$?); \
|
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) update-lang || exit $$?); \
|
||||||
done
|
done
|
||||||
|
|
||||||
SUBDIRS_PO = WINGs/po po util/po WPrefs.app/po
|
SUBDIRS_PO = wrlib/po WINGs/po po util/po WPrefs.app/po
|
||||||
else
|
else
|
||||||
@echo "Error: the program 'xgettext' was not found by configure, it is mandatory for this operation" >&2 ; exit 1
|
@echo "Error: the program 'xgettext' was not found by configure, it is mandatory for this operation" >&2 ; exit 1
|
||||||
endif
|
endif
|
||||||
|
|
||||||
.PHONY: update-lang
|
.PHONY: update-lang
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# Section related to generating HTML content for the website
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
if WITH_WEB_REPO
|
||||||
|
|
||||||
|
SUBDIRS_WEB = doc
|
||||||
|
|
||||||
|
website:
|
||||||
|
@for subdir in $(SUBDIRS_WEB); do \
|
||||||
|
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) website || exit $$?); \
|
||||||
|
done
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
|
.PHONY: website
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# Section for the automated checks
|
||||||
|
################################################################################
|
||||||
|
|
||||||
# Create a 'silent-rule' for our make check the same way automake does
|
# Create a 'silent-rule' for our make check the same way automake does
|
||||||
AM_V_CHKOPTS = $(am__v_CHKOPTS_$(V))
|
AM_V_CHKOPTS = $(am__v_CHKOPTS_$(V))
|
||||||
am__v_CHKOPTS_ = $(am__v_CHKOPTS_$(AM_DEFAULT_VERBOSITY))
|
am__v_CHKOPTS_ = $(am__v_CHKOPTS_$(AM_DEFAULT_VERBOSITY))
|
||||||
|
|||||||
@@ -1,6 +1,15 @@
|
|||||||
NEWS for veteran Window Maker users
|
NEWS for veteran Window Maker users
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
|
|
||||||
|
-- 0.95.10
|
||||||
|
|
||||||
|
Keep dock on primary head
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
To keep the dock on the primary head in a multi-head setup, set the option
|
||||||
|
"KeepDockOnPrimaryHead" in ~/GNUstep/Defaults/WindowMaker to "YES" or click
|
||||||
|
"Keep dock on primary head" under the WPrefs "Expert User Preferences" tab.
|
||||||
|
|
||||||
-- 0.95.9
|
-- 0.95.9
|
||||||
|
|
||||||
Configurable SwitchPanel
|
Configurable SwitchPanel
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ noinst_PROGRAMS = fontl puzzle colorpick
|
|||||||
|
|
||||||
LDADD= $(top_builddir)/WINGs/libWINGs.la $(top_builddir)/wrlib/libwraster.la \
|
LDADD= $(top_builddir)/WINGs/libWINGs.la $(top_builddir)/wrlib/libwraster.la \
|
||||||
$(top_builddir)/WINGs/libWUtil.la \
|
$(top_builddir)/WINGs/libWUtil.la \
|
||||||
@XFTLIBS@ @INTLIBS@ @XLIBS@
|
@XFT_LIBS@ @INTLIBS@ @XLIBS@
|
||||||
|
|
||||||
colorpick_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.la
|
colorpick_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.la
|
||||||
|
|
||||||
|
|||||||
@@ -25,6 +25,6 @@ AM_CPPFLAGS = -I$(top_srcdir)/wrlib -I$(top_srcdir)/WINGs \
|
|||||||
|
|
||||||
LDADD= $(top_builddir)/WINGs/libWINGs.la $(top_builddir)/wrlib/libwraster.la \
|
LDADD= $(top_builddir)/WINGs/libWINGs.la $(top_builddir)/wrlib/libwraster.la \
|
||||||
$(top_builddir)/WINGs/libWUtil.la \
|
$(top_builddir)/WINGs/libWUtil.la \
|
||||||
@XFTLIBS@ @INTLIBS@
|
@XFT_LIBS@ @INTLIBS@
|
||||||
|
|
||||||
test_LDADD = wtableview.o wtabledelegates.o $(LDADD)
|
test_LDADD = wtableview.o wtabledelegates.o $(LDADD)
|
||||||
|
|||||||
+7
-6
@@ -12,7 +12,7 @@ lib_LTLIBRARIES = libWUtil.la libWINGs.la
|
|||||||
|
|
||||||
|
|
||||||
LDADD= libWUtil.la libWINGs.la $(top_builddir)/wrlib/libwraster.la @INTLIBS@
|
LDADD= libWUtil.la libWINGs.la $(top_builddir)/wrlib/libwraster.la @INTLIBS@
|
||||||
libWINGs_la_LIBADD = libWUtil.la $(top_builddir)/wrlib/libwraster.la @XLIBS@ @XFTLIBS@ @FCLIBS@ @LIBM@ @PANGOLIBS@
|
libWINGs_la_LIBADD = libWUtil.la $(top_builddir)/wrlib/libwraster.la @XLIBS@ @XFT_LIBS@ @FCLIBS@ @LIBM@ @PANGO_LIBS@
|
||||||
libWUtil_la_LIBADD = @LIBBSD@
|
libWUtil_la_LIBADD = @LIBBSD@
|
||||||
|
|
||||||
EXTRA_DIST = BUGS make-rgb Examples Extras Tests
|
EXTRA_DIST = BUGS make-rgb Examples Extras Tests
|
||||||
@@ -87,11 +87,12 @@ libWUtil_la_SOURCES = \
|
|||||||
wutil.c
|
wutil.c
|
||||||
|
|
||||||
|
|
||||||
AM_CFLAGS =
|
AM_CFLAGS = @PANGO_CFLAGS@
|
||||||
|
|
||||||
AM_CPPFLAGS = -DRESOURCE_PATH=\"$(datadir)/WINGs\" \
|
AM_CPPFLAGS = -DRESOURCE_PATH=\"$(datadir)/WINGs\" \
|
||||||
-I$(top_srcdir)/WINGs/WINGs -I$(top_srcdir)/wrlib -I$(top_srcdir)/src \
|
-I$(top_srcdir)/WINGs/WINGs -I$(top_builddir)/WINGs/WINGs \
|
||||||
@XFTFLAGS@ @HEADER_SEARCH_PATH@
|
-I$(top_builddir)/wrlib -I$(top_srcdir)/src \
|
||||||
|
@XFT_CFLAGS@ @HEADER_SEARCH_PATH@
|
||||||
|
|
||||||
pkgconfigdir = $(libdir)/pkgconfig
|
pkgconfigdir = $(libdir)/pkgconfig
|
||||||
pkgconfig_DATA = WINGs.pc WUtil.pc
|
pkgconfig_DATA = WINGs.pc WUtil.pc
|
||||||
@@ -105,8 +106,8 @@ WINGs.pc: Makefile
|
|||||||
@echo 'Version: $(VERSION)' >> $@
|
@echo 'Version: $(VERSION)' >> $@
|
||||||
@echo 'Requires: wrlib WUtil' >> $@
|
@echo 'Requires: wrlib WUtil' >> $@
|
||||||
@echo 'Libs: $(lib_search_path) -lWINGs' >> $@
|
@echo 'Libs: $(lib_search_path) -lWINGs' >> $@
|
||||||
@echo 'Libs.private: $(XFTLIBS) $(PANGOLIBS) $(XLIBS) -lm $(INTLIBS)' >> $@
|
@echo 'Libs.private: $(XFT_LIBS) $(PANGOLIBS) $(XLIBS) -lm $(INTLIBS)' >> $@
|
||||||
@echo 'Cflags: $(inc_search_path)' >> $@
|
@echo 'Cflags: $(inc_search_path) @PANGO_CFLAGS@' >> $@
|
||||||
|
|
||||||
WUtil.pc: Makefile
|
WUtil.pc: Makefile
|
||||||
@echo "Generating $@"
|
@echo "Generating $@"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ noinst_PROGRAMS = wtest wmquery wmfile testmywidget
|
|||||||
|
|
||||||
LDADD= $(top_builddir)/WINGs/libWINGs.la $(top_builddir)/wrlib/libwraster.la \
|
LDADD= $(top_builddir)/WINGs/libWINGs.la $(top_builddir)/wrlib/libwraster.la \
|
||||||
$(top_builddir)/WINGs/libWUtil.la \
|
$(top_builddir)/WINGs/libWUtil.la \
|
||||||
@XFTLIBS@ @INTLIBS@ @XLIBS@
|
@XFT_LIBS@ @INTLIBS@ @XLIBS@
|
||||||
|
|
||||||
|
|
||||||
testmywidget_SOURCES = testmywidget.c mywidget.c mywidget.h
|
testmywidget_SOURCES = testmywidget.c mywidget.c mywidget.h
|
||||||
@@ -17,4 +17,4 @@ wtest_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.la
|
|||||||
EXTRA_DIST = logo.xpm upbtn.xpm wm.html wm.png
|
EXTRA_DIST = logo.xpm upbtn.xpm wm.html wm.png
|
||||||
|
|
||||||
AM_CPPFLAGS = -I$(top_srcdir)/WINGs -I$(top_srcdir)/wrlib -I$(top_srcdir)/src \
|
AM_CPPFLAGS = -I$(top_srcdir)/WINGs -I$(top_srcdir)/wrlib -I$(top_srcdir)/src \
|
||||||
-DRESOURCE_PATH=\"$(datadir)/WINGs\" @XFTFLAGS@ @HEADER_SEARCH_PATH@
|
-DRESOURCE_PATH=\"$(datadir)/WINGs\" @XFT_CFLAGS@ @HEADER_SEARCH_PATH@
|
||||||
|
|||||||
+11
-1
@@ -5,4 +5,14 @@ AUTOMAKE_OPTIONS =
|
|||||||
# is this a kluge? if so, how should i do it?
|
# is this a kluge? if so, how should i do it?
|
||||||
includedir = @includedir@/WINGs
|
includedir = @includedir@/WINGs
|
||||||
|
|
||||||
include_HEADERS = WINGs.h WUtil.h WINGsP.h
|
BUILT_SOURCES = WINGsP.h
|
||||||
|
CLEANFILES = WINGsP.h
|
||||||
|
include_HEADERS = WINGs.h WUtil.h
|
||||||
|
nodist_include_HEADERS = WINGsP.h
|
||||||
|
EXTRA_DIST = WINGsP.h.in
|
||||||
|
|
||||||
|
WINGsP.h: WINGsP.h.in $(top_builddir)/config.h
|
||||||
|
$(AM_V_GEN)$(top_srcdir)/script/replace-ac-keywords.sh \
|
||||||
|
--header "$(top_builddir)/config.h" \
|
||||||
|
--filter "USE_PANGO" \
|
||||||
|
-o $@ $<
|
||||||
|
|||||||
+16
-16
@@ -26,7 +26,7 @@
|
|||||||
#include <WINGs/WUtil.h>
|
#include <WINGs/WUtil.h>
|
||||||
#include <X11/Xlib.h>
|
#include <X11/Xlib.h>
|
||||||
|
|
||||||
#define WINGS_H_VERSION 20150508
|
#define WINGS_H_VERSION 20210726
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
@@ -736,7 +736,7 @@ Bool WMRequestSelection(WMView *view, Atom selection, Atom target,
|
|||||||
void *cdata);
|
void *cdata);
|
||||||
|
|
||||||
|
|
||||||
extern char *WMSelectionOwnerDidChangeNotification;
|
extern const char *WMSelectionOwnerDidChangeNotification;
|
||||||
|
|
||||||
/* ---[ WINGs/dragcommon.c ]---------------------------------------------- */
|
/* ---[ WINGs/dragcommon.c ]---------------------------------------------- */
|
||||||
|
|
||||||
@@ -977,11 +977,11 @@ WMPoint WMGetViewScreenPosition(WMView *view);
|
|||||||
WMWidget* WMWidgetOfView(WMView *view);
|
WMWidget* WMWidgetOfView(WMView *view);
|
||||||
|
|
||||||
/* notifications */
|
/* notifications */
|
||||||
extern char *WMViewSizeDidChangeNotification;
|
extern const char *WMViewSizeDidChangeNotification;
|
||||||
|
|
||||||
extern char *WMViewFocusDidChangeNotification;
|
extern const char *WMViewFocusDidChangeNotification;
|
||||||
|
|
||||||
extern char *WMViewRealizedNotification;
|
extern const char *WMViewRealizedNotification;
|
||||||
|
|
||||||
/* ---[ WINGs/wballoon.c ]------------------------------------------------ */
|
/* ---[ WINGs/wballoon.c ]------------------------------------------------ */
|
||||||
|
|
||||||
@@ -1190,9 +1190,9 @@ void WMSetTextFieldDelegate(WMTextField *tPtr, WMTextFieldDelegate *delegate);
|
|||||||
|
|
||||||
WMTextFieldDelegate* WMGetTextFieldDelegate(WMTextField *tPtr);
|
WMTextFieldDelegate* WMGetTextFieldDelegate(WMTextField *tPtr);
|
||||||
|
|
||||||
extern char *WMTextDidChangeNotification;
|
extern const char *WMTextDidChangeNotification;
|
||||||
extern char *WMTextDidBeginEditingNotification;
|
extern const char *WMTextDidBeginEditingNotification;
|
||||||
extern char *WMTextDidEndEditingNotification;
|
extern const char *WMTextDidEndEditingNotification;
|
||||||
|
|
||||||
/* ---[ WINGs/wscroller.c ]----------------------------------------------- */
|
/* ---[ WINGs/wscroller.c ]----------------------------------------------- */
|
||||||
|
|
||||||
@@ -1212,7 +1212,7 @@ void WMSetScrollerAction(WMScroller *sPtr, WMAction *action, void *clientData);
|
|||||||
void WMSetScrollerArrowsPosition(WMScroller *sPtr,
|
void WMSetScrollerArrowsPosition(WMScroller *sPtr,
|
||||||
WMScrollArrowPosition position);
|
WMScrollArrowPosition position);
|
||||||
|
|
||||||
extern char *WMScrollerDidScrollNotification;
|
extern const char *WMScrollerDidScrollNotification;
|
||||||
|
|
||||||
/* ---[ WINGs/wlist.c ]--------------------------------------------------- */
|
/* ---[ WINGs/wlist.c ]--------------------------------------------------- */
|
||||||
|
|
||||||
@@ -1291,8 +1291,8 @@ Bool WMListAllowsMultipleSelection(WMList *lPtr);
|
|||||||
Bool WMListAllowsEmptySelection(WMList *lPtr);
|
Bool WMListAllowsEmptySelection(WMList *lPtr);
|
||||||
|
|
||||||
|
|
||||||
extern char *WMListDidScrollNotification;
|
extern const char *WMListDidScrollNotification;
|
||||||
extern char *WMListSelectionDidChangeNotification;
|
extern const char *WMListSelectionDidChangeNotification;
|
||||||
|
|
||||||
/* ---[ WINGs/wbrowser.c ]------------------------------------------------ */
|
/* ---[ WINGs/wbrowser.c ]------------------------------------------------ */
|
||||||
|
|
||||||
@@ -1324,7 +1324,7 @@ void WMSortBrowserColumnWithComparer(WMBrowser *bPtr, int column,
|
|||||||
WMCompareDataProc *func);
|
WMCompareDataProc *func);
|
||||||
|
|
||||||
/* Don't free the returned string. */
|
/* Don't free the returned string. */
|
||||||
char* WMSetBrowserPath(WMBrowser *bPtr, char *path);
|
const char* WMSetBrowserPath(WMBrowser *bPtr, const char *path);
|
||||||
|
|
||||||
/* free the returned string */
|
/* free the returned string */
|
||||||
char* WMGetBrowserPath(WMBrowser *bPtr);
|
char* WMGetBrowserPath(WMBrowser *bPtr);
|
||||||
@@ -1496,7 +1496,7 @@ void WMSetColorPanelPickerMode(WMColorPanel *panel, WMColorPanelMode mode);
|
|||||||
|
|
||||||
void WMSetColorPanelAction(WMColorPanel *panel, WMAction2 *action, void *data);
|
void WMSetColorPanelAction(WMColorPanel *panel, WMAction2 *action, void *data);
|
||||||
|
|
||||||
extern char *WMColorPanelColorChangedNotification;
|
extern const char *WMColorPanelColorChangedNotification;
|
||||||
|
|
||||||
/* ---[ WINGs/wcolorwell.c ]---------------------------------------------- */
|
/* ---[ WINGs/wcolorwell.c ]---------------------------------------------- */
|
||||||
|
|
||||||
@@ -1509,7 +1509,7 @@ WMColor* WMGetColorWellColor(WMColorWell *cPtr);
|
|||||||
void WSetColorWellBordered(WMColorWell *cPtr, Bool flag);
|
void WSetColorWellBordered(WMColorWell *cPtr, Bool flag);
|
||||||
|
|
||||||
|
|
||||||
extern char *WMColorWellDidChangeNotification;
|
extern const char *WMColorWellDidChangeNotification;
|
||||||
|
|
||||||
|
|
||||||
/* ---[ WINGs/wscrollview.c ]--------------------------------------------- */
|
/* ---[ WINGs/wscrollview.c ]--------------------------------------------- */
|
||||||
@@ -1876,7 +1876,7 @@ void WMSetFilePanelCanChooseFiles(WMFilePanel *panel, Bool flag);
|
|||||||
|
|
||||||
void WMSetFilePanelAutoCompletion(WMFilePanel *panel, Bool flag);
|
void WMSetFilePanelAutoCompletion(WMFilePanel *panel, Bool flag);
|
||||||
|
|
||||||
void WMSetFilePanelDirectory(WMFilePanel *panel, char *path);
|
void WMSetFilePanelDirectory(WMFilePanel *panel, const char *path);
|
||||||
|
|
||||||
/* you can free the returned string */
|
/* you can free the returned string */
|
||||||
char* WMGetFilePanelFileName(WMFilePanel *panel);
|
char* WMGetFilePanelFileName(WMFilePanel *panel);
|
||||||
@@ -1884,7 +1884,7 @@ char* WMGetFilePanelFileName(WMFilePanel *panel);
|
|||||||
void WMFreeFilePanel(WMFilePanel *panel);
|
void WMFreeFilePanel(WMFilePanel *panel);
|
||||||
|
|
||||||
int WMRunModalFilePanelForDirectory(WMFilePanel *panel, WMWindow *owner,
|
int WMRunModalFilePanelForDirectory(WMFilePanel *panel, WMWindow *owner,
|
||||||
char *path, const char *name, char **fileTypes);
|
const char *path, const char *name, char **fileTypes);
|
||||||
|
|
||||||
void WMSetFilePanelAccessoryView(WMFilePanel *panel, WMView *view);
|
void WMSetFilePanelAccessoryView(WMFilePanel *panel, WMView *view);
|
||||||
|
|
||||||
|
|||||||
@@ -5,9 +5,7 @@
|
|||||||
#include <X11/Xlib.h>
|
#include <X11/Xlib.h>
|
||||||
#include <X11/Xutil.h>
|
#include <X11/Xutil.h>
|
||||||
|
|
||||||
#ifdef USE_PANGO
|
@USE_PANGO@#include <pango/pango.h>
|
||||||
#include <pango/pango.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <WINGs/WINGs.h>
|
#include <WINGs/WINGs.h>
|
||||||
|
|
||||||
@@ -43,7 +41,7 @@ typedef struct _WINGsConfiguration {
|
|||||||
unsigned mouseWheelDown;
|
unsigned mouseWheelDown;
|
||||||
} _WINGsConfiguration;
|
} _WINGsConfiguration;
|
||||||
|
|
||||||
extern char *_WINGS_progname;
|
extern const char *_WINGS_progname;
|
||||||
extern _WINGsConfiguration WINGsConfiguration;
|
extern _WINGsConfiguration WINGsConfiguration;
|
||||||
extern struct W_Application WMApplication;
|
extern struct W_Application WMApplication;
|
||||||
|
|
||||||
@@ -459,9 +457,7 @@ typedef struct W_Font {
|
|||||||
short refCount;
|
short refCount;
|
||||||
char *name;
|
char *name;
|
||||||
|
|
||||||
#ifdef USE_PANGO
|
@USE_PANGO@ PangoLayout *layout;
|
||||||
PangoLayout *layout;
|
|
||||||
#endif
|
|
||||||
} W_Font;
|
} W_Font;
|
||||||
|
|
||||||
#define W_FONTID(f) (f)->font->fid
|
#define W_FONTID(f) (f)->font->fid
|
||||||
+2
-1
@@ -249,7 +249,7 @@ char* wexpandpath(const char *path);
|
|||||||
int wcopy_file(const char *toPath, const char *srcFile, const char *destFile);
|
int wcopy_file(const char *toPath, const char *srcFile, const char *destFile);
|
||||||
|
|
||||||
/* don't free the returned string */
|
/* don't free the returned string */
|
||||||
char* wgethomedir(void);
|
const char* wgethomedir(void);
|
||||||
|
|
||||||
/* ---[ WINGs/proplist.c ]------------------------------------------------ */
|
/* ---[ WINGs/proplist.c ]------------------------------------------------ */
|
||||||
|
|
||||||
@@ -864,6 +864,7 @@ Bool WMWritePropListToFile(WMPropList *plist, const char *path);
|
|||||||
|
|
||||||
/* don't free the returned string */
|
/* don't free the returned string */
|
||||||
const char* wusergnusteppath(void);
|
const char* wusergnusteppath(void);
|
||||||
|
const char* wuserdatapath(void);
|
||||||
|
|
||||||
/* Free the returned string when you no longer need it */
|
/* Free the returned string when you no longer need it */
|
||||||
char* wdefaultspathfordomain(const char *domain);
|
char* wdefaultspathfordomain(const char *domain);
|
||||||
|
|||||||
@@ -599,7 +599,7 @@ static void dragSourceResponseTimeOut(void *destView)
|
|||||||
W_DragDestinationInfoClear(info);
|
W_DragDestinationInfoClear(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
void W_DragDestinationStopTimer()
|
void W_DragDestinationStopTimer(void)
|
||||||
{
|
{
|
||||||
if (dndDestinationTimer != NULL) {
|
if (dndDestinationTimer != NULL) {
|
||||||
WMDeleteTimerHandler(dndDestinationTimer);
|
WMDeleteTimerHandler(dndDestinationTimer);
|
||||||
|
|||||||
+1
-1
@@ -1080,7 +1080,7 @@ static void dragSourceResponseTimeOut(void *source)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void W_DragSourceStopTimer()
|
void W_DragSourceStopTimer(void)
|
||||||
{
|
{
|
||||||
if (dndSourceTimer != NULL) {
|
if (dndSourceTimer != NULL) {
|
||||||
WMDeleteTimerHandler(dndSourceTimer);
|
WMDeleteTimerHandler(dndSourceTimer);
|
||||||
|
|||||||
+2
-6
@@ -39,7 +39,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
char *wgethomedir()
|
const char *wgethomedir(void)
|
||||||
{
|
{
|
||||||
static char *home = NULL;
|
static char *home = NULL;
|
||||||
char *tmp;
|
char *tmp;
|
||||||
@@ -48,11 +48,7 @@ char *wgethomedir()
|
|||||||
if (home)
|
if (home)
|
||||||
return home;
|
return home;
|
||||||
|
|
||||||
#ifdef HAVE_SECURE_GETENV
|
tmp = GETENV("HOME");
|
||||||
tmp = secure_getenv("HOME");
|
|
||||||
#else
|
|
||||||
tmp = getenv("HOME");
|
|
||||||
#endif
|
|
||||||
if (tmp) {
|
if (tmp) {
|
||||||
home = wstrdup(tmp);
|
home = wstrdup(tmp);
|
||||||
return home;
|
return home;
|
||||||
|
|||||||
+2
-1
@@ -107,7 +107,8 @@ void *wmalloc(size_t size)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
memset(tmp, 0, size);
|
if (tmp != NULL)
|
||||||
|
memset(tmp, 0, size);
|
||||||
return tmp;
|
return tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -536,7 +536,7 @@ found_end_define_fname:
|
|||||||
while (*src != '\0') {
|
while (*src != '\0') {
|
||||||
idx = 0;
|
idx = 0;
|
||||||
if (*src == '~') {
|
if (*src == '~') {
|
||||||
char *home = wgethomedir();
|
const char *home = wgethomedir();
|
||||||
while (*home != '\0') {
|
while (*home != '\0') {
|
||||||
if (idx < sizeof(buffer) - 2)
|
if (idx < sizeof(buffer) - 2)
|
||||||
buffer[idx++] = *home;
|
buffer[idx++] = *home;
|
||||||
|
|||||||
+41
-16
@@ -1695,6 +1695,7 @@ Bool WMWritePropListToFile(WMPropList * plist, const char *path)
|
|||||||
if (fprintf(theFile, "%s\n", desc) != strlen(desc) + 1) {
|
if (fprintf(theFile, "%s\n", desc) != strlen(desc) + 1) {
|
||||||
werror(_("writing to file: %s failed"), thePath);
|
werror(_("writing to file: %s failed"), thePath);
|
||||||
wfree(desc);
|
wfree(desc);
|
||||||
|
fclose(theFile);
|
||||||
goto failure;
|
goto failure;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1731,23 +1732,36 @@ Bool WMWritePropListToFile(WMPropList * plist, const char *path)
|
|||||||
* file, and the last component is stripped off. the rest is the
|
* file, and the last component is stripped off. the rest is the
|
||||||
* the hierarchy to be created.
|
* the hierarchy to be created.
|
||||||
*
|
*
|
||||||
* refuses to create anything outside $WMAKER_USER_ROOT
|
* refuses to create anything outside $WMAKER_USER_ROOT/Defaults or $WMAKER_USER_ROOT/Library
|
||||||
*
|
*
|
||||||
* returns 1 on success, 0 on failure
|
* returns 1 on success, 0 on failure
|
||||||
*/
|
*/
|
||||||
int wmkdirhier(const char *path)
|
int wmkdirhier(const char *path)
|
||||||
{
|
{
|
||||||
const char *t;
|
const char *libpath;
|
||||||
|
char *udefpath;
|
||||||
|
int cmp;
|
||||||
char *thePath = NULL, buf[1024];
|
char *thePath = NULL, buf[1024];
|
||||||
size_t p, plen;
|
size_t p, plen;
|
||||||
struct stat st;
|
struct stat st;
|
||||||
|
|
||||||
/* Only create directories under $WMAKER_USER_ROOT */
|
/* Only create directories under $WMAKER_USER_ROOT/Defaults or $WMAKER_USER_ROOT/Library */
|
||||||
if ((t = wusergnusteppath()) == NULL)
|
libpath = wuserdatapath();
|
||||||
return 0;
|
if (strncmp(path, libpath, strlen(libpath)) == 0)
|
||||||
if (strncmp(path, t, strlen(t)) != 0)
|
if (path[strlen(libpath)] == '/')
|
||||||
return 0;
|
goto path_in_valid_tree;
|
||||||
|
|
||||||
|
udefpath = wdefaultspathfordomain("");
|
||||||
|
cmp = strncmp(path, udefpath, strlen(udefpath));
|
||||||
|
wfree(udefpath);
|
||||||
|
if (cmp == 0)
|
||||||
|
/* Note: by side effect, 'udefpath' already contains a final '/' */
|
||||||
|
goto path_in_valid_tree;
|
||||||
|
|
||||||
|
/* If we reach this point, the path is outside the allowed tree */
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
path_in_valid_tree:
|
||||||
thePath = wstrdup(path);
|
thePath = wstrdup(path);
|
||||||
/* Strip the trailing component if it is a file */
|
/* Strip the trailing component if it is a file */
|
||||||
p = strlen(thePath);
|
p = strlen(thePath);
|
||||||
@@ -1770,7 +1784,6 @@ int wmkdirhier(const char *path)
|
|||||||
}
|
}
|
||||||
|
|
||||||
memset(buf, 0, sizeof(buf));
|
memset(buf, 0, sizeof(buf));
|
||||||
strncpy(buf, t, sizeof(buf) - 1);
|
|
||||||
p = strlen(buf);
|
p = strlen(buf);
|
||||||
plen = strlen(thePath);
|
plen = strlen(thePath);
|
||||||
|
|
||||||
@@ -1781,7 +1794,7 @@ int wmkdirhier(const char *path)
|
|||||||
strncpy(buf, thePath, p);
|
strncpy(buf, thePath, p);
|
||||||
if (mkdir(buf, 0777) == -1 && errno == EEXIST &&
|
if (mkdir(buf, 0777) == -1 && errno == EEXIST &&
|
||||||
stat(buf, &st) == 0 && !S_ISDIR(st.st_mode)) {
|
stat(buf, &st) == 0 && !S_ISDIR(st.st_mode)) {
|
||||||
werror(_("Could not create component %s"), buf);
|
werror(_("Could not create path component %s"), buf);
|
||||||
wfree(thePath);
|
wfree(thePath);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1823,7 +1836,7 @@ static int wrmdirhier_fn(const char *path, const struct stat *st,
|
|||||||
/*
|
/*
|
||||||
* remove a directory hierarchy
|
* remove a directory hierarchy
|
||||||
*
|
*
|
||||||
* refuses to remove anything outside $WMAKER_USER_ROOT
|
* refuses to remove anything outside $WMAKER_USER_ROOT/Defaults or $WMAKER_USER_ROOT/Library
|
||||||
*
|
*
|
||||||
* returns 1 on success, 0 on failure
|
* returns 1 on success, 0 on failure
|
||||||
*
|
*
|
||||||
@@ -1833,15 +1846,27 @@ static int wrmdirhier_fn(const char *path, const struct stat *st,
|
|||||||
*/
|
*/
|
||||||
int wrmdirhier(const char *path)
|
int wrmdirhier(const char *path)
|
||||||
{
|
{
|
||||||
|
const char *libpath;
|
||||||
|
char *udefpath = NULL;
|
||||||
struct stat st;
|
struct stat st;
|
||||||
int error;
|
int error;
|
||||||
const char *t;
|
|
||||||
|
|
||||||
/* Only remove directories under $WMAKER_USER_ROOT */
|
/* Only remove directories under $WMAKER_USER_ROOT/Defaults or $WMAKER_USER_ROOT/Library */
|
||||||
if ((t = wusergnusteppath()) == NULL)
|
libpath = wuserdatapath();
|
||||||
return EPERM;
|
if (strncmp(path, libpath, strlen(libpath)) == 0)
|
||||||
if (strncmp(path, t, strlen(t)) != 0)
|
if (path[strlen(libpath)] == '/')
|
||||||
return EPERM;
|
goto path_in_valid_tree;
|
||||||
|
|
||||||
|
udefpath = wdefaultspathfordomain("");
|
||||||
|
if (strncmp(path, udefpath, strlen(udefpath)) == 0)
|
||||||
|
/* Note: by side effect, 'udefpath' already contains a final '/' */
|
||||||
|
goto path_in_valid_tree;
|
||||||
|
|
||||||
|
wfree(udefpath);
|
||||||
|
return EPERM;
|
||||||
|
|
||||||
|
path_in_valid_tree:
|
||||||
|
wfree(udefpath);
|
||||||
|
|
||||||
/* Shortcut if it doesn't exist to begin with */
|
/* Shortcut if it doesn't exist to begin with */
|
||||||
if (stat(path, &st) == -1)
|
if (stat(path, &st) == -1)
|
||||||
|
|||||||
+1
-1
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
#define MAX_PROPERTY_SIZE 8*1024
|
#define MAX_PROPERTY_SIZE 8*1024
|
||||||
|
|
||||||
char *WMSelectionOwnerDidChangeNotification = "WMSelectionOwnerDidChange";
|
const char *WMSelectionOwnerDidChangeNotification = "WMSelectionOwnerDidChange";
|
||||||
|
|
||||||
typedef struct SelectionHandler {
|
typedef struct SelectionHandler {
|
||||||
WMView *view;
|
WMView *view;
|
||||||
|
|||||||
+5
-7
@@ -204,7 +204,7 @@ char *wstrndup(const char *str, size_t len)
|
|||||||
char *wstrconcat(const char *str1, const char *str2)
|
char *wstrconcat(const char *str1, const char *str2)
|
||||||
{
|
{
|
||||||
char *str;
|
char *str;
|
||||||
size_t slen;
|
size_t slen, slen1;
|
||||||
|
|
||||||
if (!str1 && str2)
|
if (!str1 && str2)
|
||||||
return wstrdup(str2);
|
return wstrdup(str2);
|
||||||
@@ -213,13 +213,11 @@ char *wstrconcat(const char *str1, const char *str2)
|
|||||||
else if (!str1 && !str2)
|
else if (!str1 && !str2)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
slen = strlen(str1) + strlen(str2) + 1;
|
slen1 = strlen(str1);
|
||||||
|
slen = slen1 + strlen(str2) + 1;
|
||||||
str = wmalloc(slen);
|
str = wmalloc(slen);
|
||||||
if (wstrlcpy(str, str1, slen) >= slen ||
|
strcpy(str, str1);
|
||||||
wstrlcat(str, str2, slen) >= slen) {
|
strcpy(str + slen1, str2);
|
||||||
wfree(str);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|||||||
+21
-20
@@ -40,29 +40,25 @@ char *WMUserDefaultsDidChangeNotification = "WMUserDefaultsDidChangeNotification
|
|||||||
|
|
||||||
static void synchronizeUserDefaults(void *foo);
|
static void synchronizeUserDefaults(void *foo);
|
||||||
|
|
||||||
#define DEFAULTS_DIR "/Defaults"
|
|
||||||
#ifndef HAVE_INOTIFY
|
#ifndef HAVE_INOTIFY
|
||||||
/* Check defaults database for changes every this many milliseconds */
|
/* Check defaults database for changes every this many milliseconds */
|
||||||
/* XXX: this is shared with src/ stuff, put it in some common header */
|
/* XXX: this is shared with src/ stuff, put it in some common header */
|
||||||
#define UD_SYNC_INTERVAL 2000
|
#define UD_SYNC_INTERVAL 2000
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
const char *wusergnusteppath()
|
const char *wusergnusteppath(void)
|
||||||
{
|
{
|
||||||
static const char subdir[] = "/GNUstep";
|
static const char subdir[] = "/" GSUSER_SUBDIR;
|
||||||
static char *path = NULL;
|
static char *path = NULL;
|
||||||
char *gspath, *h;
|
char *gspath;
|
||||||
|
const char *h;
|
||||||
int pathlen;
|
int pathlen;
|
||||||
|
|
||||||
if (path)
|
if (path)
|
||||||
/* Value have been already computed, re-use it */
|
/* Value have been already computed, re-use it */
|
||||||
return path;
|
return path;
|
||||||
|
|
||||||
#ifdef HAVE_SECURE_GETENV
|
gspath = GETENV("WMAKER_USER_ROOT");
|
||||||
gspath = secure_getenv("WMAKER_USER_ROOT");
|
|
||||||
#else
|
|
||||||
gspath = getenv("WMAKER_USER_ROOT");
|
|
||||||
#endif
|
|
||||||
if (gspath) {
|
if (gspath) {
|
||||||
gspath = wexpandpath(gspath);
|
gspath = wexpandpath(gspath);
|
||||||
if (gspath) {
|
if (gspath) {
|
||||||
@@ -84,6 +80,19 @@ const char *wusergnusteppath()
|
|||||||
return path;
|
return path;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char *wuserdatapath(void)
|
||||||
|
{
|
||||||
|
static char *path = NULL;
|
||||||
|
|
||||||
|
if (path)
|
||||||
|
/* Value have been already computed, re-use it */
|
||||||
|
return path;
|
||||||
|
|
||||||
|
path = wstrconcat(wusergnusteppath(), "/" USERDATA_SUBDIR);
|
||||||
|
|
||||||
|
return path;
|
||||||
|
}
|
||||||
|
|
||||||
char *wdefaultspathfordomain(const char *domain)
|
char *wdefaultspathfordomain(const char *domain)
|
||||||
{
|
{
|
||||||
char *path;
|
char *path;
|
||||||
@@ -91,12 +100,11 @@ char *wdefaultspathfordomain(const char *domain)
|
|||||||
size_t slen;
|
size_t slen;
|
||||||
|
|
||||||
gspath = wusergnusteppath();
|
gspath = wusergnusteppath();
|
||||||
slen = strlen(gspath) + strlen(DEFAULTS_DIR) + strlen(domain) + 4;
|
slen = strlen(gspath) + strlen("/" DEFAULTS_SUBDIR "/") + strlen(domain) + 1;
|
||||||
path = wmalloc(slen);
|
path = wmalloc(slen);
|
||||||
|
|
||||||
strcpy(path, gspath);
|
strcpy(path, gspath);
|
||||||
strcat(path, DEFAULTS_DIR);
|
strcat(path, "/" DEFAULTS_SUBDIR "/");
|
||||||
strcat(path, "/");
|
|
||||||
strcat(path, domain);
|
strcat(path, domain);
|
||||||
|
|
||||||
return path;
|
return path;
|
||||||
@@ -105,14 +113,7 @@ char *wdefaultspathfordomain(const char *domain)
|
|||||||
/* XXX: doesn't quite belong to *user*defaults.c */
|
/* XXX: doesn't quite belong to *user*defaults.c */
|
||||||
char *wglobaldefaultspathfordomain(const char *domain)
|
char *wglobaldefaultspathfordomain(const char *domain)
|
||||||
{
|
{
|
||||||
char *t = NULL;
|
return wstrconcat(PKGCONFDIR "/", domain);
|
||||||
size_t len;
|
|
||||||
|
|
||||||
len = strlen(DEFSDATADIR) + strlen(domain) + 2;
|
|
||||||
t = wmalloc(len);
|
|
||||||
snprintf(t, len, "%s/%s", DEFSDATADIR, domain);
|
|
||||||
|
|
||||||
return t;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void w_save_defaults_changes(void)
|
void w_save_defaults_changes(void)
|
||||||
|
|||||||
+31
-21
@@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
struct W_Application WMApplication;
|
struct W_Application WMApplication;
|
||||||
|
|
||||||
char *_WINGS_progname = NULL;
|
const char *_WINGS_progname = NULL;
|
||||||
|
|
||||||
Bool W_ApplicationInitialized(void)
|
Bool W_ApplicationInitialized(void)
|
||||||
{
|
{
|
||||||
@@ -83,7 +83,7 @@ void WMSetResourcePath(const char *path)
|
|||||||
WMApplication.resourcePath = wstrdup(path);
|
WMApplication.resourcePath = wstrdup(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
char *WMGetApplicationName()
|
char *WMGetApplicationName(void)
|
||||||
{
|
{
|
||||||
return WMApplication.applicationName;
|
return WMApplication.applicationName;
|
||||||
}
|
}
|
||||||
@@ -131,7 +131,9 @@ error:
|
|||||||
|
|
||||||
char *WMPathForResourceOfType(const char *resource, const char *ext)
|
char *WMPathForResourceOfType(const char *resource, const char *ext)
|
||||||
{
|
{
|
||||||
|
const char *gslocapps, *gssysapps, *gsuserapps;
|
||||||
char *path, *appdir;
|
char *path, *appdir;
|
||||||
|
char buffer[PATH_MAX];
|
||||||
size_t slen;
|
size_t slen;
|
||||||
|
|
||||||
path = appdir = NULL;
|
path = appdir = NULL;
|
||||||
@@ -141,11 +143,11 @@ char *WMPathForResourceOfType(const char *resource, const char *ext)
|
|||||||
* - resourcePath/ext
|
* - resourcePath/ext
|
||||||
* - dirname(argv[0])/ext
|
* - dirname(argv[0])/ext
|
||||||
* - WMAKER_USER_ROOT/Applications/ApplicationName.app/ext
|
* - WMAKER_USER_ROOT/Applications/ApplicationName.app/ext
|
||||||
* - ~/GNUstep/Applications/ApplicationName.app/ext
|
* - GNUSTEP_USER_APPS/ApplicationName.app/ext
|
||||||
* - GNUSTEP_LOCAL_ROOT/Applications/ApplicationName.app/ext
|
* - GNUSTEP_LOCAL_APPS/ApplicationName.app/ext
|
||||||
* - /usr/local/GNUstep/Applications/ApplicationName.app/ext
|
* - /usr/local/lib/GNUstep/Applications/ApplicationName.app/ext
|
||||||
* - GNUSTEP_SYSTEM_ROOT/Applications/ApplicationName.app/ext
|
* - GNUSTEP_SYSTEM_APPS/ApplicationName.app/ext
|
||||||
* - /usr/GNUstep/Applications/ApplicationName.app/ext
|
* - /usr/lib/GNUstep/Applications/ApplicationName.app/ext
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (WMApplication.resourcePath) {
|
if (WMApplication.resourcePath) {
|
||||||
@@ -170,32 +172,40 @@ char *WMPathForResourceOfType(const char *resource, const char *ext)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
slen = strlen(WMApplication.applicationName) + sizeof("Applications/.app");
|
snprintf(buffer, sizeof(buffer), "Applications/%s.app", WMApplication.applicationName);
|
||||||
|
path = checkFile(GETENV("WMAKER_USER_ROOT"), buffer, ext, resource);
|
||||||
|
if (path)
|
||||||
|
goto out;
|
||||||
|
|
||||||
|
slen = strlen(WMApplication.applicationName) + sizeof("/.app");
|
||||||
appdir = wmalloc(slen);
|
appdir = wmalloc(slen);
|
||||||
if (snprintf(appdir, slen, "Applications/%s.app", WMApplication.applicationName) >= slen)
|
if (snprintf(appdir, slen, "/%s.app", WMApplication.applicationName) >= slen)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
path = checkFile(getenv("WMAKER_USER_ROOT"), appdir, ext, resource);
|
gsuserapps = GETENV("GNUSTEP_USER_APPS");
|
||||||
|
if (!gsuserapps) {
|
||||||
|
snprintf(buffer, sizeof(buffer), "%s/Applications", wusergnusteppath());
|
||||||
|
gsuserapps = buffer;
|
||||||
|
}
|
||||||
|
path = checkFile(gsuserapps, appdir, ext, resource);
|
||||||
if (path)
|
if (path)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
path = checkFile(wusergnusteppath(), appdir, ext, resource);
|
gslocapps = GETENV("GNUSTEP_LOCAL_APPS");
|
||||||
|
if (!gslocapps)
|
||||||
|
gslocapps = "/usr/local/lib/GNUstep/Applications";
|
||||||
|
path = checkFile(gslocapps, appdir, ext, resource);
|
||||||
if (path)
|
if (path)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
path = checkFile(getenv("GNUSTEP_LOCAL_ROOT"), appdir, ext, resource);
|
gssysapps = GETENV("GNUSTEP_SYSTEM_APPS");
|
||||||
|
if (!gssysapps)
|
||||||
|
gssysapps = "/usr/lib/GNUstep/Applications";
|
||||||
|
path = checkFile(gssysapps, appdir, ext, resource);
|
||||||
if (path)
|
if (path)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
path = checkFile("/usr/local/GNUstep", appdir, ext, resource);
|
path = checkFile("/usr/GNUstep/System/Applications", appdir, ext, resource); /* falls through */
|
||||||
if (path)
|
|
||||||
goto out;
|
|
||||||
|
|
||||||
path = checkFile(getenv("GNUSTEP_SYSTEM_ROOT"), appdir, ext, resource);
|
|
||||||
if (path)
|
|
||||||
goto out;
|
|
||||||
|
|
||||||
path = checkFile("/usr/GNUstep", appdir, ext, resource); /* falls through */
|
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if (appdir)
|
if (appdir)
|
||||||
|
|||||||
+3
-2
@@ -619,11 +619,12 @@ void WMSetBrowserHasScroller(WMBrowser * bPtr, int hasScroller)
|
|||||||
bPtr->flags.hasScroller = hasScroller;
|
bPtr->flags.hasScroller = hasScroller;
|
||||||
}
|
}
|
||||||
|
|
||||||
char *WMSetBrowserPath(WMBrowser * bPtr, char *path)
|
const char *WMSetBrowserPath(WMBrowser * bPtr, const char *path)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char *str;
|
char *str;
|
||||||
char *tmp, *retPtr = NULL;
|
char *tmp;
|
||||||
|
const char *retPtr = NULL;
|
||||||
int item;
|
int item;
|
||||||
WMListItem *listItem;
|
WMListItem *listItem;
|
||||||
|
|
||||||
|
|||||||
+24
-23
@@ -44,7 +44,7 @@
|
|||||||
# include <X11/extensions/shape.h>
|
# include <X11/extensions/shape.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
char *WMColorPanelColorChangedNotification = "WMColorPanelColorChangedNotification";
|
const char *WMColorPanelColorChangedNotification = "WMColorPanelColorChangedNotification";
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Bitmaps for magnifying glass cursor
|
* Bitmaps for magnifying glass cursor
|
||||||
@@ -394,7 +394,7 @@ static WMColorPanel *makeColorPanel(WMScreen * scrPtr, const char *name)
|
|||||||
panel->mode = WMWheelModeColorPanel;
|
panel->mode = WMWheelModeColorPanel;
|
||||||
panel->lastChanged = 0;
|
panel->lastChanged = 0;
|
||||||
panel->slidersmode = WMRGBModeColorPanel;
|
panel->slidersmode = WMRGBModeColorPanel;
|
||||||
panel->configurationPath = wstrconcat(wusergnusteppath(), "/Library/Colors/");
|
panel->configurationPath = wstrconcat(wuserdatapath(), "/Colors/");
|
||||||
|
|
||||||
/* Some General Purpose Widgets */
|
/* Some General Purpose Widgets */
|
||||||
panel->colorWell = WMCreateColorWell(panel->win);
|
panel->colorWell = WMCreateColorWell(panel->win);
|
||||||
@@ -1159,21 +1159,18 @@ static void readConfiguration(W_ColorPanel * panel)
|
|||||||
|
|
||||||
DIR *dPtr;
|
DIR *dPtr;
|
||||||
struct dirent *dp;
|
struct dirent *dp;
|
||||||
struct stat stat_buf;
|
|
||||||
int item;
|
int item;
|
||||||
|
|
||||||
if (stat(panel->configurationPath, &stat_buf) != 0) {
|
if (!wmkdirhier(panel->configurationPath)) {
|
||||||
if (mkdir(panel->configurationPath, S_IRWXU | S_IRGRP | S_IROTH | S_IXGRP | S_IXOTH) != 0) {
|
werror(_("Color Panel: Could not create directory %s needed"
|
||||||
werror(_("Color Panel: Could not create directory %s needed"
|
" to store configurations"), panel->configurationPath);
|
||||||
" to store configurations"), panel->configurationPath);
|
WMSetPopUpButtonEnabled(panel->customPaletteMenuBtn, False);
|
||||||
WMSetPopUpButtonEnabled(panel->customPaletteMenuBtn, False);
|
WMSetPopUpButtonEnabled(panel->colorListColorMenuBtn, False);
|
||||||
WMSetPopUpButtonEnabled(panel->colorListColorMenuBtn, False);
|
WMSetPopUpButtonEnabled(panel->colorListListMenuBtn, False);
|
||||||
WMSetPopUpButtonEnabled(panel->colorListListMenuBtn, False);
|
WMRunAlertPanel(WMWidgetScreen(panel->win), panel->win,
|
||||||
WMRunAlertPanel(WMWidgetScreen(panel->win), panel->win,
|
_("File Error"),
|
||||||
_("File Error"),
|
_("Could not create ColorPanel configuration directory"),
|
||||||
_("Could not create ColorPanel configuration directory"),
|
_("OK"), NULL, NULL);
|
||||||
_("OK"), NULL, NULL);
|
|
||||||
}
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2645,7 +2642,7 @@ static void hsbTextFieldCallback(void *observerData, WMNotification * notificati
|
|||||||
{
|
{
|
||||||
CPColor cpColor;
|
CPColor cpColor;
|
||||||
int value[3];
|
int value[3];
|
||||||
char tmp[4];
|
char tmp[12]; /* We only 4 bytes needed, but compilers cannot know that */
|
||||||
int n;
|
int n;
|
||||||
W_ColorPanel *panel = (W_ColorPanel *) observerData;
|
W_ColorPanel *panel = (W_ColorPanel *) observerData;
|
||||||
|
|
||||||
@@ -3504,13 +3501,17 @@ static void convertCPColor(CPColor * color)
|
|||||||
old_hue = color->hsv.hue;
|
old_hue = color->hsv.hue;
|
||||||
RRGBtoHSV(&(color->rgb), &(color->hsv));
|
RRGBtoHSV(&(color->rgb), &(color->hsv));
|
||||||
|
|
||||||
/* In black the hue is undefined, and may change by conversion
|
/*
|
||||||
* Same for white. */
|
* For pure grey colors, the Hue is generally calculated
|
||||||
if (((color->rgb.red == 0) &&
|
* as 0, but in reality the Hue does not matter.
|
||||||
(color->rgb.green == 0) &&
|
*
|
||||||
(color->rgb.blue == 0)) ||
|
* But in an interactive GUI it is interresting to remember
|
||||||
((color->rgb.red == 0) && (color->rgb.green == 0) && (color->rgb.blue == 255))
|
* the previous Hue because if user moves away from perfect
|
||||||
)
|
* grey then he could be interrested in finding back his
|
||||||
|
* previous tint
|
||||||
|
*/
|
||||||
|
if ((color->rgb.red == color->rgb.green) &&
|
||||||
|
(color->rgb.red == color->rgb.blue) )
|
||||||
color->hsv.hue = old_hue;
|
color->hsv.hue = old_hue;
|
||||||
break;
|
break;
|
||||||
case cpHSV:
|
case cpHSV:
|
||||||
|
|||||||
+4
-4
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
#define XDND_COLOR_DATA_TYPE "application/X-color"
|
#define XDND_COLOR_DATA_TYPE "application/X-color"
|
||||||
|
|
||||||
char *WMColorWellDidChangeNotification = "WMColorWellDidChangeNotification";
|
const char *WMColorWellDidChangeNotification = "WMColorWellDidChangeNotification";
|
||||||
|
|
||||||
typedef struct W_ColorWell {
|
typedef struct W_ColorWell {
|
||||||
W_Class widgetClass;
|
W_Class widgetClass;
|
||||||
@@ -173,10 +173,10 @@ WMColorWell *WMCreateColorWell(WMWidget * parent)
|
|||||||
|
|
||||||
void WMSetColorWellColor(WMColorWell * cPtr, WMColor * color)
|
void WMSetColorWellColor(WMColorWell * cPtr, WMColor * color)
|
||||||
{
|
{
|
||||||
if (cPtr->color)
|
if (cPtr->color && cPtr->color != color) {
|
||||||
WMReleaseColor(cPtr->color);
|
WMReleaseColor(cPtr->color);
|
||||||
|
cPtr->color = WMRetainColor(color);
|
||||||
cPtr->color = WMRetainColor(color);
|
}
|
||||||
|
|
||||||
if (cPtr->colorView->flags.realized && cPtr->colorView->flags.mapped)
|
if (cPtr->colorView->flags.realized && cPtr->colorView->flags.mapped)
|
||||||
paintColorWell(cPtr);
|
paintColorWell(cPtr);
|
||||||
|
|||||||
@@ -29,6 +29,12 @@
|
|||||||
# define _(text) (text)
|
# define _(text) (text)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef HAVE_SECURE_GETENV
|
||||||
|
#define GETENV(x) secure_getenv((x))
|
||||||
|
#else
|
||||||
|
#define GETENV(x) getenv((x))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#endif /* WINGS_CONFIG_H_ */
|
#endif /* WINGS_CONFIG_H_ */
|
||||||
|
|
||||||
|
|||||||
+4
-4
@@ -343,7 +343,7 @@ void WMFreeFilePanel(WMFilePanel * panel)
|
|||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
WMRunModalFilePanelForDirectory(WMFilePanel * panel, WMWindow * owner, char *path, const char *name, char **fileTypes)
|
WMRunModalFilePanelForDirectory(WMFilePanel * panel, WMWindow * owner, const char *path, const char *name, char **fileTypes)
|
||||||
{
|
{
|
||||||
WMScreen *scr = WMWidgetScreen(panel->win);
|
WMScreen *scr = WMWidgetScreen(panel->win);
|
||||||
|
|
||||||
@@ -387,12 +387,12 @@ WMRunModalFilePanelForDirectory(WMFilePanel * panel, WMWindow * owner, char *pat
|
|||||||
return (panel->flags.canceled ? False : True);
|
return (panel->flags.canceled ? False : True);
|
||||||
}
|
}
|
||||||
|
|
||||||
void WMSetFilePanelDirectory(WMFilePanel * panel, char *path)
|
void WMSetFilePanelDirectory(WMFilePanel * panel, const char *path)
|
||||||
{
|
{
|
||||||
WMList *list;
|
WMList *list;
|
||||||
WMListItem *item;
|
WMListItem *item;
|
||||||
int col;
|
int col;
|
||||||
char *rest;
|
const char *rest;
|
||||||
|
|
||||||
rest = WMSetBrowserPath(panel->browser, path);
|
rest = WMSetBrowserPath(panel->browser, path);
|
||||||
if (strcmp(path, "/") == 0)
|
if (strcmp(path, "/") == 0)
|
||||||
@@ -761,7 +761,7 @@ static void goFloppy(WMWidget *widget, void *p_panel)
|
|||||||
static void goHome(WMWidget *widget, void *p_panel)
|
static void goHome(WMWidget *widget, void *p_panel)
|
||||||
{
|
{
|
||||||
WMFilePanel *panel = p_panel;
|
WMFilePanel *panel = p_panel;
|
||||||
char *home;
|
const char *home;
|
||||||
|
|
||||||
/* Parameter not used, but tell the compiler that it is ok */
|
/* Parameter not used, but tell the compiler that it is ok */
|
||||||
(void) widget;
|
(void) widget;
|
||||||
|
|||||||
+2
-2
@@ -1,8 +1,8 @@
|
|||||||
|
|
||||||
#include "WINGsP.h"
|
#include "WINGsP.h"
|
||||||
|
|
||||||
char *WMListDidScrollNotification = "WMListDidScrollNotification";
|
const char *WMListDidScrollNotification = "WMListDidScrollNotification";
|
||||||
char *WMListSelectionDidChangeNotification = "WMListSelectionDidChangeNotification";
|
const char *WMListSelectionDidChangeNotification = "WMListSelectionDidChangeNotification";
|
||||||
|
|
||||||
typedef struct W_List {
|
typedef struct W_List {
|
||||||
W_Class widgetClass;
|
W_Class widgetClass;
|
||||||
|
|||||||
+1
-1
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
#define AUTOSCROLL_DELAY 40
|
#define AUTOSCROLL_DELAY 40
|
||||||
|
|
||||||
char *WMScrollerDidScrollNotification = "WMScrollerDidScrollNotification";
|
const char *WMScrollerDidScrollNotification = "WMScrollerDidScrollNotification";
|
||||||
|
|
||||||
typedef struct W_Scroller {
|
typedef struct W_Scroller {
|
||||||
W_Class widgetClass;
|
W_Class widgetClass;
|
||||||
|
|||||||
+21
-10
@@ -215,6 +215,11 @@ static char *default_bullet[] = {
|
|||||||
" ooo "
|
" ooo "
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* These id are used when sharing the selected text between applications */
|
||||||
|
static Atom XA_Targets = None;
|
||||||
|
static Atom XA_Format_Text = None;
|
||||||
|
static Atom XA_Format_Compound_Text = None;
|
||||||
|
|
||||||
static void handleEvents(XEvent * event, void *data);
|
static void handleEvents(XEvent * event, void *data);
|
||||||
static void layOutDocument(Text * tPtr);
|
static void layOutDocument(Text * tPtr);
|
||||||
static void updateScrollers(Text * tPtr);
|
static void updateScrollers(Text * tPtr);
|
||||||
@@ -2036,17 +2041,13 @@ static void releaseSelection(Text * tPtr)
|
|||||||
static WMData *requestHandler(WMView * view, Atom selection, Atom target, void *cdata, Atom * type)
|
static WMData *requestHandler(WMView * view, Atom selection, Atom target, void *cdata, Atom * type)
|
||||||
{
|
{
|
||||||
Text *tPtr = view->self;
|
Text *tPtr = view->self;
|
||||||
Display *dpy = tPtr->view->screen->display;
|
|
||||||
Atom _TARGETS;
|
|
||||||
Atom TEXT = XInternAtom(dpy, "TEXT", False);
|
|
||||||
Atom COMPOUND_TEXT = XInternAtom(dpy, "COMPOUND_TEXT", False);
|
|
||||||
WMData *data = NULL;
|
WMData *data = NULL;
|
||||||
|
|
||||||
/* Parameter not used, but tell the compiler that it is ok */
|
/* Parameter not used, but tell the compiler that it is ok */
|
||||||
(void) selection;
|
(void) selection;
|
||||||
(void) cdata;
|
(void) cdata;
|
||||||
|
|
||||||
if (target == XA_STRING || target == TEXT || target == COMPOUND_TEXT) {
|
if (target == XA_STRING || target == XA_Format_Text || target == XA_Format_Compound_Text) {
|
||||||
char *text = WMGetTextSelectedStream(tPtr);
|
char *text = WMGetTextSelectedStream(tPtr);
|
||||||
|
|
||||||
if (text) {
|
if (text) {
|
||||||
@@ -2059,14 +2060,13 @@ static WMData *requestHandler(WMView * view, Atom selection, Atom target, void *
|
|||||||
} else
|
} else
|
||||||
printf("didn't get it\n");
|
printf("didn't get it\n");
|
||||||
|
|
||||||
_TARGETS = XInternAtom(dpy, "TARGETS", False);
|
if (target == XA_Targets) {
|
||||||
if (target == _TARGETS) {
|
|
||||||
Atom array[4];
|
Atom array[4];
|
||||||
|
|
||||||
array[0] = _TARGETS;
|
array[0] = XA_Targets;
|
||||||
array[1] = XA_STRING;
|
array[1] = XA_STRING;
|
||||||
array[2] = TEXT;
|
array[2] = XA_Format_Text;
|
||||||
array[3] = COMPOUND_TEXT;
|
array[3] = XA_Format_Compound_Text;
|
||||||
|
|
||||||
data = WMCreateDataWithBytes(&array, sizeof(array));
|
data = WMCreateDataWithBytes(&array, sizeof(array));
|
||||||
WMSetDataFormat(data, 32);
|
WMSetDataFormat(data, 32);
|
||||||
@@ -2974,6 +2974,17 @@ WMText *WMCreateTextForDocumentType(WMWidget * parent, WMAction * parser, WMActi
|
|||||||
dpy = tPtr->view->screen->display;
|
dpy = tPtr->view->screen->display;
|
||||||
scr = tPtr->view->screen;
|
scr = tPtr->view->screen;
|
||||||
|
|
||||||
|
if (XA_Targets == None) {
|
||||||
|
/*
|
||||||
|
* Because the X protocol guaranties that the value will never change in
|
||||||
|
* the lifespan of the server, we query the values only the first time a
|
||||||
|
* widget is created
|
||||||
|
*/
|
||||||
|
XA_Targets = XInternAtom(dpy, "TARGETS", False);
|
||||||
|
XA_Format_Text = XInternAtom(dpy, "TEXT", False);
|
||||||
|
XA_Format_Compound_Text = XInternAtom(dpy, "COMPOUND_TEXT", False);
|
||||||
|
}
|
||||||
|
|
||||||
tPtr->view->self = tPtr;
|
tPtr->view->self = tPtr;
|
||||||
tPtr->view->attribs.cursor = scr->textCursor;
|
tPtr->view->attribs.cursor = scr->textCursor;
|
||||||
tPtr->view->attribFlags |= CWOverrideRedirect | CWCursor;
|
tPtr->view->attribFlags |= CWOverrideRedirect | CWCursor;
|
||||||
|
|||||||
+4
-4
@@ -10,9 +10,9 @@
|
|||||||
#define CURSOR_BLINK_ON_DELAY 600
|
#define CURSOR_BLINK_ON_DELAY 600
|
||||||
#define CURSOR_BLINK_OFF_DELAY 300
|
#define CURSOR_BLINK_OFF_DELAY 300
|
||||||
|
|
||||||
char *WMTextDidChangeNotification = "WMTextDidChangeNotification";
|
const char *WMTextDidChangeNotification = "WMTextDidChangeNotification";
|
||||||
char *WMTextDidBeginEditingNotification = "WMTextDidBeginEditingNotification";
|
const char *WMTextDidBeginEditingNotification = "WMTextDidBeginEditingNotification";
|
||||||
char *WMTextDidEndEditingNotification = "WMTextDidEndEditingNotification";
|
const char *WMTextDidEndEditingNotification = "WMTextDidEndEditingNotification";
|
||||||
|
|
||||||
typedef struct W_TextField {
|
typedef struct W_TextField {
|
||||||
W_Class widgetClass;
|
W_Class widgetClass;
|
||||||
@@ -942,7 +942,7 @@ static void handleTextFieldKeyPress(TextField * tPtr, XEvent * event)
|
|||||||
{
|
{
|
||||||
char buffer[64];
|
char buffer[64];
|
||||||
KeySym ksym;
|
KeySym ksym;
|
||||||
char *textEvent = NULL;
|
const char *textEvent = NULL;
|
||||||
void *data = NULL;
|
void *data = NULL;
|
||||||
int count, refresh = 0;
|
int count, refresh = 0;
|
||||||
int control_pressed = 0;
|
int control_pressed = 0;
|
||||||
|
|||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
#include "WINGsP.h"
|
#include "WINGsP.h"
|
||||||
|
|
||||||
void WHandleEvents()
|
void WHandleEvents(void)
|
||||||
{
|
{
|
||||||
/* Check any expired timers */
|
/* Check any expired timers */
|
||||||
W_CheckTimerHandlers();
|
W_CheckTimerHandlers();
|
||||||
|
|||||||
+3
-3
@@ -5,9 +5,9 @@
|
|||||||
|
|
||||||
/* the notifications about views */
|
/* the notifications about views */
|
||||||
|
|
||||||
char *WMViewSizeDidChangeNotification = "WMViewSizeDidChangeNotification";
|
const char *WMViewSizeDidChangeNotification = "WMViewSizeDidChangeNotification";
|
||||||
char *WMViewFocusDidChangeNotification = "WMViewFocusDidChangeNotification";
|
const char *WMViewFocusDidChangeNotification = "WMViewFocusDidChangeNotification";
|
||||||
char *WMViewRealizedNotification = "WMViewRealizedNotification";
|
const char *WMViewRealizedNotification = "WMViewRealizedNotification";
|
||||||
|
|
||||||
#define EVENT_MASK \
|
#define EVENT_MASK \
|
||||||
KeyPressMask|KeyReleaseMask|ButtonPressMask|ButtonReleaseMask| \
|
KeyPressMask|KeyReleaseMask|ButtonPressMask|ButtonReleaseMask| \
|
||||||
|
|||||||
+13
-7
@@ -446,12 +446,18 @@ static void str2rcolor(RContext * rc, const char *name, RColor * color)
|
|||||||
{
|
{
|
||||||
XColor xcolor;
|
XColor xcolor;
|
||||||
|
|
||||||
XParseColor(rc->dpy, rc->cmap, name, &xcolor);
|
if (XParseColor(rc->dpy, rc->cmap, name, &xcolor) != 0) {
|
||||||
|
color->alpha = 255;
|
||||||
color->alpha = 255;
|
color->red = xcolor.red >> 8;
|
||||||
color->red = xcolor.red >> 8;
|
color->green = xcolor.green >> 8;
|
||||||
color->green = xcolor.green >> 8;
|
color->blue = xcolor.blue >> 8;
|
||||||
color->blue = xcolor.blue >> 8;
|
} else {
|
||||||
|
/* Color Name was not found - Return white instead */
|
||||||
|
color->alpha = 255;
|
||||||
|
color->red = 255;
|
||||||
|
color->green = 255;
|
||||||
|
color->blue = 255;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dumpRImage(const char *path, RImage * image)
|
static void dumpRImage(const char *path, RImage * image)
|
||||||
@@ -1822,7 +1828,7 @@ static void createPanel(Panel * p)
|
|||||||
char *tmp;
|
char *tmp;
|
||||||
Bool ok = True;
|
Bool ok = True;
|
||||||
|
|
||||||
panel->fprefix = wstrconcat(wusergnusteppath(), "/Library/WindowMaker");
|
panel->fprefix = wstrconcat(wuserdatapath(), "/" PACKAGE_TARNAME);
|
||||||
|
|
||||||
if (access(panel->fprefix, F_OK) != 0) {
|
if (access(panel->fprefix, F_OK) != 0) {
|
||||||
if (mkdir(panel->fprefix, 0755) < 0) {
|
if (mkdir(panel->fprefix, 0755) < 0) {
|
||||||
|
|||||||
+8
-4
@@ -119,7 +119,9 @@ static const struct {
|
|||||||
/* default: */ False, OPTION_WMAKER, "DbClickFullScreen" },
|
/* default: */ False, OPTION_WMAKER, "DbClickFullScreen" },
|
||||||
|
|
||||||
{ N_("Close rootmenu when mouse (left or right) is clicked outside focus."),
|
{ N_("Close rootmenu when mouse (left or right) is clicked outside focus."),
|
||||||
/* default: */ False, OPTION_WMAKER, "CloseRootMenuByLeftOrRightMouseClick" }
|
/* default: */ False, OPTION_WMAKER, "CloseRootMenuByLeftOrRightMouseClick" },
|
||||||
|
{ N_("Keep dock on primary head."),
|
||||||
|
/* default: */ False, OPTION_WMAKER, "KeepDockOnPrimaryHead"},
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -146,15 +148,16 @@ typedef struct _Panel {
|
|||||||
static void changeIntTextfield(void *data, int delta)
|
static void changeIntTextfield(void *data, int delta)
|
||||||
{
|
{
|
||||||
WMTextField *textfield;
|
WMTextField *textfield;
|
||||||
char *text;
|
char *text, buffer[12];
|
||||||
int value;
|
int value;
|
||||||
|
|
||||||
textfield = (WMTextField *)data;
|
textfield = (WMTextField *)data;
|
||||||
text = WMGetTextFieldText(textfield);
|
text = WMGetTextFieldText(textfield);
|
||||||
value = atoi(text);
|
value = atoi(text);
|
||||||
|
wfree(text);
|
||||||
value += delta;
|
value += delta;
|
||||||
sprintf(text, "%d", value);
|
sprintf(buffer, "%d", value);
|
||||||
WMSetTextFieldText(textfield, text);
|
WMSetTextFieldText(textfield, buffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void downButtonCallback(WMWidget *self, void *data)
|
static void downButtonCallback(WMWidget *self, void *data)
|
||||||
@@ -314,6 +317,7 @@ static void storeDefaults(_Panel *panel)
|
|||||||
|
|
||||||
text = WMGetTextFieldText(panel->textfield[i]);
|
text = WMGetTextFieldText(panel->textfield[i]);
|
||||||
value = atoi(text);
|
value = atoi(text);
|
||||||
|
wfree(text);
|
||||||
|
|
||||||
SetIntegerForKey(value, expert_options[i].op_name);
|
SetIntegerForKey(value, expert_options[i].op_name);
|
||||||
break;
|
break;
|
||||||
|
|||||||
+3
-3
@@ -195,8 +195,8 @@ static void showData(_Panel * panel)
|
|||||||
|
|
||||||
if (i < 0)
|
if (i < 0)
|
||||||
i = 0;
|
i = 0;
|
||||||
else if (i > 9)
|
else if (i > 29)
|
||||||
i = 9;
|
i = 29;
|
||||||
WMSetPopUpButtonSelectedItem(panel->sizeP, i);
|
WMSetPopUpButtonSelectedItem(panel->sizeP, i);
|
||||||
|
|
||||||
/* Mini-Previews for Icons */
|
/* Mini-Previews for Icons */
|
||||||
@@ -339,7 +339,7 @@ static void createPanel(Panel * p)
|
|||||||
panel->sizeP = WMCreatePopUpButton(panel->sizeF);
|
panel->sizeP = WMCreatePopUpButton(panel->sizeF);
|
||||||
WMResizeWidget(panel->sizeP, 80, 20);
|
WMResizeWidget(panel->sizeP, 80, 20);
|
||||||
WMMoveWidget(panel->sizeP, 10, 19);
|
WMMoveWidget(panel->sizeP, 10, 19);
|
||||||
for (i = 24; i <= 96; i += 8) {
|
for (i = 24; i <= 256; i += 8) {
|
||||||
sprintf(buf, "%ix%i", i, i);
|
sprintf(buf, "%ix%i", i, i);
|
||||||
WMAddPopUpButtonItem(panel->sizeP, buf);
|
WMAddPopUpButtonItem(panel->sizeP, buf);
|
||||||
}
|
}
|
||||||
|
|||||||
+15
-3
@@ -10,9 +10,20 @@ wpdatadir = @wprefs_datadir@
|
|||||||
|
|
||||||
wpdata_DATA = WPrefs.tiff WPrefs.xpm
|
wpdata_DATA = WPrefs.tiff WPrefs.xpm
|
||||||
|
|
||||||
|
applicationsdir = @datadir@/applications
|
||||||
|
|
||||||
|
applications_DATA = WPrefs.desktop
|
||||||
|
|
||||||
|
WPrefs.desktop: WPrefs.desktop.in
|
||||||
|
$(AM_V_GEN)sed -e "s:#wprefs_bindir#:${wprefs_bindir}:" \
|
||||||
|
-e "s:#wprefs_datadir#:${wprefs_datadir}:" $< > $@
|
||||||
|
|
||||||
EXTRA_DIST = $(wpdata_DATA) \
|
EXTRA_DIST = $(wpdata_DATA) \
|
||||||
KeyboardSettings.c \
|
KeyboardSettings.c \
|
||||||
Themes.c
|
Themes.c \
|
||||||
|
WPrefs.desktop.in
|
||||||
|
|
||||||
|
DISTCLEANFILES = WPrefs.desktop
|
||||||
|
|
||||||
WPrefs_SOURCES = \
|
WPrefs_SOURCES = \
|
||||||
main.c \
|
main.c \
|
||||||
@@ -45,10 +56,11 @@ WPrefs_SOURCES = \
|
|||||||
# KeyboardSettings.c \
|
# KeyboardSettings.c \
|
||||||
# Themes.c
|
# Themes.c
|
||||||
|
|
||||||
AM_CFLAGS =
|
AM_CFLAGS = @PANGO_CFLAGS@
|
||||||
|
|
||||||
AM_CPPFLAGS = -DRESOURCE_PATH=\"$(wpdatadir)\" -DWMAKER_RESOURCE_PATH=\"$(pkgdatadir)\" \
|
AM_CPPFLAGS = -DRESOURCE_PATH=\"$(wpdatadir)\" -DWMAKER_RESOURCE_PATH=\"$(pkgdatadir)\" \
|
||||||
-I$(top_srcdir)/wrlib -I$(top_srcdir)/WINGs @HEADER_SEARCH_PATH@
|
-I$(top_builddir)/wrlib -I$(top_srcdir)/WINGs -I$(top_builddir)/WINGs \
|
||||||
|
@HEADER_SEARCH_PATH@
|
||||||
|
|
||||||
WPrefs_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.la
|
WPrefs_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.la
|
||||||
|
|
||||||
|
|||||||
+29
-12
@@ -507,7 +507,7 @@ static void createPanel(_Panel * p)
|
|||||||
WMSetScrollViewContentView(sview, WMWidgetView(pad));
|
WMSetScrollViewContentView(sview, WMWidgetView(pad));
|
||||||
|
|
||||||
data = putNewItem(panel, pad, ExternalInfo, _("Debian Menu"));
|
data = putNewItem(panel, pad, ExternalInfo, _("Debian Menu"));
|
||||||
data->param.pipe.command = "/etc/GNUstep/Defaults/menu.hook";
|
data->param.pipe.command = "/etc/" GSUSER_SUBDIR "/" DEFAULTS_SUBDIR "/menu.hook";
|
||||||
|
|
||||||
data = putNewItem(panel, pad, PipeInfo, _("RedHat Menu"));
|
data = putNewItem(panel, pad, PipeInfo, _("RedHat Menu"));
|
||||||
data->param.pipe.command = "wmconfig --output wmaker";
|
data->param.pipe.command = "wmconfig --output wmaker";
|
||||||
@@ -518,19 +518,25 @@ static void createPanel(_Panel * p)
|
|||||||
data = putNewItem(panel, pad, DirectoryInfo, _("Themes"));
|
data = putNewItem(panel, pad, DirectoryInfo, _("Themes"));
|
||||||
data->param.directory.command = "setstyle";
|
data->param.directory.command = "setstyle";
|
||||||
data->param.directory.directory =
|
data->param.directory.directory =
|
||||||
"/usr/share/WindowMaker/Themes /usr/local/share/WindowMaker/Themes $HOME/GNUstep/Library/WindowMaker/Themes";
|
"/usr/share/" PACKAGE_TARNAME "/Themes"
|
||||||
|
" /usr/local/share/" PACKAGE_TARNAME "/Themes"
|
||||||
|
" $HOME/" GSUSER_SUBDIR "/" USERDATA_SUBDIR "/" PACKAGE_TARNAME "/Themes";
|
||||||
data->param.directory.stripExt = 1;
|
data->param.directory.stripExt = 1;
|
||||||
|
|
||||||
data = putNewItem(panel, pad, DirectoryInfo, _("Bg Images (scale)"));
|
data = putNewItem(panel, pad, DirectoryInfo, _("Bg Images (scale)"));
|
||||||
data->param.directory.command = "wmsetbg -u -s";
|
data->param.directory.command = "wmsetbg -u -s";
|
||||||
data->param.directory.directory =
|
data->param.directory.directory =
|
||||||
"/opt/kde2/share/wallpapers /usr/share/WindowMaker/Backgrounds $HOME/GNUstep/Library/WindowMaker/Backgrounds";
|
"/opt/kde2/share/wallpapers"
|
||||||
|
" /usr/share/" PACKAGE_TARNAME "/Backgrounds"
|
||||||
|
" $HOME/" GSUSER_SUBDIR "/" USERDATA_SUBDIR "/" PACKAGE_TARNAME "/Backgrounds";
|
||||||
data->param.directory.stripExt = 1;
|
data->param.directory.stripExt = 1;
|
||||||
|
|
||||||
data = putNewItem(panel, pad, DirectoryInfo, _("Bg Images (tile)"));
|
data = putNewItem(panel, pad, DirectoryInfo, _("Bg Images (tile)"));
|
||||||
data->param.directory.command = "wmsetbg -u -t";
|
data->param.directory.command = "wmsetbg -u -t";
|
||||||
data->param.directory.directory =
|
data->param.directory.directory =
|
||||||
"/opt/kde2/share/wallpapers /usr/share/WindowMaker/Backgrounds $HOME/GNUstep/Library/WindowMaker/Backgrounds";
|
"/opt/kde2/share/wallpapers"
|
||||||
|
" /usr/share/" PACKAGE_TARNAME "/Backgrounds"
|
||||||
|
" $HOME/" GSUSER_SUBDIR "/" USERDATA_SUBDIR "/" PACKAGE_TARNAME "/Backgrounds";
|
||||||
data->param.directory.stripExt = 1;
|
data->param.directory.stripExt = 1;
|
||||||
|
|
||||||
smenu = putNewSubmenu(pad, _("Assorted XTerms"));
|
smenu = putNewSubmenu(pad, _("Assorted XTerms"));
|
||||||
@@ -619,7 +625,8 @@ static void createPanel(_Panel * p)
|
|||||||
WMSetLabelText(label, _("Enter the path for a file containing a menu\n"
|
WMSetLabelText(label, _("Enter the path for a file containing a menu\n"
|
||||||
"or a list of directories with the programs you\n"
|
"or a list of directories with the programs you\n"
|
||||||
"want to have listed in the menu. Ex:\n"
|
"want to have listed in the menu. Ex:\n"
|
||||||
"~/GNUstep/Library/WindowMaker/menu\n" "or\n" "/usr/bin ~/xbin"));
|
"~/" GSUSER_SUBDIR "/" USERDATA_SUBDIR "/" PACKAGE_TARNAME "/menu\n"
|
||||||
|
"or\n" "/usr/bin ~/xbin"));
|
||||||
|
|
||||||
WMMapSubwidgets(panel->pathF);
|
WMMapSubwidgets(panel->pathF);
|
||||||
|
|
||||||
@@ -914,6 +921,11 @@ static ItemData *parseCommand(WMPropList * item)
|
|||||||
|
|
||||||
data->type = ExecInfo;
|
data->type = ExecInfo;
|
||||||
|
|
||||||
|
if (parameter == NULL) {
|
||||||
|
wfree(data);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
data->param.exec.command = wstrdup(parameter);
|
data->param.exec.command = wstrdup(parameter);
|
||||||
if (shortcut)
|
if (shortcut)
|
||||||
data->param.exec.shortcut = wstrdup(shortcut);
|
data->param.exec.shortcut = wstrdup(shortcut);
|
||||||
@@ -926,6 +938,12 @@ static ItemData *parseCommand(WMPropList * item)
|
|||||||
* |pipe
|
* |pipe
|
||||||
*/
|
*/
|
||||||
p = parameter;
|
p = parameter;
|
||||||
|
|
||||||
|
if (p == NULL) {
|
||||||
|
wfree(data);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
while (isspace(*p) && *p)
|
while (isspace(*p) && *p)
|
||||||
p++;
|
p++;
|
||||||
if (*p == '|') {
|
if (*p == '|') {
|
||||||
@@ -1482,16 +1500,11 @@ static WMPropList *getDefaultMenu(_Panel * panel)
|
|||||||
|
|
||||||
static void showData(_Panel * panel)
|
static void showData(_Panel * panel)
|
||||||
{
|
{
|
||||||
const char *gspath;
|
|
||||||
char *menuPath, *labelText;
|
char *menuPath, *labelText;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
WMPropList *pmenu;
|
WMPropList *pmenu;
|
||||||
|
|
||||||
gspath = wusergnusteppath();
|
menuPath = wdefaultspathfordomain("WMRootMenu");
|
||||||
|
|
||||||
menuPath = wmalloc(strlen(gspath) + 32);
|
|
||||||
strcpy(menuPath, gspath);
|
|
||||||
strcat(menuPath, "/Defaults/WMRootMenu");
|
|
||||||
|
|
||||||
pmenu = WMReadPropListFromFile(menuPath);
|
pmenu = WMReadPropListFromFile(menuPath);
|
||||||
|
|
||||||
@@ -1502,8 +1515,12 @@ static void showData(_Panel * panel)
|
|||||||
|
|
||||||
path = wexpandpath(WMGetFromPLString(pmenu));
|
path = wexpandpath(WMGetFromPLString(pmenu));
|
||||||
|
|
||||||
if (access(path, F_OK) < 0)
|
if (access(path, F_OK) < 0) {
|
||||||
|
char *old_path = path;
|
||||||
|
|
||||||
path = wfindfile(DEF_CONFIG_PATHS, path);
|
path = wfindfile(DEF_CONFIG_PATHS, path);
|
||||||
|
wfree(old_path);
|
||||||
|
}
|
||||||
|
|
||||||
/* TODO: if needed, concatenate locale suffix to path.
|
/* TODO: if needed, concatenate locale suffix to path.
|
||||||
See getLocalizedMenuFile() in src/rootmenu.c. */
|
See getLocalizedMenuFile() in src/rootmenu.c. */
|
||||||
|
|||||||
@@ -650,7 +650,7 @@ static void storeCommandInScript(const char *cmd, const char *line)
|
|||||||
umask(permissions);
|
umask(permissions);
|
||||||
permissions = (S_IRWXU | S_IRWXG | S_IRWXO) & (~permissions);
|
permissions = (S_IRWXU | S_IRWXG | S_IRWXO) & (~permissions);
|
||||||
|
|
||||||
path = wstrconcat(wusergnusteppath(), "/Library/WindowMaker/autostart");
|
path = wstrconcat(wuserdatapath(), "/" PACKAGE_TARNAME "/autostart");
|
||||||
|
|
||||||
f = fopen(path, "rb");
|
f = fopen(path, "rb");
|
||||||
if (!f) {
|
if (!f) {
|
||||||
@@ -668,7 +668,7 @@ static void storeCommandInScript(const char *cmd, const char *line)
|
|||||||
char *tmppath;
|
char *tmppath;
|
||||||
FILE *fo;
|
FILE *fo;
|
||||||
|
|
||||||
tmppath = wstrconcat(wusergnusteppath(), "/Library/WindowMaker/autostart.tmp");
|
tmppath = wstrconcat(wuserdatapath(), "/" PACKAGE_TARNAME "/autostart.tmp");
|
||||||
fo = fopen(tmppath, "wb");
|
fo = fopen(tmppath, "wb");
|
||||||
if (!fo) {
|
if (!fo) {
|
||||||
werror(_("could not create temporary file %s"), tmppath);
|
werror(_("could not create temporary file %s"), tmppath);
|
||||||
|
|||||||
+6
-6
@@ -77,11 +77,11 @@ static void showData(_Panel * panel)
|
|||||||
if (array)
|
if (array)
|
||||||
wwarning(_("bad value in option IconPath. Using default path list"));
|
wwarning(_("bad value in option IconPath. Using default path list"));
|
||||||
addPathToList(panel->icoL, -1, "~/pixmaps");
|
addPathToList(panel->icoL, -1, "~/pixmaps");
|
||||||
addPathToList(panel->icoL, -1, "~/GNUstep/Library/Icons");
|
addPathToList(panel->icoL, -1, "~/" GSUSER_SUBDIR "/" USERDATA_SUBDIR "/Icons");
|
||||||
addPathToList(panel->icoL, -1, "/usr/include/X11/pixmaps");
|
addPathToList(panel->icoL, -1, "/usr/include/X11/pixmaps");
|
||||||
addPathToList(panel->icoL, -1, "/usr/local/share/WindowMaker/Icons");
|
addPathToList(panel->icoL, -1, "/usr/local/share/" PACKAGE_TARNAME "/Icons");
|
||||||
addPathToList(panel->icoL, -1, "/usr/local/share/WindowMaker/Pixmaps");
|
addPathToList(panel->icoL, -1, "/usr/local/share/" PACKAGE_TARNAME "/Pixmaps");
|
||||||
addPathToList(panel->icoL, -1, "/usr/share/WindowMaker/Icons");
|
addPathToList(panel->icoL, -1, "/usr/share/" PACKAGE_TARNAME "/Icons");
|
||||||
} else {
|
} else {
|
||||||
for (i = 0; i < WMGetPropListItemCount(array); i++) {
|
for (i = 0; i < WMGetPropListItemCount(array); i++) {
|
||||||
val = WMGetFromPLArray(array, i);
|
val = WMGetFromPLArray(array, i);
|
||||||
@@ -94,8 +94,8 @@ static void showData(_Panel * panel)
|
|||||||
if (array)
|
if (array)
|
||||||
wwarning(_("bad value in option PixmapPath. Using default path list"));
|
wwarning(_("bad value in option PixmapPath. Using default path list"));
|
||||||
addPathToList(panel->pixL, -1, "~/pixmaps");
|
addPathToList(panel->pixL, -1, "~/pixmaps");
|
||||||
addPathToList(panel->pixL, -1, "~/GNUstep/Library/WindowMaker/Pixmaps");
|
addPathToList(panel->pixL, -1, "~/" GSUSER_SUBDIR "/" USERDATA_SUBDIR "/" PACKAGE_TARNAME "/Pixmaps");
|
||||||
addPathToList(panel->pixL, -1, "/usr/local/share/WindowMaker/Pixmaps");
|
addPathToList(panel->pixL, -1, "/usr/local/share/" PACKAGE_TARNAME "/Pixmaps");
|
||||||
} else {
|
} else {
|
||||||
for (i = 0; i < WMGetPropListItemCount(array); i++) {
|
for (i = 0; i < WMGetPropListItemCount(array); i++) {
|
||||||
val = WMGetFromPLArray(array, i);
|
val = WMGetFromPLArray(array, i);
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Version=1.5
|
||||||
|
Type=Application
|
||||||
|
Name=WPrefs
|
||||||
|
Comment=Window Maker Preferences
|
||||||
|
TryExec=#wprefs_bindir#/WPrefs
|
||||||
|
Exec=WPrefs
|
||||||
|
Icon=#wprefs_datadir#/WPrefs.xpm
|
||||||
|
Categories=Settings;DesktopSettings;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
File Language Current Maintainer
|
File Language Current Maintainer
|
||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
pt.po Portuguese Eliphas Levy Theodoro <eliphas@conectiva.com.br>
|
pt.po Portuguese Eliphas Levy Theodoro <eliphas@conectiva.com.br>
|
||||||
hr.po Croatian Toni Biliæ <tbilic@oliver.efos.hr>
|
hr.po Croatian Toni Biliæ <tbilic@oliver.efos.hr>
|
||||||
fr.po French Bastien NOCERA <hadess@writeme.com>
|
fr.po French Bastien NOCERA <hadess@writeme.com>
|
||||||
Hadess <hadess@infonie.fr>
|
Hadess <hadess@infonie.fr>
|
||||||
Antoine Hulin <antoine@origan.fdn.org>
|
Antoine Hulin <antoine@origan.fdn.org>
|
||||||
@@ -23,6 +23,6 @@ bg.po Bulgarian Slavei Karadjov <slaff@exco.net>
|
|||||||
Anton Zinoviev <zinoviev@debian.org>
|
Anton Zinoviev <zinoviev@debian.org>
|
||||||
sk.po Slovak Jan 'judas' Tomka <judas@linux.sk>
|
sk.po Slovak Jan 'judas' Tomka <judas@linux.sk>
|
||||||
et.po Estonian Ivar Smolin <okul@linux.ee>
|
et.po Estonian Ivar Smolin <okul@linux.ee>
|
||||||
ca.po Catalan Ernest Adrogué <eadrogue@gmx.net>
|
ca.po Catalan Ernest Adrogué <eadrogue@gmx.net>
|
||||||
nl.po Dutch Alwin <translations@ziggo.nl>
|
nl.po Dutch Alwin <translations@ziggo.nl>
|
||||||
fy.po Frisian Alwin <translations@ziggo.nl>
|
fy.po Frisian Alwin <translations@ziggo.nl>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
defsdatadir = $(pkgdatadir)/Backgrounds
|
bgdatadir = $(pkgdatadir)/Backgrounds
|
||||||
|
|
||||||
defsdata_DATA = BlueImage.jpeg
|
bgdata_DATA = BlueImage.jpeg
|
||||||
|
|
||||||
EXTRA_DIST = $(defsdata_DATA)
|
EXTRA_DIST = $(bgdata_DATA)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
defsdata_DATA = WMRootMenu WMWindowAttributes WindowMaker WMState WMGLOBAL
|
pkgconf_DATA = WMRootMenu WMWindowAttributes WindowMaker WMState WMGLOBAL
|
||||||
|
|
||||||
wpexecbindir = @wprefs_bindir@
|
wpexecbindir = @wprefs_bindir@
|
||||||
|
|
||||||
|
|||||||
@@ -106,6 +106,7 @@
|
|||||||
SwitchPanelOnlyOpen = NO;
|
SwitchPanelOnlyOpen = NO;
|
||||||
MiniPreviewSize = 128;
|
MiniPreviewSize = 128;
|
||||||
IgnoreGtkHints = NO;
|
IgnoreGtkHints = NO;
|
||||||
|
KeepDockOnPrimaryHead = NO;
|
||||||
MenuStyle = normal;
|
MenuStyle = normal;
|
||||||
WidgetColor = (solid, gray);
|
WidgetColor = (solid, gray);
|
||||||
WorkspaceSpecificBack = ();
|
WorkspaceSpecificBack = ();
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
defsdatadir = $(pkgdatadir)/IconSets
|
iconsetdatadir = $(pkgdatadir)/IconSets
|
||||||
|
|
||||||
defsdata_DATA = Default.iconset
|
iconsetdata_DATA = Default.iconset
|
||||||
|
|
||||||
EXTRA_DIST =
|
EXTRA_DIST =
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
|
|
||||||
defsdatadir = $(pkgdatadir)/Icons
|
icondatadir = $(pkgdatadir)/Icons
|
||||||
|
|
||||||
|
|
||||||
defsdata_DATA = \
|
icondata_DATA = \
|
||||||
BitchX.tiff\
|
BitchX.tiff\
|
||||||
BitchX.xpm\
|
BitchX.xpm\
|
||||||
clip.tiff\
|
clip.tiff\
|
||||||
@@ -74,5 +74,5 @@ defsdata_DATA = \
|
|||||||
xv.xpm
|
xv.xpm
|
||||||
|
|
||||||
|
|
||||||
EXTRA_DIST = $(defsdata_DATA)
|
EXTRA_DIST = $(icondata_DATA)
|
||||||
|
|
||||||
|
|||||||
@@ -74,7 +74,10 @@ dist_prefsdata_DATA =\
|
|||||||
|
|
||||||
nodist_prefsdata_DATA = $(GENERATED_MENUS)
|
nodist_prefsdata_DATA = $(GENERATED_MENUS)
|
||||||
|
|
||||||
EXTRA_DIST = $(addsuffix .in, $(GENERATED_MENUS))
|
xsessionsdir = @datadir@/xsessions
|
||||||
|
xsessions_DATA = wmaker.desktop
|
||||||
|
|
||||||
|
EXTRA_DIST = $(addsuffix .in, $(GENERATED_MENUS)) wmaker.desktop
|
||||||
|
|
||||||
CLEANFILES = $(GENERATED_MENUS)
|
CLEANFILES = $(GENERATED_MENUS)
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
|
|
||||||
defsdatadir = $(pkgdatadir)/Pixmaps
|
pixmapdatadir = $(pkgdatadir)/Pixmaps
|
||||||
|
|
||||||
defsdata_DATA = tile.tiff \
|
pixmapdata_DATA = tile.tiff \
|
||||||
tile.xpm \
|
tile.xpm \
|
||||||
swtile.png \
|
swtile.png \
|
||||||
swback.png \
|
swback.png \
|
||||||
swback2.png
|
swback2.png
|
||||||
|
|
||||||
EXTRA_DIST = $(defsdata_DATA)
|
EXTRA_DIST = $(pixmapdata_DATA)
|
||||||
|
|||||||
+3
-3
@@ -36,7 +36,7 @@ menu.ja Japanese MANOME Tomonori <manome@itlb.te.noda.sut.ac.jp>
|
|||||||
ABE Shige <sabe@ibm.net>
|
ABE Shige <sabe@ibm.net>
|
||||||
menu.pt Portuguese Alfredo K. Kojima <kojima@inf.ufrgs.br>
|
menu.pt Portuguese Alfredo K. Kojima <kojima@inf.ufrgs.br>
|
||||||
menu.de German Carsten Schaar <nhadcasc@fs-maphy.uni-hannover.de>
|
menu.de German Carsten Schaar <nhadcasc@fs-maphy.uni-hannover.de>
|
||||||
menu.cz Czech David ©auer <xsauer@hwlab.felk.cvut.cz>
|
menu.cz Czech David ©auer <xsauer@hwlab.felk.cvut.cz>
|
||||||
menu.ko Korean Chae-Yong Chong <cychong@metro.telecom.samsung.co.kr>
|
menu.ko Korean Chae-Yong Chong <cychong@metro.telecom.samsung.co.kr>
|
||||||
Byeong-Chan Kim <redhands@linux.sarang.net>
|
Byeong-Chan Kim <redhands@linux.sarang.net>
|
||||||
menu.gl Galician Xose Vazquez <xose@arrakis.es>
|
menu.gl Galician Xose Vazquez <xose@arrakis.es>
|
||||||
@@ -44,7 +44,7 @@ menu.fr French ObiTuarY <obituary@freshmeat.net>
|
|||||||
menu.it Italian Roberto Checozzo <croberto@aerre.it>
|
menu.it Italian Roberto Checozzo <croberto@aerre.it>
|
||||||
menu.ru Russian August S.Sigov <freedomain@actor.ru>
|
menu.ru Russian August S.Sigov <freedomain@actor.ru>
|
||||||
menu.es Spanish Rodrigo Hornos Prados <tnetrhp@ctv.es>
|
menu.es Spanish Rodrigo Hornos Prados <tnetrhp@ctv.es>
|
||||||
José Luis Rivas López <jrivas@ares.ipf.uvigo.es>
|
José Luis Rivas López <jrivas@ares.ipf.uvigo.es>
|
||||||
menu.he Hebrew Please send me your name/email if you wrote this
|
menu.he Hebrew Please send me your name/email if you wrote this
|
||||||
We unfortunately lost that info :(
|
We unfortunately lost that info :(
|
||||||
menu.tr Turkish F. Kagan Gurkaynak <kgf@wpi.edu>
|
menu.tr Turkish F. Kagan Gurkaynak <kgf@wpi.edu>
|
||||||
@@ -56,7 +56,7 @@ menu.dk Danish John M. Lockard <jlockard@math.lsa.umich.edu>
|
|||||||
Jacob Sparre Andersen <sparre@cats.nbi.dk>
|
Jacob Sparre Andersen <sparre@cats.nbi.dk>
|
||||||
menu.sl Slovene Alen Salamun <snowman@hal9000.medinet.si>
|
menu.sl Slovene Alen Salamun <snowman@hal9000.medinet.si>
|
||||||
menu.hu Hungarian Csanaki Csaba <prew@mail.matav.hu>
|
menu.hu Hungarian Csanaki Csaba <prew@mail.matav.hu>
|
||||||
menu.ca Català Carles Amig<F3> dj_fr3nd@hotmail.com
|
menu.ca Català Carles Amig<F3> dj_fr3nd@hotmail.com
|
||||||
menu.zh_TW.Big5 Chinese Li Wei Jih <lwj83@cs.ccu.edu.tw>
|
menu.zh_TW.Big5 Chinese Li Wei Jih <lwj83@cs.ccu.edu.tw>
|
||||||
menu.zh_CN Chinese Wang Jian <wangjian2@asiainfo.com>
|
menu.zh_CN Chinese Wang Jian <wangjian2@asiainfo.com>
|
||||||
menu.pl Polish Maciej Friedel <tytus@tytus.itma.pwr.wroc.pl>
|
menu.pl Polish Maciej Friedel <tytus@tytus.itma.pwr.wroc.pl>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
prefsdatadir = $(pkgdatadir)/Styles
|
styledatadir = $(pkgdatadir)/Styles
|
||||||
|
|
||||||
prefsdata_DATA =\
|
styledata_DATA =\
|
||||||
Adwaita.style\
|
Adwaita.style\
|
||||||
Autumn.style\
|
Autumn.style\
|
||||||
Black.style\
|
Black.style\
|
||||||
@@ -39,6 +39,6 @@ prefsdata_DATA =\
|
|||||||
Traditional.style\
|
Traditional.style\
|
||||||
VioletBlue.style
|
VioletBlue.style
|
||||||
|
|
||||||
EXTRA_DIST = $(prefsdata_DATA)
|
EXTRA_DIST = $(styledata_DATA)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
defsdatadir = $(pkgdatadir)/Themes
|
themesdatadir = $(pkgdatadir)/Themes
|
||||||
|
|
||||||
defsdata_DATA = Default.style OpenStep.style Pastel.style SteelBlueSilk.style Blau.style
|
themesdata_DATA = Default.style OpenStep.style Pastel.style SteelBlueSilk.style Blau.style
|
||||||
|
|
||||||
EXTRA_DIST = $(defsdata_DATA)
|
EXTRA_DIST = $(themesdata_DATA)
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Window Maker
|
||||||
|
Comment=This session logs you into Window Maker
|
||||||
|
Exec=wmaker
|
||||||
|
TryExec=wmaker
|
||||||
|
DesktopNames=WindowMaker
|
||||||
|
X-GDM-SessionRegisters=true
|
||||||
+130
-75
@@ -103,6 +103,7 @@ LT_INIT
|
|||||||
|
|
||||||
dnl Debugging Options
|
dnl Debugging Options
|
||||||
dnl =================
|
dnl =================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([debug],
|
AC_ARG_ENABLE([debug],
|
||||||
[AS_HELP_STRING([--enable-debug], [enable debugging options, @<:@default=no@:>@])],
|
[AS_HELP_STRING([--enable-debug], [enable debugging options, @<:@default=no@:>@])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
@@ -110,6 +111,7 @@ AC_ARG_ENABLE([debug],
|
|||||||
[no], [debug=no],
|
[no], [debug=no],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-debug])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-debug])] )],
|
||||||
[debug=no])
|
[debug=no])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
AS_IF([test "x$debug" = "xyes"],
|
AS_IF([test "x$debug" = "xyes"],
|
||||||
[dnl This flag should have already been detected and added, but if user
|
[dnl This flag should have already been detected and added, but if user
|
||||||
dnl provided an explicit CFLAGS it may not be the case
|
dnl provided an explicit CFLAGS it may not be the case
|
||||||
@@ -232,6 +234,20 @@ AS_IF([test "x$debug" = "xyes"],
|
|||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
dnl To upload documentation to the Website
|
||||||
|
dnl ======================================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
|
AC_ARG_WITH([web-repo],
|
||||||
|
[AS_HELP_STRING([--with-web-repo=PATH], [path to your git repository for the Web home page (maintainer stuff)])],
|
||||||
|
[AS_CASE([$withval],
|
||||||
|
[yes], [AC_MSG_ERROR([bad value '$withval' for --with-web-repo, expected a path]) ],
|
||||||
|
[no], [WEB_REPO_ROOT=""],
|
||||||
|
[WEB_REPO_ROOT=$withval])],
|
||||||
|
[WEB_REPO_ROOT=""])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
WM_CHECK_WEBREPODIR
|
||||||
|
|
||||||
|
|
||||||
dnl Support for Nested Functions by the compiler
|
dnl Support for Nested Functions by the compiler
|
||||||
dnl ============================================
|
dnl ============================================
|
||||||
WM_PROG_CC_NESTEDFUNC
|
WM_PROG_CC_NESTEDFUNC
|
||||||
@@ -296,24 +312,30 @@ AC_ARG_WITH(incs-from, AS_HELP_STRING([--with-incs-from], [pass compiler flags t
|
|||||||
|
|
||||||
dnl Features Configuration
|
dnl Features Configuration
|
||||||
dnl ======================
|
dnl ======================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([animations],
|
AC_ARG_ENABLE([animations],
|
||||||
[AS_HELP_STRING([--disable-animations], [disable permanently animations @<:@default=enabled@:>@])],
|
[AS_HELP_STRING([--disable-animations], [disable permanently animations @<:@default=enabled@:>@])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-animations])])],
|
[AC_MSG_ERROR([bad value $enableval for --enable-animations])])],
|
||||||
[enable_animations="yes"])
|
[enable_animations="yes"])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$enable_animations" = "xno"],
|
AS_IF([test "x$enable_animations" = "xno"],
|
||||||
[unsupported="$unsupported Animations"],
|
[unsupported="$unsupported Animations"],
|
||||||
[AC_DEFINE([USE_ANIMATIONS], [1], [Defined when user did not request to disable animations])
|
[AC_DEFINE([USE_ANIMATIONS], [1], [Defined when user did not request to disable animations])
|
||||||
supported_core="$supported_core Animations"])
|
supported_core="$supported_core Animations"])
|
||||||
|
|
||||||
|
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([mwm-hints],
|
AC_ARG_ENABLE([mwm-hints],
|
||||||
[AS_HELP_STRING([--disable-mwm-hints], [disable support for Motif WM hints @<:@default=enabled@:>@])],
|
[AS_HELP_STRING([--disable-mwm-hints], [disable support for Motif WM hints @<:@default=enabled@:>@])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-mwm-hints])])],
|
[AC_MSG_ERROR([bad value $enableval for --enable-mwm-hints])])],
|
||||||
[enable_mwm_hints="yes"])
|
[enable_mwm_hints="yes"])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$enable_mwm_hints" = "xno"],
|
AS_IF([test "x$enable_mwm_hints" = "xno"],
|
||||||
[unsupported="$unsupported MWMHints"],
|
[unsupported="$unsupported MWMHints"],
|
||||||
[AC_DEFINE([USE_MWM_HINTS], [1], [Defined when used did not request to disable Motif WM hints])
|
[AC_DEFINE([USE_MWM_HINTS], [1], [Defined when used did not request to disable Motif WM hints])
|
||||||
@@ -323,6 +345,7 @@ AM_CONDITIONAL([USE_MWM_HINTS], [test "x$enable_mwm_hints" != "xno"])
|
|||||||
|
|
||||||
dnl Boehm GC
|
dnl Boehm GC
|
||||||
dnl ========
|
dnl ========
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([boehm-gc],
|
AC_ARG_ENABLE([boehm-gc],
|
||||||
[AS_HELP_STRING([--enable-boehm-gc], [use Boehm GC instead of the default libc malloc() [default=no]])],
|
[AS_HELP_STRING([--enable-boehm-gc], [use Boehm GC instead of the default libc malloc() [default=no]])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
@@ -330,6 +353,8 @@ AC_ARG_ENABLE([boehm-gc],
|
|||||||
[no], [with_boehm_gc=no],
|
[no], [with_boehm_gc=no],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-boehm-gc])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-boehm-gc])] )],
|
||||||
[with_boehm_gc=no])
|
[with_boehm_gc=no])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$with_boehm_gc" = "xyes"],
|
AS_IF([test "x$with_boehm_gc" = "xyes"],
|
||||||
AC_SEARCH_LIBS([GC_malloc], [gc],
|
AC_SEARCH_LIBS([GC_malloc], [gc],
|
||||||
[AC_DEFINE(USE_BOEHM_GC, 1, [Define if Boehm GC is to be used])],
|
[AC_DEFINE(USE_BOEHM_GC, 1, [Define if Boehm GC is to be used])],
|
||||||
@@ -338,10 +363,12 @@ AS_IF([test "x$with_boehm_gc" = "xyes"],
|
|||||||
|
|
||||||
dnl LCOV
|
dnl LCOV
|
||||||
dnl ====
|
dnl ====
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([lcov],
|
AC_ARG_ENABLE([lcov],
|
||||||
[AS_HELP_STRING([--enable-lcov[=output-directory]], [enable coverage data generation using LCOV (GCC only) [default=no]])],
|
[AS_HELP_STRING([--enable-lcov[=output-directory]], [enable coverage data generation using LCOV (GCC only) [default=no]])],
|
||||||
[],
|
[],
|
||||||
[enable_lcov=no])
|
[enable_lcov=no])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$enable_lcov" != "xno"],
|
AS_IF([test "x$enable_lcov" != "xno"],
|
||||||
[AX_CFLAGS_GCC_OPTION(-fprofile-arcs -ftest-coverage)
|
[AX_CFLAGS_GCC_OPTION(-fprofile-arcs -ftest-coverage)
|
||||||
@@ -374,13 +401,15 @@ WM_FUNC_OPEN_NOFOLLOW
|
|||||||
|
|
||||||
dnl Check for strlcat/strlcpy
|
dnl Check for strlcat/strlcpy
|
||||||
dnl =========================
|
dnl =========================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_WITH([libbsd],
|
AC_ARG_WITH([libbsd],
|
||||||
[AS_HELP_STRING([--without-libbsd], [do not use libbsd for strlcat and strlcpy [default=check]])],
|
[AS_HELP_STRING([--without-libbsd], [do not use libbsd for strlcat and strlcpy [default=check]])],
|
||||||
[AS_IF([test "x$with_libbsd" != "xno"],
|
[AS_IF([test "x$with_libbsd" != "xno"],
|
||||||
[with_libbsd=bsd]
|
[with_libbsd=bsd],
|
||||||
[with_libbsd=]
|
[with_libbsd=]
|
||||||
)],
|
)],
|
||||||
[with_libbsd=bsd])
|
[with_libbsd=bsd])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
tmp_libs=$LIBS
|
tmp_libs=$LIBS
|
||||||
AC_SEARCH_LIBS([strlcat],[$with_libbsd],
|
AC_SEARCH_LIBS([strlcat],[$with_libbsd],
|
||||||
@@ -455,6 +484,7 @@ dnl that the gettext environment works
|
|||||||
WM_I18N_LANGUAGES
|
WM_I18N_LANGUAGES
|
||||||
WM_I18N_XGETTEXT
|
WM_I18N_XGETTEXT
|
||||||
WM_I18N_MENUTEXTDOMAIN
|
WM_I18N_MENUTEXTDOMAIN
|
||||||
|
WM_LIBRARY_CONSTRUCTORS
|
||||||
|
|
||||||
dnl ===========================================
|
dnl ===========================================
|
||||||
dnl Stuff that uses X
|
dnl Stuff that uses X
|
||||||
@@ -503,24 +533,30 @@ AC_CHECK_LIB([X11], [XConvertCase],
|
|||||||
|
|
||||||
dnl XKB keyboard language status
|
dnl XKB keyboard language status
|
||||||
dnl ============================
|
dnl ============================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([modelock],
|
AC_ARG_ENABLE([modelock],
|
||||||
[AS_HELP_STRING([--enable-modelock], [XKB keyboard language status support])],
|
[AS_HELP_STRING([--enable-modelock], [XKB keyboard language status support])],
|
||||||
[AS_CASE([$enableval],
|
[AS_CASE([$enableval],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value '$enableval' for --enable-modelock])])],
|
[AC_MSG_ERROR([bad value '$enableval' for --enable-modelock])])],
|
||||||
[enable_modelock=no])
|
[enable_modelock=no])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$enable_modelock" = "xyes"],
|
AS_IF([test "x$enable_modelock" = "xyes"],
|
||||||
[AC_DEFINE([XKB_MODELOCK], [1], [whether XKB language MODELOCK should be enabled]) ])
|
[AC_DEFINE([XKB_MODELOCK], [1], [whether XKB language MODELOCK should be enabled]) ])
|
||||||
|
|
||||||
|
|
||||||
dnl XDND Drag-nd-Drop support
|
dnl XDND Drag-nd-Drop support
|
||||||
dnl =========================
|
dnl =========================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([xdnd],
|
AC_ARG_ENABLE([xdnd],
|
||||||
[AS_HELP_STRING([--disable-xdnd], [disable support for Drag-and-Drop on the dock @<:@default=enabled@:>@])],
|
[AS_HELP_STRING([--disable-xdnd], [disable support for Drag-and-Drop on the dock @<:@default=enabled@:>@])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --disable-xdnd]) ]) ],
|
[AC_MSG_ERROR([bad value $enableval for --disable-xdnd]) ]) ],
|
||||||
[enable_xdnd=yes])
|
[enable_xdnd=yes])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$enable_xdnd" = "xyes"],
|
AS_IF([test "x$enable_xdnd" = "xyes"],
|
||||||
[supported_core="$supported_core XDnD"
|
[supported_core="$supported_core XDnD"
|
||||||
AC_DEFINE([USE_DOCK_XDND], [1], [whether Drag-and-Drop on the dock should be enabled])],
|
AC_DEFINE([USE_DOCK_XDND], [1], [whether Drag-and-Drop on the dock should be enabled])],
|
||||||
@@ -530,12 +566,15 @@ AM_CONDITIONAL([USE_DOCK_XDND], [test "x$enable_xdnd" != "xno"])
|
|||||||
|
|
||||||
dnl Support for ICCCM 2.0 Window Manager replacement
|
dnl Support for ICCCM 2.0 Window Manager replacement
|
||||||
dnl ================================================
|
dnl ================================================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([wmreplace],
|
AC_ARG_ENABLE([wmreplace],
|
||||||
[AS_HELP_STRING([--enable-wmreplace], [support for ICCCM window manager replacement])],
|
[AS_HELP_STRING([--enable-wmreplace], [support for ICCCM window manager replacement])],
|
||||||
[AS_CASE([$enableval],
|
[AS_CASE([$enableval],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value '$enableval' for --enable-wmreplace])])],
|
[AC_MSG_ERROR([bad value '$enableval' for --enable-wmreplace])])],
|
||||||
[enable_wmreplace=no])
|
[enable_wmreplace=no])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$enable_wmreplace" = "xyes"],
|
AS_IF([test "x$enable_wmreplace" = "xyes"],
|
||||||
[AC_DEFINE([USE_ICCCM_WMREPLACE], [1],
|
[AC_DEFINE([USE_ICCCM_WMREPLACE], [1],
|
||||||
[define to support ICCCM protocol for window manager replacement])
|
[define to support ICCCM protocol for window manager replacement])
|
||||||
@@ -544,23 +583,28 @@ AS_IF([test "x$enable_wmreplace" = "xyes"],
|
|||||||
|
|
||||||
dnl XShape support
|
dnl XShape support
|
||||||
dnl ==============
|
dnl ==============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([shape],
|
AC_ARG_ENABLE([shape],
|
||||||
[AS_HELP_STRING([--disable-shape], [disable shaped window extension support])],
|
[AS_HELP_STRING([--disable-shape], [disable shaped window extension support])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-shape]) ]) ],
|
[AC_MSG_ERROR([bad value $enableval for --enable-shape]) ]) ],
|
||||||
[enable_shape=auto])
|
[enable_shape=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
WM_XEXT_CHECK_XSHAPE
|
WM_XEXT_CHECK_XSHAPE
|
||||||
|
|
||||||
|
|
||||||
dnl MIT-SHM support
|
dnl MIT-SHM support
|
||||||
dnl ===============
|
dnl ===============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([shm],
|
AC_ARG_ENABLE([shm],
|
||||||
[AS_HELP_STRING([--disable-shm], [disable usage of MIT-SHM extension])],
|
[AS_HELP_STRING([--disable-shm], [disable usage of MIT-SHM extension])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-shm]) ]) ],
|
[AC_MSG_ERROR([bad value $enableval for --enable-shm]) ]) ],
|
||||||
[enable_shm=auto])
|
[enable_shm=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_XEXT_CHECK_XSHM
|
WM_XEXT_CHECK_XSHM
|
||||||
|
|
||||||
|
|
||||||
@@ -572,23 +616,27 @@ WM_EXT_CHECK_XMU
|
|||||||
|
|
||||||
dnl XINERAMA support
|
dnl XINERAMA support
|
||||||
dnl ================
|
dnl ================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([xinerama],
|
AC_ARG_ENABLE([xinerama],
|
||||||
[AS_HELP_STRING([--enable-xinerama], [enable Xinerama extension support])],
|
[AS_HELP_STRING([--enable-xinerama], [enable Xinerama extension support])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-xinerama]) ]) ],
|
[AC_MSG_ERROR([bad value $enableval for --enable-xinerama]) ]) ],
|
||||||
[enable_xinerama=auto])
|
[enable_xinerama=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_XEXT_CHECK_XINERAMA
|
WM_XEXT_CHECK_XINERAMA
|
||||||
|
|
||||||
|
|
||||||
dnl RandR support
|
dnl RandR support
|
||||||
dnl =============
|
dnl =============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([randr],
|
AC_ARG_ENABLE([randr],
|
||||||
[AS_HELP_STRING([--enable-randr], [enable RandR extension support (NOT recommended, buggy)])],
|
[AS_HELP_STRING([--enable-randr], [enable RandR extension support (NOT recommended, buggy)])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-randr]) ]) ],
|
[AC_MSG_ERROR([bad value $enableval for --enable-randr]) ]) ],
|
||||||
[enable_randr=no])
|
[enable_randr=no])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_XEXT_CHECK_XRANDR
|
WM_XEXT_CHECK_XRANDR
|
||||||
|
|
||||||
|
|
||||||
@@ -614,72 +662,38 @@ AC_SUBST(FCLIBS)
|
|||||||
|
|
||||||
dnl Xft2 antialiased font support
|
dnl Xft2 antialiased font support
|
||||||
dnl =============================
|
dnl =============================
|
||||||
|
m4_define([XFT_MIN_VERSION], [2.1.0])
|
||||||
|
PKG_CHECK_MODULES([XFT], [xft >= ]XFT_MIN_VERSION,
|
||||||
|
[], dnl Module found, nothing to do
|
||||||
|
[XFT_CFLAGS=failed])
|
||||||
|
AS_IF([test "x$XFT_CFLAGS" = "xfailed"],
|
||||||
|
[dnl pkg-config did not find it, try the legacy method
|
||||||
|
AC_CHECK_PROG([XFTCONFIG], [xft-config], [xft-config])
|
||||||
|
AS_IF([test -z "$XFTCONFIG"],
|
||||||
|
[AC_MSG_ERROR([libXft2 is not installed, is too old or could not be found -- $XFT_PKG_ERRORS]) ])
|
||||||
|
XFT_LIBS=`$XFTCONFIG --libs`
|
||||||
|
XFT_CFLAGS=`$XFTCONFIG --cflags`
|
||||||
|
WM_CHECK_XFT_VERSION(XFT_MIN_VERSION,
|
||||||
|
[], dnl Version is ok, nothing to do
|
||||||
|
[AC_MSG_ERROR([Version of libXft is too old, consider upgrading to] XFT_MIN_VERSION [or newer]) ])
|
||||||
|
])
|
||||||
|
AC_SUBST(XFT_CFLAGS)
|
||||||
|
AC_SUBST(XFT_LIBS)
|
||||||
|
|
||||||
xft=yes
|
|
||||||
XFTLIBS=""
|
|
||||||
|
|
||||||
if test "x$PKG_CONFIG" != x -a "`$PKG_CONFIG xft; echo $?`" = 0; then
|
|
||||||
XFTCONFIG="$PKG_CONFIG xft"
|
|
||||||
pkgconfig_xft=yes
|
|
||||||
else
|
|
||||||
AC_CHECK_PROG(XFTCONFIG, xft-config, xft-config)
|
|
||||||
fi
|
|
||||||
|
|
||||||
AC_MSG_CHECKING([for the Xft2 library])
|
|
||||||
|
|
||||||
if test "x$XFTCONFIG" != x; then
|
|
||||||
XFTLIBS=`$XFTCONFIG --libs`
|
|
||||||
XFTFLAGS=`$XFTCONFIG --cflags`
|
|
||||||
AC_MSG_RESULT([found])
|
|
||||||
else
|
|
||||||
AC_MSG_RESULT([not found])
|
|
||||||
echo
|
|
||||||
echo "ERROR!!! libXft2 is not installed or could not be found."
|
|
||||||
echo " Xft2 is a requirement for building Window Maker."
|
|
||||||
echo " Please install it (along with fontconfig) before continuing."
|
|
||||||
echo
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
minXFT="2.1.0"
|
|
||||||
goodxft="no"
|
|
||||||
|
|
||||||
dnl
|
|
||||||
dnl The macro below will use $XFTFLAGS (defined above) to find Xft.h
|
|
||||||
dnl
|
|
||||||
WM_CHECK_XFT_VERSION($minXFT, goodxft=yes, goodxft=no)
|
|
||||||
|
|
||||||
if test "$goodxft" = no; then
|
|
||||||
echo
|
|
||||||
echo "ERROR!!! libXft on this system is an old version."
|
|
||||||
echo " Please consider upgrading to at least version ${minXFT}."
|
|
||||||
echo
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
AC_SUBST(XFTFLAGS)
|
|
||||||
AC_SUBST(XFTLIBS)
|
|
||||||
|
|
||||||
dnl PANGO support
|
dnl PANGO support
|
||||||
dnl =============
|
dnl =============
|
||||||
pango=no
|
dnl The libray can be used by WINGs to get better support on UTF-8 for i18n
|
||||||
AC_ARG_ENABLE(pango, AS_HELP_STRING([--enable-pango], [enable Pango text layout support]),
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
pango=$enableval, pango=no)
|
AC_ARG_ENABLE([pango],
|
||||||
|
[AS_HELP_STRING([--disable-pango], [disable Pango text layout support @<:@default=auto@:>@])],
|
||||||
|
[AS_CASE([$enableval],
|
||||||
|
[yes|no], [],
|
||||||
|
[AC_MSG_ERROR([bad value $enableval for --disable-pango])] )],
|
||||||
|
[enable_pango=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
WM_CHECK_LIBPANGO
|
||||||
|
|
||||||
PANGOFLAGS=
|
|
||||||
PANGOLIBS=
|
|
||||||
if test "$pango" = yes; then
|
|
||||||
PANGOLIBS=`$PKG_CONFIG pangoxft --libs`
|
|
||||||
PANGOFLAGS=`$PKG_CONFIG pangoxft --cflags`
|
|
||||||
if test "x$PANGOLIBS" = "x" ; then
|
|
||||||
AC_MSG_RESULT([not found])
|
|
||||||
else
|
|
||||||
AC_DEFINE(USE_PANGO, 1, [Define if Pango is to be used])
|
|
||||||
AC_MSG_RESULT([found])
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
inc_search_path="$inc_search_path $PANGOFLAGS"
|
|
||||||
AC_SUBST(PANGOLIBS)
|
|
||||||
|
|
||||||
dnl ==============================================
|
dnl ==============================================
|
||||||
dnl Graphic Format Libraries
|
dnl Graphic Format Libraries
|
||||||
@@ -687,12 +701,14 @@ dnl ==============================================
|
|||||||
|
|
||||||
dnl XPM Support
|
dnl XPM Support
|
||||||
dnl ===========
|
dnl ===========
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([xpm],
|
AC_ARG_ENABLE([xpm],
|
||||||
[AS_HELP_STRING([--disable-xpm], [disable use of XPM pixmaps through libXpm])],
|
[AS_HELP_STRING([--disable-xpm], [disable use of XPM pixmaps through libXpm])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-xpm])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-xpm])] )],
|
||||||
[enable_xpm=auto])
|
[enable_xpm=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_IMGFMT_CHECK_XPM
|
WM_IMGFMT_CHECK_XPM
|
||||||
|
|
||||||
|
|
||||||
@@ -716,67 +732,79 @@ AS_IF([test "x$LIBEXIF" != "x"],
|
|||||||
|
|
||||||
dnl PNG Support
|
dnl PNG Support
|
||||||
dnl ===========
|
dnl ===========
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([png],
|
AC_ARG_ENABLE([png],
|
||||||
[AS_HELP_STRING([--disable-png], [disable PNG support through libpng])],
|
[AS_HELP_STRING([--disable-png], [disable PNG support through libpng])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-png])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-png])] )],
|
||||||
[enable_png=auto])
|
[enable_png=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_IMGFMT_CHECK_PNG
|
WM_IMGFMT_CHECK_PNG
|
||||||
|
|
||||||
|
|
||||||
dnl JPEG Support
|
dnl JPEG Support
|
||||||
dnl ============
|
dnl ============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([jpeg],
|
AC_ARG_ENABLE([jpeg],
|
||||||
[AS_HELP_STRING([--disable-jpeg], [disable JPEG support through libjpeg])],
|
[AS_HELP_STRING([--disable-jpeg], [disable JPEG support through libjpeg])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-jpeg])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-jpeg])] )],
|
||||||
[enable_jpeg=auto])
|
[enable_jpeg=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_IMGFMT_CHECK_JPEG
|
WM_IMGFMT_CHECK_JPEG
|
||||||
|
|
||||||
|
|
||||||
dnl GIF Support
|
dnl GIF Support
|
||||||
dnl ============
|
dnl ============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE(gif,
|
AC_ARG_ENABLE(gif,
|
||||||
[AS_HELP_STRING([--disable-gif], [disable GIF support through libgif or libungif])],
|
[AS_HELP_STRING([--disable-gif], [disable GIF support through libgif or libungif])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-gif])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-gif])] )],
|
||||||
[enable_gif=auto])
|
[enable_gif=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_IMGFMT_CHECK_GIF
|
WM_IMGFMT_CHECK_GIF
|
||||||
|
|
||||||
|
|
||||||
dnl TIFF Support
|
dnl TIFF Support
|
||||||
dnl ============
|
dnl ============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([tiff],
|
AC_ARG_ENABLE([tiff],
|
||||||
[AS_HELP_STRING([--disable-tiff], [disable use of TIFF images through libtiff])],
|
[AS_HELP_STRING([--disable-tiff], [disable use of TIFF images through libtiff])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-tiff])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-tiff])] )],
|
||||||
[enable_tiff=auto])
|
[enable_tiff=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_IMGFMT_CHECK_TIFF
|
WM_IMGFMT_CHECK_TIFF
|
||||||
|
|
||||||
|
|
||||||
dnl WEBP Support
|
dnl WEBP Support
|
||||||
dnl ============
|
dnl ============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([webp],
|
AC_ARG_ENABLE([webp],
|
||||||
[AS_HELP_STRING([--disable-webp], [disable WEBP support through libwebp])],
|
[AS_HELP_STRING([--disable-webp], [disable WEBP support through libwebp])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-webp])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-webp])] )],
|
||||||
[enable_webp=auto])
|
[enable_webp=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_IMGFMT_CHECK_WEBP
|
WM_IMGFMT_CHECK_WEBP
|
||||||
|
|
||||||
|
|
||||||
dnl MagicK Support
|
dnl MagicK Support
|
||||||
dnl ==============
|
dnl ==============
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([magick],
|
AC_ARG_ENABLE([magick],
|
||||||
[AS_HELP_STRING([--disable-magick], [disable MAGICK support through libMagickWand])],
|
[AS_HELP_STRING([--disable-magick], [disable MAGICK support through libMagickWand])],
|
||||||
[AS_CASE(["$enableval"],
|
[AS_CASE(["$enableval"],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value $enableval for --enable-magick])] )],
|
[AC_MSG_ERROR([bad value $enableval for --enable-magick])] )],
|
||||||
[enable_magick=auto])
|
[enable_magick=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
WM_IMGFMT_CHECK_MAGICK
|
WM_IMGFMT_CHECK_MAGICK
|
||||||
|
|
||||||
|
|
||||||
@@ -818,6 +846,7 @@ AC_CHECK_HEADERS(stdlib.h)
|
|||||||
|
|
||||||
dnl Support for PIXMAPDIR option
|
dnl Support for PIXMAPDIR option
|
||||||
dnl ============================
|
dnl ============================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_WITH([pixmapdir],
|
AC_ARG_WITH([pixmapdir],
|
||||||
[AS_HELP_STRING([--with-pixmapdir=PATH], [specify where pixmaps are located [DATADIR/pixmaps]])],
|
[AS_HELP_STRING([--with-pixmapdir=PATH], [specify where pixmaps are located [DATADIR/pixmaps]])],
|
||||||
[AS_CASE([$withval],
|
[AS_CASE([$withval],
|
||||||
@@ -826,6 +855,7 @@ AC_ARG_WITH([pixmapdir],
|
|||||||
[\$*], [], dnl Assumes it starts with a reference to $prefix or a similar variable, ok
|
[\$*], [], dnl Assumes it starts with a reference to $prefix or a similar variable, ok
|
||||||
[AC_MSG_ERROR([bad path '$withval' for pixmapdir, expecting an absolute path])])],
|
[AC_MSG_ERROR([bad path '$withval' for pixmapdir, expecting an absolute path])])],
|
||||||
[with_pixmapdir=""])
|
[with_pixmapdir=""])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$with_pixmapdir" != "x"],
|
AS_IF([test "x$with_pixmapdir" != "x"],
|
||||||
[pixmapdir="$with_pixmapdir"],
|
[pixmapdir="$with_pixmapdir"],
|
||||||
@@ -835,6 +865,7 @@ AC_SUBST([pixmapdir])dnl
|
|||||||
|
|
||||||
dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
|
dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
|
||||||
dnl ==============================================
|
dnl ==============================================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_WITH([gnustepdir],
|
AC_ARG_WITH([gnustepdir],
|
||||||
[AS_HELP_STRING([--with-gnustepdir=PATH], [specify the directory for GNUstep applications])],
|
[AS_HELP_STRING([--with-gnustepdir=PATH], [specify the directory for GNUstep applications])],
|
||||||
[AS_CASE([$withval],
|
[AS_CASE([$withval],
|
||||||
@@ -844,6 +875,7 @@ AC_ARG_WITH([gnustepdir],
|
|||||||
[AC_MSG_ERROR([bad path '$withval' for gnustepdir, expecting an absolute path])])],
|
[AC_MSG_ERROR([bad path '$withval' for gnustepdir, expecting an absolute path])])],
|
||||||
[dnl If no command-line option was given, we use $GNUSTEP_LOCAL_ROOT if it was set
|
[dnl If no command-line option was given, we use $GNUSTEP_LOCAL_ROOT if it was set
|
||||||
with_gnustepdir="$GNUSTEP_LOCAL_ROOT"])
|
with_gnustepdir="$GNUSTEP_LOCAL_ROOT"])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$with_gnustepdir" = "x"],
|
AS_IF([test "x$with_gnustepdir" = "x"],
|
||||||
[dnl No path specified, use default
|
[dnl No path specified, use default
|
||||||
@@ -857,30 +889,43 @@ AS_IF([test "x$with_gnustepdir" = "x"],
|
|||||||
AC_SUBST([wprefs_datadir])dnl
|
AC_SUBST([wprefs_datadir])dnl
|
||||||
AC_SUBST([wprefs_bindir])dnl
|
AC_SUBST([wprefs_bindir])dnl
|
||||||
|
|
||||||
dnl Support for DEFSDATADIR option
|
|
||||||
dnl ============================
|
dnl Support for PKGCONFDIR option
|
||||||
AC_ARG_WITH([defsdatadir],
|
dnl =============================
|
||||||
[AS_HELP_STRING([--with-defsdatadir=PATH], [specify where global defaults are located [SYSCONFDIR/WindowMaker]])],
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
|
AC_ARG_WITH([pkgconfdir],
|
||||||
|
[AS_HELP_STRING([--with-pkgconfdir=PATH], [specify where global defaults are located [SYSCONFDIR/WindowMaker]])],
|
||||||
[AS_CASE([$withval],
|
[AS_CASE([$withval],
|
||||||
[yes|no], [AC_MSG_ERROR([bad value '$withval' for --with-defsdatadir, expected a path]) ],
|
[yes|no], [AC_MSG_ERROR([bad value '$withval' for --with-pkgconfdir, expected a path]) ],
|
||||||
[/*], [], dnl Absolute path, ok
|
[/*], [], dnl Absolute path, ok
|
||||||
[\$*], [], dnl Assumes it starts with a reference to $prefix or a similar variable, ok
|
[\$*], [], dnl Assumes it starts with a reference to $prefix or a similar variable, ok
|
||||||
[AC_MSG_ERROR([bad path '$withval' for defsdatadir, expecting an absolute path])])],
|
[AC_MSG_ERROR([bad path '$withval' for pkgconfdir, expecting an absolute path])])],
|
||||||
[with_defsdatadir=""])
|
[with_pkgconfdir=""])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
|
dnl Provide a message when trying to use "--with-defsdatadir" so that user can update its
|
||||||
|
dnl arguments. Otherwise only a warning is issued, which is likely to be missed, which will
|
||||||
|
dnl lead to perceived misbehaviour much later (and hard to debug).
|
||||||
|
WM_DENY_ARG_WITH([defsdatadir],
|
||||||
|
[AC_MSG_ERROR([option "--with-defsdatadir" have been replaced by "--with-pkgconfdir"])])
|
||||||
|
|
||||||
|
AS_IF([test "x$with_pkgconfdir" != "x"],
|
||||||
|
[pkgconfdir="$with_pkgconfdir"],
|
||||||
|
[pkgconfdir='${sysconfdir}/${PACKAGE_TARNAME}'])
|
||||||
|
AC_SUBST([pkgconfdir])dnl
|
||||||
|
|
||||||
AS_IF([test "x$with_defsdatadir" != "x"],
|
|
||||||
[defsdatadir="$with_defsdatadir"],
|
|
||||||
[defsdatadir='${sysconfdir}/WindowMaker'])
|
|
||||||
AC_SUBST([defsdatadir])dnl
|
|
||||||
|
|
||||||
dnl Enable User Defined Menu thing
|
dnl Enable User Defined Menu thing
|
||||||
dnl ==============================
|
dnl ==============================
|
||||||
|
m4_divert_push([INIT_PREPARE])dnl
|
||||||
AC_ARG_ENABLE([usermenu],
|
AC_ARG_ENABLE([usermenu],
|
||||||
[AS_HELP_STRING([--enable-usermenu], [user defined menus for applications])],
|
[AS_HELP_STRING([--enable-usermenu], [user defined menus for applications])],
|
||||||
[AS_CASE([$enableval],
|
[AS_CASE([$enableval],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value '$enableval' for --enable-usermenu])])],
|
[AC_MSG_ERROR([bad value '$enableval' for --enable-usermenu])])],
|
||||||
[enable_usermenu=no])
|
[enable_usermenu=no])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
|
|
||||||
AS_IF([test "x$enable_usermenu" = "xyes"],
|
AS_IF([test "x$enable_usermenu" = "xyes"],
|
||||||
[AC_DEFINE([USER_MENU], [1],
|
[AC_DEFINE([USER_MENU], [1],
|
||||||
[define if you want user defined menus for applications])])
|
[define if you want user defined menus for applications])])
|
||||||
@@ -906,7 +951,7 @@ AC_CONFIG_FILES(
|
|||||||
Makefile
|
Makefile
|
||||||
|
|
||||||
dnl WRaster Library
|
dnl WRaster Library
|
||||||
wrlib/Makefile
|
wrlib/Makefile wrlib/po/Makefile
|
||||||
wrlib/tests/Makefile
|
wrlib/tests/Makefile
|
||||||
|
|
||||||
dnl WINGs toolkit
|
dnl WINGs toolkit
|
||||||
@@ -951,9 +996,10 @@ echo "Supported core features: :$supported_core"
|
|||||||
echo "Supported X extensions: :$supported_xext"
|
echo "Supported X extensions: :$supported_xext"
|
||||||
echo "Supported graphic format libraries :$supported_gfx"
|
echo "Supported graphic format libraries :$supported_gfx"
|
||||||
echo "Unsupported features :$unsupported"
|
echo "Unsupported features :$unsupported"
|
||||||
echo "Antialiased text support in WINGs : $xft"
|
|
||||||
echo "Pango text layout support in WINGs : $pango"
|
echo "Pango text layout support in WINGs : $pango"
|
||||||
echo "Translated languages to support :$supported_locales"
|
echo "Translated languages to support :$supported_locales"
|
||||||
|
AS_IF([test "x$WEB_REPO_ROOT" != "x"],
|
||||||
|
[AS_ECHO(["Git repository for WMaker's Website : $WEB_REPO_ROOT"]) ])
|
||||||
AS_IF([test "x$debug" = "xyes"],
|
AS_IF([test "x$debug" = "xyes"],
|
||||||
[AS_ECHO(["Debug enabled: CFLAGS = $CFLAGS"]) ])
|
[AS_ECHO(["Debug enabled: CFLAGS = $CFLAGS"]) ])
|
||||||
echo
|
echo
|
||||||
@@ -978,6 +1024,15 @@ AS_IF([test "x$enable_jpeg" = xno], [dnl
|
|||||||
AS_ECHO(["WARNING WARNING WARNING WARNING WARNING WARNING WARNING"])dnl
|
AS_ECHO(["WARNING WARNING WARNING WARNING WARNING WARNING WARNING"])dnl
|
||||||
])
|
])
|
||||||
|
|
||||||
|
AS_IF([test "x$LINGUAS" != "x"],
|
||||||
|
[AS_IF([test "X$wm_cv_library_constructors" = "Xlegacy"],
|
||||||
|
[AC_MSG_WARN([I18N is enabled, but library constructor attribute is not supported])
|
||||||
|
AS_ECHO([" If you have translation problems in lib WRaster, yet you know that the translation"])
|
||||||
|
AS_ECHO([" file (po) is valid, this could be a cause."])
|
||||||
|
AS_ECHO([])dnl
|
||||||
|
])dnl
|
||||||
|
])
|
||||||
|
|
||||||
|
|
||||||
dnl This is for Emacs. I'm lazy, I know... (nicolai)
|
dnl This is for Emacs. I'm lazy, I know... (nicolai)
|
||||||
dnl ================================================
|
dnl ================================================
|
||||||
|
|||||||
+47
-1
@@ -27,12 +27,17 @@ MOSTLYCLEANFILES = wmaker.1 wmsetbg.1
|
|||||||
|
|
||||||
EXTRA_DIST = wmaker.in wmsetbg.in
|
EXTRA_DIST = wmaker.in wmsetbg.in
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# Generation of man pages that need processing
|
||||||
|
################################################################################
|
||||||
|
|
||||||
wmaker.1: wmaker.in Makefile $(top_builddir)/config.h
|
wmaker.1: wmaker.in Makefile $(top_builddir)/config.h
|
||||||
$(AM_V_GEN)$(top_srcdir)/script/replace-ac-keywords.sh \
|
$(AM_V_GEN)$(top_srcdir)/script/replace-ac-keywords.sh \
|
||||||
--header "$(top_builddir)/config.h" --filter "HAVE_INOTIFY" \
|
--header "$(top_builddir)/config.h" --filter "HAVE_INOTIFY" \
|
||||||
--filter "USE_ICCCM_WMREPLACE" \
|
--filter "USE_ICCCM_WMREPLACE" \
|
||||||
-D"pkgdatadir=$(pkgdatadir)" --replace "pkgdatadir" \
|
-D"pkgdatadir=$(pkgdatadir)" --replace "pkgdatadir" \
|
||||||
-D"defsdatadir=$(defsdatadir)" --replace "defsdatadir" \
|
-D"pkgconfdir=$(pkgconfdir)" --replace "pkgconfdir" \
|
||||||
-o "wmaker.1" "$(srcdir)/wmaker.in"
|
-o "wmaker.1" "$(srcdir)/wmaker.in"
|
||||||
|
|
||||||
wmsetbg.1: wmsetbg.in Makefile $(top_builddir)/config.h
|
wmsetbg.1: wmsetbg.in Makefile $(top_builddir)/config.h
|
||||||
@@ -40,6 +45,11 @@ wmsetbg.1: wmsetbg.in Makefile $(top_builddir)/config.h
|
|||||||
--header "$(top_builddir)/config.h" --filter "USE_XINERAMA" \
|
--header "$(top_builddir)/config.h" --filter "USE_XINERAMA" \
|
||||||
-o "wmsetbg.1" "$(srcdir)/wmsetbg.in"
|
-o "wmsetbg.1" "$(srcdir)/wmsetbg.in"
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# Section for checking the man pages against the program's --help text
|
||||||
|
################################################################################
|
||||||
|
|
||||||
# Create a 'silent rule' for our make check the same way automake does
|
# Create a 'silent rule' for our make check the same way automake does
|
||||||
AM_V_CHKOPTS = $(am__v_CHKOPTS_$(V))
|
AM_V_CHKOPTS = $(am__v_CHKOPTS_$(V))
|
||||||
am__v_CHKOPTS_ = $(am__v_CHKOPTS_$(AM_DEFAULT_VERBOSITY))
|
am__v_CHKOPTS_ = $(am__v_CHKOPTS_$(AM_DEFAULT_VERBOSITY))
|
||||||
@@ -111,3 +121,39 @@ wxpaste-args:
|
|||||||
|
|
||||||
.PHONY: wmaker-args WPrefs-args wmagnify-args geticonset-args getstyle-args seticons-args setstyle-args \
|
.PHONY: wmaker-args WPrefs-args wmagnify-args geticonset-args getstyle-args seticons-args setstyle-args \
|
||||||
wdread-args wdwrite-args wmgenmenu-args wmiv-args wmmenugen-args wmsetbg-args wxcopy-args wxpaste-args
|
wdread-args wdwrite-args wmgenmenu-args wmiv-args wmmenugen-args wmsetbg-args wxcopy-args wxpaste-args
|
||||||
|
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# Section related to generating HTML version of man pages for the website
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
if WITH_WEB_REPO
|
||||||
|
# We convert all man pages except those that are a link to other man page (.so command)
|
||||||
|
website: $(MANS) website.menu
|
||||||
|
@local_pages=`echo "$^" | sed -e 's/ [^ ]*\.menu$$// ; s,[^ /]*/,,g' `; \
|
||||||
|
generated_pages=""; \
|
||||||
|
for man in $^; do \
|
||||||
|
[ "$$man" = "website.menu" ] && continue; \
|
||||||
|
grep -i '^\.so[ \t]' "$$man" > /dev/null && continue; \
|
||||||
|
echo " MAN2HTML $$man"; \
|
||||||
|
$(top_srcdir)/script/generate-html-from-man.sh --groff $(GROFF) \
|
||||||
|
--output $(WEB_REPO_ROOT)/docs/manpages/`echo "$$man" | sed -e 's,[^ /]*/,,g ; s/\.[^.]*$$//' `.html \
|
||||||
|
--local-pages "$$local_pages" --external-url 'http://linux.die.net/man/%s/%l' \
|
||||||
|
--with-menu "website.menu" --package '$(PACKAGE_STRING)' \
|
||||||
|
$$man || exit $$?; \
|
||||||
|
generated_pages="$$generated_pages $$man"; \
|
||||||
|
done; \
|
||||||
|
echo " UPDATE index.md"; \
|
||||||
|
$(top_srcdir)/script/replace-generated-content.sh --man-pages "$$generated_pages" \
|
||||||
|
--template '<tr><td class="name"><a href="\1">\2</a></td><td class="section">\3</td><td>\4</td></tr>' \
|
||||||
|
--marker LIST_MANPAGES_COMMANDS $(WEB_REPO_ROOT)/docs/manpages/index.md
|
||||||
|
|
||||||
|
MOSTLYCLEANFILES += website.menu
|
||||||
|
|
||||||
|
# This menu is the icon bar to navigate on the website, which we want to keep on all man pages
|
||||||
|
# We extract it from the Template defined for all pages of the site
|
||||||
|
website.menu: $(WEB_REPO_ROOT)/_layouts/default.html
|
||||||
|
$(AM_V_GEN)sed -n -e '/<aside>/,/<\/aside>/ { s/{{ site.baseurl }}// ; s/^ // ; p }' $< > $@
|
||||||
|
endif
|
||||||
|
|
||||||
|
.PHONY: website
|
||||||
|
|||||||
Vendored
+12
-4
@@ -224,7 +224,7 @@ Get the @emph{GNU} version from @uref{http://www.gnu.org/software/gettext/}
|
|||||||
|
|
||||||
This library can be used by the @emph{WINGs} toolkit to improve support for @emph{UTF-8} and for
|
This library can be used by the @emph{WINGs} toolkit to improve support for @emph{UTF-8} and for
|
||||||
languages written in right-to-left direction, in some widgets.
|
languages written in right-to-left direction, in some widgets.
|
||||||
You have to explicitly ask for its support through (@pxref{Configure Options}).
|
If detected, it will be automatically used; you may request explicit support/ignore through (@pxref{Configure Options}).
|
||||||
You can get it from @uref{http://www.pango.org/Download}
|
You can get it from @uref{http://www.pango.org/Download}
|
||||||
|
|
||||||
@item @emph{libbsd}
|
@item @emph{libbsd}
|
||||||
@@ -449,7 +449,7 @@ Specific to @sc{Window Maker}, this option defines an additional path where @emp
|
|||||||
searched. Nothing will be installed there; the default path taken is @file{@emph{DATADIR}/pixmaps},
|
searched. Nothing will be installed there; the default path taken is @file{@emph{DATADIR}/pixmaps},
|
||||||
where @var{DATADIR} is the path defined from @option{--datadir}.
|
where @var{DATADIR} is the path defined from @option{--datadir}.
|
||||||
|
|
||||||
@item --with-defsdatadir=@i{DIR}
|
@item --with-pkgconfdir=@i{DIR}
|
||||||
Specific to @sc{Window Maker}, defines the directory where system configuration
|
Specific to @sc{Window Maker}, defines the directory where system configuration
|
||||||
files, e.g., @file{WindowMaker}, @file{WMRootMenu}, etc., are installed. The
|
files, e.g., @file{WindowMaker}, @file{WMRootMenu}, etc., are installed. The
|
||||||
default value is @file{@emph{SYSCONFDIR}/WindowMaker}, where @var{SYSCONFDIR} is
|
default value is @file{@emph{SYSCONFDIR}/WindowMaker}, where @var{SYSCONFDIR} is
|
||||||
@@ -484,8 +484,8 @@ even if your system provides it.
|
|||||||
@item --disable-magick
|
@item --disable-magick
|
||||||
Disable @emph{ImageMagick's MagickWand} support in @emph{WRaster}, used to support for image formats.
|
Disable @emph{ImageMagick's MagickWand} support in @emph{WRaster}, used to support for image formats.
|
||||||
|
|
||||||
@item --enable-pango
|
@item --disable-pango
|
||||||
Disabled by default, enable @emph{Pango} text layout support in @emph{WINGs}.
|
Disable @emph{Pango} text layout support in @emph{WINGs}.
|
||||||
|
|
||||||
@item --disable-png
|
@item --disable-png
|
||||||
Disable PNG support in @emph{WRaster}; when enabled use @file{libpng}.
|
Disable PNG support in @emph{WRaster}; when enabled use @file{libpng}.
|
||||||
@@ -639,6 +639,14 @@ appropriate requirements and works with this.
|
|||||||
Despite all this, if you think there's a use for it and feel in the mood to help, do not hesitate to
|
Despite all this, if you think there's a use for it and feel in the mood to help, do not hesitate to
|
||||||
discuss on the mailing list @value{emailsupport} to get it working.
|
discuss on the mailing list @value{emailsupport} to get it working.
|
||||||
|
|
||||||
|
@item --with-web-repo=@i{PATH}
|
||||||
|
Enable generation of HTML documentation to be uploaded to @sc{Window Maker}'s website.
|
||||||
|
The @file{@i{PATH}} is the directory where you have cloned the homepage's repository.
|
||||||
|
|
||||||
|
When enabled, the command @command{make website} generates a few HTML pages
|
||||||
|
and copy them into the specified directory, then you can commit them to publish on the web site.
|
||||||
|
You should not do that, it is handled by the development team.
|
||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Vendored
+4
-3
@@ -419,23 +419,24 @@ submit your contribution to the project:
|
|||||||
this is done with @command{git}.
|
this is done with @command{git}.
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
In @sc{Window Maker}, you have actually 4 @code{po} files to take care of:
|
In @sc{Window Maker}, you have actually 5 @code{po} files to take care of:
|
||||||
|
|
||||||
@itemize @minus
|
@itemize @minus
|
||||||
@item @file{po/@emph{<lang>}.po}: for @sc{Window Maker} itself
|
@item @file{po/@emph{<lang>}.po}: for @sc{Window Maker} itself
|
||||||
@item @file{WPrefs.app/po/@emph{<lang>}.po}: for the Preference Editor program
|
@item @file{WPrefs.app/po/@emph{<lang>}.po}: for the Preference Editor program
|
||||||
@item @file{WINGs/po/@emph{<lang>}.po}: for the graphic toolkit library
|
@item @file{WINGs/po/@emph{<lang>}.po}: for the graphic toolkit library
|
||||||
|
@item @file{wrlib/po/@emph{<lang>}.po}: for the image processing library
|
||||||
@item @file{util/po/@emph{<lang>}.po}: for the command-line tools of @sc{Window Maker}
|
@item @file{util/po/@emph{<lang>}.po}: for the command-line tools of @sc{Window Maker}
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
As stated previously, there is a @command{make} target that can help you to automatically generate
|
As stated previously, there is a @command{make} target that can help you to automatically generate
|
||||||
the POT and update the PO for these 4 cases:
|
the POT and update the PO for these 5 cases:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
make update-lang PO=<lang>
|
make update-lang PO=<lang>
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
Once run, it will have updated as needed the 4 @code{po} files against the latest source code.
|
Once run, it will have updated as needed the 5 @code{po} files against the latest source code.
|
||||||
You may wish to use the command @command{git gui} to view the changes;
|
You may wish to use the command @command{git gui} to view the changes;
|
||||||
you can now edit the files to complete the translation, correct them, remove deprecated stuff, ...
|
you can now edit the files to complete the translation, correct them, remove deprecated stuff, ...
|
||||||
Please note that the encoding should be set to @emph{UTF-8} as this is now the standard.
|
Please note that the encoding should be set to @emph{UTF-8} as this is now the standard.
|
||||||
|
|||||||
+14
-14
@@ -1,36 +1,36 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH geticonset 1 "Leden 1999"
|
.TH geticonset 1 "Leden 1999"
|
||||||
.SH JMÉNO
|
.SH JMÉNO
|
||||||
geticonset \- extrahuje aktuální sadu ikon Window Makera
|
geticonset \- extrahuje aktuální sadu ikon Window Makera
|
||||||
.SH SYNTAXE
|
.SH SYNTAXE
|
||||||
.B geticonset
|
.B geticonset
|
||||||
.I [volby] [soubor]
|
.I [volby] [soubor]
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B geticonset
|
.B geticonset
|
||||||
načíta doménu WMWindowAttributes a zapíše sadu nalezených ikon
|
načíta doménu WMWindowAttributes a zapíše sadu nalezených ikon
|
||||||
buď na standardtní výstup nebo do
|
buď na standardtní výstup nebo do
|
||||||
.I souboru.
|
.I souboru.
|
||||||
.SH VOLBY
|
.SH VOLBY
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše nápovědu
|
vypíše nápovědu
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verze
|
vypíše číslo verze
|
||||||
.SH PROMĚNNÉ PROSTŘEDÍ
|
.SH PROMĚNNÉ PROSTŘEDÍ
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
specifikuje cestu k adresáři Defaults. Řetězec "Defaults/" je přidán k této
|
specifikuje cestu k adresáři Defaults. Řetězec "Defaults/" je přidán k této
|
||||||
proměnné, čímž se určí umístění databází. Jakmile proměnná není nastavená,
|
proměnné, čímž se určí umístění databází. Jakmile proměnná není nastavená,
|
||||||
tak její implicitní hodnota je "~/GNUstep"
|
tak její implicitní hodnota je "~/GNUstep"
|
||||||
.SH SOUBORY
|
.SH SOUBORY
|
||||||
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
||||||
Toto je soubor, který se zapíše.
|
Toto je soubor, který se zapíše.
|
||||||
.SH PODÍVEJTE SE TAKÉ
|
.SH PODÍVEJTE SE TAKÉ
|
||||||
.BR seticons (1),
|
.BR seticons (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
.PP
|
.PP
|
||||||
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
||||||
|
|||||||
+16
-16
@@ -1,38 +1,38 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH seticons 1 "Březen 1998"
|
.TH seticons 1 "Březen 1998"
|
||||||
.SH JMÉNO
|
.SH JMÉNO
|
||||||
seticons \- nastaví ikony pro Window Maker
|
seticons \- nastaví ikony pro Window Maker
|
||||||
.SH SYNTAXe
|
.SH SYNTAXe
|
||||||
.B seticons
|
.B seticons
|
||||||
.I soubor
|
.I soubor
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B seticons
|
.B seticons
|
||||||
načíta
|
načíta
|
||||||
.I soubor
|
.I soubor
|
||||||
a zapíše jeho obsah do domény WMWindowAttributes, čímž se nastaví ikony,
|
a zapíše jeho obsah do domény WMWindowAttributes, čímž se nastaví ikony,
|
||||||
které používá Window Maker pro dané třídy (například XTerm, "xterm.XTerm",
|
které používá Window Maker pro dané třídy (například XTerm, "xterm.XTerm",
|
||||||
"pine.XTerm", atd.)
|
"pine.XTerm", atd.)
|
||||||
.SH VOLBY
|
.SH VOLBY
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše nápovědu
|
vypíše nápovědu
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verze
|
vypíše číslo verze
|
||||||
.SH PROMĚNNÉ PROSTŘEDÍ
|
.SH PROMĚNNÉ PROSTŘEDÍ
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
specifikuje cestu k adresáři Defaults. Řetězec "Defaults/" je přidán k této
|
specifikuje cestu k adresáři Defaults. Řetězec "Defaults/" je přidán k této
|
||||||
proměnné, čímž se určí umístění databází. Jakmile proměnná není nastavená,
|
proměnné, čímž se určí umístění databází. Jakmile proměnná není nastavená,
|
||||||
tak její implicitní hodnota je "~/GNUstep"
|
tak její implicitní hodnota je "~/GNUstep"
|
||||||
.SH SOUBORY
|
.SH SOUBORY
|
||||||
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
||||||
Toto je soubor, který se zapíše.
|
Toto je soubor, který se zapíše.
|
||||||
.SH PODÍVEJTE SE TAKÉ
|
.SH PODÍVEJTE SE TAKÉ
|
||||||
.BR geticonset (1),
|
.BR geticonset (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
.PP
|
.PP
|
||||||
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
||||||
|
|||||||
+16
-16
@@ -1,39 +1,39 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wdwrite 1 "Leden 1999"
|
.TH wdwrite 1 "Leden 1999"
|
||||||
.SH JMÉNO
|
.SH JMÉNO
|
||||||
wdwrite \- zapíše klíče a hodnoty do databáze standardních nastavení
|
wdwrite \- zapíše klíče a hodnoty do databáze standardních nastavení
|
||||||
.SH SYNTAXE
|
.SH SYNTAXE
|
||||||
.B wdwrite
|
.B wdwrite
|
||||||
.I doména
|
.I doména
|
||||||
.I volba
|
.I volba
|
||||||
.I hodnota
|
.I hodnota
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B wdwrite
|
.B wdwrite
|
||||||
zapíše
|
zapíše
|
||||||
.I volbu
|
.I volbu
|
||||||
a
|
a
|
||||||
.I hodnotu
|
.I hodnotu
|
||||||
do dané
|
do dané
|
||||||
.I domény.
|
.I domény.
|
||||||
.SH VOLBY
|
.SH VOLBY
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše nápovědu
|
vypíše nápovědu
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verze
|
vypíše číslo verze
|
||||||
.SH PROMĚNNÉ PROSTŘEDÍ
|
.SH PROMĚNNÉ PROSTŘEDÍ
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
specifikuje cestu k adresáři Defaults. Řetězec "Defaults/" je přidán k této
|
specifikuje cestu k adresáři Defaults. Řetězec "Defaults/" je přidán k této
|
||||||
proměnné, čímž se určí umístění databází. Jakmile proměnná není nastavená,
|
proměnné, čímž se určí umístění databází. Jakmile proměnná není nastavená,
|
||||||
tak její implicitní hodnota je "~/GNUstep"
|
tak její implicitní hodnota je "~/GNUstep"
|
||||||
.SH SOUBORY
|
.SH SOUBORY
|
||||||
Domény se nacházejí v WMAKER_USER_ROOT/Defaults/
|
Domény se nacházejí v WMAKER_USER_ROOT/Defaults/
|
||||||
.SH PODÍVEJTE SE TAKÉ
|
.SH PODÍVEJTE SE TAKÉ
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
.PP
|
.PP
|
||||||
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>
|
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>
|
||||||
|
|||||||
+64
-64
@@ -1,133 +1,133 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH Window\ Maker 1 "Srpen 1998"
|
.TH "Window Maker" 1 "Srpen 1998"
|
||||||
.SH JMÉNO
|
.SH JMÉNO
|
||||||
wmaker \- okenní manažer pro X11 se vzhledem NEXTSTEPu
|
wmaker \- okenní manažer pro X11 se vzhledem NEXTSTEPu
|
||||||
.SH SYNTAXE
|
.SH SYNTAXE
|
||||||
.B wmaker
|
.B wmaker
|
||||||
.I "[-volby]"
|
.I "[-volby]"
|
||||||
.SH "POPIS"
|
.SH "POPIS"
|
||||||
Window Maker je okenní manažer pro X11 se vzhledem NEXTSTEPu. Snaží se
|
Window Maker je okenní manažer pro X11 se vzhledem NEXTSTEPu. Snaží se
|
||||||
napodobit vzhled NeXTu jak jen to je možné, ale v případě potřeby tento
|
napodobit vzhled NeXTu jak jen to je možné, ale v případě potřeby tento
|
||||||
trend nedodržuje.
|
trend nedodržuje.
|
||||||
.SH "VOLBY"
|
.SH "VOLBY"
|
||||||
.TP
|
.TP
|
||||||
.B \-\-no\-cpp
|
.B \-\-no\-cpp
|
||||||
zakázat preprocessing konfiguračních souborů
|
zakázat preprocessing konfiguračních souborů
|
||||||
.TP
|
.TP
|
||||||
.B \-\-no\-dock
|
.B \-\-no\-dock
|
||||||
neotvírat Dok aplikací
|
neotvírat Dok aplikací
|
||||||
.TP
|
.TP
|
||||||
.B \-\-no\-clip
|
.B \-\-no\-clip
|
||||||
neotvírat Sponku pracovních ploch
|
neotvírat Sponku pracovních ploch
|
||||||
.TP
|
.TP
|
||||||
.B \-display host:display.screen
|
.B \-display host:display.screen
|
||||||
použít danou obrazovku.
|
použít danou obrazovku.
|
||||||
Na strojích s více obrazovkami bude Window Maker automaticky spravovat
|
Na strojích s více obrazovkami bude Window Maker automaticky spravovat
|
||||||
všechny obrazovky. Pokud chcete, aby Window Maker spravoval jen specifickou
|
všechny obrazovky. Pokud chcete, aby Window Maker spravoval jen specifickou
|
||||||
obrazovku, musíte zadat číslo obrazovky pomocí argumentu příkazové řádky
|
obrazovku, musíte zadat číslo obrazovky pomocí argumentu příkazové řádky
|
||||||
.B \-display.
|
.B \-display.
|
||||||
Například, pokud chcete, aby Window Maker spravoval jen obrazovku 1, spusťte ho
|
Například, pokud chcete, aby Window Maker spravoval jen obrazovku 1, spusťte ho
|
||||||
takto:
|
takto:
|
||||||
.B wmaker -display :0.1
|
.B wmaker -display :0.1
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše verzi a ukončí se
|
vypíše verzi a ukončí se
|
||||||
.TP
|
.TP
|
||||||
.B \-\-visual\-id
|
.B \-\-visual\-id
|
||||||
určí čísla obrazového režimu. Spusťte
|
určí čísla obrazového režimu. Spusťte
|
||||||
.BR xdpyinfo (1)
|
.BR xdpyinfo (1)
|
||||||
pro seznam obrazových režimů dostupných na vašem displeji.
|
pro seznam obrazových režimů dostupných na vašem displeji.
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše krátký pomocný text
|
vypíše krátký pomocný text
|
||||||
.PP
|
.PP
|
||||||
.SH SOUBORY
|
.SH SOUBORY
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WindowMaker
|
.B ~/GNUstep/Defaults/WindowMaker
|
||||||
všeobecné nastavení Window Makera.
|
všeobecné nastavení Window Makera.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WMState
|
.B ~/GNUstep/Defaults/WMState
|
||||||
informace o Doku a Sponce. Neditujte za běhu Window Makera. Bude
|
informace o Doku a Sponce. Neditujte za běhu Window Makera. Bude
|
||||||
přepsaný.
|
přepsaný.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WMRootMenu
|
.B ~/GNUstep/Defaults/WMRootMenu
|
||||||
Obsahuje jméno souboru, z kterého se má načíst hlavní menu nebo
|
Obsahuje jméno souboru, z kterého se má načíst hlavní menu nebo
|
||||||
menu samotné ve formátu proplist.
|
menu samotné ve formátu proplist.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WMWindowAttributes
|
.B ~/GNUstep/Defaults/WMWindowAttributes
|
||||||
Atributy pro různé třídy a instance aplikací. Použijte editor nastavení
|
Atributy pro různé třídy a instance aplikací. Použijte editor nastavení
|
||||||
(stiskněte pravé tlačítko myši na horní liště aplikace, zvolte Atributy)
|
(stiskněte pravé tlačítko myši na horní liště aplikace, zvolte Atributy)
|
||||||
namísto přímého editování tohoto souboru. Je jen málo nastavení, která
|
namísto přímého editování tohoto souboru. Je jen málo nastavení, která
|
||||||
nejsou dostupná z editora nastavení.
|
nejsou dostupná z editora nastavení.
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Defaults/
|
.B /usr/share/WindowMaker/Defaults/
|
||||||
Všechny výše uvedené soubory se NAčÍTAJÍ odtud. Pokud se je nepodaří
|
Všechny výše uvedené soubory se NAčÍTAJÍ odtud. Pokud se je nepodaří
|
||||||
najít, kromě WMState, který se odtud ZKOPÍRUJE. Nezáleží na tom, odkud
|
najít, kromě WMState, který se odtud ZKOPÍRUJE. Nezáleží na tom, odkud
|
||||||
jsou načítané. Pokud je potřeba zapsat změnu konfigurace zpět do těchto
|
jsou načítané. Pokud je potřeba zapsat změnu konfigurace zpět do těchto
|
||||||
souborů, zapíšou se do uživatelských souborů.
|
souborů, zapíšou se do uživatelských souborů.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/autostart
|
.B ~/GNUstep/Library/WindowMaker/autostart
|
||||||
Tento skript se automaticky vykoná pri startu Window Makera.
|
Tento skript se automaticky vykoná pri startu Window Makera.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/exitscript
|
.B ~/GNUstep/Library/WindowMaker/exitscript
|
||||||
Tento skript se automaticky vykoná bezprostředně před ukončením Window Makera.
|
Tento skript se automaticky vykoná bezprostředně před ukončením Window Makera.
|
||||||
.B Poznámka:
|
.B Poznámka:
|
||||||
Když potřebujete spustit z tohoto skriptu něco, co vyžaduje spuštěný X server,
|
Když potřebujete spustit z tohoto skriptu něco, co vyžaduje spuštěný X server,
|
||||||
tak nepoužívejte na ukončení Window Makera příkaz
|
tak nepoužívejte na ukončení Window Makera příkaz
|
||||||
.I SHUTDOWN
|
.I SHUTDOWN
|
||||||
z hlavního menu. Jinak se může stát, že X server se ukončí dřív než se vykoná
|
z hlavního menu. Jinak se může stát, že X server se ukončí dřív než se vykoná
|
||||||
tento skript.
|
tento skript.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/
|
.B ~/GNUstep/Library/WindowMaker/
|
||||||
Soubor menu, jehož název je uveden v souboru WMRootMenu, se hledá zde...
|
Soubor menu, jehož název je uveden v souboru WMRootMenu, se hledá zde...
|
||||||
.TP
|
.TP
|
||||||
.B /etc/X11/WindowMaker/
|
.B /etc/X11/WindowMaker/
|
||||||
a zde, v tomto pořadí, pokud název není absolutní cesta.
|
a zde, v tomto pořadí, pokud název není absolutní cesta.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Pixmaps/
|
.B ~/GNUstep/Library/WindowMaker/Pixmaps/
|
||||||
Zde hledá Window Maker obrázky
|
Zde hledá Window Maker obrázky
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Backgrounds/
|
.B ~/GNUstep/Library/WindowMaker/Backgrounds/
|
||||||
Zde hledá Window Maker pozadí
|
Zde hledá Window Maker pozadí
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Styles/
|
.B ~/GNUstep/Library/WindowMaker/Styles/
|
||||||
Zde hledá Window Maker soubory se styly (ne úplně... vypadá to tak, ale
|
Zde hledá Window Maker soubory se styly (ne úplně... vypadá to tak, ale
|
||||||
i tak musíte zadat úplnou cestu. Je to jen vyhrazené místo, aby byly
|
i tak musíte zadat úplnou cestu. Je to jen vyhrazené místo, aby byly
|
||||||
věci pěkně uspořádané)
|
věci pěkně uspořádané)
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Themes/
|
.B ~/GNUstep/Library/WindowMaker/Themes/
|
||||||
Zde hledá Window Maker soubory s tématy (viz. výše)
|
Zde hledá Window Maker soubory s tématy (viz. výše)
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Pixmaps/
|
.B /usr/share/WindowMaker/Pixmaps/
|
||||||
Obrázky spoločné pro celý systém se nacházejí zde...
|
Obrázky spoločné pro celý systém se nacházejí zde...
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Pixmaps/
|
.B /usr/share/WindowMaker/Pixmaps/
|
||||||
a zde.
|
a zde.
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Styles/
|
.B /usr/share/WindowMaker/Styles/
|
||||||
Styly spoločné pro celý systém se nacházejí zde
|
Styly spoločné pro celý systém se nacházejí zde
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Themes/
|
.B /usr/share/WindowMaker/Themes/
|
||||||
A teď to zkuste sami... ;-)
|
A teď to zkuste sami... ;-)
|
||||||
.SH PROMĚNNÉ PROSŘEDÍ
|
.SH PROMĚNNÉ PROSŘEDÍ
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
specifikuje cestu k adresáři Defaults. "Defaults/" je přidán k této
|
specifikuje cestu k adresáři Defaults. "Defaults/" je přidán k této
|
||||||
proměnné, čímž se určí umístění databází. Pokud proměnná není nastavená,
|
proměnné, čímž se určí umístění databází. Pokud proměnná není nastavená,
|
||||||
ta její implicitní hodnota je "~/GNUstep"
|
ta její implicitní hodnota je "~/GNUstep"
|
||||||
.IP GNUSTEP_LOCAL_ROOT
|
.IP GNUSTEP_LOCAL_ROOT
|
||||||
specifikuje umístění systémového \fBlokálního\fP GNUstep adresáře (to
|
specifikuje umístění systémového \fBlokálního\fP GNUstep adresáře (to
|
||||||
je užitečné v případě, že umístění adresáře společného pro celý systém je
|
je užitečné v případě, že umístění adresáře společného pro celý systém je
|
||||||
ve skutečnosti společné pro celou síť). Když je tato proměnná prázdna, použije
|
ve skutečnosti společné pro celou síť). Když je tato proměnná prázdna, použije
|
||||||
se GNUSTEP_SYSTEM_ROOT.
|
se GNUSTEP_SYSTEM_ROOT.
|
||||||
.IP GNUSTEP_SYSTEM_ROOT
|
.IP GNUSTEP_SYSTEM_ROOT
|
||||||
specifikuje umístění systémového GNUstep adresáře. Pokud je tato proměnná
|
specifikuje umístění systémového GNUstep adresáře. Pokud je tato proměnná
|
||||||
prázdna, tak její implicitní hodnota je /etc/GNUstep
|
prázdna, tak její implicitní hodnota je /etc/GNUstep
|
||||||
.SH PODÍVEJTE SE TAKÉ
|
.SH PODÍVEJTE SE TAKÉ
|
||||||
The Window Maker User Guide
|
The Window Maker User Guide
|
||||||
(Uživatelská příručka Window Makera)
|
(Uživatelská příručka Window Makera)
|
||||||
.PP
|
.PP
|
||||||
The Window Maker FAQ
|
The Window Maker FAQ
|
||||||
(Často kladené dotazy)
|
(Často kladené dotazy)
|
||||||
.PP
|
.PP
|
||||||
.BR X (7),
|
.BR X (7),
|
||||||
.BR wdwrite (1),
|
.BR wdwrite (1),
|
||||||
@@ -140,9 +140,9 @@ The Window Maker FAQ
|
|||||||
.BR setstyle (1),
|
.BR setstyle (1),
|
||||||
.BR wmsetbg (1)
|
.BR wmsetbg (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autoři Window Makera jsou Alfredo K. Kojima <kojima@windowmaker.info>,
|
Autoři Window Makera jsou Alfredo K. Kojima <kojima@windowmaker.info>,
|
||||||
Dan Pascu <dan@windowmaker.info> a mnoho dalších lidí z celého světa.
|
Dan Pascu <dan@windowmaker.info> a mnoho dalších lidí z celého světa.
|
||||||
.PP
|
.PP
|
||||||
Tuto manuálovou stránku napsal Marcelo E. Magallon, <mmagallo@debian.org>.
|
Tuto manuálovou stránku napsal Marcelo E. Magallon, <mmagallo@debian.org>.
|
||||||
.PP
|
.PP
|
||||||
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>
|
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>
|
||||||
|
|||||||
+24
-24
@@ -1,67 +1,67 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wmsetbg 1 "Leden 1999"
|
.TH wmsetbg 1 "Leden 1999"
|
||||||
.SH JMÉNO
|
.SH JMÉNO
|
||||||
wmsetbg \- nastaví pozadí hlavního okna v X11
|
wmsetbg \- nastaví pozadí hlavního okna v X11
|
||||||
.SH SYNTAXE
|
.SH SYNTAXE
|
||||||
.B wmsetbg
|
.B wmsetbg
|
||||||
[\-display] [\-\-version] [\-\-help] [{\-b|\-\-back\-color} \fIbarva\fP]
|
[\-display] [\-\-version] [\-\-help] [{\-b|\-\-back\-color} \fIbarva\fP]
|
||||||
[{\-t|\-\-tile}|{\-e|\-\-center}|{\-s|\-\-scale}|{\-a|\-\-maxscale} \fIobrázek\fP]
|
[{\-t|\-\-tile}|{\-e|\-\-center}|{\-s|\-\-scale}|{\-a|\-\-maxscale} \fIobrázek\fP]
|
||||||
[{\-d|\-\-dither}|{\-m|\-\-match}] [\-u|\-\-update\-wmaker]
|
[{\-d|\-\-dither}|{\-m|\-\-match}] [\-u|\-\-update\-wmaker]
|
||||||
[{\-D|\-\-update\-domain} \fIdoména\fP] [{\-c|\-\-colors} \fIcpc\fP]
|
[{\-D|\-\-update\-domain} \fIdoména\fP] [{\-c|\-\-colors} \fIcpc\fP]
|
||||||
[{\-p|\-\-parse} \fItextura\fP] [{\-w|\-\-workspace} \fIpracovní plocha\fP]
|
[{\-p|\-\-parse} \fItextura\fP] [{\-w|\-\-workspace} \fIpracovní plocha\fP]
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B wmsetbg
|
.B wmsetbg
|
||||||
načítá daný
|
načítá daný
|
||||||
.I obrázek
|
.I obrázek
|
||||||
(XPM, PNG, jpeg, Tiff, raw PPM) a vloží ho do hlavního okna. Obrázek je možné
|
(XPM, PNG, jpeg, Tiff, raw PPM) a vloží ho do hlavního okna. Obrázek je možné
|
||||||
zvětšit, nebo ho opakovat aby vyplnil hlavní okno. Window Maker používa
|
zvětšit, nebo ho opakovat aby vyplnil hlavní okno. Window Maker používa
|
||||||
tento příkaz interně na nastavení pozadí při startu.
|
tento příkaz interně na nastavení pozadí při startu.
|
||||||
.SH VOLBY
|
.SH VOLBY
|
||||||
.TP
|
.TP
|
||||||
.B \-a|\-\-maxscale
|
.B \-a|\-\-maxscale
|
||||||
zvětší daný \fIobrázek\fP při dodržení poměru stran
|
zvětší daný \fIobrázek\fP při dodržení poměru stran
|
||||||
.TP
|
.TP
|
||||||
.B \-e|\-\-center
|
.B \-e|\-\-center
|
||||||
vloží \fIobrázek\fP do středu okna
|
vloží \fIobrázek\fP do středu okna
|
||||||
.TP
|
.TP
|
||||||
.B \-t|\-\-tile
|
.B \-t|\-\-tile
|
||||||
vytvoří z \fIobrázku\fP dlaždice
|
vytvoří z \fIobrázku\fP dlaždice
|
||||||
.TP
|
.TP
|
||||||
.B \-s|\-\-scale
|
.B \-s|\-\-scale
|
||||||
roztáhne daný \fIobrázek\fP (standartně)
|
roztáhne daný \fIobrázek\fP (standartně)
|
||||||
.TP
|
.TP
|
||||||
.B \-d|\-\-dither
|
.B \-d|\-\-dither
|
||||||
rezervuje barvy
|
rezervuje barvy
|
||||||
.TP
|
.TP
|
||||||
.B \-m|\-\-match
|
.B \-m|\-\-match
|
||||||
shodné barvy
|
shodné barvy
|
||||||
.TP
|
.TP
|
||||||
.B \-u|\-\-update\-wmaker
|
.B \-u|\-\-update\-wmaker
|
||||||
zapíše změnu do databáze nastavení Window Makera
|
zapíše změnu do databáze nastavení Window Makera
|
||||||
.TP
|
.TP
|
||||||
.B \-D|\-\-update\-domain
|
.B \-D|\-\-update\-domain
|
||||||
zapíše změnu do databáze \fIdomény\fP
|
zapíše změnu do databáze \fIdomény\fP
|
||||||
.TP
|
.TP
|
||||||
.B \-c|\-\-colors
|
.B \-c|\-\-colors
|
||||||
použíje určitý počet barev na kanál
|
použíje určitý počet barev na kanál
|
||||||
.TP
|
.TP
|
||||||
.B \-p|\-\-parse
|
.B \-p|\-\-parse
|
||||||
parsuje danou \fItexturu\fP jako \fIproplist stylu textur\fP
|
parsuje danou \fItexturu\fP jako \fIproplist stylu textur\fP
|
||||||
.TP
|
.TP
|
||||||
.B \-w|\-\-workspace
|
.B \-w|\-\-workspace
|
||||||
nastaví pozadí jen na dané \fIpracovní ploše\fP
|
nastaví pozadí jen na dané \fIpracovní ploše\fP
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše nápovědu
|
vypíše nápovědu
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verze
|
vypíše číslo verze
|
||||||
.SH PODÍVEJTE SE TAKÉ
|
.SH PODÍVEJTE SE TAKÉ
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
wmsetbg napsal Dan Pascu <dan@windowmaker.info>
|
wmsetbg napsal Dan Pascu <dan@windowmaker.info>
|
||||||
.PP
|
.PP
|
||||||
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
.PP
|
.PP
|
||||||
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
||||||
|
|||||||
+20
-20
@@ -1,45 +1,45 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wxcopy 1 "Září 1998"
|
.TH wxcopy 1 "Září 1998"
|
||||||
.SH JMÉNO
|
.SH JMÉNO
|
||||||
wxcopy \- kopíruje standartní vstup do vyrovnávací paměti
|
wxcopy \- kopíruje standartní vstup do vyrovnávací paměti
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.B wxcopy
|
.B wxcopy
|
||||||
[volby]
|
[volby]
|
||||||
[soubor]
|
[soubor]
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B wxcopy
|
.B wxcopy
|
||||||
kopíruje standartní vstup nebo
|
kopíruje standartní vstup nebo
|
||||||
.I soubor
|
.I soubor
|
||||||
do vyrovnávací paměti. Jakmile není dáná nějaká vyrovnávací paměť, tak se
|
do vyrovnávací paměti. Jakmile není dáná nějaká vyrovnávací paměť, tak se
|
||||||
data kopírují do vyrovnávací paměti 0 a ostaní vyrovnávací paměti rotují,
|
data kopírují do vyrovnávací paměti 0 a ostaní vyrovnávací paměti rotují,
|
||||||
jestliže ovšem existují. Pokud je dáná vyrovnávací paměť, tak se data
|
jestliže ovšem existují. Pokud je dáná vyrovnávací paměť, tak se data
|
||||||
kopírují do ní a nevykoná se žádné rotování.
|
kopírují do ní a nevykoná se žádné rotování.
|
||||||
.SH VOLBY
|
.SH VOLBY
|
||||||
.TP
|
.TP
|
||||||
.B \-cutbuffer číslo
|
.B \-cutbuffer číslo
|
||||||
Specifikuje číslo vyrovnávací paměti, do které se budou kopírovat data.
|
Specifikuje číslo vyrovnávací paměti, do které se budou kopírovat data.
|
||||||
.TP
|
.TP
|
||||||
.B \-display displej
|
.B \-display displej
|
||||||
Data se budou kopírovat do vyrovnávací paměti daného displeje/obrazovky.
|
Data se budou kopírovat do vyrovnávací paměti daného displeje/obrazovky.
|
||||||
.TP
|
.TP
|
||||||
.B \-nolimit
|
.B \-nolimit
|
||||||
Vypne normální limit velikosti dat 64kb, čímž se umožní zvětšování vyrovnávací
|
Vypne normální limit velikosti dat 64kb, čímž se umožní zvětšování vyrovnávací
|
||||||
paměti podla potřeby.
|
paměti podla potřeby.
|
||||||
.TP
|
.TP
|
||||||
.B \-clearselection
|
.B \-clearselection
|
||||||
Vyprázdní vlastníka PRIMARY selekce. V praxi to znamená, že když se pokusíte
|
Vyprázdní vlastníka PRIMARY selekce. V praxi to znamená, že když se pokusíte
|
||||||
vložit data prostředním tlačítkem (například), tak vloží se data z vyrovnávací
|
vložit data prostředním tlačítkem (například), tak vloží se data z vyrovnávací
|
||||||
paměti 0, namísto případného spuštění selelekce myši.
|
paměti 0, namísto případného spuštění selelekce myši.
|
||||||
.PP
|
.PP
|
||||||
.SH PODÍVEJTE SE TAKÉ
|
.SH PODÍVEJTE SE TAKÉ
|
||||||
.BR wxpaste (1),
|
.BR wxpaste (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
.PP
|
.PP
|
||||||
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
||||||
.PP
|
.PP
|
||||||
Kompatibilitu s binárními daty a \-nolimit implementoval Luke Kendall
|
Kompatibilitu s binárními daty a \-nolimit implementoval Luke Kendall
|
||||||
<luke@research.canon.com.au>.
|
<luke@research.canon.com.au>.
|
||||||
|
|||||||
+18
-18
@@ -1,40 +1,40 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wxpaste 1 "Březen 1998"
|
.TH wxpaste 1 "Březen 1998"
|
||||||
.SH JMÉNO
|
.SH JMÉNO
|
||||||
wxpaste \- zapíše vyrovnávací paměť na standardní výstup
|
wxpaste \- zapíše vyrovnávací paměť na standardní výstup
|
||||||
.SH SYNTAXE
|
.SH SYNTAXE
|
||||||
.B wxpaste
|
.B wxpaste
|
||||||
[volby]
|
[volby]
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B wxpaste
|
.B wxpaste
|
||||||
vypíše obsah dané vyrovnávací paměti na standardní výstup. Jakmile není
|
vypíše obsah dané vyrovnávací paměti na standardní výstup. Jakmile není
|
||||||
zadána žádná vyrovnávací paměť, tak se použije vyrovnávací paměť 0.
|
zadána žádná vyrovnávací paměť, tak se použije vyrovnávací paměť 0.
|
||||||
.PP
|
.PP
|
||||||
.SH VOLBY
|
.SH VOLBY
|
||||||
.TP
|
.TP
|
||||||
.B \-cutbuffer číslo
|
.B \-cutbuffer číslo
|
||||||
Data budou vložena z dané vyrovnávací paměti namísto standardní 0.
|
Data budou vložena z dané vyrovnávací paměti namísto standardní 0.
|
||||||
.TP
|
.TP
|
||||||
.B \-display displej
|
.B \-display displej
|
||||||
Data se budou kopírovat z vyrovnávací paměti daného displeje/obrazovky.
|
Data se budou kopírovat z vyrovnávací paměti daného displeje/obrazovky.
|
||||||
.TP
|
.TP
|
||||||
.B \-selection [selekcia]
|
.B \-selection [selekcia]
|
||||||
Data budou kopírované z dané selekce. Jakmile se výběr ze selekce nepodaří,
|
Data budou kopírované z dané selekce. Jakmile se výběr ze selekce nepodaří,
|
||||||
tak se použije vyrovnávací paměť. Implicitní hodnota pro selekci je PRIMARY.
|
tak se použije vyrovnávací paměť. Implicitní hodnota pro selekci je PRIMARY.
|
||||||
.PP
|
.PP
|
||||||
.SH CHYBY
|
.SH CHYBY
|
||||||
\-selection musí být poslední volba. Syntaxe může být upravená, ale
|
\-selection musí být poslední volba. Syntaxe může být upravená, ale
|
||||||
brání tomu špatná kompatibilita.
|
brání tomu špatná kompatibilita.
|
||||||
|
|
||||||
Typy selekcí INCR a MULTIPLE nejsou podporované. Ve skutečnosti je
|
Typy selekcí INCR a MULTIPLE nejsou podporované. Ve skutečnosti je
|
||||||
podporovaný jen jednoduchý text, což by mělo stačit pro většinu uživatelů
|
podporovaný jen jednoduchý text, což by mělo stačit pro většinu uživatelů
|
||||||
takovéto jednoduché utilitky.
|
takovéto jednoduché utilitky.
|
||||||
.SH PODÍVEJTE SE TAKÉ
|
.SH PODÍVEJTE SE TAKÉ
|
||||||
.BR wxcopy (1),
|
.BR wxcopy (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorem Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
Tuto manuálovou stránku napsal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
.PP
|
.PP
|
||||||
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
Do češtiny přeložil Jiří Hnídek <jiri.hnidek@vslib.cz>.
|
||||||
|
|||||||
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH Window\ Maker 1 "August 1998"
|
.TH "Window Maker" 1 "August 1998"
|
||||||
.SH "НАИМЕНОВАНИЕ"
|
.SH "НАИМЕНОВАНИЕ"
|
||||||
wmaker \- оконный менеджер для X11 эмулирующий интерфейс NEXTSTEP.
|
wmaker \- оконный менеджер для X11 эмулирующий интерфейс NEXTSTEP.
|
||||||
.SH "СИНТАКСИС"
|
.SH "СИНТАКСИС"
|
||||||
|
|||||||
+16
-16
@@ -1,34 +1,34 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH geticonset 1 "January 1999"
|
.TH geticonset 1 "January 1999"
|
||||||
.SH MENO
|
.SH MENO
|
||||||
geticonset \- extrahuje aktuálnu sadu ikon Window Makera
|
geticonset \- extrahuje aktuálnu sadu ikon Window Makera
|
||||||
.SH SYNTAX
|
.SH SYNTAX
|
||||||
.B geticonset
|
.B geticonset
|
||||||
.I [voľby] [súbor]
|
.I [voľby] [súbor]
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B geticonset
|
.B geticonset
|
||||||
načíta doménu WMWindowAttributes a zapíše sadu nájdených ikon
|
načíta doménu WMWindowAttributes a zapíše sadu nájdených ikon
|
||||||
buď na štandardný výstup alebo do
|
buď na štandardný výstup alebo do
|
||||||
.I súboru.
|
.I súboru.
|
||||||
.SH VOĽBY
|
.SH VOĽBY
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše pomocný text
|
vypíše pomocný text
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verzie
|
vypíše číslo verzie
|
||||||
.SH PREMENNÉ PROSTREDIA
|
.SH PREMENNÉ PROSTREDIA
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
||||||
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
||||||
jej implicitná hodnota je "~/GNUstep"
|
jej implicitná hodnota je "~/GNUstep"
|
||||||
.SH SÚBORY
|
.SH SÚBORY
|
||||||
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
||||||
Toto je súbor, ktorý sa zapíše.
|
Toto je súbor, ktorý sa zapíše.
|
||||||
.SH POZRI TIEŽ
|
.SH POZRI TIEŽ
|
||||||
.BR seticons (1),
|
.BR seticons (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
|
|||||||
+18
-18
@@ -1,36 +1,36 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH seticons 1 "March 1998"
|
.TH seticons 1 "March 1998"
|
||||||
.SH MENO
|
.SH MENO
|
||||||
seticons \- nastaví obrázky ikon pre Window Maker
|
seticons \- nastaví obrázky ikon pre Window Maker
|
||||||
.SH SYNTAX
|
.SH SYNTAX
|
||||||
.B seticons
|
.B seticons
|
||||||
.I súbor
|
.I súbor
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B seticons
|
.B seticons
|
||||||
načíta
|
načíta
|
||||||
.I súbor
|
.I súbor
|
||||||
a zapíše jeho obsah do domény WMWindowAttributes, čím sa nastavia ikony,
|
a zapíše jeho obsah do domény WMWindowAttributes, čím sa nastavia ikony,
|
||||||
ktoré používa Window Maker pre dané triedy (napríklad XTerm, "xterm.XTerm",
|
ktoré používa Window Maker pre dané triedy (napríklad XTerm, "xterm.XTerm",
|
||||||
"pine.XTerm", atď.)
|
"pine.XTerm", atď.)
|
||||||
.SH VOĽBY
|
.SH VOĽBY
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše pomocný text
|
vypíše pomocný text
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verzie
|
vypíše číslo verzie
|
||||||
.SH PREMENNÉ PROSTREDIA
|
.SH PREMENNÉ PROSTREDIA
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
||||||
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
||||||
jej implicitná hodnota je "~/GNUstep"
|
jej implicitná hodnota je "~/GNUstep"
|
||||||
.SH SÚBORY
|
.SH SÚBORY
|
||||||
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
.IP WMAKER_USER_ROOT/Defaults/WMWindowAttributes
|
||||||
Toto je súbor, ktorý sa zapíše.
|
Toto je súbor, ktorý sa zapíše.
|
||||||
.SH POZRI TIEŽ
|
.SH POZRI TIEŽ
|
||||||
.BR geticonset (1),
|
.BR geticonset (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
|
|||||||
+17
-17
@@ -1,37 +1,37 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wdwrite 1 "January 1999"
|
.TH wdwrite 1 "January 1999"
|
||||||
.SH MENO
|
.SH MENO
|
||||||
wdwrite \- zapíše kľúče a hodnoty do databázy štandardných nastavení
|
wdwrite \- zapíše kľúče a hodnoty do databázy štandardných nastavení
|
||||||
.SH SYNTAX
|
.SH SYNTAX
|
||||||
.B wdwrite
|
.B wdwrite
|
||||||
.I doména
|
.I doména
|
||||||
.I voľba
|
.I voľba
|
||||||
.I hodnota
|
.I hodnota
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B wdwrite
|
.B wdwrite
|
||||||
zapíše
|
zapíše
|
||||||
.I voľbu
|
.I voľbu
|
||||||
a
|
a
|
||||||
.I hodnotu
|
.I hodnotu
|
||||||
do danej
|
do danej
|
||||||
.I domény.
|
.I domény.
|
||||||
.SH VOĽBY
|
.SH VOĽBY
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše pomocný text
|
vypíše pomocný text
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verzie
|
vypíše číslo verzie
|
||||||
.SH PREMENNÉ PROSTREDIA
|
.SH PREMENNÉ PROSTREDIA
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
||||||
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
||||||
jej implicitná hodnota je "~/GNUstep"
|
jej implicitná hodnota je "~/GNUstep"
|
||||||
.SH SÚBORY
|
.SH SÚBORY
|
||||||
Domény sa nachádzajú v WMAKER_USER_ROOT/Defaults/
|
Domény sa nachádzajú v WMAKER_USER_ROOT/Defaults/
|
||||||
.SH POZRI TIEŽ
|
.SH POZRI TIEŽ
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
|
|||||||
+63
-63
@@ -1,128 +1,128 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH Window\ Maker 1 "August 1998"
|
.TH "Window Maker" 1 "August 1998"
|
||||||
.SH MENO
|
.SH MENO
|
||||||
wmaker \- manažér okien pre X11 so vzhľadom NEXTSTEP
|
wmaker \- manažér okien pre X11 so vzhľadom NEXTSTEP
|
||||||
.SH SYNTAX
|
.SH SYNTAX
|
||||||
.B wmaker
|
.B wmaker
|
||||||
.I "[-voľby]"
|
.I "[-voľby]"
|
||||||
.SH "POPIS"
|
.SH "POPIS"
|
||||||
Window Maker je manažér okien pre X11 so vzhľadom NEXTSTEP. Snaží sa
|
Window Maker je manažér okien pre X11 so vzhľadom NEXTSTEP. Snaží sa
|
||||||
napodobniť vzhľad NeXT ako je to len možné, ale v prípade potreby tento
|
napodobniť vzhľad NeXT ako je to len možné, ale v prípade potreby tento
|
||||||
trend nedodržuje.
|
trend nedodržuje.
|
||||||
.SH "VOĽBY"
|
.SH "VOĽBY"
|
||||||
.TP
|
.TP
|
||||||
.B \-\-no\-cpp
|
.B \-\-no\-cpp
|
||||||
zakázať preprocessing konfiguračných súborov
|
zakázať preprocessing konfiguračných súborov
|
||||||
.TP
|
.TP
|
||||||
.B \-\-no\-dock
|
.B \-\-no\-dock
|
||||||
neotvárať Dok aplikácií
|
neotvárať Dok aplikácií
|
||||||
.TP
|
.TP
|
||||||
.B \-\-no\-clip
|
.B \-\-no\-clip
|
||||||
neotvárať Spinku pracovných plôch
|
neotvárať Spinku pracovných plôch
|
||||||
.TP
|
.TP
|
||||||
.B \-display host:display.screen
|
.B \-display host:display.screen
|
||||||
použiť daný display.
|
použiť daný display.
|
||||||
Na strojoch s viacerými obrazovkami bude Window Maker automaticky spravovať
|
Na strojoch s viacerými obrazovkami bude Window Maker automaticky spravovať
|
||||||
všetky obrazovky. Ak chcete, aby Window Maker spravoval len špecifickú
|
všetky obrazovky. Ak chcete, aby Window Maker spravoval len špecifickú
|
||||||
obrazovku, musíte zadať číslo obrazovky pomocou argumentu príkazového riadku
|
obrazovku, musíte zadať číslo obrazovky pomocou argumentu príkazového riadku
|
||||||
.B \-display.
|
.B \-display.
|
||||||
Napríklad, ak chcete, aby Window Maker spravoval len obrazovku 1, spustite ho
|
Napríklad, ak chcete, aby Window Maker spravoval len obrazovku 1, spustite ho
|
||||||
takto:
|
takto:
|
||||||
.B wmaker -display :0.1
|
.B wmaker -display :0.1
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše verziu a ukončí sa
|
vypíše verziu a ukončí sa
|
||||||
.TP
|
.TP
|
||||||
.B \-\-visual\-id
|
.B \-\-visual\-id
|
||||||
určenie čísla obrazového režimu. Viď
|
určenie čísla obrazového režimu. Viď
|
||||||
.BR xdpyinfo (1)
|
.BR xdpyinfo (1)
|
||||||
pre zoznam obrazových režimov dostupných na vašom display-i.
|
pre zoznam obrazových režimov dostupných na vašom display-i.
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše krátky pomocný text
|
vypíše krátky pomocný text
|
||||||
.PP
|
.PP
|
||||||
.SH SÚBORY
|
.SH SÚBORY
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WindowMaker
|
.B ~/GNUstep/Defaults/WindowMaker
|
||||||
všeobecné nastavenia Window Makera.
|
všeobecné nastavenia Window Makera.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WMState
|
.B ~/GNUstep/Defaults/WMState
|
||||||
informácie o Doku a Spinke. NEeditujte za behu Window Makeru. Bude
|
informácie o Doku a Spinke. NEeditujte za behu Window Makeru. Bude
|
||||||
prepísaný.
|
prepísaný.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WMRootMenu
|
.B ~/GNUstep/Defaults/WMRootMenu
|
||||||
Obsahuje meno súboru, z ktorého sa má načítať hlavné menu alebo
|
Obsahuje meno súboru, z ktorého sa má načítať hlavné menu alebo
|
||||||
menu samotné vo formáte proplist.
|
menu samotné vo formáte proplist.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Defaults/WMWindowAttributes
|
.B ~/GNUstep/Defaults/WMWindowAttributes
|
||||||
Atribúty pre rôzne triedy a inštancie aplikácií. Použite editor nastavení
|
Atribúty pre rôzne triedy a inštancie aplikácií. Použite editor nastavení
|
||||||
(ťahajte pravé tlačítko na hornej lište aplikácie, zvoľte Nastavenia)
|
(ťahajte pravé tlačítko na hornej lište aplikácie, zvoľte Nastavenia)
|
||||||
namiesto priameho editovania tohto súboru. Je len málo nastavení, ktoré
|
namiesto priameho editovania tohto súboru. Je len málo nastavení, ktoré
|
||||||
nie sú dostupné z editora nastavení.
|
nie sú dostupné z editora nastavení.
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Defaults/
|
.B /usr/share/WindowMaker/Defaults/
|
||||||
Všetky spomenuté súbory sa NAČÍTAJÚ odtiaľto ak sa nepodarí nájsť ich,
|
Všetky spomenuté súbory sa NAČÍTAJÚ odtiaľto ak sa nepodarí nájsť ich,
|
||||||
okrem WMState, ktorý sa odtiaľto SKOPÍRUJE. Nezáleží na tom, odkiaľ
|
okrem WMState, ktorý sa odtiaľto SKOPÍRUJE. Nezáleží na tom, odkiaľ
|
||||||
sú načítané, ak je potrebné zapísať zmenu konfigurácie späť do týchto
|
sú načítané, ak je potrebné zapísať zmenu konfigurácie späť do týchto
|
||||||
súborov, zapíšu sa do užívateľských súborov.
|
súborov, zapíšu sa do užívateľských súborov.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/autostart
|
.B ~/GNUstep/Library/WindowMaker/autostart
|
||||||
Tento skript sa automaticky vykoná pri štarte Window Makera.
|
Tento skript sa automaticky vykoná pri štarte Window Makera.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/exitscript
|
.B ~/GNUstep/Library/WindowMaker/exitscript
|
||||||
Tento skript sa automaticky vykoná bezprostredne pred ukončením Window Makera.
|
Tento skript sa automaticky vykoná bezprostredne pred ukončením Window Makera.
|
||||||
.B Poznámka:
|
.B Poznámka:
|
||||||
Ak potrebujete spustiť z tohto skriptu niečo, čo vyžaduje spustený X server,
|
Ak potrebujete spustiť z tohto skriptu niečo, čo vyžaduje spustený X server,
|
||||||
nepoužívajte na ukončenie Window Makera príkaz
|
nepoužívajte na ukončenie Window Makera príkaz
|
||||||
.I SHUTDOWN
|
.I SHUTDOWN
|
||||||
z hlavného menu. Inak sa môže stať, že X server sa ukončí skôr než sa vykoná
|
z hlavného menu. Inak sa môže stať, že X server sa ukončí skôr než sa vykoná
|
||||||
skript.
|
skript.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/
|
.B ~/GNUstep/Library/WindowMaker/
|
||||||
Súbor menu, ktorého názov je vo WMRootMenu, sa hľadá tu...
|
Súbor menu, ktorého názov je vo WMRootMenu, sa hľadá tu...
|
||||||
.TP
|
.TP
|
||||||
.B /etc/X11/WindowMaker/
|
.B /etc/X11/WindowMaker/
|
||||||
a tu, v tomto poradí, pokiaľ nie je názov absolútna cesta.
|
a tu, v tomto poradí, pokiaľ nie je názov absolútna cesta.
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Pixmaps/
|
.B ~/GNUstep/Library/WindowMaker/Pixmaps/
|
||||||
Tu hľadá Window Maker obrázky
|
Tu hľadá Window Maker obrázky
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Backgrounds/
|
.B ~/GNUstep/Library/WindowMaker/Backgrounds/
|
||||||
Tu hľadá Window Maker pozadia
|
Tu hľadá Window Maker pozadia
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Styles/
|
.B ~/GNUstep/Library/WindowMaker/Styles/
|
||||||
Tu hľadá Window Maker súbory so štýlmi (nie celkom... vyzerá to tak, ale
|
Tu hľadá Window Maker súbory so štýlmi (nie celkom... vyzerá to tak, ale
|
||||||
aj tak musíte zadať úplnú cestu. Je to len vyhradené miesto, aby boli
|
aj tak musíte zadať úplnú cestu. Je to len vyhradené miesto, aby boli
|
||||||
veci pekne usporiadané)
|
veci pekne usporiadané)
|
||||||
.TP
|
.TP
|
||||||
.B ~/GNUstep/Library/WindowMaker/Themes/
|
.B ~/GNUstep/Library/WindowMaker/Themes/
|
||||||
Tu hľadá Window Maker súbory s témami (viď vyššie)
|
Tu hľadá Window Maker súbory s témami (viď vyššie)
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Pixmaps/
|
.B /usr/share/WindowMaker/Pixmaps/
|
||||||
Obrázky spoločné pre celý systém sa nachádzajú tu...
|
Obrázky spoločné pre celý systém sa nachádzajú tu...
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Pixmaps/
|
.B /usr/share/WindowMaker/Pixmaps/
|
||||||
a tu.
|
a tu.
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Styles/
|
.B /usr/share/WindowMaker/Styles/
|
||||||
Štýly spoločné pre celý systém sa nachádzajú tu
|
Štýly spoločné pre celý systém sa nachádzajú tu
|
||||||
.TP
|
.TP
|
||||||
.B /usr/share/WindowMaker/Themes/
|
.B /usr/share/WindowMaker/Themes/
|
||||||
Teraz to skús sám... ;-)
|
Teraz to skús sám... ;-)
|
||||||
.SH PREMENNÉ PROSTREDIA
|
.SH PREMENNÉ PROSTREDIA
|
||||||
.IP WMAKER_USER_ROOT
|
.IP WMAKER_USER_ROOT
|
||||||
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
špecifikuje cestu k adresáru Defaults. "Defaults/" je pridané k tejto
|
||||||
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
premennej, čím sa určí umiestnenie databáz. Ak premenná nie je nastavená,
|
||||||
jej implicitná hodnota je "~/GNUstep"
|
jej implicitná hodnota je "~/GNUstep"
|
||||||
.IP GNUSTEP_LOCAL_ROOT
|
.IP GNUSTEP_LOCAL_ROOT
|
||||||
špecifikuje umiestnenie systémového \fBlokálneho\fP GNUstep adresára (toto
|
špecifikuje umiestnenie systémového \fBlokálneho\fP GNUstep adresára (toto
|
||||||
je užitočné v prípade, že umiestnenie adresára spoločného pre celý systém je
|
je užitočné v prípade, že umiestnenie adresára spoločného pre celý systém je
|
||||||
v skutočnosti spoločné pre celú sieť). Ak je táto premenná prázdna, použije
|
v skutočnosti spoločné pre celú sieť). Ak je táto premenná prázdna, použije
|
||||||
sa GNUSTEP_SYSTEM_ROOT.
|
sa GNUSTEP_SYSTEM_ROOT.
|
||||||
.IP GNUSTEP_SYSTEM_ROOT
|
.IP GNUSTEP_SYSTEM_ROOT
|
||||||
špecifikuje umiestnenie systémového GNUstep adresára. Ak je táto premenná
|
špecifikuje umiestnenie systémového GNUstep adresára. Ak je táto premenná
|
||||||
prázdna, jej implicitná hodnota je /etc/GNUstep
|
prázdna, jej implicitná hodnota je /etc/GNUstep
|
||||||
.SH POZRI TIEŽ
|
.SH POZRI TIEŽ
|
||||||
The Window Maker User Guide
|
The Window Maker User Guide
|
||||||
.PP
|
.PP
|
||||||
The Window Maker FAQ
|
The Window Maker FAQ
|
||||||
@@ -138,9 +138,9 @@ The Window Maker FAQ
|
|||||||
.BR setstyle (1),
|
.BR setstyle (1),
|
||||||
.BR wmsetbg (1)
|
.BR wmsetbg (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autormi Window Makera sú Alfredo K. Kojima <kojima@windowmaker.info>,
|
Autormi Window Makera sú Alfredo K. Kojima <kojima@windowmaker.info>,
|
||||||
Dan Pascu <dan@windowmaker.info> s pomocou mnohých ľudí z celého Internetu.
|
Dan Pascu <dan@windowmaker.info> s pomocou mnohých ľudí z celého Internetu.
|
||||||
.PP
|
.PP
|
||||||
Túto manuálovú stránku napísal Marcelo E. Magallon, <mmagallo@debian.org>.
|
Túto manuálovú stránku napísal Marcelo E. Magallon, <mmagallo@debian.org>.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+25
-25
@@ -1,66 +1,66 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wmsetbg 1 "January 1999"
|
.TH wmsetbg 1 "January 1999"
|
||||||
.SH MENO
|
.SH MENO
|
||||||
wmsetbg \- nastaví pozadie hlavného okna v X11
|
wmsetbg \- nastaví pozadie hlavného okna v X11
|
||||||
.SH SYNTAX
|
.SH SYNTAX
|
||||||
.B wmsetbg
|
.B wmsetbg
|
||||||
[\-display] [\-\-version] [\-\-help] [{\-b|\-\-back\-color} \fIfarba\fP]
|
[\-display] [\-\-version] [\-\-help] [{\-b|\-\-back\-color} \fIfarba\fP]
|
||||||
[{\-t|\-\-tile}|{\-e|\-\-center}|{\-s|\-\-scale}|{\-a|\-\-maxscale} \fIobrázok\fP]
|
[{\-t|\-\-tile}|{\-e|\-\-center}|{\-s|\-\-scale}|{\-a|\-\-maxscale} \fIobrázok\fP]
|
||||||
[{\-d|\-\-dither}|{\-m|\-\-match}] [\-u|\-\-update\-wmaker]
|
[{\-d|\-\-dither}|{\-m|\-\-match}] [\-u|\-\-update\-wmaker]
|
||||||
[{\-D|\-\-update\-domain} \fIdoména\fP] [{\-c|\-\-colors} \fIcpc\fP]
|
[{\-D|\-\-update\-domain} \fIdoména\fP] [{\-c|\-\-colors} \fIcpc\fP]
|
||||||
[{\-p|\-\-parse} \fItextúra\fP] [{\-w|\-\-workspace} \fIpracovná plocha\fP]
|
[{\-p|\-\-parse} \fItextúra\fP] [{\-w|\-\-workspace} \fIpracovná plocha\fP]
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B wmsetbg
|
.B wmsetbg
|
||||||
načíta daný
|
načíta daný
|
||||||
.I obrázok
|
.I obrázok
|
||||||
(XPM, PNG, jpeg, Tiff, raw PPM) a vloží ho do hlavného okna. Obrázok možno
|
(XPM, PNG, jpeg, Tiff, raw PPM) a vloží ho do hlavného okna. Obrázok možno
|
||||||
zväčšiť, alebo ho opakovať aby vyplnil hlavné okno. Window Maker používa
|
zväčšiť, alebo ho opakovať aby vyplnil hlavné okno. Window Maker používa
|
||||||
tento príkaz interne na nastavenie pozadia pri štarte.
|
tento príkaz interne na nastavenie pozadia pri štarte.
|
||||||
.SH VOĽBY
|
.SH VOĽBY
|
||||||
.TP
|
.TP
|
||||||
.B \-a|\-\-maxscale
|
.B \-a|\-\-maxscale
|
||||||
zväčší daný \fIobrázok\fP pri dodržaní pomeru strán
|
zväčší daný \fIobrázok\fP pri dodržaní pomeru strán
|
||||||
.TP
|
.TP
|
||||||
.B \-e|\-\-center
|
.B \-e|\-\-center
|
||||||
vloží \fIobrázok\fP do stredu okna
|
vloží \fIobrázok\fP do stredu okna
|
||||||
.TP
|
.TP
|
||||||
.B \-t|\-\-tile
|
.B \-t|\-\-tile
|
||||||
vytvára z \fIobrázku\fP dlaždice
|
vytvára z \fIobrázku\fP dlaždice
|
||||||
.TP
|
.TP
|
||||||
.B \-s|\-\-scale
|
.B \-s|\-\-scale
|
||||||
roztiahne daný \fIobrázok\fP (štandardne)
|
roztiahne daný \fIobrázok\fP (štandardne)
|
||||||
.TP
|
.TP
|
||||||
.B \-d|\-\-dither
|
.B \-d|\-\-dither
|
||||||
rezervuje farby
|
rezervuje farby
|
||||||
.TP
|
.TP
|
||||||
.B \-m|\-\-match
|
.B \-m|\-\-match
|
||||||
zhodné farby
|
zhodné farby
|
||||||
.TP
|
.TP
|
||||||
.B \-u|\-\-update\-wmaker
|
.B \-u|\-\-update\-wmaker
|
||||||
zapíše zmenu do databázy nastavení Window Makera
|
zapíše zmenu do databázy nastavení Window Makera
|
||||||
.TP
|
.TP
|
||||||
.B \-D|\-\-update\-domain
|
.B \-D|\-\-update\-domain
|
||||||
zapíše zmenu do databázy \fIdoména\fP
|
zapíše zmenu do databázy \fIdoména\fP
|
||||||
.TP
|
.TP
|
||||||
.B \-c|\-\-colors
|
.B \-c|\-\-colors
|
||||||
použiť počet farieb na kanál
|
použiť počet farieb na kanál
|
||||||
.TP
|
.TP
|
||||||
.B \-p|\-\-parse
|
.B \-p|\-\-parse
|
||||||
parsuje danú \fItextúru\fP ako \fIproplist style textúru\fP
|
parsuje danú \fItextúru\fP ako \fIproplist style textúru\fP
|
||||||
.TP
|
.TP
|
||||||
.B \-w|\-\-workspace
|
.B \-w|\-\-workspace
|
||||||
nastaví pozadie len na danej \fIpracovnej ploche\fP
|
nastaví pozadie len na danej \fIpracovnej ploche\fP
|
||||||
.TP
|
.TP
|
||||||
.B \-\-help
|
.B \-\-help
|
||||||
vypíše pomocný text
|
vypíše pomocný text
|
||||||
.TP
|
.TP
|
||||||
.B \-\-version
|
.B \-\-version
|
||||||
vypíše číslo verzie
|
vypíše číslo verzie
|
||||||
.SH POZRI TIEŽ
|
.SH POZRI TIEŽ
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
wmsetbg napísal Dan Pascu <dan@windowmaker.info>
|
wmsetbg napísal Dan Pascu <dan@windowmaker.info>
|
||||||
.PP
|
.PP
|
||||||
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
|
|
||||||
|
|||||||
+20
-20
@@ -1,42 +1,42 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wxcopy 1 "September 1998"
|
.TH wxcopy 1 "September 1998"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
wxcopy \- kopíruje ¹tandardný vstup do cutbuffera
|
wxcopy \- kopíruje štandardný vstup do cutbuffera
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.B wxcopy
|
.B wxcopy
|
||||||
[voµby]
|
[voľby]
|
||||||
[súbor]
|
[súbor]
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.B wxcopy
|
.B wxcopy
|
||||||
kopíruje ¹tandardný vstup alebo
|
kopíruje štandardný vstup alebo
|
||||||
.I súbor
|
.I súbor
|
||||||
do cutbuffera. Ak nie je daný cutbuffer, dáta sa kopírujú do cutbuffera 0
|
do cutbuffera. Ak nie je daný cutbuffer, dáta sa kopírujú do cutbuffera 0
|
||||||
a ostané cutbuffery rotujú, ak existujú. Ak je daný cutbuffer, dáta sa
|
a ostané cutbuffery rotujú, ak existujú. Ak je daný cutbuffer, dáta sa
|
||||||
kopírujú do toho cutbuffera a nevykoná sa ¾iadne rotovanie.
|
kopírujú do toho cutbuffera a nevykoná sa žiadne rotovanie.
|
||||||
.SH VO¥BY
|
.SH VOĽBY
|
||||||
.TP
|
.TP
|
||||||
.B \-cutbuffer èíslo
|
.B \-cutbuffer číslo
|
||||||
©pecifikuje èíslo cutbuffera, do ktorého sa budú kopírova» dáta.
|
Špecifikuje číslo cutbuffera, do ktorého sa budú kopírovať dáta.
|
||||||
.TP
|
.TP
|
||||||
.B \-display displej
|
.B \-display displej
|
||||||
Dáta sa budú kopírova» do cutbufferov daného displeja/obrazovky.
|
Dáta sa budú kopírovať do cutbufferov daného displeja/obrazovky.
|
||||||
.TP
|
.TP
|
||||||
.B \-nolimit
|
.B \-nolimit
|
||||||
Vypne normálny limit veµkosti dát 64kb, èím sa umo¾ní zväè¹ovanie buffera
|
Vypne normálny limit veľkosti dát 64kb, čím sa umožní zväčšovanie buffera
|
||||||
podµa potreby.
|
podľa potreby.
|
||||||
.TP
|
.TP
|
||||||
.B \-clearselection
|
.B \-clearselection
|
||||||
Vyprázdni vlastníka PRIMARY selekcie. V praxi to znamená, ¾e keï sa pokúsite
|
Vyprázdni vlastníka PRIMARY selekcie. V praxi to znamená, že keď sa pokúsite
|
||||||
vlo¾i» dáta stredným tlaèítkom (napríklad), vlo¾ia sa dáta z cutbuffera 0,
|
vložiť dáta stredným tlačítkom (napríklad), vložia sa dáta z cutbuffera 0,
|
||||||
namiesto prípadnej existujúcej selelekcie my¹i.
|
namiesto prípadnej existujúcej selelekcie myši.
|
||||||
.PP
|
.PP
|
||||||
.SH POZRI TIE®
|
.SH POZRI TIEŽ
|
||||||
.BR wxpaste (1),
|
.BR wxpaste (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
|
|
||||||
Kompatibilitu s binárnymi dátami a \-nolimit implementoval Luke Kendall
|
Kompatibilitu s binárnymi dátami a \-nolimit implementoval Luke Kendall
|
||||||
<luke@research.canon.com.au>.
|
<luke@research.canon.com.au>.
|
||||||
|
|||||||
+16
-16
@@ -1,39 +1,39 @@
|
|||||||
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
|
||||||
.TH wxpaste 1 "March 1998"
|
.TH wxpaste 1 "March 1998"
|
||||||
.SH MENO
|
.SH MENO
|
||||||
wxpaste \- zapíše cutbuffer na štandardný výstup
|
wxpaste \- zapíše cutbuffer na štandardný výstup
|
||||||
.SH SYNTAX
|
.SH SYNTAX
|
||||||
.B wxpaste
|
.B wxpaste
|
||||||
[voľby]
|
[voľby]
|
||||||
.SH POPIS
|
.SH POPIS
|
||||||
.B wxpaste
|
.B wxpaste
|
||||||
vypíše obsah daného cutbuffera na štandardný výstup. Ak nie je daný žiadny
|
vypíše obsah daného cutbuffera na štandardný výstup. Ak nie je daný žiadny
|
||||||
cutbuffer, použije sa cutbuffer 0.
|
cutbuffer, použije sa cutbuffer 0.
|
||||||
.PP
|
.PP
|
||||||
.SH VOĽBY
|
.SH VOĽBY
|
||||||
.TP
|
.TP
|
||||||
.B \-cutbuffer číslo
|
.B \-cutbuffer číslo
|
||||||
Dáta budú vložené do daného cutbuffera namiesto štandardného 0.
|
Dáta budú vložené do daného cutbuffera namiesto štandardného 0.
|
||||||
.TP
|
.TP
|
||||||
.B \-display displej
|
.B \-display displej
|
||||||
Dáta sa budú kopírovať do cutbufferov daného displeja/obrazovky.
|
Dáta sa budú kopírovať do cutbufferov daného displeja/obrazovky.
|
||||||
.TP
|
.TP
|
||||||
.B \-selection [selekcia]
|
.B \-selection [selekcia]
|
||||||
Dáta budú kopírované z danej selekcie. Ak sa výber zo selekcie nepodarí,
|
Dáta budú kopírované z danej selekcie. Ak sa výber zo selekcie nepodarí,
|
||||||
použije sa cutbuffer. Implicitná hodnota pre selekciu je PRIMARY.
|
použije sa cutbuffer. Implicitná hodnota pre selekciu je PRIMARY.
|
||||||
.PP
|
.PP
|
||||||
.SH CHYBY
|
.SH CHYBY
|
||||||
.TP
|
.TP
|
||||||
\-selection musí byť posledá voľba. Syntax môže byť upravená, ale
|
\-selection musí byť posledá voľba. Syntax môže byť upravená, ale
|
||||||
bráni tomu spätná kompatibilita.
|
bráni tomu spätná kompatibilita.
|
||||||
|
|
||||||
Typy selekcií INCR a MULTIPLE nie sú podporované. V skutočnosti je
|
Typy selekcií INCR a MULTIPLE nie sú podporované. V skutočnosti je
|
||||||
podporovaný len jednoduchý text, čo by malo stačiť pre väčšinu užívateľov
|
podporovaný len jednoduchý text, čo by malo stačiť pre väčšinu užívateľov
|
||||||
takejto jednoduchej utilitky.
|
takejto jednoduchej utilitky.
|
||||||
.SH POZRI TIEŽ
|
.SH POZRI TIEŽ
|
||||||
.BR wxcopy (1),
|
.BR wxcopy (1),
|
||||||
.BR wmaker (1)
|
.BR wmaker (1)
|
||||||
.SH AUTOR
|
.SH AUTOR
|
||||||
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
Autorom Window Makera je Alfredo K. Kojima <kojima@windowmaker.info>.
|
||||||
.PP
|
.PP
|
||||||
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
Túto manuálovú stránku napísal Marcelo Magallon <mmagallo@debian.org>.
|
||||||
|
|||||||
+10
-7
@@ -85,7 +85,7 @@ Attribute Editor (right drag the application's title bar, select
|
|||||||
Attributes) instead of modifying this file directly. There are just a
|
Attributes) instead of modifying this file directly. There are just a
|
||||||
few options not available using the Attributes Editor.
|
few options not available using the Attributes Editor.
|
||||||
.TP
|
.TP
|
||||||
.B @defsdatadir@/
|
.B @pkgconfdir@/
|
||||||
All the above-mentioned files are READ from here if not found except
|
All the above-mentioned files are READ from here if not found except
|
||||||
for WMState, which is COPIED from here. No matter where they are read
|
for WMState, which is COPIED from here. No matter where they are read
|
||||||
from, if it's necessary to write configuration changes back into this
|
from, if it's necessary to write configuration changes back into this
|
||||||
@@ -140,14 +140,17 @@ Guess... ;-)
|
|||||||
specifies the initial path for the Defaults directory. "Defaults/" is
|
specifies the initial path for the Defaults directory. "Defaults/" is
|
||||||
appended to this variable to determine the actual location of the
|
appended to this variable to determine the actual location of the
|
||||||
databases. If the variable is not set, it defaults to "~/GNUstep"
|
databases. If the variable is not set, it defaults to "~/GNUstep"
|
||||||
.IP GNUSTEP_LOCAL_ROOT
|
.IP GNUSTEP_USER_APPS
|
||||||
specifies the location of the system-wide \fBlocal\fP GNUstep
|
specifies the location of the user's GNUstep Apps directory. If this
|
||||||
|
variable is empty, it defaults to ~/GNUstep/Applications.
|
||||||
|
.IP GNUSTEP_LOCAL_APPS
|
||||||
|
specifies the location of the system-wide \fBlocal\fP GNUstep Apps
|
||||||
directory (this is useful, for example, in those cases where the
|
directory (this is useful, for example, in those cases where the
|
||||||
system-wide location is really a network wide location). If this
|
system-wide location is really a network wide location). If this
|
||||||
variable is empty, GNUSTEP_SYSTEM_ROOT is looked for.
|
variable is empty, it defaults to /usr/local/GNUstep/Local/Applications.
|
||||||
.IP GNUSTEP_SYSTEM_ROOT
|
.IP GNUSTEP_SYSTEM_APPS
|
||||||
specifies the location of the system-wide GNUstep directory. If this
|
specifies the location of the system-wide GNUstep Apps directory. If this
|
||||||
variable is empty, it defaults to /etc/GNUstep
|
variable is empty, it defaults to /usr/GNUstep/System/Applications.
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
The Window Maker User Guide
|
The Window Maker User Guide
|
||||||
.PP
|
.PP
|
||||||
|
|||||||
+77
-24
@@ -24,39 +24,61 @@ m4_pattern_forbid([^_?WM_])
|
|||||||
m4_pattern_allow([^WM_OSDEP(_[A-Z]*)?$])
|
m4_pattern_allow([^WM_OSDEP(_[A-Z]*)?$])
|
||||||
|
|
||||||
|
|
||||||
|
# WM_DENY_ARG_WITH(PACKAGE, ACTION-IF-GIVEN)
|
||||||
|
#
|
||||||
|
# Check if the argument "--with-PACKAGE" was used, and if it is the case
|
||||||
|
# execute ACTION-IF-GIVEN which is supposed to call AC_MSG_ERROR to
|
||||||
|
# stop any further processing and tell the user its arguments are bad
|
||||||
|
AC_DEFUN([WM_DENY_ARG_WITH],
|
||||||
|
[m4_divert_push([INIT_PREPARE])dnl
|
||||||
|
AS_IF([test "${[with_]m4_translit([$1], [-+.], [___])+set}" = set], [$2])
|
||||||
|
m4_divert_pop([INIT_PREPARE])])
|
||||||
|
|
||||||
|
|
||||||
# WM_CHECK_XFT_VERSION(MIN_VERSION, [ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]])
|
# WM_CHECK_XFT_VERSION(MIN_VERSION, [ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]])
|
||||||
#
|
#
|
||||||
# $XFTFLAGS should be defined before calling this macro,
|
# $XFT_CFLAGS should be defined before calling this macro,
|
||||||
# else it will not be able to find Xft.h
|
# else it will not be able to find Xft.h
|
||||||
#
|
#
|
||||||
AC_DEFUN([WM_CHECK_XFT_VERSION],
|
AC_DEFUN([WM_CHECK_XFT_VERSION],
|
||||||
[
|
[m4_define([XFT_REQUIRED_VERSION],
|
||||||
CPPFLAGS_old="$CPPFLAGS"
|
m4_eval(m4_bregexp($1, [^\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)],
|
||||||
CPPFLAGS="$CPPFLAGS $XFTFLAGS $inc_search_path"
|
[\1 * 10000 + \2 * 100 + \3]) ) )dnl
|
||||||
xft_major_version=`echo $1 | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
|
AC_CACHE_CHECK([whether libXft is at least version $1], [ac_cv_lib_xft_version_ok],
|
||||||
xft_minor_version=`echo $1 | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
|
[CPPFLAGS_save="$CPPFLAGS"
|
||||||
xft_micro_version=`echo $1 | sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
|
CPPFLAGS="$CPPFLAGS $XFT_CFLAGS $inc_search_path"
|
||||||
AC_MSG_CHECKING([whether libXft is at least version $1])
|
AC_TRY_LINK([
|
||||||
AC_CACHE_VAL(ac_cv_lib_xft_version_ok,
|
|
||||||
[AC_TRY_LINK(
|
|
||||||
[/* Test version of libXft we have */
|
|
||||||
#include <X11/Xlib.h>
|
#include <X11/Xlib.h>
|
||||||
#include <X11/Xft/Xft.h>
|
#include <X11/Xft/Xft.h>
|
||||||
|
], [
|
||||||
#if !defined(XFT_VERSION) || XFT_VERSION < $xft_major_version*10000 + $xft_minor_version*100 + $xft_micro_version
|
#if !defined(XFT_VERSION) || XFT_VERSION < ]XFT_REQUIRED_VERSION[
|
||||||
#error libXft on this system is too old. Consider upgrading to at least $1
|
#error libXft on this system is too old. Consider upgrading to at least $1
|
||||||
#endif
|
#endif
|
||||||
], [],
|
], [ac_cv_lib_xft_version_ok=yes], [ac_cv_lib_xft_version_ok=no])
|
||||||
eval "ac_cv_lib_xft_version_ok=yes",
|
CPPFLAGS="$CPPFLAGS_save"])
|
||||||
eval "ac_cv_lib_xft_version_ok=no")])
|
m4_undefine([XFT_REQUIRED_VERSION])dnl
|
||||||
if eval "test \"`echo '$ac_cv_lib_xft_version_ok'`\" = yes"; then
|
AS_IF([test "x$ac_cv_lib_xft_version_ok" != "xyes"], [$3], [$2])dnl
|
||||||
AC_MSG_RESULT(yes)
|
])
|
||||||
ifelse([$2], , :, [$2])
|
|
||||||
else
|
|
||||||
AC_MSG_RESULT(no)
|
# WM_CHECK_LIBPANGO
|
||||||
ifelse([$3], , , [$3])
|
# -----------------
|
||||||
fi
|
#
|
||||||
CPPFLAGS="$CPPFLAGS_old"
|
# If the support was not disabled by user, check for the pango library using
|
||||||
|
# pkg-config, and if found place the appropriate stuff in the variables
|
||||||
|
# PANGO_CFLAGS (for compiler) and PANGO_LIBS (for linker)
|
||||||
|
AC_DEFUN([WM_CHECK_LIBPANGO],
|
||||||
|
[AS_IF([test "x$enable_pango" != "xno"],
|
||||||
|
[PKG_CHECK_MODULES([PANGO], [pangoxft],
|
||||||
|
[AC_DEFINE([USE_PANGO], [1], [defined when the pango library is used in WINGs])
|
||||||
|
pango="yes"],
|
||||||
|
[pango="no"])
|
||||||
|
AS_IF([test "x$enable_pango$pango" == "xyesno"],
|
||||||
|
[AC_MSG_ERROR([Pango library was not found - $PANGO_PKG_ERRORS])])
|
||||||
|
],
|
||||||
|
[pango="no"])
|
||||||
|
AC_SUBST([PANGO_CFLAGS])dnl
|
||||||
|
AC_SUBST([PANGO_LIBS])dnl
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
@@ -183,6 +205,37 @@ m4_popdef([USEVAR])dnl
|
|||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
|
# WM_CHECK_WEBREPODIR
|
||||||
|
# -------------------
|
||||||
|
#
|
||||||
|
# If the maintainer's option --with-web-repo was specified, check that the path provided is a valid
|
||||||
|
# existing directory and that it is a GIT repository that looks like Window Maker's Website repo.
|
||||||
|
AC_DEFUN_ONCE([WM_CHECK_WEBREPODIR],
|
||||||
|
[AS_IF([test "x$WEB_REPO_ROOT" != "x"],
|
||||||
|
[AS_IF([test ! -d "$WEB_REPO_ROOT"],
|
||||||
|
[AC_MSG_ERROR([The path "$with_web_repo" is not a directory, for --with-web-repo])])
|
||||||
|
|
||||||
|
# Convert to an Absolute path in the case it is not
|
||||||
|
WEB_REPO_ROOT=`cd "$WEB_REPO_ROOT" ; pwd`
|
||||||
|
|
||||||
|
AS_IF([test ! -d "$WEB_REPO_ROOT/.git"],
|
||||||
|
[AC_MSG_ERROR([The path "$WEB_REPO_ROOT" is not a GIT repository, for --with-web-repo])])
|
||||||
|
AS_IF([test ! -f "$WEB_REPO_ROOT/_config.yml"],
|
||||||
|
[AC_MSG_ERROR([The path "$WEB_REPO_ROOT" does not look like Window Maker's website repository, for --with-web-repo])])
|
||||||
|
|
||||||
|
# This is used to convert MAN pages into HTML pages
|
||||||
|
AC_CACHE_CHECK([how to convert man to html], [ac_cv_path_GROFF],
|
||||||
|
[AC_PATH_PROGS_FEATURE_CHECK([GROFF], [groff],
|
||||||
|
[echo '.TH dummy 0' | $ac_path_GROFF -man -Dutf8 -Thtml > /dev/null 2> /dev/null
|
||||||
|
test $? -eq 0 && ac_cv_path_GROFF=$ac_path_GROFF ac_path_GROFF_found=:],
|
||||||
|
[AC_MSG_ERROR([no working "groff" found -- If you have "groff-base" it is not enough for HTML support])]) ])
|
||||||
|
AC_SUBST([GROFF], [$ac_cv_path_GROFF])
|
||||||
|
])
|
||||||
|
AM_CONDITIONAL([WITH_WEB_REPO], [test "x$WEB_REPO_ROOT" != "x"])
|
||||||
|
AC_SUBST([WEB_REPO_ROOT])
|
||||||
|
])
|
||||||
|
|
||||||
|
|
||||||
# WM_FUNC_SECURE_GETENV
|
# WM_FUNC_SECURE_GETENV
|
||||||
# ---------------------
|
# ---------------------
|
||||||
#
|
#
|
||||||
|
|||||||
+11
-4
@@ -37,7 +37,7 @@ AC_DEFUN_ONCE([WM_I18N_LANGUAGES],
|
|||||||
[AC_ARG_VAR([LINGUAS],
|
[AC_ARG_VAR([LINGUAS],
|
||||||
[list of language translations to support (I18N), use 'list' to get the list of supported languages, default: none])dnl
|
[list of language translations to support (I18N), use 'list' to get the list of supported languages, default: none])dnl
|
||||||
AC_DEFUN([WM_ALL_LANGUAGES],
|
AC_DEFUN([WM_ALL_LANGUAGES],
|
||||||
[m4_esyscmd([( ls WINGs/po/ ; ls po/ ; ls WPrefs.app/po/ ; ls util/po/ ) | sed -n -e '/po$/{s,\.po,,;p}' | sort -u | tr '\n' ' '])])dnl
|
[m4_esyscmd([( ls wrlib/po/ ; ls WINGs/po/ ; ls po/ ; ls WPrefs.app/po/ ; ls util/po/ ) | sed -n -e '/po$/{s,\.po,,;p}' | sort -u | tr '\n' ' '])])dnl
|
||||||
dnl We 'divert' the macro to have it executed as soon as the option list have
|
dnl We 'divert' the macro to have it executed as soon as the option list have
|
||||||
dnl been processed, so the list of locales will be printed after the configure
|
dnl been processed, so the list of locales will be printed after the configure
|
||||||
dnl options have been parsed, but before any test have been run
|
dnl options have been parsed, but before any test have been run
|
||||||
@@ -66,6 +66,7 @@ AS_IF([test "x$LINGUAS" != "x"],
|
|||||||
supported_locales=""
|
supported_locales=""
|
||||||
|
|
||||||
# This is the list of locales that our archive currently supports
|
# This is the list of locales that our archive currently supports
|
||||||
|
wraster_locales=" m4_esyscmd([ls wrlib/po/ | sed -n '/po$/{s,.po,,;p}' | tr '\n' ' '])"
|
||||||
wings_locales=" m4_esyscmd([ls WINGs/po/ | sed -n '/po$/{s,.po,,;p}' | tr '\n' ' '])"
|
wings_locales=" m4_esyscmd([ls WINGs/po/ | sed -n '/po$/{s,.po,,;p}' | tr '\n' ' '])"
|
||||||
wmaker_locales=" m4_esyscmd([ls po/ | sed -n '/po$/{s,.po,,;p}' | tr '\n' ' '])"
|
wmaker_locales=" m4_esyscmd([ls po/ | sed -n '/po$/{s,.po,,;p}' | tr '\n' ' '])"
|
||||||
wprefs_locales=" m4_esyscmd([ls WPrefs.app/po/ | sed -n '/po$/{s,.po,,;p}' | tr '\n' ' '])"
|
wprefs_locales=" m4_esyscmd([ls WPrefs.app/po/ | sed -n '/po$/{s,.po,,;p}' | tr '\n' ' '])"
|
||||||
@@ -81,7 +82,7 @@ AS_IF([test "x$LINGUAS" != "x"],
|
|||||||
for lang in $LINGUAS; do
|
for lang in $LINGUAS; do
|
||||||
found=0
|
found=0
|
||||||
wm_missing=""
|
wm_missing=""
|
||||||
m4_foreach([REGION], [WINGs, wmaker, WPrefs, util, man],
|
m4_foreach([REGION], [WRaster, WINGs, wmaker, WPrefs, util, man],
|
||||||
[AS_IF([echo "$[]m4_tolower(REGION)[]_locales" | grep " $lang " > /dev/null],
|
[AS_IF([echo "$[]m4_tolower(REGION)[]_locales" | grep " $lang " > /dev/null],
|
||||||
[m4_toupper(REGION)MOFILES="$[]m4_toupper(REGION)MOFILES $lang.mo"
|
[m4_toupper(REGION)MOFILES="$[]m4_toupper(REGION)MOFILES $lang.mo"
|
||||||
found=1],
|
found=1],
|
||||||
@@ -103,6 +104,7 @@ AS_IF([test "x$LINGUAS" != "x"],
|
|||||||
MANLANGDIRS="`echo $MANMOFILES | sed -e 's,\.mo,,g' `"
|
MANLANGDIRS="`echo $MANMOFILES | sed -e 's,\.mo,,g' `"
|
||||||
],
|
],
|
||||||
[INTLIBS=""
|
[INTLIBS=""
|
||||||
|
WRASTERMOFILES=""
|
||||||
WINGSMOFILES=""
|
WINGSMOFILES=""
|
||||||
WMAKERMOFILES=""
|
WMAKERMOFILES=""
|
||||||
WPREFSMOFILES=""
|
WPREFSMOFILES=""
|
||||||
@@ -112,6 +114,7 @@ AS_IF([test "x$LINGUAS" != "x"],
|
|||||||
dnl
|
dnl
|
||||||
dnl The variables that are used in the Makefiles:
|
dnl The variables that are used in the Makefiles:
|
||||||
AC_SUBST([INTLIBS])dnl
|
AC_SUBST([INTLIBS])dnl
|
||||||
|
AC_SUBST([WRASTERMOFILES])dnl
|
||||||
AC_SUBST([WINGSMOFILES])dnl
|
AC_SUBST([WINGSMOFILES])dnl
|
||||||
AC_SUBST([WMAKERMOFILES])dnl
|
AC_SUBST([WMAKERMOFILES])dnl
|
||||||
AC_SUBST([WPREFSMOFILES])dnl
|
AC_SUBST([WPREFSMOFILES])dnl
|
||||||
@@ -144,7 +147,8 @@ AM_CONDITIONAL([HAVE_XGETTEXT], [test "x$XGETTEXT" != "x"])dnl
|
|||||||
# wish to customize the menus, and thus can make them translatable
|
# wish to customize the menus, and thus can make them translatable
|
||||||
# with their own po/mo files without having to touch WMaker's stuff.
|
# with their own po/mo files without having to touch WMaker's stuff.
|
||||||
AC_DEFUN_ONCE([WM_I18N_MENUTEXTDOMAIN],
|
AC_DEFUN_ONCE([WM_I18N_MENUTEXTDOMAIN],
|
||||||
[AC_ARG_WITH([menu-textdomain],
|
[m4_divert_push([INIT_PREPARE])dnl
|
||||||
|
AC_ARG_WITH([menu-textdomain],
|
||||||
[AS_HELP_STRING([--with-menu-textdomain=DOMAIN],
|
[AS_HELP_STRING([--with-menu-textdomain=DOMAIN],
|
||||||
[specify gettext domain used for menu translations])],
|
[specify gettext domain used for menu translations])],
|
||||||
[AS_CASE([$withval],
|
[AS_CASE([$withval],
|
||||||
@@ -152,6 +156,7 @@ AC_DEFUN_ONCE([WM_I18N_MENUTEXTDOMAIN],
|
|||||||
[no], [menutextdomain=""],
|
[no], [menutextdomain=""],
|
||||||
[menutextdomain="$withval"])],
|
[menutextdomain="$withval"])],
|
||||||
[menutextdomain=""])
|
[menutextdomain=""])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
AS_IF([test "x$menutextdomain" != "x"],
|
AS_IF([test "x$menutextdomain" != "x"],
|
||||||
[AC_DEFINE_UNQUOTED([MENU_TEXTDOMAIN], ["$menutextdomain"],
|
[AC_DEFINE_UNQUOTED([MENU_TEXTDOMAIN], ["$menutextdomain"],
|
||||||
[gettext domain to be used for menu translations]) ])
|
[gettext domain to be used for menu translations]) ])
|
||||||
@@ -164,13 +169,15 @@ dnl
|
|||||||
dnl X11 needs to redefine the function 'setlocale' to properly initialize itself,
|
dnl X11 needs to redefine the function 'setlocale' to properly initialize itself,
|
||||||
dnl we check if user wants to disable this behaviour or if it is not supported
|
dnl we check if user wants to disable this behaviour or if it is not supported
|
||||||
AC_DEFUN_ONCE([WM_I18N_XLOCALE],
|
AC_DEFUN_ONCE([WM_I18N_XLOCALE],
|
||||||
[AC_ARG_ENABLE([xlocale],
|
[m4_divert_push([INIT_PREPARE])dnl
|
||||||
|
AC_ARG_ENABLE([xlocale],
|
||||||
[AS_HELP_STRING([--disable-xlocale],
|
[AS_HELP_STRING([--disable-xlocale],
|
||||||
[disable initialization of locale for X])],
|
[disable initialization of locale for X])],
|
||||||
[AS_CASE([$enableval],
|
[AS_CASE([$enableval],
|
||||||
[yes|no], [],
|
[yes|no], [],
|
||||||
[AC_MSG_ERROR([bad value '$enableval' for --disable-xlocale])])],
|
[AC_MSG_ERROR([bad value '$enableval' for --disable-xlocale])])],
|
||||||
[enable_xlocale=auto])
|
[enable_xlocale=auto])
|
||||||
|
m4_divert_pop([INIT_PREPARE])dnl
|
||||||
AS_IF([test "x$enable_xlocale" != "xno"],
|
AS_IF([test "x$enable_xlocale" != "xno"],
|
||||||
[AC_CHECK_LIB([X11], [_Xsetlocale],
|
[AC_CHECK_LIB([X11], [_Xsetlocale],
|
||||||
[AC_DEFINE([X_LOCALE], [1],
|
[AC_DEFINE([X_LOCALE], [1],
|
||||||
|
|||||||
@@ -0,0 +1,67 @@
|
|||||||
|
# wm_library_constructors.m4 - Macros to see if compiler supports attributes "constructors" for libraries
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 Christophe CURIS
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License along
|
||||||
|
# with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
|
|
||||||
|
# WM_LIBRARY_CONSTRUCTORS
|
||||||
|
# -----------------------
|
||||||
|
#
|
||||||
|
# GCC introduced the attribute 'constructor' which says that a function must be
|
||||||
|
# called when a library is loaded (needed for C++ support). However this may not
|
||||||
|
# be totally portable, so we may use the old method "_init" as a fall-back
|
||||||
|
# solution, which is considered Obsolete/Dangerous.
|
||||||
|
#
|
||||||
|
# This is explained here:
|
||||||
|
# https://tldp.org/HOWTO/Program-Library-HOWTO/miscellaneous.html#INIT-AND-CLEANUP
|
||||||
|
#
|
||||||
|
# This macro is making sure that the compiler supports the attribute, because we
|
||||||
|
# need it for the WRaster library (see RStartup in wrlib/misc.c to see why).
|
||||||
|
AC_DEFUN_ONCE([WM_LIBRARY_CONSTRUCTORS],
|
||||||
|
[AC_CACHE_CHECK([how to declare a library constructor], [wm_cv_library_constructors],
|
||||||
|
[save_CFLAGS="$CFLAGS"
|
||||||
|
dnl We need this to cause a detectable failure in case of unsupported attribute name
|
||||||
|
dnl if we don't do this, we just get a warning and AC_COMPILE suppose it was ok.
|
||||||
|
CFLAGS="$CFLAGS -Werror"
|
||||||
|
AC_COMPILE_IFELSE(
|
||||||
|
[AC_LANG_SOURCE([[
|
||||||
|
static int is_initialised = 0;
|
||||||
|
|
||||||
|
void __attribute__ ((constructor)) special_function(void)
|
||||||
|
{
|
||||||
|
is_initialised = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(int argc, char **argv)
|
||||||
|
{
|
||||||
|
/* To avoid warning on unused parameters, they could cause a false failure */
|
||||||
|
(void) argc;
|
||||||
|
(void) argv;
|
||||||
|
return (is_initialised)?0:1;
|
||||||
|
}
|
||||||
|
]]) ],
|
||||||
|
[wm_cv_library_constructors=attribute],
|
||||||
|
[wm_cv_library_constructors=legacy])
|
||||||
|
CFLAGS="$save_CFLAGS"])
|
||||||
|
dnl In a perfect world we should also make sure that the feature works, but that implies
|
||||||
|
dnl to be able to actually build and run a program, which is not compatible with a
|
||||||
|
dnl cross-compiling user setup
|
||||||
|
AS_IF([test "X$wm_cv_library_constructors" = "Xattribute"],
|
||||||
|
[AC_DEFINE([WLIB_CONSTRUCTOR(func_name)], [__attribute__ ((constructor)) func_name],
|
||||||
|
[Method for defining a library initialisation function])],
|
||||||
|
[AC_DEFINE([WLIB_CONSTRUCTOR(func_name)], [_init],
|
||||||
|
[Method for defining a library initialisation function])] )
|
||||||
|
])
|
||||||
@@ -27,7 +27,7 @@ fi.po Finnish Ville Hautamaki <villeh@cs.joensuu.fi>
|
|||||||
Tomi Kajala <tomi@iki.fi>
|
Tomi Kajala <tomi@iki.fi>
|
||||||
hr.po Croatian 3 Toni Bilic <tbilic@efos.hr>
|
hr.po Croatian 3 Toni Bilic <tbilic@efos.hr>
|
||||||
el.po Greek Nikolaos Papagrigoriou <papanikos@usa.net>
|
el.po Greek Nikolaos Papagrigoriou <papanikos@usa.net>
|
||||||
pl.po Polish Piotr Dembiñski <pdemb@aurora.put.poznan.pl>
|
pl.po Polish Piotr Dembiñski <pdemb@aurora.put.poznan.pl>
|
||||||
ro.po Romanian Andrei Vuta <gigi_man@manag.pub.ro>
|
ro.po Romanian Andrei Vuta <gigi_man@manag.pub.ro>
|
||||||
da.po Danish Birger Langkjer <langkjer@post3.tele.dk>
|
da.po Danish Birger Langkjer <langkjer@post3.tele.dk>
|
||||||
zh_TW.Big5.po Chinese Li Wei Jih <lwj@manufacture.com.tw>
|
zh_TW.Big5.po Chinese Li Wei Jih <lwj@manufacture.com.tw>
|
||||||
@@ -40,7 +40,7 @@ hu.po Hungarian HORVATH Szabolcs <horvaths@inf.elte.hu>
|
|||||||
et.po Estonian Ivar Smolin <okul@trenet.ee>
|
et.po Estonian Ivar Smolin <okul@trenet.ee>
|
||||||
ms.po Malay Hasbullah Bin Pit (sebol) <sebol@ikhlas.com>
|
ms.po Malay Hasbullah Bin Pit (sebol) <sebol@ikhlas.com>
|
||||||
be.po Belarusian Ihar Viarheichyk <iverg@mail.ru>
|
be.po Belarusian Ihar Viarheichyk <iverg@mail.ru>
|
||||||
ca.po Catalan Ernest Adrogué <eadrogue@gmx.net>
|
ca.po Catalan Ernest Adrogué <eadrogue@gmx.net>
|
||||||
bs.po Bosnian Ahmet Mulalic <am@lugzdk.ba>
|
bs.po Bosnian Ahmet Mulalic <am@lugzdk.ba>
|
||||||
hy.po Armenian Norayr Chilignaryan <chnorik@gmail.com>
|
hy.po Armenian Norayr Chilignaryan <chnorik@gmail.com>
|
||||||
nl.po Dutch Alwin <translations@ziggo.nl>
|
nl.po Dutch Alwin <translations@ziggo.nl>
|
||||||
|
|||||||
@@ -1522,8 +1522,8 @@ msgstr ""
|
|||||||
"Confirmez-vous ?"
|
"Confirmez-vous ?"
|
||||||
|
|
||||||
#: ../src/winmenu.c:274 ../src/winmenu.c:283
|
#: ../src/winmenu.c:274 ../src/winmenu.c:283
|
||||||
msgid "Set Shortcut"
|
msgid "Set Shortcut %i"
|
||||||
msgstr "Attribuer le raccourci"
|
msgstr "Attribuer le raccourci n°%i"
|
||||||
|
|
||||||
#: ../src/winmenu.c:361 ../src/winmenu.c:406
|
#: ../src/winmenu.c:361 ../src/winmenu.c:406
|
||||||
msgid "could not create submenu for window menu"
|
msgid "could not create submenu for window menu"
|
||||||
|
|||||||
Executable
+313
@@ -0,0 +1,313 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
###########################################################################
|
||||||
|
#
|
||||||
|
# Window Maker window manager
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 Christophe CURIS
|
||||||
|
# Copyright (c) 2021 Window Maker Team
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License along
|
||||||
|
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
###########################################################################
|
||||||
|
#
|
||||||
|
# generate-html-from-man.sh:
|
||||||
|
# Convert a man page into HTML using Groff, then post-process it to make
|
||||||
|
# it fit the Window Maker site's theme and install it into the website
|
||||||
|
# Git repository.
|
||||||
|
#
|
||||||
|
# The pages are generated as xhtml because that's the most convenient
|
||||||
|
# format at current time that Groff can provide. The post-processing of the
|
||||||
|
# page includes:
|
||||||
|
#
|
||||||
|
# - the basic style sheet included by groff is replaced by a call to "manpage.css";
|
||||||
|
#
|
||||||
|
# - if a menu list is provided with "--with-menu", then it is added at the
|
||||||
|
# beginning of the <body> inside an "ul" with class="menu";
|
||||||
|
#
|
||||||
|
# - the list of sections at the beginning is enclosed in a div with class="toc";
|
||||||
|
#
|
||||||
|
# - emails addresses in the form "<name@example.com>" are obfuscated (to
|
||||||
|
# not help spambots) and a mailto: link is added;
|
||||||
|
#
|
||||||
|
# - a link is added when an url of the form "http://..." is encountered;
|
||||||
|
#
|
||||||
|
# - when a man-page reference is found, in the form "name(section)", a link
|
||||||
|
# is added, either to a local page if in the "--local-pages" list or to the
|
||||||
|
# external url provided in "--external-url";
|
||||||
|
#
|
||||||
|
# - if the package name and version is provided with "--package", then a div with
|
||||||
|
# class="footer" is added at the end of the <body>.
|
||||||
|
#
|
||||||
|
###########################################################################
|
||||||
|
#
|
||||||
|
# For portability, we stick to the same sh+awk constraint as Autotools to
|
||||||
|
# limit problems, see for example:
|
||||||
|
# http://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Portable-Shell.html
|
||||||
|
#
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
# Report an error on stderr and exit with status 2 to tell make that we could
|
||||||
|
# not do what we were asked
|
||||||
|
arg_error() {
|
||||||
|
echo "`basename $0`: $@" >&2
|
||||||
|
exit 2
|
||||||
|
}
|
||||||
|
|
||||||
|
# print help and exit with success status
|
||||||
|
print_help() {
|
||||||
|
echo "$0: convert man page into HTML"
|
||||||
|
echo "Usage: $0 options... man-page-file"
|
||||||
|
echo "valid options are:"
|
||||||
|
echo " --external-url tmpl : use tmpl as URL template for non-local man pages"
|
||||||
|
echo " --groff name : name of groff binary to use"
|
||||||
|
echo " --local-pages names : list of man pages that are available locally"
|
||||||
|
echo " --output filename : name of the HTML file to generate"
|
||||||
|
echo " --with-menu code : insert the specified code to add a navigation menu"
|
||||||
|
echo " --package name : name of package, added in the footer of page"
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# Sets the default values
|
||||||
|
GROFF=groff
|
||||||
|
|
||||||
|
# Extract command line arguments
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
case $1 in
|
||||||
|
--external-url)
|
||||||
|
shift
|
||||||
|
[ "x$external_template" = "x" ] || arg_error "only 1 template for URL can be specified (option: --external-url)"
|
||||||
|
external_template=$1
|
||||||
|
;;
|
||||||
|
|
||||||
|
--groff)
|
||||||
|
shift
|
||||||
|
GROFF=$1
|
||||||
|
;;
|
||||||
|
|
||||||
|
--local-pages)
|
||||||
|
shift
|
||||||
|
local_pages="$local_pages $1 "
|
||||||
|
;;
|
||||||
|
|
||||||
|
--output)
|
||||||
|
shift
|
||||||
|
[ -z "$output_file" ] || arg_error "only 1 target file can be specified (option: --output)"
|
||||||
|
output_file="$1"
|
||||||
|
;;
|
||||||
|
|
||||||
|
--with-menu)
|
||||||
|
shift
|
||||||
|
[ -z "$menu_line" ] || arg_error "only 1 code for the menu can be specified (option: --with-menu)"
|
||||||
|
menu_line=`echo "$1" | sed -e 's/"/\\\"/g' `
|
||||||
|
;;
|
||||||
|
|
||||||
|
--package)
|
||||||
|
shift
|
||||||
|
[ -z "$package_line" ] || arg_error "package name can be specified only once (option: --package)"
|
||||||
|
package_line="$1"
|
||||||
|
;;
|
||||||
|
|
||||||
|
-h|-help|--help) print_help ;;
|
||||||
|
-*) arg_error "unknow option '$1'" ;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
[ -z "$input_file" ] || arg_error "only 1 man page can be specified"
|
||||||
|
input_file=$1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
# Check consistency of command-line
|
||||||
|
[ -z "$input_file" ] && arg_error "no source man page given"
|
||||||
|
[ -f "$input_file" ] || arg_error "man page \"$input_file\" cannot be read"
|
||||||
|
|
||||||
|
if [ -n "$external_template" ]; then
|
||||||
|
echo "$external_template" | grep '%[plu]' > /dev/null \
|
||||||
|
|| arg_error "no marker %p, %l or %u for the page name in the URL template (option: --external-url)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Generate the name of the output file from the man page file name
|
||||||
|
if [ -z "$output_file" ]; then
|
||||||
|
output_file=`echo "$input_file" | sed 's,^.*/,,g ; s/\.[^.]*$//' `.html
|
||||||
|
fi
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
# Pass the configuration to the AWK script; remove the path information
|
||||||
|
awk_init="BEGIN {
|
||||||
|
external_template = \"$external_template\";
|
||||||
|
known_pages = \" $local_pages \";
|
||||||
|
menu_code = \"$menu_line\";
|
||||||
|
package_line = \"$package_line\";
|
||||||
|
source_name = \"`basename "$input_file" `\";
|
||||||
|
}"
|
||||||
|
|
||||||
|
# This AWK script is post-processing the HTML generated by Groff
|
||||||
|
awk_process_html='
|
||||||
|
/<html>/ {
|
||||||
|
print;
|
||||||
|
$0 = "<!-- This file is generated automatically by a script, do not edit -->";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Groff is generating a title with the name of the command, followed by a table of content
|
||||||
|
# We detect all this and embed it into a <div> section for presentation purpose
|
||||||
|
/<h1/ {
|
||||||
|
header = gensub(/<h1[^>]*>([^<]*)<\/h1>/, "\\1", 1);
|
||||||
|
print " <div class=\"toc\">";
|
||||||
|
print " <label for=\"toc-checkbutton\">" header "</label>";
|
||||||
|
print " <input type=\"checkbox\" id=\"toc-checkbutton\" checked=\"true\">";
|
||||||
|
print " <div id=\"toc-list\">";
|
||||||
|
getline;
|
||||||
|
while (!/<hr>/) {
|
||||||
|
if (length($0) > 0) {
|
||||||
|
print " " $0;
|
||||||
|
}
|
||||||
|
getline;
|
||||||
|
}
|
||||||
|
print " <hr>";
|
||||||
|
print " <a href=\".\" class=\"return\">Return to list</a><br>";
|
||||||
|
print " </div>";
|
||||||
|
print " </div>";
|
||||||
|
print "";
|
||||||
|
$0 = "<article>";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Groff is adding an horizontal line at the end of the page, we remove it;
|
||||||
|
# we take the opportunity to close the <article> that we opened after the toc
|
||||||
|
/<hr>/ {
|
||||||
|
$0 = "</article>"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Groff includes a basic CSS style, we want to replace it with our own to be consitent with
|
||||||
|
# the general website style
|
||||||
|
/<style/ {
|
||||||
|
while (!/<\/style>/) {
|
||||||
|
getline;
|
||||||
|
}
|
||||||
|
print "<link rel=\"stylesheet\" type=\"text/css\" href=\"/style.css\">";
|
||||||
|
$0 = "<link rel=\"stylesheet\" type=\"text/css\" href=\"/manpage.css\">"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Detect the email address and add a link; take the opportunity to conceal it the same way it is
|
||||||
|
# done for the mailing list, to make spammers work less easy
|
||||||
|
/<[^@ ]*@[^<@> ]*>/ && inside_body {
|
||||||
|
line = "";
|
||||||
|
while (1) {
|
||||||
|
idx_start = match($0, /<[^@ ]*@[^<@> ]*>/);
|
||||||
|
if (idx_start == 0) break;
|
||||||
|
|
||||||
|
email = substr($0, idx_start + 4, RLENGTH - 8);
|
||||||
|
gsub(/@/, " (at) ", email);
|
||||||
|
gsub(/\./, " (dot) ", email);
|
||||||
|
|
||||||
|
line = line substr($0, 1, idx_start - 1) "<";
|
||||||
|
line = line "<a href=\"mailto:" email "\">" email "</a>>";
|
||||||
|
$0 = substr($0, idx_start + RLENGTH);
|
||||||
|
}
|
||||||
|
$0 = line $0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Detect urls and add a link
|
||||||
|
/http:\/\// && inside_body {
|
||||||
|
line = "";
|
||||||
|
while (1) {
|
||||||
|
idx_start = index($0, "http://");
|
||||||
|
if (idx_start == 0) break;
|
||||||
|
|
||||||
|
line = line substr($0, 1, idx_start - 1);
|
||||||
|
$0 = substr($0, idx_start);
|
||||||
|
idx_end = match($0, /[ \t&]/);
|
||||||
|
if (idx_end == 0) idx_end = length($0) + 1;
|
||||||
|
|
||||||
|
line = line "<a href=\"" substr($0, 1, idx_end - 1) "\">";
|
||||||
|
line = line substr($0, 1, idx_end - 1) "</a>";
|
||||||
|
|
||||||
|
$0 = substr($0, idx_end);
|
||||||
|
}
|
||||||
|
$0 = line $0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Detect references to other man pages and add a link
|
||||||
|
/<b>[A-Za-z_0-9]*<\/b>\([1-9][a-z]*\)/ {
|
||||||
|
line = "";
|
||||||
|
while (1) {
|
||||||
|
idx_start = match($0, /<b>[A-Za-z_0-9]*<\/b>\([1-9][a-z]*\)/);
|
||||||
|
if (idx_start == 0) break;
|
||||||
|
|
||||||
|
line = line substr($0, 1, idx_start - 1);
|
||||||
|
split(substr($0, idx_start + 3), elements, /<\/b>\(|\)/);
|
||||||
|
# elements[1] contains the name of the man-page
|
||||||
|
# elements[2] contains the section
|
||||||
|
$0 = substr($0, idx_start + RLENGTH);
|
||||||
|
|
||||||
|
idx_known = match(known_pages, " ([^ ]*/)*" elements[1] "\\." elements[2]);
|
||||||
|
if (idx_known == 0) {
|
||||||
|
if (external_template == "") {
|
||||||
|
print "Error: no URL provided for external man page, needed for \"" elements[1] "(" elements[2] ")\" at line " NR > "/dev/stderr";
|
||||||
|
exit(2);
|
||||||
|
}
|
||||||
|
url = gensub(/%s/, elements[2], "g", external_template);
|
||||||
|
url = gensub(/%p/, elements[1], "g", url);
|
||||||
|
url = gensub(/%l/, tolower(elements[1]), "g", url);
|
||||||
|
url = gensub(/%u/, toupper(elements[1]), "g", url);
|
||||||
|
} else {
|
||||||
|
# When it is a known page, use the data from known_pages to have possible path information
|
||||||
|
url = substr(known_pages, idx_known + 1, RLENGTH - length(elements[2]) - 2) ".html";
|
||||||
|
}
|
||||||
|
|
||||||
|
line = line "<a href=\"" url "\"><tt>" elements[1] "</tt>(" elements[2] ")</a>";
|
||||||
|
}
|
||||||
|
$0 = line $0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Detect the start of the page to insert the navigation menu code
|
||||||
|
/<body>/ {
|
||||||
|
inside_body = 1;
|
||||||
|
print;
|
||||||
|
print "<div id=\"wrapper\">";
|
||||||
|
if (menu_code) {
|
||||||
|
while (getline < menu_code) {
|
||||||
|
print;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
/<\/body>/ {
|
||||||
|
if (package_line) {
|
||||||
|
print "<div class=\"footer\">"
|
||||||
|
print " This man page is part of <div id=\"pkgname\">" package_line "</div>";
|
||||||
|
print "</div>"
|
||||||
|
}
|
||||||
|
print " <div id=\"titlebar\">";
|
||||||
|
print " <div id=\"minimize\"></div>";
|
||||||
|
print " <div id=\"titlebar-inner\">Window Maker Manual: " gensub(/\.(.*)$/, "(\\1)", 1, source_name) "</div>";
|
||||||
|
print " <div id=\"close\"></div>";
|
||||||
|
print " </div>";
|
||||||
|
print " <div id=\"resizebar\">";
|
||||||
|
print " <div id=\"resizel\"></div>";
|
||||||
|
print " <div id=\"resizebar-inner\"></div>";
|
||||||
|
print " <div id=\"resizer\"></div>";
|
||||||
|
print " </div>";
|
||||||
|
print "</div>"; # close "wrapper"
|
||||||
|
inside_body = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
{ print }
|
||||||
|
'
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
$GROFF -man -Dutf8 -Thtml < "$input_file" | \
|
||||||
|
awk "$awk_init$awk_process_html" > "$TARGET/$output_file" \
|
||||||
|
|| exit $?
|
||||||
Executable
+218
@@ -0,0 +1,218 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
###########################################################################
|
||||||
|
#
|
||||||
|
# Window Maker window manager
|
||||||
|
#
|
||||||
|
# Copyright (c) 2021 Christophe CURIS
|
||||||
|
# Copyright (c) 2021 Window Maker Team
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License along
|
||||||
|
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
###########################################################################
|
||||||
|
#
|
||||||
|
# replace-generated-content.sh:
|
||||||
|
# Re-generate some list of things and replace it in an existing file
|
||||||
|
#
|
||||||
|
# The script can generate these kind of information:
|
||||||
|
#
|
||||||
|
# - a list of man pages (--man-pages), in which case the following fields
|
||||||
|
# are available for the template replacement:
|
||||||
|
# \1: file for the man page, with directories removed, with '.html' extension
|
||||||
|
# \2: name of the man page, taken from the file name
|
||||||
|
# \3: section of the page, taken from the file name
|
||||||
|
# \4: one line description, taken from the man page's NAME section
|
||||||
|
#
|
||||||
|
# The 'template' argument provides the template on how to generate one line
|
||||||
|
# with the new content, the '\n' being replaced with the values explained
|
||||||
|
# above.
|
||||||
|
#
|
||||||
|
# The 'marker' arguments tells the script where the content is to be placed
|
||||||
|
# in the edited file:
|
||||||
|
# - the beginning of generated content is located from the line containing
|
||||||
|
# the pattern 'start ' + the marker text
|
||||||
|
# - the end is marked by 'end ' + marker
|
||||||
|
# No content outside the start/end is modified. When inserting the content
|
||||||
|
# the script is re-using the indentation that was found in the line with the
|
||||||
|
# start marker.
|
||||||
|
#
|
||||||
|
###########################################################################
|
||||||
|
#
|
||||||
|
# For portability, we stick to the same sh+awk constraint as Autotools to
|
||||||
|
# limit problems, see for example:
|
||||||
|
# http://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Portable-Shell.html
|
||||||
|
#
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
# Report an error on stderr and exit with status 2 to tell make that we could
|
||||||
|
# not do what we were asked
|
||||||
|
arg_error() {
|
||||||
|
echo "`basename $0`: $@" >&2
|
||||||
|
exit 2
|
||||||
|
}
|
||||||
|
|
||||||
|
# print help and exit with success status
|
||||||
|
print_help() {
|
||||||
|
echo "$0: replace lines by new content"
|
||||||
|
echo "Usage: $0 options... file"
|
||||||
|
echo "valid options are:"
|
||||||
|
echo " --template string : template text for generating the data"
|
||||||
|
echo " --man-pages list : content from the list of these man pages"
|
||||||
|
echo " --marker mark : comment mark surrounding the data to update"
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# Extract command line arguments
|
||||||
|
while [ $# -gt 0 ]; do
|
||||||
|
case $1 in
|
||||||
|
--man-pages)
|
||||||
|
shift
|
||||||
|
man_pages="$man_pages $1 "
|
||||||
|
;;
|
||||||
|
|
||||||
|
--marker)
|
||||||
|
shift
|
||||||
|
[ "x$mark" = "x" ] || arg_error "only 1 marker can be specified (option: --marker)"
|
||||||
|
mark=$1
|
||||||
|
;;
|
||||||
|
|
||||||
|
--template)
|
||||||
|
shift
|
||||||
|
[ "x$template" = "x" ] || arg_error "only 1 template can be specified (option: --template)"
|
||||||
|
template="$1"
|
||||||
|
;;
|
||||||
|
|
||||||
|
-h|-help|--help) print_help ;;
|
||||||
|
-*) arg_error "unknow option '$1'" ;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
[ -z "$edit_file" ] || arg_error "only 1 file to modify can be specified"
|
||||||
|
edit_file=$1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
# Check consistency of command-line
|
||||||
|
[ -z "$edit_file" ] && arg_error "no file to update was specified"
|
||||||
|
[ -f "$edit_file" ] || arg_error "file \"$edit_file\" cannot be read"
|
||||||
|
[ -z "$template" ] && arg_error "Template for generation not specified"
|
||||||
|
[ -z "$mark" ] && arg_error "No content mark specified"
|
||||||
|
[ -z "$man_pages" ] && arg_error "No input list provided"
|
||||||
|
|
||||||
|
# Make sure the file to edit contains the appropriate marks
|
||||||
|
grep "start $mark" "$edit_file" > /dev/null || arg_error "Start mark \"start $mark\" not found in \"$edit_file\" (option: --marker)"
|
||||||
|
grep "end $mark" "$edit_file" > /dev/null || arg_error "End mark \"end $mark\" not found in \"$edit_file\""
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# Generate the content from the list of man pages provided
|
||||||
|
###########################################################################
|
||||||
|
if [ -n "$man_pages" ]; then
|
||||||
|
parse_man_page() {
|
||||||
|
# Build the name of the HTML file from the man page name
|
||||||
|
target=`echo $1 | sed 's,[^/]*/,,g ; s/\.[^.]*$//' `.html
|
||||||
|
section=`echo $1 | sed 's/^.*\.\([^.]*\)$/\1/' `
|
||||||
|
|
||||||
|
# Extract the name and the description from the .SH NAME
|
||||||
|
sed -n '/^\.SH "*NAME"*$/ {
|
||||||
|
n
|
||||||
|
s/^\([^ ]*\) *\\- */'$target':\1:'$section':/
|
||||||
|
:append_next_line
|
||||||
|
N
|
||||||
|
/\n\./ b end_section_found
|
||||||
|
s/[ \t]*\n[ \t]*/ /
|
||||||
|
b append_next_line
|
||||||
|
:end_section_found
|
||||||
|
s/[ \t]*\n\..*$//
|
||||||
|
s/\\f[BIPR]//g
|
||||||
|
p
|
||||||
|
}' $1
|
||||||
|
}
|
||||||
|
|
||||||
|
content=`
|
||||||
|
for file in $man_pages ; do
|
||||||
|
parse_man_page $file
|
||||||
|
done
|
||||||
|
`
|
||||||
|
nb_fields=4
|
||||||
|
fi
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# Convert the content to the specified format
|
||||||
|
###########################################################################
|
||||||
|
for i in `seq 2 $nb_fields`; do
|
||||||
|
sed_from="$sed_from\\([^:]*\\):"
|
||||||
|
done
|
||||||
|
sed_from="^$sed_from\\(.*\\)\$"
|
||||||
|
|
||||||
|
content=`echo "$content" | sed -e "s,$sed_from,$template," `
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# Replace the content in the file
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
# We are working in 2 steps because we cannot edit in place
|
||||||
|
# In step one we remove the existing content from the file
|
||||||
|
purged_file=`sed -e "/start $mark/ {
|
||||||
|
p
|
||||||
|
:search_end
|
||||||
|
N
|
||||||
|
s/^.*\n//
|
||||||
|
/end $mark/! b search_end
|
||||||
|
}" "$edit_file"
|
||||||
|
`
|
||||||
|
|
||||||
|
# Convert the content to an AWK array
|
||||||
|
awk_start=`echo "$content" | awk '
|
||||||
|
BEGIN {
|
||||||
|
print "BEGIN {";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# Add a backslash before the double-quotes
|
||||||
|
line = "";
|
||||||
|
while (1) {
|
||||||
|
idx = index($0, "\"");
|
||||||
|
if (idx == 0) break;
|
||||||
|
line = line substr($0, 1, idx - 1) "\\\\\"";
|
||||||
|
$0 = substr($0, idx + 1);
|
||||||
|
}
|
||||||
|
print " content[" NR "] = \"" line $0 "\";";
|
||||||
|
}
|
||||||
|
END {
|
||||||
|
print " nb_content = " NR ";";
|
||||||
|
print "}";
|
||||||
|
}
|
||||||
|
' `
|
||||||
|
|
||||||
|
# In step two we insert the generated content between the marks
|
||||||
|
awk_cmd='
|
||||||
|
# When the start mark is found, insert the generated content
|
||||||
|
/start '"$mark"'/ {
|
||||||
|
print;
|
||||||
|
|
||||||
|
# Isolate the indentation so it can be applied to all generated lines
|
||||||
|
sub(/[^ \t].*$/, "");
|
||||||
|
|
||||||
|
for (i = 1; i <= nb_content; i++) {
|
||||||
|
print $0 content[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
# Thanks to the pre-processing done, the next line will be the end mark
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
|
||||||
|
# All the rest of the file is kept as-is
|
||||||
|
{ print }
|
||||||
|
'
|
||||||
|
|
||||||
|
echo "$purged_file" | awk "$awk_start$awk_cmd" > "$edit_file" || exit $?
|
||||||
+4
-3
@@ -148,11 +148,12 @@ xmodifier.hack_nf.c: xmodifier.c $(top_srcdir)/script/nested-func-to-macro.sh
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
AM_CFLAGS =
|
AM_CFLAGS = @PANGO_CFLAGS@
|
||||||
|
|
||||||
AM_CPPFLAGS = $(DFLAGS) \
|
AM_CPPFLAGS = $(DFLAGS) \
|
||||||
-I$(top_srcdir)/wrlib \
|
-I$(top_builddir)/wrlib \
|
||||||
-I$(top_srcdir)/WINGs @HEADER_SEARCH_PATH@
|
-I$(top_srcdir)/WINGs -I$(top_builddir)/WINGs \
|
||||||
|
@HEADER_SEARCH_PATH@
|
||||||
|
|
||||||
|
|
||||||
wmaker_LDADD = \
|
wmaker_LDADD = \
|
||||||
|
|||||||
@@ -405,6 +405,7 @@ extern struct WPreferences {
|
|||||||
char ignore_gtk_decoration_hints;
|
char ignore_gtk_decoration_hints;
|
||||||
|
|
||||||
char dont_blink; /* do not blink icon selection */
|
char dont_blink; /* do not blink icon selection */
|
||||||
|
char keep_dock_on_primary_head; /* keep dock on primary head */
|
||||||
|
|
||||||
/* Appearance options */
|
/* Appearance options */
|
||||||
char new_style; /* Use newstyle buttons */
|
char new_style; /* Use newstyle buttons */
|
||||||
|
|||||||
+19
-3
@@ -154,6 +154,7 @@ static WDECallbackUpdate setModifierKeyLabels;
|
|||||||
|
|
||||||
static WDECallbackConvert getCursor;
|
static WDECallbackConvert getCursor;
|
||||||
static WDECallbackUpdate setCursor;
|
static WDECallbackUpdate setCursor;
|
||||||
|
static WDECallbackUpdate updateDock ;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Tables to convert strings to enumeration values.
|
* Tables to convert strings to enumeration values.
|
||||||
@@ -521,6 +522,9 @@ WDefaultEntry optionList[] = {
|
|||||||
&wPreferences.minipreview_size, getInt, NULL, NULL, NULL},
|
&wPreferences.minipreview_size, getInt, NULL, NULL, NULL},
|
||||||
{"IgnoreGtkHints", "NO", NULL,
|
{"IgnoreGtkHints", "NO", NULL,
|
||||||
&wPreferences.ignore_gtk_decoration_hints, getBool, NULL, NULL, NULL},
|
&wPreferences.ignore_gtk_decoration_hints, getBool, NULL, NULL, NULL},
|
||||||
|
{"KeepDockOnPrimaryHead", "NO", NULL,
|
||||||
|
&wPreferences.keep_dock_on_primary_head, getBool, updateDock,
|
||||||
|
NULL, NULL},
|
||||||
|
|
||||||
/* style options */
|
/* style options */
|
||||||
|
|
||||||
@@ -866,7 +870,7 @@ static WMPropList *readGlobalDomain(const char *domainName, Bool requireDictiona
|
|||||||
char path[PATH_MAX];
|
char path[PATH_MAX];
|
||||||
struct stat stbuf;
|
struct stat stbuf;
|
||||||
|
|
||||||
snprintf(path, sizeof(path), "%s/%s", DEFSDATADIR, domainName);
|
snprintf(path, sizeof(path), "%s/%s", PKGCONFDIR, domainName);
|
||||||
if (stat(path, &stbuf) >= 0) {
|
if (stat(path, &stbuf) >= 0) {
|
||||||
globalDict = WMReadPropListFromFile(path);
|
globalDict = WMReadPropListFromFile(path);
|
||||||
if (globalDict && requireDictionary && !WMIsPLDictionary(globalDict)) {
|
if (globalDict && requireDictionary && !WMIsPLDictionary(globalDict)) {
|
||||||
@@ -916,7 +920,7 @@ void wDefaultsMergeGlobalMenus(WDDomain * menuDomain)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
#ifdef GLOBAL_PREAMBLE_MENU_FILE
|
#ifdef GLOBAL_PREAMBLE_MENU_FILE
|
||||||
submenu = WMReadPropListFromFile(DEFSDATADIR "/" GLOBAL_PREAMBLE_MENU_FILE);
|
submenu = WMReadPropListFromFile(PKGCONFDIR "/" GLOBAL_PREAMBLE_MENU_FILE);
|
||||||
|
|
||||||
if (submenu && !WMIsPLArray(submenu)) {
|
if (submenu && !WMIsPLArray(submenu)) {
|
||||||
wwarning(_("invalid global menu file %s"), GLOBAL_PREAMBLE_MENU_FILE);
|
wwarning(_("invalid global menu file %s"), GLOBAL_PREAMBLE_MENU_FILE);
|
||||||
@@ -930,7 +934,7 @@ void wDefaultsMergeGlobalMenus(WDDomain * menuDomain)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef GLOBAL_EPILOGUE_MENU_FILE
|
#ifdef GLOBAL_EPILOGUE_MENU_FILE
|
||||||
submenu = WMReadPropListFromFile(DEFSDATADIR "/" GLOBAL_EPILOGUE_MENU_FILE);
|
submenu = WMReadPropListFromFile(PKGCONFDIR "/" GLOBAL_EPILOGUE_MENU_FILE);
|
||||||
|
|
||||||
if (submenu && !WMIsPLArray(submenu)) {
|
if (submenu && !WMIsPLArray(submenu)) {
|
||||||
wwarning(_("invalid global menu file %s"), GLOBAL_EPILOGUE_MENU_FILE);
|
wwarning(_("invalid global menu file %s"), GLOBAL_EPILOGUE_MENU_FILE);
|
||||||
@@ -3483,3 +3487,15 @@ static int setCursor(WScreen * scr, WDefaultEntry * entry, void *tdata, void *ex
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int updateDock(WScreen * scr, WDefaultEntry * entry,
|
||||||
|
void *tdata, void *extra_data) {
|
||||||
|
(void) entry;
|
||||||
|
(void) tdata;
|
||||||
|
(void) extra_data;
|
||||||
|
|
||||||
|
if (scr->dock)
|
||||||
|
wDockSwap(scr->dock);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|||||||
+6
-2
@@ -182,8 +182,12 @@ static char *HistoryFileName(const char *name)
|
|||||||
{
|
{
|
||||||
char *filename = NULL;
|
char *filename = NULL;
|
||||||
|
|
||||||
filename = wstrdup(wusergnusteppath());
|
filename = getenv("XDG_STATE_HOME");
|
||||||
filename = wstrappend(filename, "/.AppInfo/WindowMaker/History");
|
if (filename)
|
||||||
|
filename = wstrappend(wexpandpath(filename), "/" PACKAGE_TARNAME "/History");
|
||||||
|
else
|
||||||
|
filename = wstrconcat(wusergnusteppath(), "/.AppInfo/" PACKAGE_TARNAME "/History");
|
||||||
|
|
||||||
if (name && strlen(name)) {
|
if (name && strlen(name)) {
|
||||||
filename = wstrappend(filename, ".");
|
filename = wstrappend(filename, ".");
|
||||||
filename = wstrappend(filename, name);
|
filename = wstrappend(filename, name);
|
||||||
|
|||||||
@@ -22,6 +22,7 @@
|
|||||||
#ifndef WMDIALOG_H_
|
#ifndef WMDIALOG_H_
|
||||||
#define WMDIALOG_H_
|
#define WMDIALOG_H_
|
||||||
|
|
||||||
|
#include "screen.h"
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
WMAbort=0,
|
WMAbort=0,
|
||||||
|
|||||||
+43
-13
@@ -814,6 +814,29 @@ static void unhideHereCallback(WMenu *menu, WMenuEntry *entry)
|
|||||||
wUnhideApplication(wapp, False, True);
|
wUnhideApplication(wapp, False, True);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int getDockXPosition(WScreen *scr, Bool on_right_side)
|
||||||
|
{
|
||||||
|
int x;
|
||||||
|
|
||||||
|
if (wPreferences.keep_dock_on_primary_head) {
|
||||||
|
WMRect rect;
|
||||||
|
|
||||||
|
rect = wGetRectForHead(scr, scr->xine_info.primary_head);
|
||||||
|
x = rect.pos.x;
|
||||||
|
if (on_right_side)
|
||||||
|
x += rect.size.width - ICON_SIZE - DOCK_EXTRA_SPACE;
|
||||||
|
else
|
||||||
|
x += DOCK_EXTRA_SPACE;
|
||||||
|
} else {
|
||||||
|
if (on_right_side)
|
||||||
|
x = scr->scr_width - ICON_SIZE - DOCK_EXTRA_SPACE;
|
||||||
|
else
|
||||||
|
x = DOCK_EXTRA_SPACE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return x;
|
||||||
|
}
|
||||||
|
|
||||||
/* Name is only used when type == WM_DRAWER and when restoring a specific
|
/* Name is only used when type == WM_DRAWER and when restoring a specific
|
||||||
* drawer, with a specific name. When creating a drawer, leave name to NULL
|
* drawer, with a specific name. When creating a drawer, leave name to NULL
|
||||||
* and mainIconCreate will find the first unused unique name */
|
* and mainIconCreate will find the first unused unique name */
|
||||||
@@ -836,7 +859,7 @@ static WAppIcon *mainIconCreate(WScreen *scr, int type, const char *name)
|
|||||||
btn = wAppIconCreateForDock(scr, NULL, "Logo", "WMDock", TILE_NORMAL);
|
btn = wAppIconCreateForDock(scr, NULL, "Logo", "WMDock", TILE_NORMAL);
|
||||||
if (wPreferences.flags.clip_merged_in_dock)
|
if (wPreferences.flags.clip_merged_in_dock)
|
||||||
btn->icon->core->descriptor.handle_expose = clipIconExpose;
|
btn->icon->core->descriptor.handle_expose = clipIconExpose;
|
||||||
x_pos = scr->scr_width - ICON_SIZE - DOCK_EXTRA_SPACE;
|
x_pos = getDockXPosition(scr, True);
|
||||||
break;
|
break;
|
||||||
case WM_DRAWER:
|
case WM_DRAWER:
|
||||||
if (name == NULL)
|
if (name == NULL)
|
||||||
@@ -1545,7 +1568,7 @@ static WMPropList *dockSaveState(WDock *dock)
|
|||||||
WMPutInPLDictionary(dock_state, key, list);
|
WMPutInPLDictionary(dock_state, key, list);
|
||||||
WMReleasePropList(key);
|
WMReleasePropList(key);
|
||||||
|
|
||||||
snprintf(buffer, sizeof(buffer), "%i,%i", (dock->on_right_side ? -ICON_SIZE : 0), dock->y_pos);
|
snprintf(buffer, sizeof(buffer), "%i,%i", dock->x_pos, dock->y_pos);
|
||||||
value = WMCreatePLString(buffer);
|
value = WMCreatePLString(buffer);
|
||||||
WMPutInPLDictionary(dock_state, dPosition, value);
|
WMPutInPLDictionary(dock_state, dPosition, value);
|
||||||
WMReleasePropList(value);
|
WMReleasePropList(value);
|
||||||
@@ -1823,11 +1846,17 @@ WDock *wDockRestoreState(WScreen *scr, WMPropList *dock_state, int type)
|
|||||||
dock->x_pos = scr->scr_width - ICON_SIZE;
|
dock->x_pos = scr->scr_width - ICON_SIZE;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (dock->x_pos >= 0) {
|
int left, right, midpoint;
|
||||||
dock->x_pos = DOCK_EXTRA_SPACE;
|
|
||||||
|
left = getDockXPosition(scr, False);
|
||||||
|
right = getDockXPosition(scr, True);
|
||||||
|
midpoint = (left + right) / 2;
|
||||||
|
|
||||||
|
if (dock->x_pos < midpoint) {
|
||||||
|
dock->x_pos = left;
|
||||||
dock->on_right_side = 0;
|
dock->on_right_side = 0;
|
||||||
} else {
|
} else {
|
||||||
dock->x_pos = scr->scr_width - DOCK_EXTRA_SPACE - ICON_SIZE;
|
dock->x_pos = right;
|
||||||
dock->on_right_side = 1;
|
dock->on_right_side = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3003,18 +3032,16 @@ static void moveDock(WDock *dock, int new_x, int new_y)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void swapDock(WDock *dock)
|
void wDockSwap(WDock *dock)
|
||||||
{
|
{
|
||||||
WScreen *scr = dock->screen_ptr;
|
WScreen *scr = dock->screen_ptr;
|
||||||
WAppIcon *btn;
|
WAppIcon *btn;
|
||||||
int x, i;
|
int x, i;
|
||||||
|
|
||||||
if (dock->on_right_side)
|
|
||||||
x = dock->x_pos = scr->scr_width - ICON_SIZE - DOCK_EXTRA_SPACE;
|
|
||||||
else
|
|
||||||
x = dock->x_pos = DOCK_EXTRA_SPACE;
|
|
||||||
|
|
||||||
|
x = getDockXPosition(scr, dock->on_right_side);
|
||||||
swapDrawers(scr, x);
|
swapDrawers(scr, x);
|
||||||
|
dock->x_pos = x;
|
||||||
|
|
||||||
for (i = 0; i < dock->max_icons; i++) {
|
for (i = 0; i < dock->max_icons; i++) {
|
||||||
btn = dock->icon_array[i];
|
btn = dock->icon_array[i];
|
||||||
@@ -3595,7 +3622,10 @@ static void openDockMenu(WDock *dock, WAppIcon *aicon, XEvent *event)
|
|||||||
x_pos = scr->scr_width - dock->menu->frame->core->width - 4;
|
x_pos = scr->scr_width - dock->menu->frame->core->width - 4;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
x_pos = dock->on_right_side ? scr->scr_width - dock->menu->frame->core->width - 3 : 0;
|
x_pos = dock->x_pos;
|
||||||
|
if (dock->on_right_side)
|
||||||
|
x_pos += ICON_SIZE + DOCK_EXTRA_SPACE
|
||||||
|
- dock->menu->frame->core->width - 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
wMenuMapAt(dock->menu, x_pos, event->xbutton.y_root + 2, False);
|
wMenuMapAt(dock->menu, x_pos, event->xbutton.y_root + 2, False);
|
||||||
@@ -3751,7 +3781,7 @@ static void handleDockMove(WDock *dock, WAppIcon *aicon, XEvent *event)
|
|||||||
if (now_on_right != dock->on_right_side)
|
if (now_on_right != dock->on_right_side)
|
||||||
{
|
{
|
||||||
dock->on_right_side = now_on_right;
|
dock->on_right_side = now_on_right;
|
||||||
swapDock(dock);
|
wDockSwap(dock);
|
||||||
wArrangeIcons(scr, False);
|
wArrangeIcons(scr, False);
|
||||||
}
|
}
|
||||||
// Also perform the vertical move
|
// Also perform the vertical move
|
||||||
@@ -4580,7 +4610,7 @@ static void swapDrawer(WDock *drawer, int new_x)
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
drawer->on_right_side = !drawer->on_right_side;
|
drawer->on_right_side = drawer->screen_ptr->dock->on_right_side;
|
||||||
drawer->x_pos = new_x;
|
drawer->x_pos = new_x;
|
||||||
|
|
||||||
for (i = 0; i < drawer->max_icons; i++) {
|
for (i = 0; i < drawer->max_icons; i++) {
|
||||||
|
|||||||
@@ -91,6 +91,7 @@ void wDockTrackWindowLaunch(WDock *dock, Window window);
|
|||||||
WAppIcon *wDockFindIconForWindow(WDock *dock, Window window);
|
WAppIcon *wDockFindIconForWindow(WDock *dock, Window window);
|
||||||
void wDockDoAutoLaunch(WDock *dock, int workspace);
|
void wDockDoAutoLaunch(WDock *dock, int workspace);
|
||||||
void wDockLaunchWithState(WAppIcon *btn, WSavedState *state);
|
void wDockLaunchWithState(WAppIcon *btn, WSavedState *state);
|
||||||
|
void wDockSwap(WDock *dock);
|
||||||
|
|
||||||
#ifdef USE_DOCK_XDND
|
#ifdef USE_DOCK_XDND
|
||||||
int wDockReceiveDNDDrop(WScreen *scr, XEvent *event);
|
int wDockReceiveDNDDrop(WScreen *scr, XEvent *event);
|
||||||
|
|||||||
+3
-3
@@ -1003,7 +1003,7 @@ void wFrameWindowPaint(WFrameWindow * fwin)
|
|||||||
int titlelen;
|
int titlelen;
|
||||||
int allButtons = 1;
|
int allButtons = 1;
|
||||||
|
|
||||||
if (!wPreferences.new_style == TS_NEW) {
|
if (wPreferences.new_style != TS_NEW) {
|
||||||
if (fwin->left_button && !fwin->flags.hide_left_button && !fwin->flags.lbutton_dont_fit)
|
if (fwin->left_button && !fwin->flags.hide_left_button && !fwin->flags.lbutton_dont_fit)
|
||||||
lofs += fwin->left_button->width + 3;
|
lofs += fwin->left_button->width + 3;
|
||||||
else
|
else
|
||||||
@@ -1266,7 +1266,7 @@ static void checkTitleSize(WFrameWindow * fwin)
|
|||||||
width = fwin->titlebar->width - 6 - 6;
|
width = fwin->titlebar->width - 6 - 6;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!wPreferences.new_style == TS_NEW) {
|
if (wPreferences.new_style != TS_NEW) {
|
||||||
if (fwin->left_button && !fwin->flags.hide_left_button && !fwin->flags.lbutton_dont_fit)
|
if (fwin->left_button && !fwin->flags.hide_left_button && !fwin->flags.lbutton_dont_fit)
|
||||||
width -= fwin->left_button->width + 3;
|
width -= fwin->left_button->width + 3;
|
||||||
|
|
||||||
@@ -1352,7 +1352,7 @@ static void paintButton(WCoreWindow * button, WTexture * texture, unsigned long
|
|||||||
x = (button->width - width) / 2 + d;
|
x = (button->width - width) / 2 + d;
|
||||||
y = (button->height - image->height) / 2 + d;
|
y = (button->height - image->height) / 2 + d;
|
||||||
XSetClipOrigin(dpy, copy_gc, x - left, y);
|
XSetClipOrigin(dpy, copy_gc, x - left, y);
|
||||||
if (!wPreferences.new_style == TS_NEW) {
|
if (wPreferences.new_style != TS_NEW) {
|
||||||
XSetForeground(dpy, copy_gc, scr->black_pixel);
|
XSetForeground(dpy, copy_gc, scr->black_pixel);
|
||||||
if (!pushed) {
|
if (!pushed) {
|
||||||
if (image->depth == 1)
|
if (image->depth == 1)
|
||||||
|
|||||||
+5
-8
@@ -51,7 +51,7 @@
|
|||||||
/**** Global varianebles ****/
|
/**** Global varianebles ****/
|
||||||
|
|
||||||
#define MOD_MASK wPreferences.modifier_mask
|
#define MOD_MASK wPreferences.modifier_mask
|
||||||
#define CACHE_ICON_PATH "/Library/WindowMaker/CachedPixmaps"
|
#define CACHE_ICON_PATH "/" PACKAGE_TARNAME "/CachedPixmaps"
|
||||||
#define ICON_BORDER 3
|
#define ICON_BORDER 3
|
||||||
|
|
||||||
static void miniwindowExpose(WObjDescriptor *desc, XEvent *event);
|
static void miniwindowExpose(WObjDescriptor *desc, XEvent *event);
|
||||||
@@ -424,17 +424,15 @@ static char *get_icon_cache_path(void)
|
|||||||
char *path;
|
char *path;
|
||||||
int len, ret;
|
int len, ret;
|
||||||
|
|
||||||
prefix = wusergnusteppath();
|
prefix = wuserdatapath();
|
||||||
len = strlen(prefix) + strlen(CACHE_ICON_PATH) + 2;
|
path = wstrconcat(prefix, CACHE_ICON_PATH "/");
|
||||||
path = wmalloc(len);
|
|
||||||
snprintf(path, len, "%s%s/", prefix, CACHE_ICON_PATH);
|
|
||||||
|
|
||||||
/* If the folder exists, exit */
|
/* If the folder exists, exit */
|
||||||
if (access(path, F_OK) == 0)
|
if (access(path, F_OK) == 0)
|
||||||
return path;
|
return path;
|
||||||
|
|
||||||
/* Create the folder */
|
/* Create the folder */
|
||||||
ret = wmkdirhier((const char *) path);
|
ret = wmkdirhier(path);
|
||||||
|
|
||||||
/* Exit 1 on success, 0 on failure */
|
/* Exit 1 on success, 0 on failure */
|
||||||
if (ret == 1)
|
if (ret == 1)
|
||||||
@@ -518,9 +516,8 @@ char *wIconStore(WIcon *icon)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!RSaveImage(image, path, "XPM")) {
|
if (!RSaveImage(image, path, "XPM")) {
|
||||||
wfree(path);
|
|
||||||
wfree(filename);
|
wfree(filename);
|
||||||
path = NULL;
|
filename = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
wfree(path);
|
wfree(path);
|
||||||
|
|||||||
+4
-4
@@ -488,7 +488,7 @@ static void inotifyWatchConfig(void)
|
|||||||
" Changes to the defaults database will require"
|
" Changes to the defaults database will require"
|
||||||
" a restart to take effect. Check your kernel!"));
|
" a restart to take effect. Check your kernel!"));
|
||||||
} else {
|
} else {
|
||||||
watchPath = wstrconcat(wusergnusteppath(), "/Defaults");
|
watchPath = wdefaultspathfordomain("");
|
||||||
/* Add the watch; really we are only looking for modify events
|
/* Add the watch; really we are only looking for modify events
|
||||||
* but we might want more in the future so check all events for now.
|
* but we might want more in the future so check all events for now.
|
||||||
* The individual events are checked for in event.c.
|
* The individual events are checked for in event.c.
|
||||||
@@ -510,7 +510,7 @@ static void execInitScript(void)
|
|||||||
{
|
{
|
||||||
char *file, *paths;
|
char *file, *paths;
|
||||||
|
|
||||||
paths = wstrconcat(wusergnusteppath(), "/Library/WindowMaker");
|
paths = wstrconcat(wuserdatapath(), "/" PACKAGE_TARNAME);
|
||||||
paths = wstrappend(paths, ":" DEF_CONFIG_PATHS);
|
paths = wstrappend(paths, ":" DEF_CONFIG_PATHS);
|
||||||
|
|
||||||
file = wfindfile(paths, DEF_INIT_SCRIPT);
|
file = wfindfile(paths, DEF_INIT_SCRIPT);
|
||||||
@@ -528,7 +528,7 @@ void ExecExitScript(void)
|
|||||||
{
|
{
|
||||||
char *file, *paths;
|
char *file, *paths;
|
||||||
|
|
||||||
paths = wstrconcat(wusergnusteppath(), "/Library/WindowMaker");
|
paths = wstrconcat(wuserdatapath(), "/" PACKAGE_TARNAME);
|
||||||
paths = wstrappend(paths, ":" DEF_CONFIG_PATHS);
|
paths = wstrappend(paths, ":" DEF_CONFIG_PATHS);
|
||||||
|
|
||||||
file = wfindfile(paths, DEF_EXIT_SCRIPT);
|
file = wfindfile(paths, DEF_EXIT_SCRIPT);
|
||||||
@@ -658,7 +658,7 @@ static int real_main(int argc, char **argv)
|
|||||||
printf("Window Maker %s\n", VERSION);
|
printf("Window Maker %s\n", VERSION);
|
||||||
exit(0);
|
exit(0);
|
||||||
} else if (strcmp(argv[i], "--global_defaults_path") == 0) {
|
} else if (strcmp(argv[i], "--global_defaults_path") == 0) {
|
||||||
printf("%s\n", DEFSDATADIR);
|
printf("%s\n", PKGCONFDIR);
|
||||||
exit(0);
|
exit(0);
|
||||||
} else if (strcmp(argv[i], "-locale") == 0 || strcmp(argv[i], "--locale") == 0) {
|
} else if (strcmp(argv[i], "-locale") == 0 || strcmp(argv[i], "--locale") == 0) {
|
||||||
i++;
|
i++;
|
||||||
|
|||||||
+2
-2
@@ -1764,7 +1764,7 @@ static void menuMouseDown(WObjDescriptor * desc, XEvent * event)
|
|||||||
goto byebye;
|
goto byebye;
|
||||||
}
|
}
|
||||||
entry_no = getEntryAt(menu, x, y);
|
entry_no = getEntryAt(menu, x, y);
|
||||||
if (entry_no >= 0) {
|
if ((entry_no >= 0) && (entry_no < menu->entry_no)) {
|
||||||
entry = menu->entries[entry_no];
|
entry = menu->entries[entry_no];
|
||||||
|
|
||||||
if (!close_on_exit && (bev->state & ControlMask) && smenu && entry->flags.editable) {
|
if (!close_on_exit && (bev->state & ControlMask) && smenu && entry->flags.editable) {
|
||||||
@@ -1940,7 +1940,7 @@ static void menuMouseDown(WObjDescriptor * desc, XEvent * event)
|
|||||||
|
|
||||||
if (!delayed_select) {
|
if (!delayed_select) {
|
||||||
entry_no = getEntryAt(menu, x, y);
|
entry_no = getEntryAt(menu, x, y);
|
||||||
if (entry_no >= 0) {
|
if ((entry_no >= 0) && (entry_no < menu->entry_no)) {
|
||||||
entry = menu->entries[entry_no];
|
entry = menu->entries[entry_no];
|
||||||
if (entry->flags.enabled && entry->cascade >= 0 && menu->cascades) {
|
if (entry->flags.enabled && entry->cascade >= 0 && menu->cascades) {
|
||||||
WMenu *submenu = menu->cascades[entry->cascade];
|
WMenu *submenu = menu->cascades[entry->cascade];
|
||||||
|
|||||||
+1
-1
@@ -1017,7 +1017,7 @@ Bool UpdateDomainFile(WDDomain * domain)
|
|||||||
dict = domain->dictionary;
|
dict = domain->dictionary;
|
||||||
if (WMIsPLDictionary(domain->dictionary)) {
|
if (WMIsPLDictionary(domain->dictionary)) {
|
||||||
/* retrieve global system dictionary */
|
/* retrieve global system dictionary */
|
||||||
snprintf(path, sizeof(path), "%s/%s", DEFSDATADIR, domain->domain_name);
|
snprintf(path, sizeof(path), "%s/%s", PKGCONFDIR, domain->domain_name);
|
||||||
if (stat(path, &stbuf) >= 0) {
|
if (stat(path, &stbuf) >= 0) {
|
||||||
shared_dict = WMReadPropListFromFile(path);
|
shared_dict = WMReadPropListFromFile(path);
|
||||||
if (shared_dict) {
|
if (shared_dict) {
|
||||||
|
|||||||
+31
-12
@@ -1199,46 +1199,65 @@ updateWindowPosition(WWindow * wwin, MoveData * data, Bool doResistance,
|
|||||||
static void draw_snap_frame(WWindow *wwin, int direction)
|
static void draw_snap_frame(WWindow *wwin, int direction)
|
||||||
{
|
{
|
||||||
WScreen *scr;
|
WScreen *scr;
|
||||||
|
int head, x, y;
|
||||||
|
unsigned int width, height;
|
||||||
|
WMRect rect;
|
||||||
|
|
||||||
scr = wwin->screen_ptr;
|
scr = wwin->screen_ptr;
|
||||||
|
head = wGetHeadForWindow(wwin);
|
||||||
|
rect = wGetRectForHead(scr, head);
|
||||||
|
|
||||||
|
x = rect.pos.x;
|
||||||
|
y = rect.pos.y;
|
||||||
|
width = rect.size.width;
|
||||||
|
height = rect.size.height;
|
||||||
|
|
||||||
switch (direction) {
|
switch (direction) {
|
||||||
case SNAP_LEFT:
|
case SNAP_LEFT:
|
||||||
drawTransparentFrame(wwin, 0, 0, scr->scr_width/2, scr->scr_height);
|
width /= 2;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SNAP_RIGHT:
|
case SNAP_RIGHT:
|
||||||
drawTransparentFrame(wwin, scr->scr_width/2, 0, scr->scr_width/2, scr->scr_height);
|
width /= 2;
|
||||||
|
x += width;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SNAP_TOP:
|
case SNAP_TOP:
|
||||||
if (wPreferences.snap_to_top_maximizes_fullscreen)
|
if (!wPreferences.snap_to_top_maximizes_fullscreen)
|
||||||
drawTransparentFrame(wwin, 0, 0, scr->scr_width, scr->scr_height);
|
height /= 2;
|
||||||
else
|
|
||||||
drawTransparentFrame(wwin, 0, 0, scr->scr_width, scr->scr_height/2);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SNAP_BOTTOM:
|
case SNAP_BOTTOM:
|
||||||
drawTransparentFrame(wwin, 0, scr->scr_height/2, scr->scr_width, scr->scr_height/2);
|
height /= 2;
|
||||||
|
y += height;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SNAP_TOPLEFT:
|
case SNAP_TOPLEFT:
|
||||||
drawTransparentFrame(wwin, 0, 0, scr->scr_width/2, scr->scr_height/2);
|
width /= 2;
|
||||||
|
height /= 2;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SNAP_TOPRIGHT:
|
case SNAP_TOPRIGHT:
|
||||||
drawTransparentFrame(wwin, scr->scr_width/2, 0, scr->scr_width/2, scr->scr_height/2);
|
width /= 2;
|
||||||
|
height /= 2;
|
||||||
|
x += width;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SNAP_BOTTOMLEFT:
|
case SNAP_BOTTOMLEFT:
|
||||||
drawTransparentFrame(wwin, 0, scr->scr_height/2, scr->scr_width/2, scr->scr_height/2);
|
width /= 2;
|
||||||
|
height /= 2;
|
||||||
|
y += height;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SNAP_BOTTOMRIGHT:
|
case SNAP_BOTTOMRIGHT:
|
||||||
drawTransparentFrame(wwin, scr->scr_width/2, scr->scr_height/2,
|
width /= 2;
|
||||||
scr->scr_width/2, scr->scr_height/2);
|
height /= 2;
|
||||||
|
x += width;
|
||||||
|
y += height;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
drawTransparentFrame(wwin, x, y, width, height);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int get_snap_direction(WScreen *scr, int x, int y)
|
static int get_snap_direction(WScreen *scr, int x, int y)
|
||||||
|
|||||||
+5
-1
@@ -673,9 +673,13 @@ static void constructMenu(WMenu * menu, WMenuEntry * entry)
|
|||||||
|
|
||||||
tmp = wexpandpath(path[i]);
|
tmp = wexpandpath(path[i]);
|
||||||
|
|
||||||
if (strstr(tmp, "#usergnusteppath#") == tmp)
|
if (strstr(tmp, "#usergnusteppath#") == tmp) {
|
||||||
|
char *old_tmp = tmp;
|
||||||
|
|
||||||
tmp = wstrconcat(wusergnusteppath(),
|
tmp = wstrconcat(wusergnusteppath(),
|
||||||
tmp + 17);
|
tmp + 17);
|
||||||
|
wfree(old_tmp);
|
||||||
|
}
|
||||||
|
|
||||||
wfree(path[i]);
|
wfree(path[i]);
|
||||||
lpath = getLocalizedMenuFile(tmp);
|
lpath = getLocalizedMenuFile(tmp);
|
||||||
|
|||||||
+32
-10
@@ -313,14 +313,34 @@ static void allocButtonPixmaps(WScreen * scr)
|
|||||||
scr->b_pixmaps[WBUT_KILL] = pix;
|
scr->b_pixmaps[WBUT_KILL] = pix;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int get_dot_mult(void)
|
||||||
|
{
|
||||||
|
int dot_mult;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Since it's an int, the multiplier will grow only when
|
||||||
|
* a certain icon size is reached (1 for 64, 2 for 128,
|
||||||
|
* 3 for 192, and so on).
|
||||||
|
*/
|
||||||
|
dot_mult = wPreferences.icon_size / 64;
|
||||||
|
|
||||||
|
if (dot_mult < 1)
|
||||||
|
dot_mult = 1;
|
||||||
|
|
||||||
|
return dot_mult;
|
||||||
|
}
|
||||||
|
|
||||||
static void draw_dot(WScreen * scr, Drawable d, int x, int y, GC gc)
|
static void draw_dot(WScreen * scr, Drawable d, int x, int y, GC gc)
|
||||||
{
|
{
|
||||||
|
int dot_mult;
|
||||||
|
|
||||||
|
dot_mult = get_dot_mult();
|
||||||
XSetForeground(dpy, gc, scr->black_pixel);
|
XSetForeground(dpy, gc, scr->black_pixel);
|
||||||
XDrawLine(dpy, d, gc, x, y, x + 1, y);
|
XFillRectangle(dpy, d, gc, x, y, x + (2 * dot_mult), y + (1 * dot_mult));
|
||||||
XDrawPoint(dpy, d, gc, x, y + 1);
|
XFillRectangle(dpy, d, gc, x, y + (1 * dot_mult), x + (1 * dot_mult), y + (2 * dot_mult));
|
||||||
XSetForeground(dpy, gc, scr->white_pixel);
|
XSetForeground(dpy, gc, scr->white_pixel);
|
||||||
XDrawLine(dpy, d, gc, x + 2, y, x + 2, y + 1);
|
XFillRectangle(dpy, d, gc, x + (2 * dot_mult), y, x + (3 * dot_mult), y + (2 * dot_mult));
|
||||||
XDrawPoint(dpy, d, gc, x + 1, y + 1);
|
XFillRectangle(dpy, d, gc, x + (1 * dot_mult), y + (1 * dot_mult), x + (2 * dot_mult), y + (2 * dot_mult));
|
||||||
}
|
}
|
||||||
|
|
||||||
static WPixmap *make3Dots(WScreen * scr)
|
static WPixmap *make3Dots(WScreen * scr)
|
||||||
@@ -329,15 +349,17 @@ static WPixmap *make3Dots(WScreen * scr)
|
|||||||
GC gc2, gc;
|
GC gc2, gc;
|
||||||
XGCValues gcv;
|
XGCValues gcv;
|
||||||
Pixmap pix, mask;
|
Pixmap pix, mask;
|
||||||
|
int dot_mult;
|
||||||
|
|
||||||
|
dot_mult = get_dot_mult();
|
||||||
gc = scr->copy_gc;
|
gc = scr->copy_gc;
|
||||||
pix = XCreatePixmap(dpy, scr->w_win, wPreferences.icon_size, wPreferences.icon_size, scr->w_depth);
|
pix = XCreatePixmap(dpy, scr->w_win, wPreferences.icon_size, wPreferences.icon_size, scr->w_depth);
|
||||||
XSetForeground(dpy, gc, scr->black_pixel);
|
XSetForeground(dpy, gc, scr->black_pixel);
|
||||||
XFillRectangle(dpy, pix, gc, 0, 0, wPreferences.icon_size, wPreferences.icon_size);
|
XFillRectangle(dpy, pix, gc, 0, 0, wPreferences.icon_size, wPreferences.icon_size);
|
||||||
XSetForeground(dpy, gc, scr->white_pixel);
|
XSetForeground(dpy, gc, scr->white_pixel);
|
||||||
draw_dot(scr, pix, 4, wPreferences.icon_size - 6, gc);
|
draw_dot(scr, pix, 4 * dot_mult, wPreferences.icon_size - (6 * dot_mult), gc);
|
||||||
draw_dot(scr, pix, 9, wPreferences.icon_size - 6, gc);
|
draw_dot(scr, pix, 9 * dot_mult, wPreferences.icon_size - (6 * dot_mult), gc);
|
||||||
draw_dot(scr, pix, 14, wPreferences.icon_size - 6, gc);
|
draw_dot(scr, pix, 14 * dot_mult, wPreferences.icon_size - (6 * dot_mult), gc);
|
||||||
|
|
||||||
mask = XCreatePixmap(dpy, scr->w_win, wPreferences.icon_size, wPreferences.icon_size, 1);
|
mask = XCreatePixmap(dpy, scr->w_win, wPreferences.icon_size, wPreferences.icon_size, 1);
|
||||||
gcv.foreground = 0;
|
gcv.foreground = 0;
|
||||||
@@ -345,9 +367,9 @@ static WPixmap *make3Dots(WScreen * scr)
|
|||||||
gc2 = XCreateGC(dpy, mask, GCForeground | GCGraphicsExposures, &gcv);
|
gc2 = XCreateGC(dpy, mask, GCForeground | GCGraphicsExposures, &gcv);
|
||||||
XFillRectangle(dpy, mask, gc2, 0, 0, wPreferences.icon_size, wPreferences.icon_size);
|
XFillRectangle(dpy, mask, gc2, 0, 0, wPreferences.icon_size, wPreferences.icon_size);
|
||||||
XSetForeground(dpy, gc2, 1);
|
XSetForeground(dpy, gc2, 1);
|
||||||
XFillRectangle(dpy, mask, gc2, 4, wPreferences.icon_size - 6, 3, 2);
|
XFillRectangle(dpy, mask, gc2, 4 * dot_mult, wPreferences.icon_size - (6 * dot_mult), 3 * dot_mult, 2 * dot_mult);
|
||||||
XFillRectangle(dpy, mask, gc2, 9, wPreferences.icon_size - 6, 3, 2);
|
XFillRectangle(dpy, mask, gc2, 9 * dot_mult, wPreferences.icon_size - (6 * dot_mult), 3 * dot_mult, 2 * dot_mult);
|
||||||
XFillRectangle(dpy, mask, gc2, 14, wPreferences.icon_size - 6, 3, 2);
|
XFillRectangle(dpy, mask, gc2, 14 * dot_mult, wPreferences.icon_size - (6 * dot_mult), 3 * dot_mult, 2 * dot_mult);
|
||||||
|
|
||||||
XFreeGC(dpy, gc2);
|
XFreeGC(dpy, gc2);
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -399,7 +399,7 @@ WSwitchPanel *wInitSwitchPanel(WScreen *scr, WWindow *curwin, Bool class_only)
|
|||||||
WMGetScaleBaseFromSystemFont(scr->wmscreen, &wmScaleWidth, &wmScaleHeight);
|
WMGetScaleBaseFromSystemFont(scr->wmscreen, &wmScaleWidth, &wmScaleHeight);
|
||||||
|
|
||||||
icon_size = wPreferences.switch_panel_icon_size;
|
icon_size = wPreferences.switch_panel_icon_size;
|
||||||
icon_tile_size = (short int)(((float)icon_size * (float)1.2) + 0.5);
|
icon_tile_size = (short int)(((float)icon_size * 1.2F) + 0.5F);
|
||||||
border_space = WMScaleY(10);
|
border_space = WMScaleY(10);
|
||||||
label_height = WMScaleY(25);
|
label_height = WMScaleY(25);
|
||||||
|
|
||||||
|
|||||||
@@ -122,7 +122,6 @@
|
|||||||
/* name of the script to execute at startup */
|
/* name of the script to execute at startup */
|
||||||
#define DEF_INIT_SCRIPT "autostart"
|
#define DEF_INIT_SCRIPT "autostart"
|
||||||
#define DEF_EXIT_SCRIPT "exitscript"
|
#define DEF_EXIT_SCRIPT "exitscript"
|
||||||
#define DEFAULTS_DIR "Defaults"
|
|
||||||
|
|
||||||
#ifdef USE_TIFF
|
#ifdef USE_TIFF
|
||||||
#define DEF_BUTTON_IMAGES PKGDATADIR"/buttons.tiff"
|
#define DEF_BUTTON_IMAGES PKGDATADIR"/buttons.tiff"
|
||||||
|
|||||||
+2
-7
@@ -399,22 +399,18 @@ static void updateMakeShortcutMenu(WMenu * menu, WWindow * wwin)
|
|||||||
{
|
{
|
||||||
WMenu *smenu = menu->cascades[menu->entries[MC_OPTIONS]->cascade];
|
WMenu *smenu = menu->cascades[menu->entries[MC_OPTIONS]->cascade];
|
||||||
int i;
|
int i;
|
||||||
char *buffer;
|
char buffer[64];
|
||||||
int buflen;
|
|
||||||
KeyCode kcode;
|
KeyCode kcode;
|
||||||
|
|
||||||
if (!smenu)
|
if (!smenu)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
buflen = strlen(_("Set Shortcut")) + 16;
|
|
||||||
buffer = wmalloc(buflen);
|
|
||||||
|
|
||||||
for (i = wlengthof(menu_options_entries); i < smenu->entry_no; i++) {
|
for (i = wlengthof(menu_options_entries); i < smenu->entry_no; i++) {
|
||||||
int shortcutNo = i - wlengthof(menu_options_entries);
|
int shortcutNo = i - wlengthof(menu_options_entries);
|
||||||
WMenuEntry *entry = smenu->entries[i];
|
WMenuEntry *entry = smenu->entries[i];
|
||||||
WMArray *shortSelWindows = wwin->screen_ptr->shortcutWindows[shortcutNo];
|
WMArray *shortSelWindows = wwin->screen_ptr->shortcutWindows[shortcutNo];
|
||||||
|
|
||||||
snprintf(buffer, buflen, "%s %i", _("Set Shortcut"), shortcutNo + 1);
|
snprintf(buffer, sizeof(buffer), _("Set Shortcut %i"), shortcutNo + 1);
|
||||||
|
|
||||||
if (!shortSelWindows) {
|
if (!shortSelWindows) {
|
||||||
entry->flags.indicator_on = 0;
|
entry->flags.indicator_on = 0;
|
||||||
@@ -469,7 +465,6 @@ static void updateMakeShortcutMenu(WMenu * menu, WWindow * wwin)
|
|||||||
}
|
}
|
||||||
entry->clientdata = wwin;
|
entry->clientdata = wwin;
|
||||||
}
|
}
|
||||||
wfree(buffer);
|
|
||||||
if (!smenu->flags.realized)
|
if (!smenu->flags.realized)
|
||||||
wMenuRealize(smenu);
|
wMenuRealize(smenu);
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -12,7 +12,7 @@ bin_SCRIPTS = wmaker.inst wm-oldmenu2new wkdemenu.pl
|
|||||||
EXTRA_DIST = wmaker.inst.in bughint wm-oldmenu2new wkdemenu.pl
|
EXTRA_DIST = wmaker.inst.in bughint wm-oldmenu2new wkdemenu.pl
|
||||||
|
|
||||||
AM_CPPFLAGS = \
|
AM_CPPFLAGS = \
|
||||||
$(DFLAGS) -I$(top_srcdir)/WINGs -I$(top_srcdir)/wrlib \
|
$(DFLAGS) -I$(top_srcdir)/WINGs -I$(top_builddir)/wrlib \
|
||||||
@HEADER_SEARCH_PATH@ \
|
@HEADER_SEARCH_PATH@ \
|
||||||
-DETCDIR=\"sysconfdir\" -DDATADIR=\"pkgdatadir\"
|
-DETCDIR=\"sysconfdir\" -DDATADIR=\"pkgdatadir\"
|
||||||
|
|
||||||
|
|||||||
+11
-9
@@ -55,6 +55,9 @@
|
|||||||
#include "../src/wconfig.h"
|
#include "../src/wconfig.h"
|
||||||
|
|
||||||
|
|
||||||
|
#define THEME_SUBPATH "/" PACKAGE_TARNAME "/Themes/"
|
||||||
|
#define THEME_EXTDIR ".themed/"
|
||||||
|
|
||||||
/* table of style related options */
|
/* table of style related options */
|
||||||
static char *options[] = {
|
static char *options[] = {
|
||||||
"TitleJustify",
|
"TitleJustify",
|
||||||
@@ -137,7 +140,9 @@ static noreturn void print_help(int print_usage, int exitval)
|
|||||||
{
|
{
|
||||||
printf("Usage: %s [-t] [-p] [-h] [-v] [file]\n", prog_name);
|
printf("Usage: %s [-t] [-p] [-h] [-v] [file]\n", prog_name);
|
||||||
if (print_usage) {
|
if (print_usage) {
|
||||||
puts("Retrieves style/theme configuration and outputs to ~/GNUstep/Library/WindowMaker/Themes/file.themed/style or to stdout");
|
puts("Retrieves style/theme configuration and outputs to "
|
||||||
|
"~/" GSUSER_SUBDIR "/" USERDATA_SUBDIR THEME_SUBPATH "file" THEME_EXTDIR "style"
|
||||||
|
" or to stdout");
|
||||||
puts("");
|
puts("");
|
||||||
puts(" -h, --help display this help and exit");
|
puts(" -h, --help display this help and exit");
|
||||||
puts(" -v, --version output version information and exit");
|
puts(" -v, --version output version information and exit");
|
||||||
@@ -175,9 +180,6 @@ static void findCopyFile(const char *dir, const char *file)
|
|||||||
wfree(fullPath);
|
wfree(fullPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define THEME_SUBPATH "/Library/WindowMaker/Themes/"
|
|
||||||
#define THEME_EXTDIR ".themed/"
|
|
||||||
|
|
||||||
static void makeThemePack(WMPropList * style, const char *themeName)
|
static void makeThemePack(WMPropList * style, const char *themeName)
|
||||||
{
|
{
|
||||||
WMPropList *keys;
|
WMPropList *keys;
|
||||||
@@ -186,16 +188,16 @@ static void makeThemePack(WMPropList * style, const char *themeName)
|
|||||||
int i;
|
int i;
|
||||||
size_t themeNameLen;
|
size_t themeNameLen;
|
||||||
char *themeDir;
|
char *themeDir;
|
||||||
const char *user_base;
|
const char *user_library;
|
||||||
|
|
||||||
user_base = wusergnusteppath();
|
user_library = wuserdatapath();
|
||||||
if (user_base == NULL)
|
if (user_library == NULL)
|
||||||
return;
|
return;
|
||||||
themeNameLen = strlen(user_base) + sizeof(THEME_SUBPATH) + strlen(themeName) + sizeof(THEME_EXTDIR) + 1;
|
themeNameLen = strlen(user_library) + sizeof(THEME_SUBPATH) + strlen(themeName) + sizeof(THEME_EXTDIR) + 1;
|
||||||
themeDir = wmalloc(themeNameLen);
|
themeDir = wmalloc(themeNameLen);
|
||||||
snprintf(themeDir, themeNameLen,
|
snprintf(themeDir, themeNameLen,
|
||||||
"%s" THEME_SUBPATH "%s" THEME_EXTDIR,
|
"%s" THEME_SUBPATH "%s" THEME_EXTDIR,
|
||||||
user_base, themeName);
|
user_library, themeName);
|
||||||
ThemePath = themeDir;
|
ThemePath = themeDir;
|
||||||
|
|
||||||
if (!wmkdirhier(themeDir)) {
|
if (!wmkdirhier(themeDir)) {
|
||||||
|
|||||||
@@ -31,26 +31,6 @@ make_dir() {
|
|||||||
chmod +rwx "$1"
|
chmod +rwx "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
make_script() {
|
|
||||||
ISCRIPT="$1"
|
|
||||||
|
|
||||||
cat << EOF >> "$ISCRIPT"
|
|
||||||
# Window Maker default X session startup script
|
|
||||||
|
|
||||||
PATH="\$PATH:$BINDIR"
|
|
||||||
|
|
||||||
# If you login from xdm, uncomment this to make error messages appear
|
|
||||||
# in the console window.
|
|
||||||
#
|
|
||||||
# tail -f "$HOME"/.xsession-errors > /dev/console &
|
|
||||||
|
|
||||||
exec wmaker
|
|
||||||
|
|
||||||
EOF
|
|
||||||
chmod +rx "$ISCRIPT"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Copy files considering special cases
|
# Copy files considering special cases
|
||||||
#
|
#
|
||||||
@@ -293,24 +273,4 @@ fi
|
|||||||
|
|
||||||
trap "show_end_message;exit" 2
|
trap "show_end_message;exit" 2
|
||||||
|
|
||||||
echo
|
|
||||||
echo "Now the .xinitrc, .Xclients or .xsession script must be updated so that"
|
|
||||||
echo "it calls wmaker when you start an X session."
|
|
||||||
echo "Type the name of the file that must be changed (normally .xinitrc)."
|
|
||||||
echo "If the file already exists, it will be backed up with a .old.$DATE "
|
|
||||||
echo "extension"
|
|
||||||
echo "If you want to edit it by hand, hit <Control>-C now."
|
|
||||||
read file
|
|
||||||
|
|
||||||
if test "x$file" = "x"; then
|
|
||||||
echo "Using .xinitrc as a default value"
|
|
||||||
file=.xinitrc
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -f "$USERDIR/$file" ]; then
|
|
||||||
mv "$USERDIR/$file" "$USERDIR/$file.old.$DATE"
|
|
||||||
fi
|
|
||||||
|
|
||||||
make_script "$USERDIR/$file"
|
|
||||||
|
|
||||||
show_end_message
|
show_end_message
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user