- ColumnSelectorDialog modified for Maemo5 Qt support, version 4.6 requires
authorlvaatamoinen <lassi.vaatamoinen@ixonos.com>
Fri, 8 Jan 2010 12:14:05 +0000 (12:14 +0000)
committerlvaatamoinen <lassi.vaatamoinen@ixonos.com>
Fri, 8 Jan 2010 12:14:05 +0000 (12:14 +0000)
using QMaemo5KineticScroller
- CMake build cnofiguration updated to check if we are compiling under Scratchbox

git-svn-id: file:///svnroot/qtrapids/trunk@59 42ac0dd5-4c8c-4c71-bb3e-ecdfe252ffda

src/client/CMakeLists.txt
src/client/ColumnSelectorDialog.cpp

index dccbcee..f5148b9 100644 (file)
@@ -39,6 +39,20 @@ QT4_WRAP_CPP(SRC ${MOC_HEADERS})
 ADD_EXECUTABLE(qtrapids ${SRC} ${MOC_HEADERS})
 
 ADD_DEFINITIONS(-DQT_SHARED)
 ADD_EXECUTABLE(qtrapids ${SRC} ${MOC_HEADERS})
 
 ADD_DEFINITIONS(-DQT_SHARED)
+
+set(QT_QTMAEMO5_LIBRARY -lQtMaemo5 -L${QT_LIBRARY_DIR})
+
+# QT_QTMAEMO5_* variables are not defined by CMake
+if(NOT QT_QTMAEMO5_INCLUDE_DIR)
+       FIND_PATH(QT_QTMAEMO5_INCLUDE_DIR QtMaemo5
+       PATHS ${QT_HEADERS_DIR}/QtMaemo5 NO_DEFAULT_PATH)
+endif(NOT QT_QTMAEMO5_INCLUDE_DIR)
+if(NOT QT_QTMAEMO5_LIBRARY)
+       FIND_LIBRARY(QT_QTMAEMO5_LIBRARY QtMaemo5
+       PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)
+endif(NOT QT_QTMAEMO5_LIBRARY)
+
+
 TARGET_LINK_LIBRARIES(qtrapids 
   ${QT_QTGUI_LIBRARY} 
   ${QT_QTCORE_LIBRARY} 
 TARGET_LINK_LIBRARIES(qtrapids 
   ${QT_QTGUI_LIBRARY} 
   ${QT_QTCORE_LIBRARY} 
@@ -47,4 +61,18 @@ TARGET_LINK_LIBRARIES(qtrapids
   -lboost_system-mt
 )
 
   -lboost_system-mt
 )
 
+# Check if we are building under scratchbox and link with QtMaemo5 only in that case.
+# Thus, we maintain desktop build-ability also
+set (SCRATCHBOX_UNAME $ENV{SBOX_UNAME_MACHINE})
+
+if (SCRATCHBOX_UNAME)
+       MESSAGE("Configuring for building under Scratchbox..")
+       TARGET_LINK_LIBRARIES(qtrapids  ${QT_QTMAEMO5_LIBRARY})
+endif (SCRATCHBOX_UNAME)
+
+#MESSAGE(${CMAKE_HOST_SYSTEM_PROCESSOR}) 
+#CHECK_LIBRARY_EXISTS(QT_QTMAEMO5_LIBRARY)
+
+
+
 ADD_DEPENDENCIES(qtrapids dbusapi)
 ADD_DEPENDENCIES(qtrapids dbusapi)
index 4e26acd..274b841 100644 (file)
@@ -18,6 +18,7 @@
  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
  ***************************************************************************/
 
  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
  ***************************************************************************/
 
+
 #include <QScrollArea>
 #include <QGroupBox>
 #include <QGridLayout>
 #include <QScrollArea>
 #include <QGroupBox>
 #include <QGridLayout>
 #include <QDialogButtonBox>
 #include <QAbstractButton>
 
 #include <QDialogButtonBox>
 #include <QAbstractButton>
 
+#ifdef Q_WS_MAEMO_5
+       #include <QtMaemo5/QMaemo5KineticScroller>
+#endif
+
 #include "ColumnSelectorDialog.h"
 
 
 #include "ColumnSelectorDialog.h"
 
 
@@ -36,17 +41,20 @@ ColumnSelectorDialog::ColumnSelectorDialog(QTreeWidget *treewidget, QWidget* par
        treeWidget_(treewidget),
        checkBoxes_()
 {
        treeWidget_(treewidget),
        checkBoxes_()
 {
+       /// @TODO Kineticscrolling (Fingerscrollable does not work in Qt 4.6, only in 4.5)      
        QScrollArea *scrollArea = new QScrollArea(this);
        QScrollArea *scrollArea = new QScrollArea(this);
+
+#ifdef Q_WS_MAEMO_5
+       new QMaemo5KineticScroller(scrollArea);
+#endif
+
        scrollArea->setWidgetResizable(true);
        //scrollArea->setProperty("FingerScrollable", false);
        QBoxLayout *verticalBox = new QBoxLayout(QBoxLayout::TopToBottom);
        grid_ = new QGridLayout;
        QCheckBox *cbox = NULL;
 
        scrollArea->setWidgetResizable(true);
        //scrollArea->setProperty("FingerScrollable", false);
        QBoxLayout *verticalBox = new QBoxLayout(QBoxLayout::TopToBottom);
        grid_ = new QGridLayout;
        QCheckBox *cbox = NULL;
 
-/// @TODO Kineticscrolling (Fingerscrollable does not work in Qt 4.6, only in 4.5)     
-#ifdef Q_WS_HILDON
-   //Specific hildon/Maemo5 code here 
-#endif
+
 
        // Create scrollable checkbox dialog to allow proper viewing on Maemo:
        verticalBox->addWidget(scrollArea);
 
        // Create scrollable checkbox dialog to allow proper viewing on Maemo:
        verticalBox->addWidget(scrollArea);