[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