From 90825e2392b2d70e43c7a25b8a3752299a933894 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebindings@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- qtsharp/TODO | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 qtsharp/TODO (limited to 'qtsharp/TODO') diff --git a/qtsharp/TODO b/qtsharp/TODO new file mode 100644 index 00000000..71d412f1 --- /dev/null +++ b/qtsharp/TODO @@ -0,0 +1,70 @@ +** General + +o Better error checking on method arguments in generated code. +o System.Windows.Forms implementation using Qt#. :-) +o Devise connection and event handling schemes for calling C++ + methods directly from C#. (thanks jowenn) +o Type mappings need better resolution in the generator. + +** Methods to be throttled + +o Qt reflection methods that are useless in C#, like those relating to + inheritance and class name. +o Maybe translation methods? I don't know if these could be useful from + C# or not, but I kind of doubt it, especially since Rhys gave Mono his + I18N code. +o Superfluous event handling methods in QObject. +o There should be no trace of connection code in any class except + QtSignal and QtSlot. + +** New tools + +o Need to refine generator design to support the above tools. +o Signals and slots should be identified in the API XML representation. In + particular, signal information must be present so we know to DllImport + them so we can connect C# signals to C++ signals. +o Tools should identify what underlying type enums should use in C#. + For example. the QStyle enum problem. + +** Classes needing converted to C# types moving in and out of methods + +QDate, QTime, QDateTime, QDir, QFile*, QDict*, QDns, QFtp, QHttp, +QUrl*, QHostAddress, QGL*, QInt*, QIODevice, QString*, QMap + +o QPROPERTYs + +** Classes needing attention, discussion or throttling + +QTimeEdit, QDateTimeEdit, QHebrewCodec, QJisCodec, QTsciiCodec, QPtr*, +QHeader (needed?), QLibrary (hehe), QNetwork*, QInt*, QNS*, QStr*, +QText*Stream, QTextCodec*, QText[En|De]coder, QThread, QWaitCondition, +QTimer, QValidator, QValue*, QWidgetStack, QXml*, QXt* + +** MI Classes (very incomplete list) + +o Some QGL* classes + +** Build Environment todo + +o Write better library detection macros for autoconf. +o Use QTDIR when searching for Qt stuff. +o See if thre's a way to use LD_LIBRARY_PATH when hunting for libraries. +o Set up cvsignore files. +o Organize Qt.dll Makefile stuffs - maybe use external targets for building + the gargle-blaster foo muncher, csc, and mono. + +** Signals/Slots + +o Need error checking in Emit. Signal arguments should be compared to the + actual arguments provided. The current setup will make it hard for users + with buggy code to know what the problem is. +o Must research how Qt/C++ handles signals connected to slots that don't + have matching argument lists. I know its supported, but I don't know to + what extend. +o Use method access to determine what connections are allowed. + +** Object model + +o Ctors aren't the only way children can be added to a parent; for example, + QBoxLayout.AddLayout adds a layout as a child. Need to identify all such + instances and code accordingly. -- cgit v1.2.1