Commit graph

91 commits

Author SHA1 Message Date
Chris Cochrun
f34e8cbd7e adding some tweaks to making song_editor working better 2023-10-09 15:11:55 -05:00
Chris Cochrun
b0435e197c attempting to add wrapper move function
I believe this won't work, but it's an attempt
2023-09-18 15:44:41 -05:00
Chris Cochrun
e5a7360f0b added a way to get the item through C++ from the rust model 2023-09-08 14:54:00 -05:00
Chris Cochrun
8efabbdf68 maintenance: adding all models as types for direct access
If each model is registered as a QML type, we can pass the model back
to QML from each proxy model to have more direct access to it. This
enables us to use it's functions and properties better.
2023-05-17 10:11:33 -05:00
Chris Cochrun
184ad4fe57 using song_model now 2023-05-12 17:00:23 -05:00
Chris Cochrun
1ca9ab5fc4 switching to thumbnails from rust 2023-04-25 09:23:49 -05:00
Chris Cochrun
3c09565a12 bug: fixed inserting slides in the middle of songs
Since songs had more than one slide, anything inserted after the first
multi-slide item would break the insertion. ServiceItem indexes are
not the same as the slide indexes so we needed to find the right
index, then properly change the other indexes in the right spot.

I think I've done this by using rust iterators better.
2023-04-19 15:03:32 -05:00
Chris Cochrun
90f551edff attempting to modernize the VideoEditor.qml 2023-04-17 17:08:33 -05:00
Chris Cochrun
1a9b7b0bd7 using setup instead of test_database 2023-04-17 11:30:26 -05:00
Chris Cochrun
860469a3d1 use setup instead of test_database 2023-04-17 11:29:19 -05:00
Chris Cochrun
b037f1a91c initial ability to update properties of video_model.rs
I've made it possible to update the properties of the videos. I'll
need to make sure title, start and end times, and paths all work as
well. Let's make videos really good and then move on to images and
presentations.
2023-04-17 11:22:07 -05:00
Chris Cochrun
9d05a7e655 using video_model.rs and presentation_model.rs
These are hopefully a better alternative than the cpp counterparts
after some more time
2023-04-16 15:09:09 -05:00
Chris Cochrun
ac5bd950c7 removing annoying debug info 2023-04-13 15:20:09 -05:00
Chris Cochrun
d9dbefcbe5 setup move_item_from_service in slide_model
I'll need to keep working on this but a basic sorta working function
of moving the order of items in the Rust model is here.
2023-04-12 19:01:50 -05:00
Chris Cochrun
85285b7d02 add newItem function to interface with QML
In order to make sure QML can properly interact with Rust I'll use a
function in the proxy model to interact with the actual model
underneath in Rust.
2023-04-12 19:00:31 -05:00
Chris Cochrun
f8ac7feea0 adding the removal of items work on the slides
This isn't finished yet, but the core is there. I have yet to fully
remove slides after a service_item is removed.
2023-04-11 06:22:50 -05:00
Chris Cochrun
fc2d0492fa the image_model.rs is working
The basic functions are all working properly. Now the model works by
using diesel to connect the sql database and retrieve all the items
and organize them. Then it'll ensure any additions and deletions are
correct and happen first on the database before adding them to the
model.

There is still a C++ proxyModel inbetween QML and Rust, but
this proxyModel interfaces with the Rust model instead of the C++
SqlTableModel.
2023-04-06 05:49:28 -05:00
Chris Cochrun
060341adb7 video_thumbnail works to be set in rust
Since every slide is asking for their own, we don't need to loop
through all slides, we just use the index to put the thumbnail into
the right slides and emit data changed.
2023-04-01 07:02:42 -05:00
Chris Cochrun
0efccdfa54 fix insert_item_from_service 2023-04-01 06:51:07 -05:00
Chris Cochrun
23bc1435ea remove old debug info 2023-03-31 09:54:47 -05:00
Chris Cochrun
6f185e6f6e slide_model.rs functions like get_item and activate
These functions aren't perfect, but this code all makes them
essentially work so that we can call from QML
2023-03-30 09:33:51 -05:00
Chris Cochrun
90c1825b10 a compiling and sorta working model
This model, built in Rust, works in that functions are getting called
and the right pieces are mapped into the model. I've yet to connect
things up to see if QML is talking to the model just yet.
2023-03-28 15:05:36 -05:00
Chris Cochrun
0caadfc5c8 slide_obj.rs working
This commit finally has a working basic slide_obj implemented in Rust!
There are likely still some things that need to be tweaked and
massaged in order for things to translate back and forth from QML to
Rust.

The key was to make the old SlideObject written in C++ to act as a
bridge between QML and Rust. QML can't seem to understand CXX-QT's
QMap_QString_QVariant type as a QVariantMap and thus didn't translate
the Javascript object properly. Having the call first go into a C++
class translated it and then was trivial to pass into Rust.
2023-03-24 11:31:18 -05:00
Chris Cochrun
310c71e18c removing podofo 2023-03-20 11:36:53 -05:00
Chris Cochrun
caa2e31d99 add looping for slides
This add looping primarily for videos but I've added in the groundwork
for looping through any kind of slide. This obviously will be
implemented differently for each type of slide, but this way the
groundwork is done already.
2023-03-06 15:06:18 -06:00
Chris Cochrun
caded1027c removing cruft 2023-03-06 13:33:04 -06:00
Chris Cochrun
c80d208a3c removing cruft 2023-03-06 13:32:42 -06:00
Chris Cochrun
0ce4964be0 fixing typo 2023-03-06 13:32:21 -06:00
Chris Cochrun
6c33e52ea3 a working multi delete in libraries 2023-03-05 06:51:47 -06:00
Chris Cochrun
e3ea443f1d simpler 2023-03-02 16:51:30 -06:00
Chris Cochrun
5259cedff8 adding some debug info 2023-03-02 16:32:58 -06:00
Chris Cochrun
5cc531f046 adding a way to get modelIndex from songProxyModel 2023-03-02 05:56:21 -06:00
Chris Cochrun
aba253559c commenting 2023-02-28 17:37:32 -06:00
Chris Cochrun
f472529de9 fix bug adding serviceItem shifts slides to wrong item 2023-02-28 17:36:33 -06:00
Chris Cochrun
1b080e9822 removing a lot of noise in debugging 2023-02-28 06:21:57 -06:00
Chris Cochrun
d6a92ee3cb switching to a more model based adding of items to serviceListModel 2023-02-24 16:01:11 -06:00
Chris Cochrun
903cee065b removing junk 2023-02-24 15:38:06 -06:00
Chris Cochrun
a80cad73eb adding a getLyricList function to songProxyModel 2023-02-24 15:02:05 -06:00
Chris Cochrun
d633a25ebe adding idx to all models 2023-02-24 14:53:05 -06:00
Chris Cochrun
787b0eea42 no selectionModel in c++ 2023-02-23 14:54:43 -06:00
Chris Cochrun
27b3d1d9d1 in progress selection model 2023-02-21 09:56:37 -06:00
Chris Cochrun
0086ed3d5a fixing empty files not loading the application 2023-02-20 11:21:04 -06:00
Chris Cochrun
d97467ee63 Revert "fix dumb logic"
This reverts commit 7da3b3c8c9.
2023-02-19 21:14:48 -06:00
Chris Cochrun
7da3b3c8c9 fix dumb logic 2023-02-19 21:12:46 -06:00
Chris Cochrun
4bb48c8f06 adding loading validation to ensure run without a proper file 2023-02-19 21:10:50 -06:00
Chris Cochrun
c9f6fc4d1b ok I added some proxy models to all sql models, but they aint done.. 2023-02-17 16:14:50 -06:00
Chris Cochrun
cc501873c1 videosProxyModel working 2023-02-17 15:33:50 -06:00
Chris Cochrun
85318706fc refactoring for proxy models 2023-02-17 13:12:55 -06:00
Chris Cochrun
57ffdc3ff0 adding proxy models and search to all sql models 2023-02-17 10:09:41 -06:00
Chris Cochrun
45fbbde792 making songModel a pointer 2023-02-17 09:44:15 -06:00