[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.5/kdelibs
From: Marc Mutz <mutz () kde ! org>
Date: 2010-08-16 13:39:10
Message-ID: 20100816133910.1CD83AC854 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1164305 by mutz:
Make DBusMenuQt optional
http://reviewboard.kde.org/r/4898/
MERGE: trunk
M +2 -2 CMakeLists.txt
M +2 -0 ConfigureChecks.cmake
M +2 -0 config.h.cmake
M +10 -2 kdeui/CMakeLists.txt
M +10 -0 kdeui/notifications/kstatusnotifieritem.cpp
--- branches/KDE/4.5/kdelibs/CMakeLists.txt #1164304:1164305
@@ -110,8 +110,8 @@
macro_optional_find_package(QCA2)
macro_log_feature(QCA2_FOUND "QCA2" "Qt Cryptographic Architecture" \
"http://delta.affinix.com/qca" FALSE "2.0.0" "Needed for the plasma remote widgets \
functionality.")
-find_package(DBusMenuQt)
-macro_log_feature(DBUSMENUQT_FOUND "DBusMenuQt" "API to import export QMenu instance \
using DBusMenu protocol" "git clone git://gitorious.org/dbusmenu/dbusmenu-qt.git" \
TRUE "" "dbusmenu-qt is a standalone library providing a way to import and export \
QMenu instances using the DBusMenu protocol.") \
+macro_optional_find_package(DBusMenuQt) +macro_log_feature(DBUSMENUQT_FOUND \
"DBusMenuQt" "API to import export QMenu instance using DBusMenu protocol" \
"http://people.canonical.com/~agateau/dbusmenu/" FALSE "" "dbusmenu-qt is a \
standalone library providing a way to import and export QMenu instances using the \
DBusMenu protocol.")
################# Disallow in-source build #################
--- branches/KDE/4.5/kdelibs/ConfigureChecks.cmake #1164304:1164305
@@ -34,6 +34,8 @@
macro_bool_to_01(LIBINTL_FOUND ENABLE_NLS) # kdecore, khtml, kjs
+macro_bool_to_01(DBUSMENUQT_FOUND HAVE_DBUSMENUQT) # kdeui
+
# FIXME: Make this changeable!
# khtml svg support
set(SVG_SUPPORT 1) # unused yet, but for the future
--- branches/KDE/4.5/kdelibs/config.h.cmake #1164304:1164305
@@ -187,6 +187,8 @@
/* Defined to 1 if you have a d_type member in struct dirent */
#cmakedefine HAVE_DIRENT_D_TYPE 1
+/* Defined to 1 if you have the dbusmenuqt library */
+#cmakedefine HAVE_DBUSMENUQT 1
#include "kdecore/kdefakes.h"
--- branches/KDE/4.5/kdelibs/kdeui/CMakeLists.txt #1164304:1164305
@@ -1,6 +1,14 @@
project(kdeui)
+if ( DBUSMENUQT_FOUND )
+ set( _kdeui_DBUSMENUQT_INCLUDE_DIR ${DBUSMENUQT_INCLUDE_DIR} )
+ set( _kdeui_DBUSMENUQT_LIBRARIES ${DBUSMENUQT_LIBRARIES} )
+else ( DBUSMENUQT_FOUND )
+ set( _kdeui_DBUSMENUQT_INCLUDE_DIR )
+ set( _kdeui_DBUSMENUQT_LIBRARIES )
+endif ( DBUSMENUQT_FOUND )
+
include_directories(
${CMAKE_SOURCE_DIR}/interfaces
${CMAKE_SOURCE_DIR}/interfaces/kregexpeditor
@@ -26,7 +34,7 @@
${CMAKE_CURRENT_SOURCE_DIR}/widgets
${CMAKE_CURRENT_SOURCE_DIR}/windowmanagement
${CMAKE_CURRENT_SOURCE_DIR}/xmlgui
- ${DBUSMENUQT_INCLUDE_DIR}
+ ${_kdeui_DBUSMENUQT_INCLUDE_DIR}
)
add_subdirectory( about )
@@ -352,7 +360,7 @@
kde4_add_library(kdeui SHARED ${kdeui_LIB_SRCS})
-target_link_libraries(kdeui ${QT_QTSVG_LIBRARY} ${KDE4_KDECORE_LIBS} \
${X11_LIBRARIES} ${QT_QTGUI_LIBRARY} ${QT_QTXML_LIBRARY} ${DBUSMENUQT_LIBRARIES}) \
+target_link_libraries(kdeui ${QT_QTSVG_LIBRARY} ${KDE4_KDECORE_LIBS} \
${X11_LIBRARIES} ${QT_QTGUI_LIBRARY} ${QT_QTXML_LIBRARY} \
${_kdeui_DBUSMENUQT_LIBRARIES})
if(MINGW)
target_link_libraries(kdeui gdi32 oleaut32)
--- branches/KDE/4.5/kdelibs/kdeui/notifications/kstatusnotifieritem.cpp \
#1164304:1164305 @@ -18,6 +18,8 @@
Boston, MA 02110-1301, USA.
*/
+#include "config.h"
+
#include "kstatusnotifieritem.h"
#include "kstatusnotifieritemprivate_p.h"
#include "kstatusnotifieritemdbus_p.h"
@@ -45,12 +47,15 @@
#include <netinet/in.h>
+#ifdef HAVE_DBUSMENUQT
#include <dbusmenuexporter.h>
+#endif
#include "statusnotifieritemadaptor.h"
static const QString \
s_statusNotifierWatcherServiceName("org.kde.StatusNotifierWatcher");
+#ifdef HAVE_DBUSMENUQT
/**
* Specialization to provide access to KDE icon names
*/
@@ -97,6 +102,7 @@
#endif
}
};
+#endif // HAVE_DBUSMENUQT
KStatusNotifierItem::KStatusNotifierItem(QObject *parent)
: QObject(parent),
@@ -373,17 +379,21 @@
if (d->systemTrayIcon) {
d->systemTrayIcon->setContextMenu(menu);
} else if (d->menu != menu) {
+#ifdef HAVE_DBUSMENUQT
if (getenv("KSNI_NO_DBUSMENU")) {
+#endif // HAVE_DBUSMENUQT
// This is a hack to make it possible to disable DBusMenu in an
// application. The string "/NO_DBUSMENU" must be the same as in
// DBusSystemTrayWidget::findDBusMenuInterface() in the Plasma
// systemtray applet.
d->menuObjectPath = "/NO_DBUSMENU";
menu->installEventFilter(this);
+#ifdef HAVE_DBUSMENUQT
} else {
d->menuObjectPath = "/MenuBar";
new KDBusMenuExporter(d->menuObjectPath, menu, \
d->statusNotifierItemDBus->dbusConnection()); }
+#endif // HAVE_DBUSMENUQT
connect(menu, SIGNAL(aboutToShow()), this, SLOT(contextMenuAboutToShow()));
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic