Commit graph

104 commits

Author SHA1 Message Date
Chris Cochrun
504b4bc944 fixy 2025-07-25 15:19:21 -05:00
Chris Cochrun
92f2b18a20 rust side builds but having trouble linking in main.cpp 2025-03-12 09:35:36 -05:00
Chris Cochrun
2c014e242f Refactoring to slide_model and service_item getting the data from db
This is kinda a broken commit. There isn't any order to the adding of
the slide anymore. So it'll need to find a way of keeping track of
where all the current slides are and then insert the new ones in the
correct order while moving the others around as well.
2024-10-02 14:48:16 -05:00
Chris Cochrun
8c7f2d794f starting to change slide_model to have the logic of changing slides
In order to make slide_object dumber and and not need to keep track of
slide info, we are moving the business logic to slide_model so that
the model can keep track of whether presentations are ready to switch
and don't need to run reveal_next or something.
2024-09-26 14:11:30 -05:00
Chris Cochrun
4c403d9f3c embedding the slide_model in the slide_object 2024-09-26 06:39:06 -05:00
Chris Cochrun
c3a61d51cf removing all of the legacy cpp code 2024-09-24 14:23:19 -05:00
Chris Cochrun
114ffb5bdc Fixing a lot of little deals 2024-09-15 06:11:34 -05:00
Chris Cochrun
8ae9911ee3 removing mpv pieces 2024-09-15 06:09:23 -05:00
Chris Cochrun
433ccf345b fixing more of the VideoEditor 2024-09-15 06:09:03 -05:00
Chris Cochrun
b61e05a423 trying to fix models 2024-09-15 06:08:26 -05:00
Chris Cochrun
a1f18f803d things are building and running now
Now for all the issues of things not working
2024-09-15 06:08:24 -05:00
Chris Cochrun
7b82202c51 starting to build 2024-09-15 06:06:13 -05:00
Chris Cochrun
61aef5c48f Moving to QT6: Read more
QT6 Apparently means a lot of changes, these are the changes I've
found to make at least CPP build. The problem is we just got rid of a
lot of CPP and I don't know if the application will work. On the other
hand, the QML isn't finished yet either, but this is the start of
updating the application for QT6 and using MpvQt which is being built
and maintained by KDE. This will be better as they'll keep the library
updated for future QT updates so long as I still track with Kirigami.
2024-09-15 06:05:56 -05:00
Chris Cochrun
da1c4f84b5 fixing name clobbering in qobjects.
Apparently qobjects need unique names or else they will name clobber.
2024-06-26 09:12:11 -05:00
Chris Cochrun
3f2f57f8e7 remove all references to service_thing 2024-06-24 16:49:17 -05:00
Chris Cochrun
479c22087f updates to how logging works 2024-04-17 06:31:46 -05:00
Chris Cochrun
74f5596946 adding id to the service_item_model of the corresponding model 2024-04-15 10:54:28 -05:00
Chris Cochrun
428386a25b fixing a lot of debug info 2024-03-25 18:35:58 -05:00
Chris Cochrun
744481587f initial port to cxx_qt 6.0 2023-11-27 11:07:55 -06:00
Chris Cochrun
b07e59659d doing dumb things for obs 2023-11-17 17:10:58 -06:00
Chris Cochrun
4b489d4e45 linking obs up to as a stringlist model 2023-11-17 11:02:45 -06:00
Chris Cochrun
036505b8cb refactoring slidehelper in cpp to make it clear it's a helper class 2023-11-17 06:27:03 -06:00
Chris Cochrun
e1cfa5e843 Trying to build the song_editor 2023-10-06 17:00:20 -05:00
Chris Cochrun
e1a6e65295 adding song_editor and trying to embed song_model to it 2023-10-06 08:35:02 -05:00
Chris Cochrun
7681f1c811 adding utils and setting up tracing 2023-09-27 09:45:05 -05:00
Chris Cochrun
cd8801af51 working loading and saving of files with dialog from rust
This means we are loading and saving files with the rfd crate which
utilizes platform appropriate dialogs for saving and loading files. We
can start to use this in all other file dialog locations to make sure
we are getting the right files.

It uses xdg-desktop-portals on linux so we will always use the
appropriate file dialog for each desktop environment.
2023-09-21 17:37:14 -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
bfa3f7280c changing name everywhere to lumina 2023-08-25 12:07:28 -05:00
Chris Cochrun
d61da6f09f some initial setup to get the service_item_model.rs working 2023-08-12 14:07:13 -05:00
Chris Cochrun
f404759862 making service_item_model build 2023-06-17 06:36:16 -05:00
Chris Cochrun
b74e85bfe6 🎉 FINALLY! Extra window in any wayland compositor
This required switching from a QML Window to a QQuickView in C++. I
want to try to eventually subclass that in Rust, but for now it works.

I'll have to still tinker with this to find out how to specifically
set the screen in certain environments, but for now the user will need
to move the window on their own.
2023-05-19 13:01:15 -05:00
Chris Cochrun
044e58563c removing presWindow showing so I can finally utilize it 2023-05-19 09:17:56 -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
b05af23ffa feat: reveal.js presentations are viewable in editor
I have gotten reveal.js presentations to be viewable. I'll still need
to work with how to present them, and fix the presenter piece as well,
but for now, it works.
2023-04-29 07:13:04 -05:00
Chris Cochrun
dd1ea7454e switching to QGuiApplication
This will help us out by making it less connected to QWidgets and
better for pure QML applications.
2023-04-28 17:05:56 -05:00
Chris Cochrun
fc3042d4d5 tweaks for figuring out windows 2023-04-28 12:12:14 -05:00
Chris Cochrun
df4252e83f add info about windows 2023-04-28 12:11:37 -05:00
Chris Cochrun
a7e3cfa39f qml webengine is running
I'll need to figure out the best way to show the html slideshow later
but it's running and can accept html.
2023-04-28 05:46:02 -05:00
Chris Cochrun
666c22ae66 initial bits to make a ytdl addition 2023-04-21 13:42:18 -05:00
Chris Cochrun
ab168af16f remove unnecessary include 2023-04-15 14:37:43 -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
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
b7e426edb8 tweaks to build env 2023-04-06 06:32:44 -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
37a2dbd986 diesel instead of sea-orm
sea-orm was getting to be bigger hassle I think and harder to compile,
diesel seems simple and effective enough.
2023-04-04 14:29:14 -05:00
Chris Cochrun
0efccdfa54 fix insert_item_from_service 2023-04-01 06:51:07 -05:00
Chris Cochrun
df7e85957c use rust slide_model activate 2023-03-31 09:55:00 -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
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
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