I had a little problem around music "queues"
This change is going to be applicable during alpha and early beta stages of development.
You've probably seen #include "source-file.c"
... Also, backend data is moved to another file from src/main.c
.
There were some misspells of words and wacky sentences in documentation. There are also some #TODO
notices where changes are needed.
Oh, naming conventions are better visually concluded now.
This commit includes multiple changes I can't explain well (i know I am breaking the documentation):
- Moved placeholder
.png
icons from/src/assets/
to/build/assets/
- Added new songs in
/experiments
called "Barbie Girl (Hardstyle version)" and "She's Homeless x Spider-Man India", files:BG-HS.mp3
&ShesHomeless.mp3
, respectively - Shameful attempt to add unit testing
- Removed CLI "logging" in backend functions in file
/src/audio-controls/sound-control.c
- Added button events in GUI
- New "functions"
- A bit more experimenting
- Added frontend-backend link (if that is called a "link")
Creating a header.h
file and doing all preprocessing requirements makes centralized place to do all of that. Plus, there will be no #include
clashes.
Also, app startup execution is faster because of MA_ENABLE_ONLY_SPECIFIC_BACKENDS
and enabling backends for each platform they support.
/src/assets
folder is copied to /build/assets
for Dancler to use custom icons (which will be implemented eventually).
asdf
Before building app with cmake ..
and cmake --build .
didn't work because of improper include_*()
commands. Now, those are fixed and you can freely build with CMake again!
Me experimenting with GTK callbacks. Planned to be implemented into the Dancler.
There were some compiler bugs in some functions. More improvement on the way.
In manual, step-by-step build process is now available on major GNU/Linux distributions. It includes how to build Dancler with CMake.
In documentation, software architecture is better defined.
New functions are created:
set_volume_controls_in_percents()
- Change playback volumeload_audio_to_queue()
- Push a new audio into playback queueunload_audio_from_queue()
- Pop an already existing audio from playback queuetoggle_playback()
- Play or pause current playbacktoggle_loop()
- Enable or disable playback loop
There are no changes that affect the product. It is about to be in development after completing audio playback controls.
There were errors about GTK linking, missing required signatures in functions target_link_libraries
, target_include_directories
and target_link_directories
. The signature PRIVATE
has been set to all of those functions.
More GUI elements have been added and old ones have been rearranged. Also, new window layout mockup has been changed. It will be revealed in next update.
New temporary .png
images are created in /src/assets
folder:
no-cover.png
- Album cover placeholder, if there is no coverplay.png
- Play buttonprev.png
- Previous song buttonnext.png
- Next song buttonmute.png
- Mute audio button
There are new guidelines for defining functions, like: "If variables have same data type, write them in the 'compact way', with same or similar level of indentation" and "Initial values should be set at start, except by lenghty functions"
Those files don't affect the project in any way. They are used for learning purposes only.
Checkboxes were not rendered properly. By adding space in each "box" should let Github properly render them.
The main.c
file contained program load a sound into memory and play it. This is removed since this is not the place to handle these stuffs. Instead, main.c
will initialize everything needed for the MP3 player.
New files were created:
sound-control.c
- Audio controlling system (Not sure; may be changed in the future)gui-main-window.c
- Create the user interface and windowgui-playback-controls.c
- Playback control functionalities, like play, stop, volume, next,... (Not sure)gui-playback-information.c
- Playback information, like timing, sound title, authors,... (Not sure)
New lines have been added to include GTK library and its compilation flags. It's still not complete, but it will be acting as a base.
Start