[DQml] Added support from QHash<int, QByteArray>

This commit is contained in:
Filippo Cucchetto 2015-04-27 21:23:25 +02:00
parent 3bfed7600f
commit af9d84a26e
2 changed files with 126 additions and 83 deletions

View File

@ -96,4 +96,10 @@ extern(C)
void dos_qmodelindex_parent(void* index, void* parent);
void dos_qmodelindex_child(void* index, int r, int c, void* child);
void dos_qmodelindex_sibling(void* index, int r, int c, void* sibling);
// QHashIntByteArray
void dos_qhash_int_qbytearray_create(ref void*);
void dos_qhash_int_qbytearray_delete(void*);
void dos_qhash_int_qbytearray_insert(void*, int, immutable(char)*);
void dos_qhash_int_qbytearray_value(void*, int, ref char*);
}

View File

@ -0,0 +1,37 @@
import dothersideinterface;
import qvariant;
import std.string;
class QHashIntByteArray
{
this()
{
dos_qhash_int_qbytearray_create(data);
}
~this()
{
dos_qhash_int_qbytearray_delete(data);
}
public void insert(int key, string value)
{
dos_qhash_int_qbytearray_insert(key, value.toStringz());
}
public string value(int key)
{
char* array;
dos_qhash_int_qbytearray_value(key, array);
string result = fromStringz(array).dup;
dos_chararray_delete(array);
return result;
}
public void* rawData()
{
return data;
}
private void* data;
}