Commit Graph

89 Commits

Author SHA1 Message Date
FantasyPvP 69591e6bb2 made wish.com paper.io lol 2024-11-23 11:03:43 +00:00
FantasyPvP 1588b4fbf3 implemented a custom text editor (but still no fs to use it with 😭) 2024-11-14 22:43:49 +00:00
FantasyPvP f40e0585df removed submodule 2024-03-25 17:48:00 +00:00
FantasyPvP 1ba4273972 added submodule for custom python interpreter 2024-03-25 17:36:34 +00:00
FantasyPvP 15a8a6ac5d - added support for a single variable to the calculator
- added support for pre-compiling calculator expressions and substituting in values later
2024-03-23 01:24:52 +00:00
FantasyPvP c4067fabc8 - added a basic pong game
- added a better timer system for event updates
2024-03-22 23:52:45 +00:00
FantasyPvP d5d9e031d5 - added a new API for switching between terminal and application mode
- removed unneeded imports to reduce the dumb amount of warnings from the compiler
- added a bounds check in frame.rs to avoid a panic when a frame tries to render a character out of bounds, instead returning an error
2024-03-22 00:12:15 +00:00
FantasyPvP 5c6ec299ee - fully implemented dialogs
- added a scroll feature to grapher.rs
- fixed the cosine implementation as it was incorrect before.
2024-03-21 21:51:00 +00:00
FantasyPvP 6505d219de - Created Dialog widget
- standard information dialog works
TODO:
  implement more complex dialogs where multiple options can be selected
2024-03-21 00:12:53 +00:00
FantasyPvP e80df5100f started working on dialogs 2024-03-20 18:03:15 +00:00
FantasyPvP b0da71942a asteroids game rewrite 2023-12-04 10:42:17 +00:00
FantasyPvP f400a1cf22 Update Dockerfile 2023-12-01 21:38:04 +00:00
FantasyPvP 80bf5b968e - unit tests now work properly
- hopefully github actions workflow should run tests now?
2023-12-01 16:05:14 +00:00
FantasyPvP 568711e27d Update main.rs 2023-11-30 19:54:03 +00:00
FantasyPvP fe52f8ce17 Update rust.yml 2023-11-30 19:50:50 +00:00
FantasyPvP 98481f07bd Merge branch 'main' of github.com:FantasyPvP/CrystalOS-Restructured 2023-11-30 19:47:28 +00:00
FantasyPvP f022d85b8a setup github workflow file (first test) 2023-11-30 19:47:17 +00:00
FantasyPvP c985979aef Merge branch 'main' of https://github.com/FantasyPvP/CrystalOS 2023-11-30 17:30:36 +00:00
FantasyPvP 8988d98596 .
.
2023-11-30 17:30:28 +00:00
FantasyPvP 2d6f187433 Update workspace.json 2023-11-30 00:29:33 +00:00
FantasyPvP 6b7fac81f8 Merge branch 'main' of https://github.com/FantasyPvP/CrystalOS 2023-11-29 23:45:43 +00:00
FantasyPvP 7ae2308a83 several fixes and changes 2023-11-29 23:45:40 +00:00
FantasyPvP 68cb9d8a8b Merge branch 'main' of github.com:FantasyPvP/CrystalOS-Restructured 2023-11-29 23:42:35 +00:00
FantasyPvP ba21816f75 Create Dockerfile 2023-11-29 23:42:23 +00:00
FantasyPvP 47b81f1eed Update rust.yml 2023-11-29 00:24:43 +00:00
FantasyPvP a3c9481e5d Update rust.yml 2023-11-29 00:20:28 +00:00
FantasyPvP c70d3eb455 Update rust.yml 2023-11-29 00:20:04 +00:00
FantasyPvP 4bc141dab1 Update rust.yml 2023-11-29 00:16:52 +00:00
FantasyPvP d89a30d390 <@!837722637291487274> yo i made some progress 2023-11-28 00:17:11 +00:00
FantasyPvP c194109487 holy (crab) that was a lot of work
it works.

the input function is working now, passing it a reference to your root gui widget and a reference to it's own widget and a function to check if it should exit works now

gg
2023-11-28 00:12:59 +00:00
FantasyPvP f48eb133b3 we frikin did it bois
gui library works frrr

implementation:
- containers now store a Widget type.

- every widget has a unique id

- there is a data store that maps the id to the internally stored gui component.

- the compoenents can be fetched from the datastore using their Widget type
- the datastore uses a hashmap so fetching shouldnt have any real performance penalty.

- widgets can be fetched, inserted, updated and rendered from the datastore

- the render method can be called directly from the Widget type without having to know the underlying type that it references
2023-11-27 19:02:32 +00:00
FantasyPvP 417833fc41 fixed stuff
no progress 💀
2023-11-27 00:21:34 +00:00
FantasyPvP b16ce4a6f2 broken cbfa to fix for a while 2023-11-26 13:34:53 +00:00
FantasyPvP b28b53418a edited grapher implementation
- fixed grapher implementation with new gui
- fixed a bug in CgLineEdit where pressing backspace on an empty input would cause a crash
2023-11-24 21:53:41 +00:00
FantasyPvP 24d231585d Update grapher.rs 2023-11-24 00:45:01 +00:00
FantasyPvP 140ac0ab32 updates
updated grapher to use new widtgets system (not working yet but close)

made a basic app using the widgets system

implemented CgTextEdit for CgLineEdit (now fully working, but there may be bugs so i'll address them tomorrow)
2023-11-24 00:40:27 +00:00
FantasyPvP 467a42a5fa continued to work on new UI library
- implemented CgStatusBar widget which is a specific version of the CgIndicatorBar widget with predefined fields

- std::io::Screen is now an enum that makes switching between display modes more intuitive

- created a basic CgLineEdit implementation that allows for a user to type in a character and have it re-render that widget

- other more minor changes like fixes for existing apps to work with new features
2023-11-23 20:29:51 +00:00
FantasyPvP 461c9d9c6a - got text boxes fully working
- this includes text wrapping not cutting words in half (can be disabled using a method on the text box)
- refactored frame.rs, cg_core.rs and cg_widgets.rs to avoid code reuse and duplication
- created a simplified unified interface for rendering frames to the screen using the Frame struct provided by frame.rs instead of Element, FrameGen, etc.
- moved all widgets from cg_core.rs to cg_widgets.rs
- the label widget now works
- also added CgIndicatorBar and CgIndicatorWidget widgets to eventually make a working status bar
- refactored all applications in the system to use the new api to render to the screen
2023-11-23 00:29:04 +00:00
FantasyPvP 0ac21cd0b1 changed some stuff 2023-11-22 21:21:19 +00:00
FantasyPvP 84aaa90e66 new gui module text box implementation
starting to work on the new UI library, got labels and text boxes working as well as containers for widgets.

planning a big refactor
2023-11-22 21:07:00 +00:00
FantasyPvP 1d08240981 gui stuff
gui stuff
2023-11-22 00:36:23 +00:00
FantasyPvP 7f81232556 Merge branch 'main' of github.com:FantasyPvP/CrystalOS-Restructured 2023-11-21 00:23:48 +00:00
FantasyPvP 8005c63a42 e
e
2023-11-21 00:23:46 +00:00
FantasyPvP dc7f17c9a8 Update README.md 2023-11-13 00:21:40 +00:00
FantasyPvP b9b6e7cc08 webhook test 2023-11-10 00:22:52 +00:00
FantasyPvP 20647dde75 e 2023-11-10 00:20:57 +00:00
FantasyPvP 8f0ddd7d4f e 2023-11-10 00:19:13 +00:00
FantasyPvP 3920c8393a Merge branch 'main' of github.com:FantasyPvP/CrystalOS-Restructured 2023-11-10 00:16:53 +00:00
FantasyPvP 3510210b99 e 2023-11-10 00:16:33 +00:00
FantasyPvP 528bd30550 Create rust.yml
added rust workflow
2023-11-10 00:12:17 +00:00