Commit Graph

100 Commits (fa128ca284fcf8c26be83d9507ffc8b826fa51a4)

Author SHA1 Message Date
Nefo Fortressia 839b3d5bb0 feat: implement scrollbar for editor 2021-10-30 11:33:02 +07:00
Nefo Fortressia 48f63a88ea style: format codebase with cargo fmt 2021-10-29 09:44:36 +07:00
Nefo Fortressia 5e1de2ec96 refactor: remove unused borrows in menubar.rs 2021-10-28 19:19:34 +07:00
Nefo Fortressia 6ad708cfc1 feat: use EchidnaSidebar in window ui file 2021-10-28 17:20:16 +07:00
Nefo Fortressia 6144feb857 refactor: move editor code to a separate EchidnaCoreEditor widget
This allows for a more component-based codebase, like those in web development.

Also added barebone minimap and refactored the file loading.

Should have commited them in a separate commit, but I'm just used to overusing git add -p.
2021-10-28 17:17:27 +07:00
Nefo Fortressia ffdc612e7e feat: implement barebone features for Sidebar widget 2021-10-28 17:11:14 +07:00
Nefo Fortressia 0a13750970 chore: move to EchidnaHQ's own sourceview bindings
https://gitlab.gnome.org/World/Rust/sourceview5-rs has quite some
features we need missing.

We will contribute some code from our
in-house bindings to them, but for now, we have to switch to our own
bindings.
2021-10-28 08:44:56 +07:00
Nefo Fortressia fc27583714 fix: open_file listener passing window not as a ref
FileImplementedEditor::action_open_file() requires &self as an argument.
2021-10-26 16:52:49 +07:00
Nefo Fortressia 6c6afa740f style: format source files with Rustfmt tooling 2021-10-26 16:46:41 +07:00
Nefo Fortressia 8c05235e13 refactor: simplify FileImplementedEditor::action_open_file()
No need the 'window' parameter as we can just use &self
2021-10-26 16:44:40 +07:00
Nefo Fortressia 4d23860806 chore(.ui): remove ui/window.ui
The file had been replaced by EchidnaWindow's ui file.
2021-10-26 12:06:03 +07:00
Nefo Fortressia 211f2330b5 style(.ui): add missing license header to menu.ui 2021-10-26 12:04:07 +07:00
Nefo Fortressia 52d5b5e486 style: add missing license headers
The MPL is a file-based license, rather than a codebase-based license.

Each files need to be marked as MPL.

If we don't do mark them, they may cause confusion.
2021-10-24 16:43:35 +07:00
Nefo Fortressia 385f2dda32 refactor: move all traits to EchidnaWindow struct
Before, all the traits are implemented for EchidnaApplication.

This is added to better support using the app with many windows open.

EchidnaApplication may be obsolete now, but I'm not removing it for now.
2021-10-24 14:20:53 +07:00
Nefo Fortressia b68e93c3d4 refactor: change repo url in about dialog to the GitHub one 2021-10-22 20:04:40 +07:00
Nefo Fortressia 48c87b9214 refactor: remove unecessarily getting the notebook in imp.rs 2021-10-22 19:21:31 +07:00
Nefo Fortressia 842044ddde chore(ui): add win.close to menu.ui 2021-10-22 19:20:38 +07:00
Nefo Fortressia 1e1da03c76 feat: implement app.report-issue and app.search-feature-requests actions 2021-10-22 19:19:23 +07:00
Nefo Fortressia d38ad0627c feat: implement win.close action 2021-10-22 13:16:13 +07:00
Nefo Fortressia 67a1f0057e chore(clippy): set "clippy::style" rule to deny 2021-10-22 10:37:12 +07:00
Nefo Fortressia 78fd553104 feat: implement opening a file to a new editor 2021-10-22 10:36:47 +07:00
Nefo Fortressia 5a610f7be5 refactor: put all workspace-related functions to WorkspaceImplementedEditor trait 2021-10-22 10:36:07 +07:00
Nefo Fortressia e4e226fe81 refactor: put all our own imp::EchidnaEditor methods into EchidnaEditorExt trait 2021-10-22 10:35:14 +07:00
Nefo Fortressia d9c91f3431 refactor: replace menubar code from imp.rs with MenubarImplementedEditor::setup_menubar() 2021-10-22 10:30:55 +07:00
Nefo Fortressia 3c7a4b3bbc chore(ui): add more menus to menu.ui 2021-10-22 10:20:04 +07:00
Nefo Fortressia c62d8ae586 deps: add sourceview5 to deps 2021-10-22 10:13:32 +07:00
Nefo Fortressia c3e76bccb2 feat: import menubar from app/mod.rs 2021-10-22 10:13:14 +07:00
Nefo Fortressia d4670be8b4 chore: add a GtkNotebook to window.ui 2021-10-22 10:12:41 +07:00
Nefo Fortressia 6adbdd38f2 refactor: move menubar code to menubar.rs 2021-10-22 09:44:49 +07:00
Nefo Fortressia 9b56dd086b chore: remove metadata.rs 2021-10-22 09:24:00 +07:00
Nefo Fortressia 6dcbc7117d feat: set default title, width, and height for window 2021-10-20 11:53:45 +07:00
Nefo Fortressia 3408ad2830 refactor: rewrite in Rust 2021-10-18 15:02:41 +07:00
Nefo Fortressia 737027151a feat: remove some Qt files 2021-10-15 13:40:06 +07:00
Nefo Fortressia c88f019285 feat: add untracked Qt files
To be removed immediately as we are moving to GTK.
2021-10-15 13:39:13 +07:00
Nefo Fortressia 4e87067cc4 feat: remove C++/Qt code
We are migrating to Rust rn.
2021-10-15 13:38:29 +07:00
Nefo Fortressia 628bfd13ac feat: add some Qt C++ codes
Just archived code to be removed immediately.
2021-10-15 13:36:26 +07:00
Nefo Fortressia 1586a798d9 ref(echidna.ui): Rename tabWidget to activityTab 2021-09-13 20:01:46 +07:00
Nefo Fortressia aa9ab4216b
chore: Remove uneeded comments
As VS Code does not properly display long error messages. I had to copy and paste the error messages to somewhere. And I forgot to not commit them.

Bruh.
2021-09-13 14:44:12 +07:00
Nefo Fortressia cec1dc7388
Merge pull request #1 from EchidnaHQ/feat/ui
Implement UI file
2021-09-13 14:40:59 +07:00
Nefo Fortressia bf51d4dd9f feat: Add the needed boilerplate code needed to run the program
This moves ui/echidna.ui and src/resources.qrs  to src/echidna.ui and src/resources.qrs respectively.
I couldn't find any way to have these files on a separate ui folder,
as CMake's AUTOUIC feature will only look for .ui files in the importing code's directory.

I have compiled and ran this and the UI feels great. I mean I have the Dracula theme configured on my machine, not sure what will it looked like without it. Next up we will work on our Monaco replacement. Will discuss on whether making it a Qt Designer plugin or not.
2021-09-13 14:32:06 +07:00
Nefo Fortressia 9db81886ef chore: Add gitignore for CMake files 2021-09-13 14:24:44 +07:00
Nefo Fortressia 863f2713cc chore: Change compiler to GCC
As we use GCC obviously.
2021-09-13 14:22:39 +07:00
Nefo Fortressia e21c45b444 chore: set "cmake.configureOnOpen" to true 2021-09-13 14:22:07 +07:00
Nefo Fortressia d6462907f1 fix(.ui): Rename MainWindow class to EchidnaEditor and fix the sidebar tab that isn't a proper tab.
The code in my local machine (to be commited later) refers to the main window UI class as EchidnaEditor, although the ui file still uses MainWindow, Qt Designer's default class name.
I was confused so much by the error message, until I realized the issue was this.

Anyways, this includes the "fix the sidebar tab that isn't a proper tab". Should have commited this in a separate commit, but Git won't let me.
Should have commited this earlier. Same thing with e0ba34d.
2021-09-12 15:14:53 +07:00
Nefo Fortressia e0ba34d360 ref(.ui): Rename ui/form.ui to ui/echidna.ui
Ugh, should have commited this before making the next commit.
Why I still do this sort of stuff. Echidna is supposed to be more maturely developed than BLThunderstorm.
God help me.

Anyways, the diff for the new file ui/echidna.ui is not included here because of that.
2021-09-12 15:07:39 +07:00
Nefo Fortressia 47c0b4b151 feat(form.ui): Add 'New', 'Open' and 'Save' actions for File action 2021-09-11 17:03:34 +07:00
Nefo Fortressia bf0946c8e4 feat: Add widgets for Language Feature Tab. 2021-09-11 16:10:54 +07:00
Nefo Fortressia e747e06219 Merge branch 'main' of https://github.com/OpCodebreaker/Codebreaker 2021-09-11 14:39:16 +07:00
Nefo Fortressia 97e18b8479 feat: Create starting point UI file 2021-09-11 14:34:12 +07:00
Nefo Fortressia 073444f5b1
Initial commit 2021-08-26 21:31:53 +07:00