diff qt/core/QString.d @ 188:7dd099050621

initial commit for D2 support
author eldar
date Sun, 12 Jul 2009 18:58:03 +0000
parents d5a6b6269f44
children 5173835bb372
line wrap: on
line diff
--- a/qt/core/QString.d	Sat Jul 11 11:17:44 2009 +0000
+++ b/qt/core/QString.d	Sun Jul 12 18:58:03 2009 +0000
@@ -4,11 +4,11 @@
 
 version (Tango)
 {
-    import tango.text.convert.Utf : toString;
+    public import tango.text.convert.Utf : toUTF8 = toString;
 }
 else
 {
-    import std.utf : toString = toUTF8;
+    public import std.utf : toUTF8;
 }
 
 struct QString
@@ -21,25 +21,29 @@
     
     private void* native_id;
     
-    public static final char[] toNativeString(void* qstring) {
+    public static final string toNativeString(void* qstring) {
         wchar* arr = __qtd_QString_utf16(qstring);
         int size = __qtd_QString_size(qstring);
-        return .toString(arr[0..size]);
+        return .toUTF8(arr[0..size]);
     }
     
-    public final char[] toNativeString() {
+    public final string toNativeString() {
         return toNativeString(native_id);
     }
     
-    public void assign(char[] text) {
-        __qtd_QString_operatorAssign(native_id, text.ptr, text.length);
+    public void assign(string text) {
+        __qtd_QString_operatorAssign(native_id, text);
     }
     
     public static string fromUtf8(string source) {
         return source;
     }
+/*    
+    public static string fromUtf16(wstring src) {
+        version(Tango)
+    }*/
 }
 
 private extern (C) wchar* __qtd_QString_utf16(void* __this_nativeId);
 private extern (C) int __qtd_QString_size(void* __this_nativeId);
-private extern (C) void __qtd_QString_operatorAssign(void* __this_nativeId, char* text, uint text_size);
\ No newline at end of file
+private extern (C) void __qtd_QString_operatorAssign(void* __this_nativeId, string text);
\ No newline at end of file