General sanity improvements

Registered by Ross Younger

brot2 has a lot of code debt at the moment owing to the way in which its early versions were hacked together. This blueprint is to repay that debt to provide a saner basis for implementing new features.

In particular, main.cpp is rather unstructured and very Cish C++, due in part to using the C GTK+ interface. To repay this debt, I want to re-engineer it to use gtkmm and to be properly C++ish; have a class for the main window, break the about and preferences dialogs into their own classes (in their own files), and push the menu handling out into its own file(s). Even the existing object structure leaves something to be desired, as the render context maintains copies of items from the Plot2.

Blueprint information

Status:
Complete
Approver:
None
Priority:
High
Drafter:
Ross Younger
Direction:
Approved
Assignee:
Ross Younger
Definition:
Approved
Series goal:
Accepted for 0.0-alpha
Implementation:
Implemented
Milestone target:
milestone icon 0.2
Started by
Ross Younger
Completed by
Ross Younger

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.