Integrated JournalController

Now support undo and redo functions