Commit graph

722 commits

Author SHA1 Message Date
0f0f16e069 fix activate
slide_model.rs activate function now properly tells of the data that
was changed so that ListViews that use it as a model will reset their
data properly on changes.

The important parts were to ensure we are using the right indexes for
top_left and bottom_right. Then also ensure the roles are correct, but
I think I had that already, just went with the implementation that
CXX-Qt used in their examples.
2023-03-31 14:47:44 -05:00
bd2002ada2 ensure active is proper color
For some reason the right value isn't being loaded on dataChanged, so
this makes sure to reset the value correctly for now.
2023-03-31 14:10:17 -05:00
0a9c17cdde add activate function properly
While the previous function technically worked, the connections
weren't setup properly. Also the row_count function wasn't running
because it requires a QModelIndex parameter. Added a simple count
function to make sure we know how many slides there are in QML.
2023-03-31 13:13:20 -05:00
b8bfa4b108 adding a proper Cxx type for slides 2023-03-31 09:56:22 -05:00
98233e040a add ffmepg 2023-03-31 09:56:13 -05:00
9938241ebb use correct ids and models 2023-03-31 09:55:52 -05:00
be988e9ade use correct index for SlideChanged signal 2023-03-31 09:55:24 -05:00
df7e85957c use rust slide_model activate 2023-03-31 09:55:00 -05:00
23bc1435ea remove old debug info 2023-03-31 09:54:47 -05:00
609d2af90b idk attempt to add ffmpeg? 2023-03-30 15:31:43 -05:00
469837ca8e add a bit of iter 2023-03-30 13:25:00 -05:00
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
7e8694eca2 mapping slide_model.rs to serviceItems better 2023-03-29 15:10:04 -05:00
fc1eb193dd image_count > slide_count
This is a better name for this field as it encapsulates that the
slides are not just images
2023-03-29 14:29:29 -05:00
b3de8dfabf remove my_object.rs
This was a testing file while figuring out rust in qt
2023-03-29 14:29:03 -05:00
7180c02876 model adds slides more properly 2023-03-29 13:50:12 -05:00
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
08507bfc0d adding build_debug to build.sh without params 2023-03-28 15:05:09 -05:00
09e784537b update readme
I'm going to start adding info on CXX-QT to the readme in order for
others to know how Rust is used in the project
2023-03-28 09:45:27 -05:00
236503e877 adjusting settings and slide_model.rs
These are trying to get more code written in Rust rather than c++. Not
there yet, but I need to sync these to another machine.
2023-03-28 06:15:11 -05:00
ec95ba0d89 add slide_model.rs
This file will eventually be the model of slides to be used in the app.
2023-03-24 16:36:05 -05:00
f17a88ff68 fix serviceList sometimes having overlapping items 2023-03-24 15:17:25 -05:00
17082bcc67 fix slideModel not activating after slideChanged 2023-03-24 15:17:06 -05:00
c02f9509ff debug info in slide_obj.rs 2023-03-24 15:16:47 -05:00
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
0936490bee attempt use slide_obj in qml
QML doesn't understand QMap_QString_QVariant yet.
2023-03-23 19:09:32 -05:00
1fefe5dca3 basic slide_obj.rs
This very basic slide object implemented in rust will possibly suffice
as our first attempt at doing this in rust.
2023-03-23 16:55:04 -05:00
2b5a699000 add next & previous fn
These functions allow us to change the slide to the next and previous slides
2023-03-23 15:58:20 -05:00
b32d35c385 adding a slide_obj in rust
This object is still unfinished, but it will later serve as our main
object to connect to for the slides that are shown on screen. All of
this needed some heavy tweaking and I still need to learn more about
rust, but the beginnings are there and it will be worth it to have the
safety and speed that rust provides
2023-03-21 10:34:54 -05:00
78e6a5c9ca attempts to decode the windowing system
I want to eventually get a more consistent way for windows to be
handled on wayland. But I can't figure out how to make it work on all compositors
2023-03-21 10:34:00 -05:00
554dbc7d29 more versatile key handling
This allows us to later add and tweak the keyboard keys used to
navigate the slides and UI.
2023-03-21 10:33:15 -05:00
175b327c5c refocus the presentation item
This command sets the keyboard focus to the presentation item which
controls when slides are changed. It ensures that after every action
you can use the arrow keys to switch the slides.
2023-03-20 11:38:07 -05:00
310c71e18c removing podofo 2023-03-20 11:36:53 -05:00
a39b492791 tweaking env 2023-03-20 11:36:32 -05:00
72d13f915a adding a build script 2023-03-20 11:36:24 -05:00
3809e697e8 add labels to SongEditor.qml
This makes it more clear what each field is for
2023-03-14 14:40:43 -05:00
2011a176bf adding slide_object.rs 2023-03-14 14:40:30 -05:00
4a118271c0 tweaks for update 2023-03-14 14:40:23 -05:00
114119baef updating cxx-qt 2023-03-14 14:40:12 -05:00
097fa8ee7e add more image formats 2023-03-12 06:35:54 -05:00
a543d8b9bc add proper fileDialog
This makes it so the editor page can change the image you are using.
2023-03-12 06:32:25 -05:00
58a85bcc01 add forceLayout
This was an attempt at forcing the layout of the ListView so that it
will adjust to model changes properly. It only sort of works. There
are still occasional overlapping items.
2023-03-12 06:31:06 -05:00
e2e44f1c3c working highlightBar 2023-03-12 06:30:47 -05:00
38bfec602a update todo 2023-03-10 17:25:15 -06:00
b9a8eb4903 adding html to list of presentation extensions
This is necessary for eventually adding in WebEngineView to the
Slide.qml and enabling reveal.js presentations to work.
2023-03-10 17:24:24 -06:00
ac32f6e20a fix adding file selects proper library 2023-03-08 13:30:34 -06:00
a946db072d add loadingItem to serviceList
The loading item will show as things are dropped into the
listview. This makes sure the user sees a loading bit as things are
happening in the background to add the new serviceItem
2023-03-07 12:53:27 -06:00
d349e0a572 better adding animations 2023-03-07 12:23:08 -06:00
d983e06f8c updating todo 2023-03-07 12:20:19 -06:00
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