mirror of
https://github.com/mappu/miqt.git
synced 2025-01-03 14:18:37 +00:00
doc/TODO: update
This commit is contained in:
parent
3419c8c0dc
commit
8de91463f5
27
TODO
27
TODO
@ -13,29 +13,43 @@ Phase 1
|
|||||||
- [X] Prevent calling ctor of abstract class
|
- [X] Prevent calling ctor of abstract class
|
||||||
- [X] ~~Destructors~~ We only need .Delete()
|
- [X] ~~Destructors~~ We only need .Delete()
|
||||||
- [X] Copy-constructors
|
- [X] Copy-constructors
|
||||||
- [ ] Move-constructors (Qt6)
|
- [ ] Move-constructors (e.g. QWidgetData)
|
||||||
- [X] Operator overloading
|
- [X] Operator overloading
|
||||||
- [X] Class inheritance
|
- [X] Class inheritance
|
||||||
- [X] Detect in AST
|
- [X] Detect in AST
|
||||||
- [X] ~~Downcast helper methods~~ Direct type available
|
- [X] ~~Downcast helper methods~~ Direct type available
|
||||||
- [ ] Member variables
|
- [ ] Member variables
|
||||||
- [ ] Static methods
|
- [ ] Static methods (e.g. QWidget::setTabOrder)
|
||||||
- [X] Return of class types passed by pointer
|
- [X] Return of class types passed by pointer
|
||||||
- [ ] Return of class types passed by value (e.g. `_Icon()`)
|
- [X] Return of class types passed by value (e.g. `_Icon()`)
|
||||||
- ~~want to copy-construct into Go-provided memory~~ Go can't allocate a C++ type
|
- ~~want to copy-construct into Go-provided memory~~ Go can't allocate a C++ type
|
||||||
- Return as a heap pointer instead
|
- Return as a heap pointer instead
|
||||||
- [X] Class parameters passed by pointer (want to call `cPointer()`)
|
- [X] Class parameters passed by pointer (want to call `cPointer()`)
|
||||||
- [X] Class parameters passed by value (need to dereference) e.g. `_SetIcon()`
|
- [X] Class parameters passed by value (need to dereference) e.g. `_SetIcon()`
|
||||||
- [X] QString type conversion
|
- [X] QString type conversion
|
||||||
|
- [X] For parameters
|
||||||
|
- [X] For return types
|
||||||
- [ ] Bypass malloc/free for zero-length strings
|
- [ ] Bypass malloc/free for zero-length strings
|
||||||
- [ ] QList, QVector, QByteArray type conversion(?)
|
- [X] QList type conversion (e.g. QWidget::Actions())
|
||||||
|
- [X] For parameters
|
||||||
|
- [X] For return types
|
||||||
|
- [ ] Bypass malloc/free for zero-length arrays
|
||||||
|
- [ ] QVector type conversion
|
||||||
|
- [ ] QByteArray type conversion(?)
|
||||||
- [X] Hide private methods
|
- [X] Hide private methods
|
||||||
- [X] Method overloads / optional parameters
|
- [X] Optional parameters
|
||||||
|
- [ ] Overloaded methods
|
||||||
- [ ] Qt:: namespace enums/const values
|
- [ ] Qt:: namespace enums/const values
|
||||||
|
- e.g. Qt::WindowFlags (global)
|
||||||
|
- e.g. QWidget::RenderFlag (per-class)
|
||||||
- [ ] Free functions
|
- [ ] Free functions
|
||||||
- [ ] QtCore
|
- [ ] QtCore
|
||||||
- [ ] QtGui
|
- [ ] QtGui
|
||||||
- [ ] QtWidgets
|
- [ ] QtWidgets
|
||||||
|
- [ ] Minimal example
|
||||||
|
- [ ] Calling connect
|
||||||
|
- [ ] Exercising QString interop
|
||||||
|
- [ ] Exercising QList interop
|
||||||
- [X] Pick a name for the package
|
- [X] Pick a name for the package
|
||||||
- [ ] Make github repo, rename module
|
- [ ] Make github repo, rename module
|
||||||
- [ ] v0 Public release
|
- [ ] v0 Public release
|
||||||
@ -46,7 +60,7 @@ Phase 2
|
|||||||
- [ ] QString helper functions
|
- [ ] QString helper functions
|
||||||
- [ ] QList, QVector, QByteArray helper functions
|
- [ ] QList, QVector, QByteArray helper functions
|
||||||
- [ ] `connect`
|
- [ ] `connect`
|
||||||
- [ ] Other Qt packages
|
- [ ] Document comparison with other Qt binding packages
|
||||||
- [ ] Document use for Windows/macOS/Linux
|
- [ ] Document use for Windows/macOS/Linux
|
||||||
|
|
||||||
Wishlist
|
Wishlist
|
||||||
@ -57,3 +71,4 @@ Wishlist
|
|||||||
- [ ] Use clang ast's `mangledName` to make a dlsym/LazyDLL cgo-free version
|
- [ ] Use clang ast's `mangledName` to make a dlsym/LazyDLL cgo-free version
|
||||||
- [ ] Generate bindings for all current Qt versions (Debian Qt / Qt LTS), expose as git tags
|
- [ ] Generate bindings for all current Qt versions (Debian Qt / Qt LTS), expose as git tags
|
||||||
- [ ] Reuse CABI to generate Qt bindings for other non-Go languages
|
- [ ] Reuse CABI to generate Qt bindings for other non-Go languages
|
||||||
|
- [ ] Reduce necessary memory copies around ABI boundaries
|
||||||
|
Loading…
Reference in New Issue
Block a user