Adding in a personally preferred KWin style. Yet again- the first one of
its kind? Not created by Mosfet? : ) we'll see... -Chris svn path=/trunk/kdebase/kwin/; revision=47482
This commit is contained in:
parent
6f0d6ab59b
commit
d70c3af41e
7 changed files with 1029 additions and 1 deletions
|
@ -1 +1 @@
|
||||||
SUBDIRS=kstep system b2 laptop riscos
|
SUBDIRS=kstep system b2 laptop riscos mwm
|
||||||
|
|
20
clients/mwm/Makefile.am
Normal file
20
clients/mwm/Makefile.am
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
|
||||||
|
INCLUDES = $(all_includes)
|
||||||
|
|
||||||
|
lib_LTLIBRARIES = libkwinmwm.la
|
||||||
|
|
||||||
|
libkwinmwm_la_SOURCES = mwmclient.cpp
|
||||||
|
|
||||||
|
METASOURCES = AUTO
|
||||||
|
noinst_HEADERS = mwmclient.h
|
||||||
|
|
||||||
|
lnkdir = $(kde_datadir)/kwin/
|
||||||
|
lnk_DATA = mwm.desktop
|
||||||
|
|
||||||
|
EXTRA_DIST = $(lnk_DATA)
|
||||||
|
|
||||||
|
libkwinmwm_la_LDFLAGS = $(all_libraries) -version-info 1:0:0 -module -rdynamic
|
||||||
|
|
||||||
|
###KMAKE-start (don't edit or delete this block)
|
||||||
|
|
||||||
|
###KMAKE-end
|
624
clients/mwm/Makefile.in
Normal file
624
clients/mwm/Makefile.in
Normal file
|
@ -0,0 +1,624 @@
|
||||||
|
# KDE tags expanded automatically by am_edit - $Revision$
|
||||||
|
# Makefile.in generated automatically by automake 1.4 from Makefile.am
|
||||||
|
|
||||||
|
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
|
||||||
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
|
# with or without modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
|
||||||
|
SHELL = @SHELL@
|
||||||
|
|
||||||
|
srcdir = @srcdir@
|
||||||
|
top_srcdir = @top_srcdir@
|
||||||
|
VPATH = @srcdir@
|
||||||
|
prefix = @prefix@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
#>-
|
||||||
|
bindir = @bindir@
|
||||||
|
#>+ 3
|
||||||
|
DEPDIR = .deps
|
||||||
|
|
||||||
|
bindir = @bindir@
|
||||||
|
sbindir = @sbindir@
|
||||||
|
libexecdir = @libexecdir@
|
||||||
|
datadir = @datadir@
|
||||||
|
sysconfdir = @sysconfdir@
|
||||||
|
sharedstatedir = @sharedstatedir@
|
||||||
|
localstatedir = @localstatedir@
|
||||||
|
libdir = @libdir@
|
||||||
|
infodir = @infodir@
|
||||||
|
mandir = @mandir@
|
||||||
|
includedir = @includedir@
|
||||||
|
oldincludedir = /usr/include
|
||||||
|
|
||||||
|
DESTDIR =
|
||||||
|
|
||||||
|
pkgdatadir = $(datadir)/@PACKAGE@
|
||||||
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
|
|
||||||
|
top_builddir = ../../..
|
||||||
|
|
||||||
|
ACLOCAL = @ACLOCAL@
|
||||||
|
AUTOCONF = @AUTOCONF@
|
||||||
|
AUTOMAKE = @AUTOMAKE@
|
||||||
|
AUTOHEADER = @AUTOHEADER@
|
||||||
|
|
||||||
|
INSTALL = @INSTALL@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
|
||||||
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||||
|
transform = @program_transform_name@
|
||||||
|
|
||||||
|
NORMAL_INSTALL = :
|
||||||
|
PRE_INSTALL = :
|
||||||
|
POST_INSTALL = :
|
||||||
|
NORMAL_UNINSTALL = :
|
||||||
|
PRE_UNINSTALL = :
|
||||||
|
POST_UNINSTALL = :
|
||||||
|
build_alias = @build_alias@
|
||||||
|
build_triplet = @build@
|
||||||
|
host_alias = @host_alias@
|
||||||
|
host_triplet = @host@
|
||||||
|
target_alias = @target_alias@
|
||||||
|
target_triplet = @target@
|
||||||
|
AS = @AS@
|
||||||
|
AUTODIRS = @AUTODIRS@
|
||||||
|
CC = @CC@
|
||||||
|
CPP = @CPP@
|
||||||
|
CXX = @CXX@
|
||||||
|
CXXCPP = @CXXCPP@
|
||||||
|
DCOPIDL = @DCOPIDL@
|
||||||
|
DCOPIDL2CPP = @DCOPIDL2CPP@
|
||||||
|
DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@
|
||||||
|
DLLTOOL = @DLLTOOL@
|
||||||
|
DPMSINC = @DPMSINC@
|
||||||
|
DPMSLIB = @DPMSLIB@
|
||||||
|
EXEEXT = @EXEEXT@
|
||||||
|
EXTRA_LIBSMB_ADD = @EXTRA_LIBSMB_ADD@
|
||||||
|
EXTRA_LIBSMB_FLAGS = @EXTRA_LIBSMB_FLAGS@
|
||||||
|
GLINC = @GLINC@
|
||||||
|
GLLIB = @GLLIB@
|
||||||
|
GL_SAVERS = @GL_SAVERS@
|
||||||
|
GMSGFMT = @GMSGFMT@
|
||||||
|
IDL = @IDL@
|
||||||
|
IDL_DEPENDENCIES = @IDL_DEPENDENCIES@
|
||||||
|
KDE_CXXFLAGS = @KDE_CXXFLAGS@
|
||||||
|
KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@
|
||||||
|
KDE_INCLUDES = @KDE_INCLUDES@
|
||||||
|
KDE_LDFLAGS = @KDE_LDFLAGS@
|
||||||
|
KDE_RPATH = @KDE_RPATH@
|
||||||
|
KDE_USE_CLOSURE_FALSE = @KDE_USE_CLOSURE_FALSE@
|
||||||
|
KDE_USE_CLOSURE_TRUE = @KDE_USE_CLOSURE_TRUE@
|
||||||
|
KDE_USE_FINAL_FALSE = @KDE_USE_FINAL_FALSE@
|
||||||
|
KDE_USE_FINAL_TRUE = @KDE_USE_FINAL_TRUE@
|
||||||
|
KERBEROS_INCS = @KERBEROS_INCS@
|
||||||
|
KERBEROS_LIBS = @KERBEROS_LIBS@
|
||||||
|
KERBEROS_ROOT = @KERBEROS_ROOT@
|
||||||
|
KRB_RPATH = @KRB_RPATH@
|
||||||
|
LDAP_INCS = @LDAP_INCS@
|
||||||
|
LDAP_LIBS = @LDAP_LIBS@
|
||||||
|
LDAP_RPATH = @LDAP_RPATH@
|
||||||
|
LDAP_SUBDIR = @LDAP_SUBDIR@
|
||||||
|
LIBALIB = @LIBALIB@
|
||||||
|
LIBCOMPAT = @LIBCOMPAT@
|
||||||
|
LIBCRYPT = @LIBCRYPT@
|
||||||
|
LIBCURSES = @LIBCURSES@
|
||||||
|
LIBDL = @LIBDL@
|
||||||
|
LIBJPEG = @LIBJPEG@
|
||||||
|
LIBMICO = @LIBMICO@
|
||||||
|
LIBOBJS = @LIBOBJS@
|
||||||
|
LIBOSSAUDIO = @LIBOSSAUDIO@
|
||||||
|
LIBPNG = @LIBPNG@
|
||||||
|
LIBPTHREAD = @LIBPTHREAD@
|
||||||
|
LIBPYTHON = @LIBPYTHON@
|
||||||
|
LIBQIMGIO = @LIBQIMGIO@
|
||||||
|
LIBSM = @LIBSM@
|
||||||
|
LIBSOCKET = @LIBSOCKET@
|
||||||
|
LIBTIFF = @LIBTIFF@
|
||||||
|
LIBTOOL = @LIBTOOL@
|
||||||
|
LIBUCB = @LIBUCB@
|
||||||
|
LIBUTEMPTER = @LIBUTEMPTER@
|
||||||
|
LIBUTIL = @LIBUTIL@
|
||||||
|
LIBXDMCP = @LIBXDMCP@
|
||||||
|
LIBZ = @LIBZ@
|
||||||
|
LIB_KAB = @LIB_KAB@
|
||||||
|
LIB_KDECORE = @LIB_KDECORE@
|
||||||
|
LIB_KDEUI = @LIB_KDEUI@
|
||||||
|
LIB_KFILE = @LIB_KFILE@
|
||||||
|
LIB_KFM = @LIB_KFM@
|
||||||
|
LIB_KFORMULA = @LIB_KFORMULA@
|
||||||
|
LIB_KHTML = @LIB_KHTML@
|
||||||
|
LIB_KIMGIO = @LIB_KIMGIO@
|
||||||
|
LIB_KIO = @LIB_KIO@
|
||||||
|
LIB_KPARTS = @LIB_KPARTS@
|
||||||
|
LIB_KSPELL = @LIB_KSPELL@
|
||||||
|
LIB_KSYCOCA = @LIB_KSYCOCA@
|
||||||
|
LIB_KWRITE = @LIB_KWRITE@
|
||||||
|
LIB_LIBS = @LIB_LIBS@
|
||||||
|
LIB_QT = @LIB_QT@
|
||||||
|
LIB_SMB = @LIB_SMB@
|
||||||
|
LIB_X11 = @LIB_X11@
|
||||||
|
LN_S = @LN_S@
|
||||||
|
MAKEINFO = @MAKEINFO@
|
||||||
|
MICO_INCLUDES = @MICO_INCLUDES@
|
||||||
|
MICO_LDFLAGS = @MICO_LDFLAGS@
|
||||||
|
MOC = @MOC@
|
||||||
|
MSGFMT = @MSGFMT@
|
||||||
|
NOOPT_CXXFLAGS = @NOOPT_CXXFLAGS@
|
||||||
|
NOREPO = @NOREPO@
|
||||||
|
OBJDUMP = @OBJDUMP@
|
||||||
|
OBJEXT = @OBJEXT@
|
||||||
|
ODBC_DIR = @ODBC_DIR@
|
||||||
|
PACKAGE = @PACKAGE@
|
||||||
|
PAMINC = @PAMINC@
|
||||||
|
PAMLIBPATHS = @PAMLIBPATHS@
|
||||||
|
PAMLIBS = @PAMLIBS@
|
||||||
|
PASSWDLIB = @PASSWDLIB@
|
||||||
|
PYTHONINC = @PYTHONINC@
|
||||||
|
PYTHONLIB = @PYTHONLIB@
|
||||||
|
QT_INCLUDES = @QT_INCLUDES@
|
||||||
|
QT_LDFLAGS = @QT_LDFLAGS@
|
||||||
|
RANLIB = @RANLIB@
|
||||||
|
REPO = @REPO@
|
||||||
|
RUN_KAPPFINDER = @RUN_KAPPFINDER@
|
||||||
|
SAMBA_LIBS = @SAMBA_LIBS@
|
||||||
|
SETUIDFLAGS = @SETUIDFLAGS@
|
||||||
|
STRIP = @STRIP@
|
||||||
|
TOPSUBDIRS = @TOPSUBDIRS@
|
||||||
|
USER_INCLUDES = @USER_INCLUDES@
|
||||||
|
USER_LDFLAGS = @USER_LDFLAGS@
|
||||||
|
USE_EXCEPTIONS = @USE_EXCEPTIONS@
|
||||||
|
USE_NLS = @USE_NLS@
|
||||||
|
USE_RTTI = @USE_RTTI@
|
||||||
|
VERSION = @VERSION@
|
||||||
|
XBINDIR = @XBINDIR@
|
||||||
|
XGETTEXT = @XGETTEXT@
|
||||||
|
XPMINC = @XPMINC@
|
||||||
|
XPMLIB = @XPMLIB@
|
||||||
|
XPM_SAVERS = @XPM_SAVERS@
|
||||||
|
X_EXTRA_LIBS = @X_EXTRA_LIBS@
|
||||||
|
X_INCLUDES = @X_INCLUDES@
|
||||||
|
X_LDFLAGS = @X_LDFLAGS@
|
||||||
|
X_PRE_LIBS = @X_PRE_LIBS@
|
||||||
|
X_SERVER = @X_SERVER@
|
||||||
|
ac_xdmdir = @ac_xdmdir@
|
||||||
|
all_includes = @all_includes@
|
||||||
|
all_libraries = @all_libraries@
|
||||||
|
idldir = @idldir@
|
||||||
|
kde_appsdir = @kde_appsdir@
|
||||||
|
kde_bindir = @kde_bindir@
|
||||||
|
kde_cgidir = @kde_cgidir@
|
||||||
|
kde_confdir = @kde_confdir@
|
||||||
|
kde_datadir = @kde_datadir@
|
||||||
|
kde_htmldir = @kde_htmldir@
|
||||||
|
kde_icondir = @kde_icondir@
|
||||||
|
kde_includes = @kde_includes@
|
||||||
|
kde_libraries = @kde_libraries@
|
||||||
|
kde_locale = @kde_locale@
|
||||||
|
kde_mimedir = @kde_mimedir@
|
||||||
|
kde_minidir = @kde_minidir@
|
||||||
|
kde_servicesdir = @kde_servicesdir@
|
||||||
|
kde_servicetypesdir = @kde_servicetypesdir@
|
||||||
|
kde_sounddir = @kde_sounddir@
|
||||||
|
kde_toolbardir = @kde_toolbardir@
|
||||||
|
kde_wallpaperdir = @kde_wallpaperdir@
|
||||||
|
micodir = @micodir@
|
||||||
|
nogroup = @nogroup@
|
||||||
|
qt_includes = @qt_includes@
|
||||||
|
qt_libraries = @qt_libraries@
|
||||||
|
x_includes = @x_includes@
|
||||||
|
x_libraries = @x_libraries@
|
||||||
|
xdmconfigsubdir = @xdmconfigsubdir@
|
||||||
|
|
||||||
|
INCLUDES = $(all_includes)
|
||||||
|
|
||||||
|
lib_LTLIBRARIES = libkwinmwm.la
|
||||||
|
|
||||||
|
libkwinmwm_la_SOURCES = mwmclient.cpp
|
||||||
|
|
||||||
|
#>- METASOURCES = AUTO
|
||||||
|
noinst_HEADERS = mwmclient.h
|
||||||
|
|
||||||
|
lnkdir = $(kde_datadir)/kwin/
|
||||||
|
lnk_DATA = mwm.desktop
|
||||||
|
|
||||||
|
EXTRA_DIST = $(lnk_DATA)
|
||||||
|
|
||||||
|
libkwinmwm_la_LDFLAGS = $(all_libraries) -version-info 1:0:0 -module -rdynamic
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs
|
||||||
|
CONFIG_HEADER = ../../../config.h
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||||
|
|
||||||
|
|
||||||
|
DEFS = @DEFS@ -I. -I$(srcdir) -I../../..
|
||||||
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
LDFLAGS = @LDFLAGS@
|
||||||
|
LIBS = @LIBS@
|
||||||
|
libkwinmwm_la_LIBADD =
|
||||||
|
#>- libkwinmwm_la_OBJECTS = mwmclient.lo
|
||||||
|
#>+ 4
|
||||||
|
@KDE_USE_FINAL_FALSE@libkwinmwm_la_OBJECTS = mwmclient.lo\
|
||||||
|
mwmclient.moc.lo
|
||||||
|
@KDE_USE_FINAL_TRUE@libkwinmwm_la_OBJECTS = libkwinmwm_la.all_cpp.lo
|
||||||
|
libkwinmwm_la_final_OBJECTS = libkwinmwm_la.all_cpp.lo
|
||||||
|
CXXFLAGS = @CXXFLAGS@
|
||||||
|
#>- CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||||
|
#>+ 1
|
||||||
|
CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS)
|
||||||
|
#>- LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||||
|
#>+ 1
|
||||||
|
LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS)
|
||||||
|
CXXLD = $(CXX)
|
||||||
|
#>- CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@
|
||||||
|
#>+ 1
|
||||||
|
CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) $(LDFLAGS) -o $@
|
||||||
|
DATA = $(lnk_DATA)
|
||||||
|
|
||||||
|
HEADERS = $(noinst_HEADERS)
|
||||||
|
|
||||||
|
DIST_COMMON = Makefile.am Makefile.in
|
||||||
|
|
||||||
|
|
||||||
|
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
|
||||||
|
TAR = tar
|
||||||
|
GZIP_ENV = --best
|
||||||
|
#>- DEP_FILES = .deps/mwmclient.P
|
||||||
|
#>+ 4
|
||||||
|
@KDE_USE_FINAL_TRUE@DEP_FILES = $(DEPDIR)/mwmclient.moc.P $(DEPDIR)/libkwinmwm_la.all_cpp.P \
|
||||||
|
.deps/mwmclient.P
|
||||||
|
@KDE_USE_FINAL_FALSE@DEP_FILES = $(DEPDIR)/mwmclient.moc.P .deps/mwmclient.P
|
||||||
|
|
||||||
|
SOURCES = $(libkwinmwm_la_SOURCES)
|
||||||
|
OBJECTS = $(libkwinmwm_la_OBJECTS)
|
||||||
|
|
||||||
|
#>- all: all-redirect
|
||||||
|
#>+ 1
|
||||||
|
all: docs-am all-redirect
|
||||||
|
.SUFFIXES:
|
||||||
|
.SUFFIXES: .S .c .cpp .lo .o .obj .s
|
||||||
|
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
||||||
|
#>- cd $(top_srcdir) && $(AUTOMAKE) --gnu kwin/clients/mwm/Makefile
|
||||||
|
#>+ 2
|
||||||
|
cd $(top_srcdir) && $(AUTOMAKE) --gnu kwin/clients/mwm/Makefile
|
||||||
|
cd $(top_srcdir) && perl admin/am_edit kwin/clients/mwm/Makefile.in
|
||||||
|
|
||||||
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
|
||||||
|
cd $(top_builddir) \
|
||||||
|
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
|
||||||
|
|
||||||
|
|
||||||
|
mostlyclean-libLTLIBRARIES:
|
||||||
|
|
||||||
|
clean-libLTLIBRARIES:
|
||||||
|
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
||||||
|
|
||||||
|
distclean-libLTLIBRARIES:
|
||||||
|
|
||||||
|
maintainer-clean-libLTLIBRARIES:
|
||||||
|
|
||||||
|
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
$(mkinstalldirs) $(DESTDIR)$(libdir)
|
||||||
|
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||||
|
if test -f $$p; then \
|
||||||
|
echo "$(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(libdir)/$$p"; \
|
||||||
|
$(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(libdir)/$$p; \
|
||||||
|
else :; fi; \
|
||||||
|
done
|
||||||
|
|
||||||
|
uninstall-libLTLIBRARIES:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||||
|
$(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
|
||||||
|
done
|
||||||
|
|
||||||
|
# FIXME: We should only use cygpath when building on Windows,
|
||||||
|
# and only if it is available.
|
||||||
|
.c.obj:
|
||||||
|
$(COMPILE) -c `cygpath -w $<`
|
||||||
|
|
||||||
|
.s.o:
|
||||||
|
$(COMPILE) -c $<
|
||||||
|
|
||||||
|
.S.o:
|
||||||
|
$(COMPILE) -c $<
|
||||||
|
|
||||||
|
mostlyclean-compile:
|
||||||
|
-rm -f *.o core *.core
|
||||||
|
-rm -f *.$(OBJEXT)
|
||||||
|
|
||||||
|
clean-compile:
|
||||||
|
|
||||||
|
distclean-compile:
|
||||||
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
maintainer-clean-compile:
|
||||||
|
|
||||||
|
.s.lo:
|
||||||
|
$(LIBTOOL) --mode=compile $(COMPILE) -c $<
|
||||||
|
|
||||||
|
.S.lo:
|
||||||
|
$(LIBTOOL) --mode=compile $(COMPILE) -c $<
|
||||||
|
|
||||||
|
mostlyclean-libtool:
|
||||||
|
-rm -f *.lo
|
||||||
|
|
||||||
|
clean-libtool:
|
||||||
|
-rm -rf .libs _libs
|
||||||
|
|
||||||
|
distclean-libtool:
|
||||||
|
|
||||||
|
maintainer-clean-libtool:
|
||||||
|
|
||||||
|
libkwinmwm.la: $(libkwinmwm_la_OBJECTS) $(libkwinmwm_la_DEPENDENCIES)
|
||||||
|
$(CXXLINK) -rpath $(libdir) $(libkwinmwm_la_LDFLAGS) $(libkwinmwm_la_OBJECTS) $(libkwinmwm_la_LIBADD) $(LIBS)
|
||||||
|
.cpp.o:
|
||||||
|
$(CXXCOMPILE) -c $<
|
||||||
|
.cpp.obj:
|
||||||
|
$(CXXCOMPILE) -c `cygpath -w $<`
|
||||||
|
.cpp.lo:
|
||||||
|
$(LTCXXCOMPILE) -c $<
|
||||||
|
|
||||||
|
install-lnkDATA: $(lnk_DATA)
|
||||||
|
@$(NORMAL_INSTALL)
|
||||||
|
$(mkinstalldirs) $(DESTDIR)$(lnkdir)
|
||||||
|
@list='$(lnk_DATA)'; for p in $$list; do \
|
||||||
|
if test -f $(srcdir)/$$p; then \
|
||||||
|
echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(lnkdir)/$$p"; \
|
||||||
|
$(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(lnkdir)/$$p; \
|
||||||
|
else if test -f $$p; then \
|
||||||
|
echo " $(INSTALL_DATA) $$p $(DESTDIR)$(lnkdir)/$$p"; \
|
||||||
|
$(INSTALL_DATA) $$p $(DESTDIR)$(lnkdir)/$$p; \
|
||||||
|
fi; fi; \
|
||||||
|
done
|
||||||
|
|
||||||
|
uninstall-lnkDATA:
|
||||||
|
@$(NORMAL_UNINSTALL)
|
||||||
|
list='$(lnk_DATA)'; for p in $$list; do \
|
||||||
|
rm -f $(DESTDIR)$(lnkdir)/$$p; \
|
||||||
|
done
|
||||||
|
|
||||||
|
tags: TAGS
|
||||||
|
|
||||||
|
ID: $(HEADERS) $(SOURCES) $(LISP)
|
||||||
|
list='$(SOURCES) $(HEADERS)'; \
|
||||||
|
unique=`for i in $$list; do echo $$i; done | \
|
||||||
|
awk ' { files[$$0] = 1; } \
|
||||||
|
END { for (i in files) print i; }'`; \
|
||||||
|
here=`pwd` && cd $(srcdir) \
|
||||||
|
&& mkid -f$$here/ID $$unique $(LISP)
|
||||||
|
|
||||||
|
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
|
||||||
|
tags=; \
|
||||||
|
here=`pwd`; \
|
||||||
|
list='$(SOURCES) $(HEADERS)'; \
|
||||||
|
unique=`for i in $$list; do echo $$i; done | \
|
||||||
|
awk ' { files[$$0] = 1; } \
|
||||||
|
END { for (i in files) print i; }'`; \
|
||||||
|
test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
|
||||||
|
|| (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
|
||||||
|
|
||||||
|
mostlyclean-tags:
|
||||||
|
|
||||||
|
clean-tags:
|
||||||
|
|
||||||
|
distclean-tags:
|
||||||
|
-rm -f TAGS ID
|
||||||
|
|
||||||
|
maintainer-clean-tags:
|
||||||
|
|
||||||
|
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
|
||||||
|
|
||||||
|
subdir = kwin/clients/mwm
|
||||||
|
|
||||||
|
distdir: $(DISTFILES)
|
||||||
|
here=`cd $(top_builddir) && pwd`; \
|
||||||
|
top_distdir=`cd $(top_distdir) && pwd`; \
|
||||||
|
distdir=`cd $(distdir) && pwd`; \
|
||||||
|
cd $(top_srcdir) \
|
||||||
|
&& $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu kwin/clients/mwm/Makefile
|
||||||
|
@for file in $(DISTFILES); do \
|
||||||
|
d=$(srcdir); \
|
||||||
|
if test -d $$d/$$file; then \
|
||||||
|
cp -pr $$/$$file $(distdir)/$$file; \
|
||||||
|
else \
|
||||||
|
test -f $(distdir)/$$file \
|
||||||
|
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|
||||||
|
|| cp -p $$d/$$file $(distdir)/$$file || :; \
|
||||||
|
fi; \
|
||||||
|
done
|
||||||
|
|
||||||
|
DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
|
||||||
|
|
||||||
|
-include $(DEP_FILES)
|
||||||
|
|
||||||
|
mostlyclean-depend:
|
||||||
|
|
||||||
|
clean-depend:
|
||||||
|
|
||||||
|
distclean-depend:
|
||||||
|
-rm -rf .deps
|
||||||
|
|
||||||
|
maintainer-clean-depend:
|
||||||
|
|
||||||
|
%.o: %.c
|
||||||
|
@echo '$(COMPILE) -c $<'; \
|
||||||
|
$(COMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
|
||||||
|
@-cp .deps/$(*F).pp .deps/$(*F).P; \
|
||||||
|
tr ' ' '\012' < .deps/$(*F).pp \
|
||||||
|
| sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
|
||||||
|
>> .deps/$(*F).P; \
|
||||||
|
rm .deps/$(*F).pp
|
||||||
|
|
||||||
|
%.lo: %.c
|
||||||
|
@echo '$(LTCOMPILE) -c $<'; \
|
||||||
|
$(LTCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
|
||||||
|
@-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
|
||||||
|
< .deps/$(*F).pp > .deps/$(*F).P; \
|
||||||
|
tr ' ' '\012' < .deps/$(*F).pp \
|
||||||
|
| sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
|
||||||
|
>> .deps/$(*F).P; \
|
||||||
|
rm -f .deps/$(*F).pp
|
||||||
|
|
||||||
|
%.o: %.cpp
|
||||||
|
@echo '$(CXXCOMPILE) -c $<'; \
|
||||||
|
$(CXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
|
||||||
|
@-cp .deps/$(*F).pp .deps/$(*F).P; \
|
||||||
|
tr ' ' '\012' < .deps/$(*F).pp \
|
||||||
|
| sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
|
||||||
|
>> .deps/$(*F).P; \
|
||||||
|
rm .deps/$(*F).pp
|
||||||
|
|
||||||
|
%.lo: %.cpp
|
||||||
|
@echo '$(LTCXXCOMPILE) -c $<'; \
|
||||||
|
$(LTCXXCOMPILE) -Wp,-MD,.deps/$(*F).pp -c $<
|
||||||
|
@-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \
|
||||||
|
< .deps/$(*F).pp > .deps/$(*F).P; \
|
||||||
|
tr ' ' '\012' < .deps/$(*F).pp \
|
||||||
|
| sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \
|
||||||
|
>> .deps/$(*F).P; \
|
||||||
|
rm -f .deps/$(*F).pp
|
||||||
|
info-am:
|
||||||
|
info: info-am
|
||||||
|
dvi-am:
|
||||||
|
dvi: dvi-am
|
||||||
|
check-am: all-am
|
||||||
|
check: check-am
|
||||||
|
installcheck-am:
|
||||||
|
installcheck: installcheck-am
|
||||||
|
install-exec-am: install-libLTLIBRARIES
|
||||||
|
install-exec: install-exec-am
|
||||||
|
|
||||||
|
install-data-am: install-lnkDATA
|
||||||
|
install-data: install-data-am
|
||||||
|
|
||||||
|
install-am: all-am
|
||||||
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||||
|
install: install-am
|
||||||
|
uninstall-am: uninstall-libLTLIBRARIES uninstall-lnkDATA
|
||||||
|
uninstall: uninstall-am
|
||||||
|
all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
|
||||||
|
all-redirect: all-am
|
||||||
|
install-strip:
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
|
||||||
|
installdirs:
|
||||||
|
$(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(lnkdir)
|
||||||
|
|
||||||
|
|
||||||
|
mostlyclean-generic:
|
||||||
|
|
||||||
|
clean-generic:
|
||||||
|
|
||||||
|
distclean-generic:
|
||||||
|
-rm -f Makefile $(CONFIG_CLEAN_FILES)
|
||||||
|
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
|
||||||
|
|
||||||
|
maintainer-clean-generic:
|
||||||
|
mostlyclean-am: mostlyclean-libLTLIBRARIES mostlyclean-compile \
|
||||||
|
mostlyclean-libtool mostlyclean-tags mostlyclean-depend \
|
||||||
|
mostlyclean-generic
|
||||||
|
|
||||||
|
mostlyclean: mostlyclean-am
|
||||||
|
|
||||||
|
#>- clean-am: clean-libLTLIBRARIES clean-compile clean-libtool clean-tags \
|
||||||
|
#>- clean-depend clean-generic mostlyclean-am
|
||||||
|
#>+ 2
|
||||||
|
clean-am: clean-metasources clean-final clean-libLTLIBRARIES clean-compile clean-libtool clean-tags \
|
||||||
|
clean-depend clean-generic mostlyclean-am
|
||||||
|
|
||||||
|
#>- clean: clean-am
|
||||||
|
#>+ 1
|
||||||
|
clean: kde-rpo-clean clean-am
|
||||||
|
|
||||||
|
distclean-am: distclean-libLTLIBRARIES distclean-compile \
|
||||||
|
distclean-libtool distclean-tags distclean-depend \
|
||||||
|
distclean-generic clean-am
|
||||||
|
-rm -f libtool
|
||||||
|
|
||||||
|
distclean: distclean-am
|
||||||
|
|
||||||
|
maintainer-clean-am: maintainer-clean-libLTLIBRARIES \
|
||||||
|
maintainer-clean-compile maintainer-clean-libtool \
|
||||||
|
maintainer-clean-tags maintainer-clean-depend \
|
||||||
|
maintainer-clean-generic distclean-am
|
||||||
|
@echo "This command is intended for maintainers to use;"
|
||||||
|
@echo "it deletes files that may require special tools to rebuild."
|
||||||
|
|
||||||
|
maintainer-clean: maintainer-clean-am
|
||||||
|
|
||||||
|
.PHONY: mostlyclean-libLTLIBRARIES distclean-libLTLIBRARIES \
|
||||||
|
clean-libLTLIBRARIES maintainer-clean-libLTLIBRARIES \
|
||||||
|
uninstall-libLTLIBRARIES install-libLTLIBRARIES mostlyclean-compile \
|
||||||
|
distclean-compile clean-compile maintainer-clean-compile \
|
||||||
|
mostlyclean-libtool distclean-libtool clean-libtool \
|
||||||
|
maintainer-clean-libtool uninstall-lnkDATA install-lnkDATA tags \
|
||||||
|
mostlyclean-tags distclean-tags clean-tags maintainer-clean-tags \
|
||||||
|
distdir mostlyclean-depend distclean-depend clean-depend \
|
||||||
|
maintainer-clean-depend info-am info dvi-am dvi check check-am \
|
||||||
|
installcheck-am installcheck install-exec-am install-exec \
|
||||||
|
install-data-am install-data install-am install uninstall-am uninstall \
|
||||||
|
all-redirect all-am all installdirs mostlyclean-generic \
|
||||||
|
distclean-generic clean-generic maintainer-clean-generic clean \
|
||||||
|
mostlyclean distclean maintainer-clean
|
||||||
|
|
||||||
|
|
||||||
|
###KMAKE-start (don't edit or delete this block)
|
||||||
|
|
||||||
|
###KMAKE-end
|
||||||
|
|
||||||
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||||
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||||
|
.NOEXPORT:
|
||||||
|
|
||||||
|
#>+ 3
|
||||||
|
mwmclient.moc.cpp: $(srcdir)/mwmclient.h
|
||||||
|
$(MOC) $(srcdir)/mwmclient.h -o mwmclient.moc.cpp
|
||||||
|
|
||||||
|
#>+ 3
|
||||||
|
clean-metasources:
|
||||||
|
-rm -f mwmclient.moc.cpp
|
||||||
|
|
||||||
|
#>+ 2
|
||||||
|
docs-am:
|
||||||
|
|
||||||
|
#>+ 5
|
||||||
|
force-reedit:
|
||||||
|
cd $(top_srcdir) && $(AUTOMAKE) --gnu kwin/clients/mwm/Makefile
|
||||||
|
cd $(top_srcdir) && perl admin/am_edit kwin/clients/mwm/Makefile.in
|
||||||
|
|
||||||
|
|
||||||
|
#>+ 11
|
||||||
|
libkwinmwm_la.all_cpp.cpp: $(srcdir)/Makefile.in $(srcdir)/mwmclient.cpp mwmclient.moc.cpp
|
||||||
|
@echo 'creating libkwinmwm_la.all_cpp.cpp ...'; \
|
||||||
|
rm -f libkwinmwm_la.all_cpp.files libkwinmwm_la.all_cpp.final; \
|
||||||
|
echo "#define KDE_USE_FINAL 1" >> libkwinmwm_la.all_cpp.final; \
|
||||||
|
for file in mwmclient.cpp mwmclient.moc.cpp; do \
|
||||||
|
echo "#include \"$$file\"" >> libkwinmwm_la.all_cpp.files; \
|
||||||
|
test ! -f $(srcdir)/$$file || egrep '^#pragma +implementation' $(srcdir)/$$file >> libkwinmwm_la.all_cpp.final; \
|
||||||
|
done; \
|
||||||
|
cat libkwinmwm_la.all_cpp.final libkwinmwm_la.all_cpp.files > libkwinmwm_la.all_cpp.cpp; \
|
||||||
|
rm -f libkwinmwm_la.all_cpp.final libkwinmwm_la.all_cpp.files
|
||||||
|
|
||||||
|
#>+ 3
|
||||||
|
clean-final:
|
||||||
|
-rm -f libkwinmwm_la.all_cpp.cpp
|
||||||
|
|
||||||
|
#>+ 2
|
||||||
|
final:
|
||||||
|
$(MAKE) libkwinmwm_la_OBJECTS="$(libkwinmwm_la_final_OBJECTS)" all-am
|
||||||
|
#>+ 3
|
||||||
|
cvs-clean:
|
||||||
|
$(MAKE) -f $(top_srcdir)/admin/Makefile.common cvs-clean
|
||||||
|
|
||||||
|
#>+ 3
|
||||||
|
kde-rpo-clean:
|
||||||
|
-rm -f *.rpo
|
8
clients/mwm/README
Normal file
8
clients/mwm/README
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
This is a test style that I'm working on- I'm basing it on KStep right now,
|
||||||
|
but it'll eventually provide an MWM lookalike which I personally would really
|
||||||
|
like to see. It's all about scratching an itch, right? ; )
|
||||||
|
|
||||||
|
The only reason I've commited this is so that I don't get cvs bitching at me
|
||||||
|
because it doesn't know what it's doing.
|
||||||
|
|
||||||
|
-Chris
|
3
clients/mwm/mwm.desktop
Normal file
3
clients/mwm/mwm.desktop
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=MWM
|
||||||
|
X-KDE-Library=libkwinmwm
|
321
clients/mwm/mwmclient.cpp
Normal file
321
clients/mwm/mwmclient.cpp
Normal file
|
@ -0,0 +1,321 @@
|
||||||
|
#include "mwmclient.h"
|
||||||
|
#include <qapplication.h>
|
||||||
|
#include <qcursor.h>
|
||||||
|
#include <qabstractlayout.h>
|
||||||
|
#include <qlayout.h>
|
||||||
|
#include <qtoolbutton.h>
|
||||||
|
#include <qlabel.h>
|
||||||
|
#include <qdrawutil.h>
|
||||||
|
#include <kpixmapeffect.h>
|
||||||
|
#include <qbitmap.h>
|
||||||
|
#include "../../workspace.h"
|
||||||
|
#include "../../options.h"
|
||||||
|
|
||||||
|
extern "C"
|
||||||
|
{
|
||||||
|
Client *allocate(Workspace *ws, WId w)
|
||||||
|
{
|
||||||
|
return(new MwmClient(ws, w));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static unsigned char close_bits[] = {
|
||||||
|
0x03, 0x03, 0x87, 0x03, 0xce, 0x01, 0xfc, 0x00, 0x78, 0x00, 0x78, 0x00,
|
||||||
|
0xfc, 0x00, 0xce, 0x01, 0x87, 0x03, 0x03, 0x03};
|
||||||
|
|
||||||
|
static unsigned char iconify_bits[] = {
|
||||||
|
0xff, 0x03, 0xff, 0x03, 0xff, 0x03, 0xff, 0x03, 0x03, 0x03, 0x03, 0x03,
|
||||||
|
0x03, 0x03, 0x03, 0x03, 0xff, 0x03, 0xff, 0x03};
|
||||||
|
|
||||||
|
static unsigned char sticky_bits[] = {
|
||||||
|
0x00, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0xfe, 0x01, 0xfe, 0x01,
|
||||||
|
0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x00};
|
||||||
|
|
||||||
|
static unsigned char unsticky_bits[] = {
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x01, 0xfe, 0x01,
|
||||||
|
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
|
||||||
|
|
||||||
|
static KPixmap *aTitlePix=0;
|
||||||
|
static KPixmap *iTitlePix=0;
|
||||||
|
static KPixmap *aFramePix=0;
|
||||||
|
static KPixmap *iFramePix=0;
|
||||||
|
static KPixmap *aHandlePix=0;
|
||||||
|
static KPixmap *iHandlePix=0;
|
||||||
|
static bool pixmaps_created = false;
|
||||||
|
|
||||||
|
static void create_pixmaps()
|
||||||
|
{
|
||||||
|
if(pixmaps_created)
|
||||||
|
return;
|
||||||
|
pixmaps_created = true;
|
||||||
|
|
||||||
|
aTitlePix = new KPixmap();
|
||||||
|
aTitlePix->resize(32, 14);
|
||||||
|
KPixmapEffect::gradient(*aTitlePix,
|
||||||
|
options->color(Options::TitleBar, true),
|
||||||
|
options->color(Options::TitleBlend, true),
|
||||||
|
KPixmapEffect::VerticalGradient);
|
||||||
|
iTitlePix = new KPixmap();
|
||||||
|
iTitlePix->resize(32, 14);
|
||||||
|
KPixmapEffect::gradient(*iTitlePix,
|
||||||
|
options->color(Options::TitleBar, false),
|
||||||
|
options->color(Options::TitleBlend, false),
|
||||||
|
KPixmapEffect::VerticalGradient);
|
||||||
|
// Bottom frame gradient
|
||||||
|
aFramePix = new KPixmap();
|
||||||
|
aFramePix->resize(32, 6);
|
||||||
|
KPixmapEffect::gradient(*aFramePix,
|
||||||
|
options->color(Options::Frame, true).light(150),
|
||||||
|
options->color(Options::Frame, true).dark(120),
|
||||||
|
KPixmapEffect::VerticalGradient);
|
||||||
|
iFramePix = new KPixmap();
|
||||||
|
iFramePix->resize(32, 6);
|
||||||
|
KPixmapEffect::gradient(*iFramePix,
|
||||||
|
options->color(Options::Frame, false).light(150),
|
||||||
|
options->color(Options::Frame, false).dark(120),
|
||||||
|
KPixmapEffect::VerticalGradient);
|
||||||
|
|
||||||
|
// Handle gradient
|
||||||
|
aHandlePix = new KPixmap();
|
||||||
|
aHandlePix->resize(32, 6);
|
||||||
|
KPixmapEffect::gradient(*aHandlePix,
|
||||||
|
options->color(Options::Handle, true).light(150),
|
||||||
|
options->color(Options::Handle, true).dark(120),
|
||||||
|
KPixmapEffect::VerticalGradient);
|
||||||
|
iHandlePix = new KPixmap();
|
||||||
|
iHandlePix->resize(32, 6);
|
||||||
|
KPixmapEffect::gradient(*iHandlePix,
|
||||||
|
options->color(Options::Handle, false).light(150),
|
||||||
|
options->color(Options::Handle, false).dark(120),
|
||||||
|
KPixmapEffect::VerticalGradient);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmClient::slotReset()
|
||||||
|
{
|
||||||
|
delete aTitlePix;
|
||||||
|
delete iTitlePix;
|
||||||
|
delete aFramePix;
|
||||||
|
delete iFramePix;
|
||||||
|
delete aHandlePix;
|
||||||
|
delete iHandlePix;
|
||||||
|
pixmaps_created = false;
|
||||||
|
create_pixmaps();
|
||||||
|
button[0]->reset();
|
||||||
|
button[1]->reset();
|
||||||
|
button[2]->reset();
|
||||||
|
}
|
||||||
|
|
||||||
|
MwmButton::MwmButton(QWidget *parent, const char *name,
|
||||||
|
const unsigned char *bitmap, int bw, int bh)
|
||||||
|
: QButton(parent, name)
|
||||||
|
{
|
||||||
|
QPainter p;
|
||||||
|
|
||||||
|
aBackground.resize(18, 18);
|
||||||
|
iBackground.resize(18, 18);
|
||||||
|
reset();
|
||||||
|
resize(18, 18);
|
||||||
|
|
||||||
|
if(bitmap)
|
||||||
|
setBitmap(bitmap, bw, bh);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmButton::reset()
|
||||||
|
{
|
||||||
|
QPainter p;
|
||||||
|
|
||||||
|
QColor hColor(options->color(Options::ButtonBg, true));
|
||||||
|
QColor lColor(options->color(Options::ButtonBlend, true));
|
||||||
|
// only do this if we can dim/brighten equally
|
||||||
|
if(hColor.red() < 226 && hColor.green() < 226 && hColor.blue() < 226)
|
||||||
|
hColor.setRgb(hColor.red()+30, hColor.green()+30, hColor.blue()+30);
|
||||||
|
if(lColor.red() > 29 && lColor.green() > 29 && lColor.blue() > 29)
|
||||||
|
lColor.setRgb(lColor.red()-30, lColor.green()-30, lColor.blue()-30);
|
||||||
|
KPixmapEffect::gradient(iBackground, hColor, lColor,
|
||||||
|
KPixmapEffect::DiagonalGradient);
|
||||||
|
|
||||||
|
hColor = options->color(Options::ButtonBlend, false);
|
||||||
|
lColor = options->color(Options::ButtonBg, false);
|
||||||
|
if(hColor.red() > 29 && hColor.green() > 29 && hColor.blue() > 29)
|
||||||
|
hColor.setRgb(hColor.red()-30, hColor.green()-30, hColor.blue()-30);
|
||||||
|
if(lColor.red() < 226 && lColor.green() < 226 && lColor.blue() < 226)
|
||||||
|
lColor.setRgb(lColor.red()+30, lColor.green()+30, lColor.blue()+30);
|
||||||
|
KPixmapEffect::gradient(aBackground, hColor, lColor,
|
||||||
|
KPixmapEffect::DiagonalGradient);
|
||||||
|
|
||||||
|
KPixmap aInternal;
|
||||||
|
aInternal.resize(12, 12);
|
||||||
|
KPixmap iInternal;
|
||||||
|
iInternal.resize(12, 12);
|
||||||
|
KPixmapEffect::gradient(iInternal,
|
||||||
|
options->color(Options::ButtonBlend, true),
|
||||||
|
options->color(Options::ButtonBg, true),
|
||||||
|
KPixmapEffect::DiagonalGradient);
|
||||||
|
KPixmapEffect::gradient(aInternal,
|
||||||
|
options->color(Options::ButtonBg, false),
|
||||||
|
options->color(Options::ButtonBlend, false),
|
||||||
|
KPixmapEffect::DiagonalGradient);
|
||||||
|
|
||||||
|
p.begin(&iBackground);
|
||||||
|
p.drawPixmap(3, 3, iInternal);
|
||||||
|
p.setPen(Qt::black);
|
||||||
|
p.drawRect(0, 0, 18, 18);
|
||||||
|
p.end();
|
||||||
|
|
||||||
|
p.begin(&aBackground);
|
||||||
|
p.drawPixmap(3, 3, aInternal);
|
||||||
|
p.setPen(Qt::black);
|
||||||
|
p.drawRect(0, 0, 18, 18);
|
||||||
|
p.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmButton::setBitmap(const unsigned char *bitmap, int w, int h)
|
||||||
|
{
|
||||||
|
deco = QBitmap(w, h, bitmap, true);
|
||||||
|
deco.setMask(deco);
|
||||||
|
repaint();
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmButton::drawButton(QPainter *p)
|
||||||
|
{
|
||||||
|
if(isDown())
|
||||||
|
p->drawPixmap(0, 0, aBackground);
|
||||||
|
else
|
||||||
|
p->drawPixmap(0, 0, iBackground);
|
||||||
|
|
||||||
|
p->setPen(options->color(Options::ButtonFg, isDown()));
|
||||||
|
p->drawPixmap(isDown()? 5 : 4, isDown() ? 5 : 4, deco);
|
||||||
|
}
|
||||||
|
|
||||||
|
MwmClient::MwmClient( Workspace *ws, WId w, QWidget *parent,
|
||||||
|
const char *name )
|
||||||
|
: Client( ws, w, parent, name, WResizeNoErase )
|
||||||
|
{
|
||||||
|
create_pixmaps();
|
||||||
|
connect(options, SIGNAL(resetClients()), this, SLOT(slotReset()));
|
||||||
|
|
||||||
|
QVBoxLayout *mainLayout = new QVBoxLayout(this);
|
||||||
|
QHBoxLayout *titleLayout = new QHBoxLayout();
|
||||||
|
QHBoxLayout *windowLayout = new QHBoxLayout();
|
||||||
|
|
||||||
|
mainLayout->addLayout(titleLayout);
|
||||||
|
mainLayout->addLayout(windowLayout, 1);
|
||||||
|
mainLayout->addSpacing(6);
|
||||||
|
|
||||||
|
windowLayout->addSpacing(1);
|
||||||
|
windowLayout->addWidget(windowWrapper(), 1);
|
||||||
|
windowLayout->addSpacing(1);
|
||||||
|
|
||||||
|
|
||||||
|
button[0] = new MwmButton(this, "close", close_bits, 10, 10);
|
||||||
|
button[1] = new MwmButton(this, "sticky");
|
||||||
|
if(isSticky())
|
||||||
|
button[1]->setBitmap(unsticky_bits, 10, 10);
|
||||||
|
else
|
||||||
|
button[1]->setBitmap(sticky_bits, 10, 10);
|
||||||
|
button[2] = new MwmButton(this, "iconify", iconify_bits, 10, 10);
|
||||||
|
|
||||||
|
connect( button[0], SIGNAL( clicked() ), this, ( SLOT( closeWindow() ) ) );
|
||||||
|
connect( button[1], SIGNAL( clicked() ), this, ( SLOT( toggleSticky() ) ) );
|
||||||
|
connect( button[2], SIGNAL( clicked() ), this, ( SLOT( iconify() ) ) );
|
||||||
|
titleLayout->addWidget( button[2] );
|
||||||
|
titlebar = new QSpacerItem(10, 16, QSizePolicy::Expanding,
|
||||||
|
QSizePolicy::Minimum );
|
||||||
|
titleLayout->addItem(titlebar);
|
||||||
|
titleLayout->addWidget( button[1] );
|
||||||
|
titleLayout->addWidget( button[0] );
|
||||||
|
for ( int i = 0; i < 3; i++) {
|
||||||
|
button[i]->setMouseTracking( TRUE );
|
||||||
|
button[i]->setFixedSize( 18, 18 );
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmClient::resizeEvent( QResizeEvent* e)
|
||||||
|
{
|
||||||
|
Client::resizeEvent( e );
|
||||||
|
|
||||||
|
if ( isVisibleToTLW() && !testWFlags( WNorthWestGravity )) {
|
||||||
|
QPainter p( this );
|
||||||
|
QRect t = titlebar->geometry();
|
||||||
|
t.setTop( 0 );
|
||||||
|
QRegion r = rect();
|
||||||
|
r = r.subtract( t );
|
||||||
|
p.setClipRegion( r );
|
||||||
|
p.eraseRect( rect() );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmClient::captionChange( const QString& )
|
||||||
|
{
|
||||||
|
repaint( titlebar->geometry(), false );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void MwmClient::paintEvent( QPaintEvent* )
|
||||||
|
{
|
||||||
|
QPainter p( this );
|
||||||
|
p.setPen(Qt::black);
|
||||||
|
p.drawRect(rect());
|
||||||
|
|
||||||
|
QRect t = titlebar->geometry();
|
||||||
|
t.setTop(1);
|
||||||
|
p.drawTiledPixmap(t.x()+1, t.y()+1, t.width()-2, t.height()-2,
|
||||||
|
isActive() ? *aTitlePix : *iTitlePix);
|
||||||
|
qDrawShadePanel(&p, t.x(), t.y(), t.width(), t.height()-1,
|
||||||
|
options->colorGroup(Options::TitleBar, isActive()));
|
||||||
|
p.drawLine(t.x(), t.bottom(), t.right(), t.bottom());
|
||||||
|
QRegion r = rect();
|
||||||
|
r = r.subtract( t );
|
||||||
|
p.setClipRegion( r );
|
||||||
|
p.setClipping( FALSE );
|
||||||
|
|
||||||
|
t.setTop( 2 );
|
||||||
|
t.setHeight(t.height()-4);
|
||||||
|
t.setLeft( t.left() + 4 );
|
||||||
|
t.setRight( t.right() - 2 );
|
||||||
|
|
||||||
|
p.setPen(options->color(Options::Font, isActive()));
|
||||||
|
p.setFont(options->font(isActive()));
|
||||||
|
p.drawText( t, AlignCenter, caption() );
|
||||||
|
|
||||||
|
|
||||||
|
qDrawShadePanel(&p, rect().x()+1, rect().bottom()-6, 24, 6,
|
||||||
|
options->colorGroup(Options::Handle, isActive()), false);
|
||||||
|
p.drawTiledPixmap(rect().x()+2, rect().bottom()-5, 22, 4,
|
||||||
|
isActive() ? *aHandlePix : *iHandlePix);
|
||||||
|
|
||||||
|
qDrawShadePanel(&p, rect().x()+25, rect().bottom()-6, rect().width()-50, 6,
|
||||||
|
options->colorGroup(Options::Frame, isActive()), false);
|
||||||
|
p.drawTiledPixmap(rect().x()+26, rect().bottom()-5, rect().width()-52, 4,
|
||||||
|
isActive() ? *aFramePix : *iFramePix);
|
||||||
|
|
||||||
|
qDrawShadePanel(&p, rect().right()-24, rect().bottom()-6, 24, 6,
|
||||||
|
options->colorGroup(Options::Handle, isActive()), false);
|
||||||
|
p.drawTiledPixmap(rect().right()-23, rect().bottom()-5, 22, 4,
|
||||||
|
isActive() ? *aHandlePix : *iHandlePix);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmClient::mouseDoubleClickEvent( QMouseEvent * e )
|
||||||
|
{
|
||||||
|
if (titlebar->geometry().contains( e->pos() ) )
|
||||||
|
setShade( !isShade() );
|
||||||
|
workspace()->requestFocus( this );
|
||||||
|
}
|
||||||
|
|
||||||
|
void MwmClient::stickyChange(bool on)
|
||||||
|
{
|
||||||
|
if(on)
|
||||||
|
button[1]->setBitmap(unsticky_bits, 8, 8);
|
||||||
|
else
|
||||||
|
button[1]->setBitmap(sticky_bits, 8, 8);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void MwmClient::init()
|
||||||
|
{
|
||||||
|
Client::init();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
52
clients/mwm/mwmclient.h
Normal file
52
clients/mwm/mwmclient.h
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
#ifndef __MWMCLIENT_H
|
||||||
|
#define __MWMCLIENT_H
|
||||||
|
|
||||||
|
#include <qbutton.h>
|
||||||
|
#include <qbitmap.h>
|
||||||
|
#include <kpixmap.h>
|
||||||
|
#include "../../client.h"
|
||||||
|
class QLabel;
|
||||||
|
class QSpacerItem;
|
||||||
|
|
||||||
|
|
||||||
|
// get rid of autohide :P
|
||||||
|
class MwmButton : public QButton
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
MwmButton(QWidget *parent=0, const char *name=0,
|
||||||
|
const unsigned char *bitmap=NULL, int bw=0, int bh=0);
|
||||||
|
void setBitmap(const unsigned char *bitmap, int bw, int bh);
|
||||||
|
void reset();
|
||||||
|
protected:
|
||||||
|
virtual void drawButton(QPainter *p);
|
||||||
|
void drawButtonLabel(QPainter *){;}
|
||||||
|
KPixmap aBackground, iBackground;
|
||||||
|
QBitmap deco;
|
||||||
|
};
|
||||||
|
|
||||||
|
class MwmClient : public Client
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
MwmClient( Workspace *ws, WId w, QWidget *parent=0, const char *name=0 );
|
||||||
|
~MwmClient(){;}
|
||||||
|
protected:
|
||||||
|
void resizeEvent( QResizeEvent* );
|
||||||
|
void paintEvent( QPaintEvent* );
|
||||||
|
|
||||||
|
void mouseDoubleClickEvent( QMouseEvent * );
|
||||||
|
void init();
|
||||||
|
void captionChange( const QString& name );
|
||||||
|
void stickyChange(bool on);
|
||||||
|
protected slots:
|
||||||
|
void slotReset();
|
||||||
|
private:
|
||||||
|
MwmButton* button[3];
|
||||||
|
QSpacerItem* titlebar;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue