mirror of
https://github.com/status-im/dotherside.git
synced 2025-02-07 02:05:00 +00:00
[DQml] Added support for QModelIndex
This commit is contained in:
parent
964ef811c6
commit
0b284798bc
@ -11,5 +11,6 @@ add_library(${PROJECT_NAME} STATIC
|
||||
chararray.d
|
||||
qguiapplication.d
|
||||
qapplication.d
|
||||
qmodelindex.d
|
||||
)
|
||||
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
@ -87,4 +87,15 @@ extern(C)
|
||||
immutable(char)* notifySignal);
|
||||
|
||||
void dos_qobject_delete(void*);
|
||||
|
||||
// QModelIndex
|
||||
void dos_qmodelindex_create(ref void* index);
|
||||
void dos_qmodelindex_delete(void* index);
|
||||
void dos_qmodelindex_row(void*, ref int result);
|
||||
void dos_qmodelindex_column(void*, ref int result);
|
||||
void dos_qmodelindex_isValid(void* index, ref bool result);
|
||||
void dos_qmodelindex_data(void* index, int role, void* variant);
|
||||
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);
|
||||
}
|
||||
|
@ -6,3 +6,4 @@ public import qobject;
|
||||
public import qqmlapplicationengine;
|
||||
public import qquickview;
|
||||
public import qmetatype;
|
||||
public import qmodelindex;
|
||||
|
72
D/DQml/qmodelindex.d
Normal file
72
D/DQml/qmodelindex.d
Normal file
@ -0,0 +1,72 @@
|
||||
import dothersideinterface;
|
||||
import qvariant;
|
||||
|
||||
class QModelIndex
|
||||
{
|
||||
this()
|
||||
{
|
||||
dos_qmodelindex_create(this.ptr);
|
||||
}
|
||||
|
||||
~this()
|
||||
{
|
||||
dos_qmodelindex_delete(this.ptr);
|
||||
ptr = null;
|
||||
}
|
||||
|
||||
public void* internalPtr()
|
||||
{
|
||||
return this.ptr;
|
||||
}
|
||||
|
||||
public int row()
|
||||
{
|
||||
int result = -1;
|
||||
dos_qmodelindex_row(this.ptr, result);
|
||||
return result;
|
||||
}
|
||||
|
||||
public int column()
|
||||
{
|
||||
int result = -1;
|
||||
dos_qmodelindex_column(this.ptr, result);
|
||||
return result;
|
||||
}
|
||||
|
||||
public bool isValid()
|
||||
{
|
||||
bool result = false;
|
||||
dos_qmodelindex_isValid(this.ptr, result);
|
||||
return result;
|
||||
}
|
||||
|
||||
public QVariant data(int role)
|
||||
{
|
||||
auto result = new QVariant();
|
||||
dos_qmodelindex_data(this.ptr, role, result.rawData());
|
||||
return result;
|
||||
}
|
||||
|
||||
public QModelIndex parent()
|
||||
{
|
||||
auto result = new QModelIndex();
|
||||
dos_qmodelindex_parent(this.ptr, result.ptr);
|
||||
return result;
|
||||
}
|
||||
|
||||
public QModelIndex child(int row, int column)
|
||||
{
|
||||
auto result = new QModelIndex();
|
||||
dos_qmodelindex_child(this.ptr, row, column, result.ptr);
|
||||
return result;
|
||||
}
|
||||
|
||||
public QModelIndex sibling(int row, int column)
|
||||
{
|
||||
auto result = new QModelIndex();
|
||||
dos_qmodelindex_sibling(this.ptr, row, column, result.ptr);
|
||||
return result;
|
||||
}
|
||||
|
||||
private void* ptr;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user