summaryrefslogtreecommitdiffstats
path: root/qtsharp/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'qtsharp/TODO')
-rw-r--r--qtsharp/TODO70
1 files changed, 70 insertions, 0 deletions
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.