Tuesday, May 24, 2011

Undergrad Thesis Defended!

The defense speech went pretty well; on the other hand, all the preparation had been much more exhausting.


To put it short: I've designed and implemented an IDE with (almost) no need in tool views. It uses a so-called a single-window UI. This has been achieved via introducing several generic GUI elements. I implemented them in KDevelop 4. See below.

  • Breadcrumbs -- to navigate in different trees and show currently selected element. Implemented navigation for file system, project tree, and frame stack.

Breadcrumbs -- project navigation + file selection popup.

Breadcrumbs -- file navigation.

Breadcrumbs -- framestack navigation.

  • Inline widgets inside the text editor -- to show information and controls for some relevant text lines.

Inline widgets -- breakpoint widget.

Inline widgets -- build error widget.


Inline widgets -- variables widget.
  • Enhanced status bar -- to show status elements and notify of various events.

Enhanced status bar -- the part with status elements (on the left of the bar).

Enhanced status bar -- the part with events (on the right of the bar).

 To sum up, I post two KDevelop's GUIs: before my modifications and after them.

KDevelop before (has tool views).

KDevelop -- after (doesn't have tool views).
Yes, I know there's a lot of empty space in breadcrumbs -- it's a flaw in the implementation.

If you want to look at the thesis text (in Russian) or the paper (in English), visit my research page.

If you want to look at the implementation, here are my diffs: kdevplatform, kdevelop, kate.

Presentations: defense (Russian), conference, report.

No comments:

Post a Comment