[Uml-devel] branches/work/soc-umbrello (silent)

Gopala Krishna A krishna.ggk at gmail.com
Sat Dec 13 16:40:48 UTC 2008


SVN commit 896499 by gopala:

Preparing for the new year hacking on soc umbrello code!

SVN_SILENT: svnmerge
----------
Merged revisions 872169,876814,887894,887978 via svnmerge from
svn+ssh://svn.kde.org/home/kde/trunk/KDE/kdesdk/umbrello

........
  r872169 | schwarzer | 2008-10-16 19:29:07 +0530 (Thu, 16 Oct 2008) | 4 lines

  global typo

  more then -> more than
  other then -> other than
........
  r876814 | mlaurent | 2008-10-28 13:33:20 +0530 (Tue, 28 Oct 2008) | 2 lines

  Fix action warning
........
  r887894 | habacker | 2008-11-23 16:33:11 +0530 (Sun, 23 Nov 2008) | 1 line

  msvc implementation of libstdc++ does not have the _Identity template class
........
  r887978 | habacker | 2008-11-23 17:24:56 +0530 (Sun, 23 Nov 2008) | 2 lines

  fixed long standing boost/stl/QChar compile problem for msvc
........


 _M            . (directory)  
 M  +4 -4      umbrello/CMakeLists.txt  
 M  +7 -3      umbrello/codeimport/cppimport.cpp  
 M  +16 -0     umbrello/codeimport/kdevcppparser/position.h  
 M  +8 -0      umbrello/codeimport/kdevcppparser/preprocesslexer.cpp  
 M  +2 -1      umbrello/codeimport/kdevcppparser/preprocesslexer.h  
 M  +4 -4      umbrello/uml.cpp  
 M  +3 -2      umbrello/uml.h  
 M  +1 -1      umbrello/umlscene.cpp  
 M  +0 -1      umbrello/umlview.h  


** branches/work/soc-umbrello #property svnmerge-integrated
   - /trunk/KDE/kdesdk/umbrello:1-854015,854687,854787,855207-866962,866965-870129,871091
   + /trunk/KDE/kdesdk/umbrello:1-854015,854687,854787,855207-866962,866965-870129,871091,872169-887978
--- branches/work/soc-umbrello/umbrello/CMakeLists.txt #896498:896499
@@ -224,8 +224,8 @@
     codeimport/pythonimport.cpp
 )
 
-if (WIN32)
-    # Both MSVC and SunPRO CC have a problem with position.h; we try to put a
+if (WIN32 AND NOT MSVC)
+    # SunPRO CC have a problem with position.h; we try to put a
     # QChar into a spirit iterator, which, after a bunch of futzing, ends up in
     # the STL string_ref templates, which use
     #
@@ -238,7 +238,7 @@
     #
     add_definitions(-DDISABLE_CPP_IMPORT)
     set(libkdevcppparser_SRCS)
-else (WIN32)
+else (WIN32 AND NOT MSVC)
     list(APPEND libcodeimport_SRCS
         codeimport/cppimport.cpp
     )
@@ -255,7 +255,7 @@
         codeimport/kdevcppparser/ast_utils.cpp
         codeimport/kdevcppparser/cpptree2uml.cpp
     )
-endif(WIN32)
+endif(WIN32 AND NOT MSVC)
 
 set(libclipboard_SRCS
     clipboard/umldragdata.cpp
--- branches/work/soc-umbrello/umbrello/codeimport/cppimport.cpp #896498:896499
@@ -14,6 +14,12 @@
 // qt/kde includes
 #include <QMap>
 #include <kdebug.h>
+
+// must be located here for win32 msvc (see kdevcppparser/position.h)
+#include "kdevcppparser/lexer.h"
+#include "kdevcppparser/driver.h"
+#include "kdevcppparser/cpptree2uml.h"
+
 // app includes
 #include "import_utils.h"
 #include "../umlobject.h"
@@ -25,10 +31,8 @@
 #include "../attribute.h"
 #include "../template.h"
 #include "../association.h"
-#include "kdevcppparser/lexer.h"
-#include "kdevcppparser/driver.h"
-#include "kdevcppparser/cpptree2uml.h"
 
+
 // static members
 CppDriver * CppImport::ms_driver;
 QStringList CppImport::ms_seenFiles;
--- branches/work/soc-umbrello/umbrello/codeimport/kdevcppparser/position.h #896498:896499
@@ -20,6 +20,22 @@
 #ifndef POSITION_H
 #define POSITION_H
 
+#ifdef _MSC_VER //Q_CC_MSVC isn't defined here
+/*
+workaround for the following msvc error 
+...\Microsoft Visual Studio 8\VC\INCLUDE\xstring(2044) : error C2620: 
+    member 'std::basic_string<_Elem>::_Bxty::_Buf ' of union 'std::basic_string<_Elem>::_Bxty' 
+    has user-defined constructor or non-trivial default constructor with [  _Elem=QChar]
+...\Microsoft Visual Studio 8\VC\INCLUDE\xstring(2046) : see reference to class 
+    template instantiation 'std::basic_string<_Elem>::_Bxty' being compiled with [  _Elem=QChar]
+..\umbrello\umbrello\codeimport\kdevcppparser\position.h(49) : see reference to class 
+    template instantiation 'std::basic_string<_Elem>' being compiled with [  _Elem=QChar]
+*/
+#define union struct 
+#include <xstring>
+#undef union 
+#endif
+
 #include <limits.h>
 #include <boost/version.hpp>
 #include <boost/spirit.hpp>
--- branches/work/soc-umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.cpp #896498:896499
@@ -35,7 +35,15 @@
 
 #include "assignFunctor.hpp"
 
+#ifdef Q_CC_MSVC
 template <class _Tp>
+struct _Identity : public std::unary_function<_Tp,_Tp> {
+  _Tp& operator()(_Tp& __x) const { return __x; }
+  const _Tp& operator()(const _Tp& __x) const { return __x; }
+};
+#endif
+
+template <class _Tp>
 struct tilde : public std::unary_function<_Tp, _Tp> {
     _Tp operator()(_Tp& __x) const {
         return ~__x;
--- branches/work/soc-umbrello/umbrello/codeimport/kdevcppparser/preprocesslexer.h #896498:896499
@@ -29,8 +29,9 @@
   bool isdigit_( QChar const& c);
 }}}
 
+// must be first for msvc (see position.h for more informations)
+#include "position.h"
 #include "driver.h"
-#include "position.h"
 #include "skip_rule.hpp"
 
 #include <QtCore/QString>
--- branches/work/soc-umbrello/umbrello/uml.cpp #896498:896499
@@ -485,14 +485,14 @@
 
     QString moveTabLeftString = i18n("&Move Tab Left");
     QString moveTabRightString = i18n("&Move Tab Right");
-    QAction* moveTabLeft = actionCollection()->addAction("move_tab_left");
+    KAction* moveTabLeft = actionCollection()->addAction("move_tab_left");
     moveTabLeft->setIcon(Icon_Utils::SmallIcon(QApplication::layoutDirection() ? Icon_Utils::it_Go_Next : Icon_Utils::it_Go_Previous));
     moveTabLeft->setText(QApplication::layoutDirection() ? moveTabRightString : moveTabLeftString);
     moveTabLeft->setShortcut(QApplication::layoutDirection() ?
                  QKeySequence(Qt::CTRL+Qt::SHIFT+Qt::Key_Right) : QKeySequence(Qt::CTRL+Qt::SHIFT+Qt::Key_Left));
     connect(moveTabLeft, SIGNAL( triggered( bool ) ), this, SLOT( slotMoveTabLeft() ));
 
-    QAction* moveTabRight = actionCollection()->addAction("move_tab_right");
+    KAction* moveTabRight = actionCollection()->addAction("move_tab_right");
     moveTabRight->setIcon(Icon_Utils::SmallIcon(QApplication::layoutDirection() ? Icon_Utils::it_Go_Previous : Icon_Utils::it_Go_Next));
     moveTabRight->setText(QApplication::layoutDirection() ? moveTabLeftString : moveTabRightString);
     moveTabRight->setShortcut(QApplication::layoutDirection() ?
@@ -501,13 +501,13 @@
 
     QString selectTabLeftString = i18n("Select Diagram on Left");
     QString selectTabRightString = i18n("Select Diagram on Right");
-    QAction* changeTabLeft = actionCollection()->addAction("previous_tab");
+    KAction* changeTabLeft = actionCollection()->addAction("previous_tab");
     changeTabLeft->setText(QApplication::layoutDirection() ? selectTabRightString : selectTabLeftString);
     changeTabLeft->setShortcut(QApplication::layoutDirection() ?
                    QKeySequence(Qt::SHIFT+Qt::Key_Right) : QKeySequence(Qt::SHIFT+Qt::Key_Left));
     connect(changeTabLeft, SIGNAL( triggered( bool ) ), this, SLOT( slotChangeTabLeft() ));
 
-    QAction* changeTabRight = actionCollection()->addAction("next_tab");
+    KAction* changeTabRight = actionCollection()->addAction("next_tab");
     changeTabRight->setText(QApplication::layoutDirection() ? selectTabLeftString : selectTabRightString);
     changeTabRight->setShortcut(QApplication::layoutDirection() ?
                     QKeySequence(Qt::SHIFT+Qt::Key_Left) : QKeySequence(Qt::SHIFT+Qt::Key_Right));
--- branches/work/soc-umbrello/umbrello/uml.h #896498:896499
@@ -43,6 +43,7 @@
 class KMenu;
 class KMenuBar;
 class KUndoStack;
+class KAction;
 
 // Qt forward declarations
 class QStackedWidget;
@@ -514,8 +515,8 @@
     KPlayerPopupSliderAction* zoomAction;
 
     QAction* m_langAct[Uml::pl_Reserved];
-    QAction* deleteSelectedWidget;
-    QAction* deleteDiagram;
+    KAction* deleteSelectedWidget;
+    KAction* deleteDiagram;
 
     QToolButton* m_newSessionButton;
     KMenu* m_diagramMenu;
--- branches/work/soc-umbrello/umbrello/umlscene.cpp #896498:896499
@@ -2782,7 +2782,7 @@
  * This slot is entered when an event has occurred on the views display,
  * most likely a mouse event.  Before it sends out that mouse event everyone
  * that displays a menu on the views surface (widgets and this) thould remove any
- * menu.  This stops more then one menu bieing displayed.
+ * menu.  This stops more than one menu bieing displayed.
  */
 void UMLScene::slotRemovePopupMenu()
 {
--- branches/work/soc-umbrello/umbrello/umlview.h #896498:896499
@@ -72,7 +72,6 @@
 
     void zoomIn();
     void zoomOut();
-
     void show();
 };
 




More information about the umbrello-devel mailing list