[Kde-bindings] KDE/kdebindings

Richard Dale Richard_Dale at tipitina.demon.co.uk
Tue Jul 22 10:14:16 UTC 2008


SVN commit 836460 by rdale:

* Add an Akonadi C# binding
* In the list of headers for the Akonadi smoke lib qualify the names with the akonadi directory

CCMAIL: kde-bindings at kde.org

 M  +6 -0      csharp/CMakeLists.txt  
 A             csharp/akonadi (directory)  
 A             csharp/akonadi/CMakeLists.txt  
 A             csharp/akonadi/akonadi (directory)  
 A             csharp/akonadi/akonadi/Akonadi_AgentBase.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentFilterProxyModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentInstance.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentInstanceCreateJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentInstanceModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentInstanceWidget.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentManager.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentType.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentTypeModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_AgentTypeWidget.cs  
 A             csharp/akonadi/akonadi/Akonadi_Attribute.cs  
 A             csharp/akonadi/akonadi/Akonadi_AttributeFactory.cs  
 A             csharp/akonadi/akonadi/Akonadi_CachePolicy.cs  
 A             csharp/akonadi/akonadi/Akonadi_ChangeRecorder.cs  
 A             csharp/akonadi/akonadi/Akonadi_Collection.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionCopyJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionCreateJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionDeleteJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionFetchJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionFilterProxyModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionModifyJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionPathResolver.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionPropertiesDialog.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionPropertiesPage.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionPropertiesPageFactory.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionStatistics.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionStatisticsDelegate.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionStatisticsJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionStatisticsModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_CollectionView.cs  
 A             csharp/akonadi/akonadi/Akonadi_Control.cs  
 A             csharp/akonadi/akonadi/Akonadi_Entity.cs  
 A             csharp/akonadi/akonadi/Akonadi_Item.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemCopyJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemCreateJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemDeleteJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemFetchJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemFetchScope.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemModifyJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemMonitor.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemMoveJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemSerializerPlugin.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemSync.cs  
 A             csharp/akonadi/akonadi/Akonadi_ItemView.cs  
 A             csharp/akonadi/akonadi/Akonadi_Job.cs  
 A             csharp/akonadi/akonadi/Akonadi_MessageModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_MessageThreaderProxyModel.cs  
 A             csharp/akonadi/akonadi/Akonadi_Monitor.cs  
 A             csharp/akonadi/akonadi/Akonadi_ResourceBase.cs  
 A             csharp/akonadi/akonadi/Akonadi_SearchCreateJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_Session.cs  
 A             csharp/akonadi/akonadi/Akonadi_StandardActionManager.cs  
 A             csharp/akonadi/akonadi/Akonadi_TransactionBeginJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_TransactionCommitJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_TransactionRollbackJob.cs  
 A             csharp/akonadi/akonadi/Akonadi_TransactionSequence.cs  
 A             csharp/akonadi/src (directory)  
 A             csharp/akonadi/src/Akonadi.cs  
 A             csharp/akonadi/src/AssemblyInfo.cs  
 A             csharp/akonadi/src/akonadi.cpp   [License: GPL (v2+)]
 A             csharp/akonadi/src/akonadihandlers.cpp   [License: GPL (v2+)]
 A             csharp/akonadi/src/top_CMakeLists.txt  
 A             csharp/qyoto/gui/QStyledItemDelegate.cs  
 M  +13 -1     csharp/qyoto/qdbus/QDBusContext.cs  
 M  +1 -0      kalyptus/kalyptusCxxToKimono.pm  
 M  +67 -58    smoke/akonadi/akonadi_header_list  
 M  +2 -0      smoke/akonadi/classlist  
 M  +6 -78     smoke/akonadi/generate.pl.cmake  


--- trunk/KDE/kdebindings/csharp/CMakeLists.txt #836459:836460
@@ -12,6 +12,7 @@
 SET(QTUITOOLS_ENABLED "no")
 SET(QTWEBKIT_ENABLED "no")
 SET(QSCINTILLA_SHARP_ENABLED "no")
+SET(AKONADI_ENABLED "no")
 SET(KIMONO_ENABLED "no")
 SET(KHTML_SHARP_ENABLED "no")
 
@@ -89,6 +90,11 @@
 		SET(NEPOMUK_SHARP_ENABLED "yes")
 		ADD_SUBDIRECTORY(nepomuk)
 	ENDIF(Nepomuk_FOUND)
+
+    if(KDEPIMLIBS_FOUND AND Akonadi_FOUND)
+        add_subdirectory( akonadi )
+        set(AKONADI_ENABLED "yes")
+    endif(KDEPIMLIBS_FOUND AND Akonadi_FOUND)
 	
 	IF(PLASMA_FOUND)
 		SET(PLASMA_SHARP_ENABLED "yes")
--- trunk/KDE/kdebindings/csharp/qyoto/qdbus/QDBusContext.cs #836459:836460
@@ -1,8 +1,20 @@
 //Auto-generated by kalyptus. DO NOT EDIT.
 namespace Qyoto {
     using System;
+
+    public interface IQDBusContext {
+        bool CalledFromDBus();
+        QDBusConnection Connection();
+        QDBusMessage Message();
+        bool IsDelayedReply();
+        void SetDelayedReply(bool enable);
+        void SendErrorReply(string name, string msg);
+        void SendErrorReply(string name);
+        void SendErrorReply(QDBusError.ErrorType type, string msg);
+        void SendErrorReply(QDBusError.ErrorType type);
+    }
     [SmokeClass("QDBusContext")]
-    public class QDBusContext : Object, IDisposable {
+    public class QDBusContext : Object, IQDBusContext, IDisposable {
         protected SmokeInvocation interceptor = null;
         private IntPtr smokeObject;
         protected QDBusContext(Type dummy) {}
--- trunk/KDE/kdebindings/kalyptus/kalyptusCxxToKimono.pm #836459:836460
@@ -470,6 +470,7 @@
 'KXMLGUIBuilder' => 'IKXMLGUIBuilder',
 'KXMLGUIClient' => 'IKXMLGUIClient',
 'PartBase' => 'IPartBase',
+'QDBusContext' => 'IQDBusContext',
 'QGraphicsItem' => 'IQGraphicsItem',
 'QGraphicsLayoutItem' => 'IQGraphicsLayoutItem',
 'QLayoutItem' => 'IQLayoutItem',
--- trunk/KDE/kdebindings/smoke/akonadi/akonadi_header_list #836459:836460
@@ -1,58 +1,67 @@
-agentbase.h
-agentfilterproxymodel.h
-agentinstancecreatejob.h
-agentinstance.h
-agentinstancemodel.h
-agentinstancewidget.h
-agentmanager.h
-agenttype.h
-agenttypemodel.h
-agenttypewidget.h
-akonadi_export.h
-attributefactory.h
-attribute.h
-cachepolicy.h
-changerecorder.h
-collectioncopyjob.h
-collectioncreatejob.h
-collectiondeletejob.h
-collectionfetchjob.h
-collectionfilterproxymodel.h
-collection.h
-collectionmodel.h
-collectionmodifyjob.h
-collectionpropertiesdialog.h
-collectionpropertiespage.h
-collectionstatisticsdelegate.h
-collectionstatistics.h
-collectionstatisticsjob.h
-collectionstatisticsmodel.h
-collectionview.h
-control.h
-entity.h
-itemcopyjob.h
-itemcreatejob.h
-itemdeletejob.h
-itemfetchjob.h
-itemfetchscope.h
-item.h
-itemmodel.h
-itemmodifyjob.h
-itemmonitor.h
-itemmovejob.h
-itempayloadinternals_p.h
-itemserializerplugin.h
-itemsync.h
-itemview.h
-job.h
-monitor.h
-resourcebase.h
-searchcreatejob.h
-session.h
-standardactionmanager.h
-transactionjobs.h
-transactionsequence.h
-messagemodel.h
-messageparts.h
-messagethreaderproxymodel.h
-messagethreadingattribute.h
+akonadi/agentbase.h
+akonadi/agentfilterproxymodel.h
+akonadi/agentinstancecreatejob.h
+akonadi/agentinstance.h
+akonadi/agentinstancemodel.h
+akonadi/agentinstanceview.h
+akonadi/agentinstancewidget.h
+akonadi/agentmanager.h
+akonadi/agenttype.h
+akonadi/agenttypemodel.h
+akonadi/agenttypeview.h
+akonadi/agenttypewidget.h
+akonadi/akonadi_export.h
+akonadi/attributefactory.h
+akonadi/attribute.h
+akonadi/cachepolicy.h
+akonadi/changerecorder.h
+akonadi/collectioncombobox.h
+akonadi/collectioncopyjob.h
+akonadi/collectioncreatejob.h
+akonadi/collectiondeletejob.h
+akonadi/collectiondisplayattribute.h
+akonadi/collectionfetchjob.h
+akonadi/collectionfilterproxymodel.h
+akonadi/collection.h
+akonadi/collectionmodel.h
+akonadi/collectionmodifyjob.h
+akonadi/collectionpathresolver.h
+akonadi/collectionpropertiesdialog.h
+akonadi/collectionpropertiespage.h
+akonadi/collectionstatisticsdelegate.h
+akonadi/collectionstatistics.h
+akonadi/collectionstatisticsjob.h
+akonadi/collectionstatisticsmodel.h
+akonadi/collectionview.h
+akonadi/control.h
+akonadi/entity.h
+akonadi/itemcopyjob.h
+akonadi/itemcreatejob.h
+akonadi/itemdeletejob.h
+akonadi/itemdetailsview.h
+akonadi/itemfetchjob.h
+akonadi/itemfetchscope.h
+akonadi/item.h
+akonadi/itemmodel.h
+akonadi/itemmodifyjob.h
+akonadi/itemmonitor.h
+akonadi/itemmovejob.h
+akonadi/itempayloadinternals_p.h
+akonadi/itemserializerplugin.h
+akonadi/itemsync.h
+akonadi/itemview.h
+akonadi/job.h
+akonadi/kmime/akonadi-kmime_export.h
+akonadi/kmime/messagemodel.h
+akonadi/kmime/messageparts.h
+akonadi/kmime/messagethreaderproxymodel.h
+akonadi/kmime/messagethreadingattribute.h
+akonadi/monitor.h
+akonadi/resourcebase.h
+akonadi/searchcreatejob.h
+akonadi/session.h
+akonadi/shareddatapointer.h
+akonadi/standardactionmanager.h
+akonadi/transactionjobs.h
+akonadi/transactionsequence.h
+
--- trunk/KDE/kdebindings/smoke/akonadi/classlist #836459:836460
@@ -18,10 +18,12 @@
 Akonadi::CollectionCopyJob
 Akonadi::CollectionCreateJob
 Akonadi::CollectionDeleteJob
+Akonadi::CollectionDisplayAttribute
 Akonadi::CollectionFetchJob
 Akonadi::CollectionFilterProxyModel
 Akonadi::CollectionModel
 Akonadi::CollectionModifyJob
+Akonadi::CollectionPathResolver
 Akonadi::CollectionPropertiesDialog
 Akonadi::CollectionPropertiesPage
 Akonadi::CollectionPropertiesPageFactory
--- trunk/KDE/kdebindings/smoke/akonadi/generate.pl.cmake #836459:836460
@@ -27,7 +27,7 @@
 
 ## If srcdir != builddir, use headerlist from src
 $headerlistpath = $headerlist if ($headerlist =~ /^\//);
-$kdeheaderlistpath = $kdeheaderlist if ($headerlist =~ /^\//);
+$kdeheaderlistpath = $kdeheaderlist if $kdeheaderlist =~ /^\//;
 $akonadiheaderlistpath = $akonadiheaderlist if $akonadiheaderlist =~ /^\//;
 
 ## Note: outdir and finaloutdir should NOT be the same dir!
@@ -48,11 +48,6 @@
 # Need to cd to kalyptus's directory so that perl finds Ast.pm etc.
 chdir "$kalyptusdir" or die "Couldn't go to $kalyptusdir (edit script to change dir)\n";
 
-# Find out which header files we need to parse
-# We don't want all of them - e.g. not template-based stuff
-my %excludes = (
-);
-
 # Some systems have a QTDIR = KDEDIR = PREFIX
 # We need a complete list
 
@@ -61,34 +56,7 @@
 map { chomp ; $includes{$_} = 1 } <HEADERS>;
 close HEADERS;
 
-# Find out which header files we need to parse
-# We don't want all of them - e.g. not template-based stuff
-my %kdeexcludes = (
-#   These headers don't look suitable for inclusion:
-	'kallocator.h' => 1,
-	'kbookmarkimporter_crash.h' => 1,
-	'kbookmarkimporter_ie.h' => 1,
-	'kbookmarkimporter_opera.h' => 1,
-	'kbookmarkimporter_ns.h' => 1,
-	'kcrash.h' => 1,
-	'kdebug.h' => 1,
-	'kde_terminal_interface.h' => 1,
 
-#	These headers currently give problems
-	'kio/uiserver.h' => 1,
-	'kio/thumbcreator.h' => 1,
-	'kio/file.h' => 1,
-	'kio/chmodjob.h' => 1,
-	'kparts/genericfactory.h' => 1,
-	'kopenssl.h' => 1,
-	'kautomount.h' => 1,
-	'kimagefilepreview.h' => 1,
-	'kpropertiesdialog.h' => 1,
-	'knotifydialog.h' => 1,
-);
-
-my %akonadiexcludes = ( );
-
 # Some systems have a QTDIR = KDEDIR = PREFIX
 # We need a complete list
 
@@ -97,29 +65,11 @@
 map { chomp ; $kdeincludes{$_} = 1 unless /^\s*#/ } <HEADERS>;
 close HEADERS;
 
-my %akonadiincludes;
 open(HEADERS, $akonadiheaderlistpath) or die "Couldn't open $akonadiheaderlistpath: $!\n";
-map { chomp ; $akonadiincludes{$_} = 1 unless /^\s*#/ } <HEADERS>;
+map { chomp ; $kdeincludes{$_} = 1 unless /^\s*#/ } <HEADERS>;
 close HEADERS;
 
-# Can we compile the OpenGl module ?
-if("@KDE_HAVE_GL@" eq "yes")
-{
-    open(DEFS, $definespath);
-    my @defs = <DEFS>;
-    close DEFS;
-    if(!grep(/QT_NO_OPENGL/, @defs))
-    {
-      $excludes{'qgl.h'} = undef;
-      $excludes{'qglcolormap.h'} = undef;
-    }
-    else
-    {
-      print STDERR "Qt was not compiled with OpenGL support...\n Skipping QGL Classes.\n";
-    }
-}
-
-# List Qt headers, and exclude the ones listed above
+# List Qt headers
 my @headers = ();
 
 @qtinc= '@qt_includes@';
@@ -128,8 +78,7 @@
     {   wanted => sub {
 	    (-e || -l and !-d) and do {
 	        $f = $_;
-                if( !defined $excludes{$f} # Not excluded
-                     && $includes{$f}        # Known header
+                if( $includes{$f}        # Known header
                      && /\.h$/)     # Not a backup file etc. Only headers.
                 {
                     my $header = $File::Find::name;
@@ -168,8 +117,7 @@
 	    (-e || -l and !-d) and do {
 	        $f = substr($_, 1 + length $kdeinc);
                 push ( @kdeheaders, $_ )
-	    	  if( !defined $kdeexcludes{$f} # Not excluded
-	    	     && $kdeincludes{$f}        # Known header
+	    	  if( $kdeincludes{$f}        # Known header
 	    	     && /\.h$/);     # Not a backup file etc. Only headers.
 	    	undef $kdeincludes{$f}   
 	     };
@@ -180,29 +128,9 @@
     }, $kdeinc
  );
 
-my @akonadiheaders = ();
-$akonadiinc= '@akonadi_includes@';
-
-find(
-    {   wanted => sub {
-	    (-e || -l and !-d) and do {
-	        $f = fileparse($_);
-                push ( @akonadiheaders, $_ )
-	    	  if( !defined $akonadiexcludes{$f} # Not excluded
-	    	     && $akonadiincludes{$f}        # Known header
-	    	     && /\.h$/);     # Not a backup file etc. Only headers.
-	    	undef $akonadiincludes{$f}   
-	     };
-	},
-	follow_fast => 1,
-	follow_skip => 2,
-	no_chdir => 1
-    }, $akonadiinc
- );
-
 # Launch kalyptus
 chdir "../smoke/akonadi";
-system "perl -I at kdebindings_SOURCE_DIR@/kalyptus @kdebindings_SOURCE_DIR@/kalyptus/kalyptus @ARGV --qt4 --globspace -fsmoke --name=akonadi --init-modules=kde $macros --classlist=@CMAKE_CURRENT_SOURCE_DIR@/classlist --no-cache --outputdir=$outdir @headers @kdeheaders @akonadiheaders";
+system "perl -I at kdebindings_SOURCE_DIR@/kalyptus @kdebindings_SOURCE_DIR@/kalyptus/kalyptus @ARGV --qt4 --globspace -fsmoke --name=akonadi --init-modules=qt,kde --classlist=@CMAKE_CURRENT_SOURCE_DIR@/classlist $macros --no-cache --outputdir=$outdir @headers @kdeheaders";
 my $exit = $? >> 8;
 exit $exit if ($exit);
 chdir "$kalyptusdir";



More information about the Kde-bindings mailing list