CodeGym /Courses /Java Multithreading /Big task: HTML editor in Java

Big task: HTML editor in Java

Java Multithreading
Level 8, Lesson 15
Available

"Hi, Amigo!"

"Hello, Captain Squirrels, sir!"

"Soldier, we have a secret mission for you. You will develop a tool for creating web pages."

"Cool, web pages. But why do we need our own editor?"

"What do you mean 'why'? Soldier, orders aren't for discussion. They're for execution."

"Yes, sir! Write a tool for creating web pages."

"Don't shout, soldier. Didn't they tell you this is a top secret mission."

"Contact Agent IntelliJ IDEA to begin. He'll bring you up to speed."

"He'll also provide all further instructions."

"May I proceed, sir?"

"Proceed."

16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 1)
HTML Editor (part 1)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 2)
HTML Editor (part 2)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 3)
HTML Editor (part 3)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 4)
HTML Editor (part 4)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 5)
HTML Editor (part 5)
32
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 6)
HTML Editor (part 6)
32
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 7)
HTML Editor (part 7)
32
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 8)
HTML Editor (part 8)
32
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 9)
HTML Editor (part 9)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 10)
HTML Editor (part 10)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 11)
HTML Editor (part 11)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 12)
HTML Editor (part 12)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 13)
HTML Editor (part 13)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 14)
HTML Editor (part 14)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 15)
HTML Editor (part 15)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 16)
HTML Editor (part 16)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 17)
HTML Editor (part 17)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 18)
HTML Editor (part 18)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 19)
HTML Editor (part 19)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 20)
HTML Editor (part 20)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 21)
HTML Editor (part 21)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 22)
HTML Editor (part 22)
16
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 23)
HTML Editor (part 23)
9
Task
Java Multithreading, level 8, lesson 15
Locked
HTML Editor (part 24)
HTML Editor (part 24)
Comments (14)
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION
Evgeniia Shabaeva Level 42, Budapest, Hungary
28 March 2025
So, our HTML editor is ready, but how do we really test it?
Максим Василенко Level 44, Kiev, Ukraine
21 February 2023
why we need to learn swing in 2023???
TomL Level 30, Prague, Czech Republic
25 January 2023
I am sorry, but for me it was really unclear what the model actually is. Ok, it is object of class HTMLDocument referenced by document. But as Model in MVC pattern represents login of the application, the part of the “model”, are also actions (in package of the same name) and listeners logical parts of the model? Or this is just some additional logic? Also, could someone please help me with understanding of relation between objects? Is the relation between controller and view aggregation? (objects can exist independently and can be changed)
Максим Василенко Level 44, Kiev, Ukraine
25 February 2023
I lost the logic at the beginning. This task is very strange. P.s. Did you find a job after this course?
Justin Smith Level 41, Greenfield, USA, United States
16 June 2022
It's a good overview of working with Java's built-in menu system. Most of the things that seem like they will be extremely difficult at the beginning to the project (changing fonts, opening/closing files, parsing HTML code) are actually really simple because Java can do it for you. I'm hoping there's still more to come on working with the other parts of Swing, mainly drawing shapes, displaying images, and animation.
Fadi Alsaidi Level 34, Carrollton, TX, USA
25 December 2021
I really liked this task. It could be my inexperience or short sight, but it seemed to muddy my simple understanding of MVC models. the view & controller are clearly defined in one class, yet the model is spread out through the many actions and listeners classes. I personally would have put all of them in a package called Model. Also, the view implemented some actions, for example undo(), that would have been better implemented in the Model Package if such a thing existed, or in a class of it's on. This way the View would have only user interface/UI/GUI which calls out actions from the many classes in the Model package, and the Controller handles the file source.
Naughtless Level 41, Olympus Mons, Mars
7 October 2021
Maybe a slower introduction to Swing? 😒
TheLordJackMC Level 39, Princeton, idk somewhere
5 August 2021
speedran it using the incomplete tasks and switching as soon as i verified
Andrei Level 41
20 May 2021
Wow, this task was actually fun!
MaGaby2280 Level 41, Guatemala City, Guatemala
3 March 2021
Exhausting task, but surprisingly well explained, every step has a great explanation! It took almost a week to complete, but was a great experience!!!
fzw Level 41, West University Place, United States
21 May 2020
Have no idea what is going on when doing this task. :(