Commit graph

117 commits

Author SHA1 Message Date
Andreas Kling
deabc7e13b HackStudio: Bring up the console when doing a "build" or "run"
We most likely want to see what comes out on the console when starting
one of these actions.
2019-10-24 22:28:36 +02:00
Andreas Kling
84a2208b5c HackStudio: Add some toolbar icons to liven up the UI a bit :^) 2019-10-24 22:25:26 +02:00
Andreas Kling
2260190f39 HackStudio: Move "find in files" widget to its own file/class
Instead of clogging up main.cpp with find-in-files functionality,
put it in a FindInFilesWidget class in a separate file.
2019-10-23 21:13:08 +02:00
Andreas Kling
2d460b504f HackStudio: Make the "find in files" widget more keyboard-accessible
Have Ctrl+Shift+F open the find-in-files widget and focus the text box
so you can start entering text right away.

Also make it do a search when you press the return key.
2019-10-23 21:02:02 +02:00
Andreas Kling
d3e81d2ba8 HackStudio: Start adding a "find in files" function
Projects now contain a set of TextDocument objects. Each TextDocument
represents a member file in the project. TextDocuments may not have
their file contents loaded at all times, but they will be loaded on
demand when calling TextDocument::contents().

"Find in files" works by iterating over the documents in the project
and calling find(needle) on each one. The return value from find() is
a vector of line numbers where the needle was found.

This is obviously going to need a bunch more work. :^)
2019-10-23 20:54:41 +02:00
Andreas Kling
5f5f837ec5 HackStudio: Put the console terminal wrapper in a GTabWidget
This will make it straightforward to add more things at this level.
2019-10-23 19:52:34 +02:00
Andreas Kling
29669ba661 HackStudio: Add a simple "Save" action
Pressing Ctrl+S now saves the currently open file to disk.
2019-10-22 22:25:05 +02:00
Andreas Kling
708543c3d6 HackStudio: Add a simple "Run" action
Ctrl+R will now execute "make run" in the project directory. :^)
2019-10-22 22:18:46 +02:00
Andreas Kling
654ffdef91 HackStudio: Add a simple "Build" action
Pressing Ctrl+B now invokes "make" in the project directory and routes
the output from the make command to the little terminal widget.
2019-10-22 22:15:43 +02:00
Andreas Kling
a6b153abf1 HackStudio: Show the currently open file in bold (in the project list)
Also import a little default C++ project called "little" :^)
2019-10-22 21:38:58 +02:00
Andreas Kling
2638a94094 HackStudio: Add a simple app icon and some initial menus 2019-10-21 22:13:20 +02:00
Andreas Kling
3fa16dfae2 HackStudio: "Go to line" was mixed up about 0/1-based line numbers 2019-10-21 20:33:47 +02:00
Andreas Kling
d1916700ea HackStudio: Restrict the "Go to line" shortcut to the text editor
We don't want Ctrl+L presses to be snatched while we're in the embedded
terminal, for example. :^)
2019-10-21 20:31:32 +02:00
Andreas Kling
43ccb28852 HackStudio: Embed a Terminal widget below the text editor
This will be very useful for running (and interacting with) programs
after we build them. :^)
2019-10-21 20:17:32 +02:00
Andreas Kling
c1f72e0bbf HackStudio: Show line numbers in the text editor by default 2019-10-21 19:03:09 +02:00
Andreas Kling
7eed2e968c HackStudio: Show cursor line and column in the statusbar 2019-10-21 18:50:24 +02:00
Andreas Kling
0311e8d50a HackStudio: Start working on an IDE for SerenityOS
This will be fun. :^)
2019-10-21 18:46:55 +02:00