From 67ded5aace67e4e54e32733b4a6ce85aaa8572e4 Mon Sep 17 00:00:00 2001 From: Anthony Rabine Date: Fri, 28 Apr 2023 17:28:24 +0200 Subject: [PATCH] project management load/save/new (WIP) --- README.md | 245 +- docs/index.md | 234 + images/story_editor_preview.png | Bin 0 -> 232202 bytes story-editor/CMakeLists.txt | 7 + .../assets/file-document-plus-outline.png | Bin 0 -> 1324 bytes .../assets/file-document-plus-outline.svg | 39 + story-editor/src/dock_widget_base.cpp | 25 + story-editor/src/dock_widget_base.h | 23 + story-editor/src/log_dock.cpp | 2 +- story-editor/src/log_dock.h | 4 +- story-editor/src/main_window.cpp | 101 +- story-editor/src/main_window.h | 7 +- story-editor/src/media_node_model.cpp | 8 +- story-editor/src/media_node_model.h | 2 +- story-editor/src/memory_view_dock.cpp | 2 +- story-editor/src/memory_view_dock.h | 4 +- story-editor/src/miniz.c | 7736 +++++++++++++++++ story-editor/src/miniz.h | 1350 +++ story-editor/src/new-project.ui | 193 + story-editor/src/nodeeditor_dock.cpp | 2 +- story-editor/src/nodeeditor_dock.h | 5 +- story-editor/src/ost-editor.qrc | 1 + story-editor/src/osthmi_dock.cpp | 2 +- story-editor/src/osthmi_dock.h | 4 +- story-editor/src/resource_model.cpp | 45 + story-editor/src/resource_model.h | 69 +- story-editor/src/resources_dock.cpp | 47 +- story-editor/src/resources_dock.h | 17 +- story-editor/src/script_editor_dock.cpp | 2 +- story-editor/src/script_editor_dock.h | 4 +- story-editor/src/story_graph_model.cpp | 7 +- story-editor/src/story_project.cpp | 20 +- story-editor/src/story_project.h | 20 +- story-editor/src/toolbar.cpp | 74 +- story-editor/src/toolbar.h | 6 + story-editor/src/vm_dock.cpp | 2 +- story-editor/src/vm_dock.h | 4 +- story-editor/src/zip.cpp | 273 + story-editor/src/zip.h | 52 + 39 files changed, 10239 insertions(+), 399 deletions(-) create mode 100644 images/story_editor_preview.png create mode 100644 story-editor/assets/file-document-plus-outline.png create mode 100644 story-editor/assets/file-document-plus-outline.svg create mode 100644 story-editor/src/dock_widget_base.cpp create mode 100644 story-editor/src/dock_widget_base.h create mode 100644 story-editor/src/miniz.c create mode 100644 story-editor/src/miniz.h create mode 100644 story-editor/src/new-project.ui create mode 100644 story-editor/src/zip.cpp create mode 100644 story-editor/src/zip.h diff --git a/README.md b/README.md index 3648fea..46f683d 100644 --- a/README.md +++ b/README.md @@ -1,248 +1,47 @@ # Open Story Teller (OST) -Open Story Teller is an Open Source project to provide guidelines and software to build your own story teller box. +Open Story Teller is an Open Source project to provide guidelines and software to build your own story teller box (electronics, mechanical). -The main goal is to *not* make electronics boards but instead buy or reuse existing ones. This will allow you to easily repair your device with spare parts and avoid +The main goal is to *not* make electronics boards but instead buy or reuse existing ones. This will allow you to easily repair your device with spare parts. We propose a set of parts and firmware that is working well togather but your are free to custom everything to fit your needs. -*DO NOT CREATE YOUR OWN BOARD, JUST USE EXISTING ONES!* - This project can be used as a base platform for any device that is composed by: - A display (TFT...) - An Audio output - A SD card or memory - Some Buttons / rotary encoder / potentiometer -# Firmware/software +# Links -The firmware is highly configurable and highly portable. To achieve that, it is split in multiple parts: -- The core source file, which is common to every target -- the ports, dedicated to an embedded MCU and board -- The tests, to easily test part of source on a standard PC -- A desktop/mobile implementation +- http://openstoryteller.org/: main documentation and project news +- http://github.com/arabine/open-story-teller: source code, tickets, help -The core is written in pure C, targets implementations may add other languages and libraries (QML/C++/python ...). +# Generic player software -## GCC build system +The base software is highly portable and includes a micro virtual machine. This allow potential complex stories with loops, branches, user choices, randomization... -The project uses CMake as build system. For the embedded targets, the main CMakeLists.txt includes a generic cross compiler file that should be good for many configurations as soon as your compiler is GCC. +This project propose an minimal cross-platform GUI player application that can be used as a base project. -## Invocation +# StoryTeller Editor -1. Create a build directory (mkdir build) -2. Invoke cmake with some options, passed as definitions for CMake (-D