Upcoming Version 0.8
-----------------------

Version 0.7.1
-----------------------
* fixed: show modifed icons in status bar completely

Version 0.7.0
-----------------------
* added charset converter tool
* added support for more encodings: ISO-8859-14, ISO-8859-16, Codepage 874
* speed-up on starting
* properly support strings (various Unicode encodings) in structures tool

Version 0.6.3
-----------------------
* fixed: show undefined chars as undefined

Version 0.6.0
-----------------------
* fixed: Printtool did not use visible encodings settings of view

Version 0.5.3
-----------------------
* calculation of offset column and byte width were wrong:
  QFontSettings::maxWidth() is rounded to int, so multiplying that value also multiplies the error
* fonts in views of document and tools are updated on change of default fixed font in System Settings

Version 0.5.1
-----------------------
* Set Bytes per Group was not disabled if no document was loaded, selecting it gave crash

Version 0.5.0
-----------------------
* moved mouse input handling into own controller classes
* added streamencoder for Base32 (classic, Base32Hex, z-base-32)
* added streamencoder for Base85 (Ascii85 for now)
* added streamencoder for Uuencoding (historical, Base64)
* added streamencoder for Xxencoding
* added streamencoder for S-Record (16,24,32-bit address size)
* added streamencoder for Intel Hex (8,16,32-bit address size)
* added Terminal tool
* added property remoteClipboardMimeType to AbstractModelStreamEncoder (clipboard does not know inheritance)
* export dialog uses remoteMimeType for selecting the file to export to
* file info tool estimates the mimetype also for the unstored/edited data in the working memory (and delayed now)
* added menu entries to set count of bytes per line/group
* added KNewStuff support to the structures tool
* allow pinning structure beginning to a specific offset

Version 0.4.0
-----------------------
* Decoding Table tool crashed the program if the last view marked was removed in the background
* set editors in Decoding Table to readonly if view is readonly
* opening editor for char type in Structure tool didn't use existing value

Version 0.4 RC 1
-----------------------
* if value in POD table is edited, marking of the bytes does no longer disappear
* disabled storing of bookmarks in separate global XBEL file again, needs more thinking
* current coding from the view was not used in the Values stream encoder

Version 0.4 Beta 2
-----------------------
* bytearray lineedit mixed up the used coding

Version 0.4 Beta 1
-----------------------
* added a framework for inline dialogs
* ported goto dialog to inline dialog
* added a select range tool using editing of values in an inline dialog
* created toplevel folder libs to collect the neutral utility libs
* moved libframesprinter to libs
* made AbstractColumnRenderer independent of ColumnsView and reuse in print plugin
* renamed Kakao to Kasten and moved it to libs
* made all three modules of Kasten dynamic libraries and install header to ${}/kasten
* made the Okteta Kastem modules dynamic libraries, too, including public headers in ${}/kasten
* turned OktetaPart to use the Kasten classes
* turned OktetaPart into a KParts::ReadWritePart
* added Close All action
* added MultiViewArea and a split controller
* added a modified flag for the status bar
* turned Section into template<N,S>NumberRange
* added simple data types like Byte, ByteSize, Address, AddressRange, Line, LinePosition, LineRange, LinePositionRange
* renamed Kasten::KByteArrayDisplay to Kasten::ByteArrayView, and some Kasten::KByteArray* classes to Kasten::ByteArray*
* changed some parameter views to use QFormLayout
* added/improved tooltips to/for all tool views
* QtDesigner plugin for ByteArray*View
* renamed ResizeStyle to LayoutStyle in API
* added AbstractToolWidget
* splitted KByteArrayLineEdit into Okteta::ByteArrayComboBox and Okteta::AddressComboBox and added a history function (thus combobox)
* added shared pimpl class to AbstractModel, AbstractModelSynchronizer, AbstractViewArea and their respective subclasses
* added shared pimpl class to Abstract*Job, AbstractModelStreamEncoder, AbstractModelExporter and their respective subclasses
* added insert tool for full byte sequence 0-255
* added templates for binary filters
* added templates for checksum/hashsum algorithm
* added AbstractModelDataGenerator + config + controller
* ported InsertPatternController and InsertSequenceController to AbstractModelDataGenerator and added general InsertController
* added ability to AbstractDocumentFactory to create from QMimeData
* extended CreatorController to also create new document from clipboard and generators
* new: on drop of data to shell that is not a url list create a new byte array from it
* changed  PieceTableByteArrayModel to use QByteArray for the initial data instead of char* and int and home-made memory management
* added Base64 encoder
* middle click on tab now triggers a request to close it
* paste on empty shell or next to tabs is treated like a drop of selection clipboard
* renamed Revert to Disk to Reload (disk might have changed)
* Warn on "Reload from disk" if there are modifications to the working copy
* splitted SyncState into LocalSyncState and RemoteSyncState
* (re-)added Marking to the ByteArrayViews
* Strings tool now marks the strings instead of selecting it
* POD-Table marks the bytes used for the currently selected type
* added separate handler for dialogs with user to Kasten Core

Version 0.3.3
-----------------------
* do not crash if inserting from empty clipboard
* doing a edit in the value column did not trigger the modifiedChanged signal
* on a close of modified documents the behaviour for the success of the save was inverted

Version 0.3.2
-----------------------
* tooltip for bookmark was not calculated by view offset, instead always from 0,0
* removed unneeded prefix lib from the OktetaPart
* show more digits for float and double data types in pod table, as much as decimal precision is given

Version 0.3.1
-----------------------
* possibly outdated offcursor bitmap was painted if view is unfocused

Version 0.3.0
-----------------------
* search/replace did not respect ignorecase
* selecting a format in the popup of the kbytearraylinedit format chooser now moves the cursor to the lineedit
  also done for KGotoOffsetDialog with a similar widget setup
* delayed filebrowser init to speedup appearance of the mainwindow
* search/replace/goto dialogs had a bad focus on start

Version 0.3 RC 1
-----------------------
* bookmark is not painted correctly if cursor moves from it
* minimumsize of status bar no longer limited to sum of size of embedded widgets, using new class Statusbar/StatusBarLayout

Version 0.3 Beta 2
-----------------------
* fixed: ensure unsigned values if calculating modsum
* fixed: make modsum algorithms endianness aware (controlled by parameter endianess)
* fixed: make change of selection also emitted on mouse move with pressed button

Version 0.3 Beta 1
-----------------------
* added a ToggleButton, to be used for the statusbar
* standalone readonly statusbar controller
* ZoomSlider, working directly on a model
* zoom statusbar controller, using the ZoomSlider (unused due to space problems in the status bar)
* turned value and char coding displays in the statusbar into active selections  (hidden due to space problems in the status bar)
* added a filesystem browser tool
* added a documents management tool
* added a controller to switch between view by Alt + ->/<-
* turned the overwrite mode display in the status bar into active display
* added a bookmarks tool
* added name property to bookmarks
* added popup editor for the name of bookmarks on creation
* added option to edit the name of a bookmark to the bookmark tool
* reworked Bookmarkable to simulate a list interface, including a wrapping iterator with an abstract adapter
* turned Goto, Search and Replace utils into kind of tools/controllers (first step, needs more refinement)
* added a checksum calculator tool (using also QCA2, but got just MD5 and SHA-1 from it for now, hm)
* renamed Resize style to Dynamic layout

Version 0.2.1
-----------------------
* removed Print from toolbar, added Save As instead
* fixed: enable filtering only if view is not readonly
* fixed: disable copy for strings if all are deselected (workaround Qt bug)
* fixed: set all listviews in tools to autoresize to content

Version 0.2.0
-----------------------
* mininumSizeHint does not get larger than 100x100

Version 0.2 RC 1
-----------------------
* make info tool update info on change of file type and url
* readonly in status bar does not get updated, because view did not forward document signal
* disable menu entries for "Replace" and "Insert pattern" if view is readonly
* do not hide "Insert pattern" dialog on readonly view, but block Ok button
* no change signal was emitted on first change after disk synch
* block Goto button in Goto dialog if there is no view
* Insert button of byte table tool disabled if view is readonly

Version 0.2 Beta 2
-----------------------
* added some icons to actions previously without
* offset numbers are cleared or added if lines are removed or added
* source code encoder always used data starting at offset 0, not from the selection
* correctly calculate dirty ranges also for multiple undo/redo
* update recently used files also with those from url drop and commandline parameter
* Menus for Export and Copy As could not be added to the toolbar
* only activate tools that are really visible
* for extracted strings show tooltips with full length (for now simply done for all strings)

Version 0.2 Beta 1
-----------------------
* turned into AbstractTool: bytetable, info, stringsextract, filter, poddecoder, versionview
* use KXMLGUIClient, not KXmlGuiWindow, if possible, so we can plug controller to any client
* renamed KAbstractDocument*Synchronizer* to AbstractModel*Synchronizer*
* turned poddecoder into two-column table, added int64 and utf-8
* merged to 871403: connected-models 851103:871380 besides:
    - program.cpp
    - libkakao/core/CMakeLists.txt
    - libkakao/core/io/network
    - libkakao/core/system/kdocumentsyncmanager.*
    - libkakao/controllers/documentsystem/connector
    - libkakao/controllers/CMakeLists.txt
    - libkakao/controllers/io/setremote
    - libkakao/controllers/io/offer
    - libkakao/controllers/document/users
    - oktetakakao/io/CMakeLists.txt
    - oktetakakao/io/network
* added first primitive monitor to the view for the status bar
* refactored KByteaArrayView into AbstractByteArrayView and ByteArrayColumnView
* renamed KDataCursor into ByteArrayTableCursor
* renamed KDataRanges into ByteArrayTableRanges
* made KByteArrayDisplay a complete layer to the used view
* ported all controllers and tools to use KByteArrayDisplay, not the byteArray widget
* added: ByteArrayRowView
* added: ByteArrayJanusView, can toggle between a row and a column based view
* ByteArrayJanusView used by KByteArrayDisplay
* added: controller to toggle between a row and a column view mode
* renamed some classes in okteta/core from K* to *, KWordBufferService to WordByteArrayService
* added: ability to close documents by a close button on tabs
* added: urls dropped next to other tabs will be loaded

Version 0.1.1
-----------------------
* all inserts, like from clipboard or tools, in overwrite mode did not place the cursor at the end of the inserted
* undo of a remove from the end of a piece added garbage to the content
* undo of the remove of the end of a piece inserted this two times
* overwriting in the value column blocked after first digit entered
* fixed: changemetrics of groups were not reverted if needed, so e.g. cursor could move into wrong direction

Version 0.1.0
-----------------------
* version control ignored readonly status
* adaption of filter parameter edit to char coding changes
* operation box in replace dialog last in tab order
* enable extract strings tool and add copy
* encoders now takes abtractmodel, so a view can be given
* encoders now use current view settings
* add export functionality to libkakao (simple modelencoderfilesystemexporter use encoder)
* make printing support only selection
* value column editing mess, with cursor jumping away on partial edit and ungrouped changes
* operations like filter can set an own description of their action (undo/redo)
* entering 00 in value column does not finish the editing
* tripple click should only select the current line
* clicking in a column if the bytearray is empty does not place the cursor where expected
* after tripple click double click uses wrong index
* word select mode crashes if the mouse gets behind the end
* ensure screen refreshed during blocking processes:
  printing, string search, loading, filter, statistic collection, replacing, copy as
* fix doubled strings in clipboard on copy of extracted strings
* have tools remember for which view they were used and are uptodate
* initial state for statistic table
* fix hardcoded colors
* export (and save/saveas?) did not check if file could be and was successfully written
* filter button does not get activated if first selection and then parameter inserted
* limit zoom range to prevent crash on too large font sizes
* workaround QDockViews non-existing control of the initial layout
* removed bookmark possible behind end, fixed initially enabled bookmark actions
* translation of encoder names working now
* fix crash on align at end
* fix replace problem (undo replace puts the last removed piece as first one)
* catch revert signal to get out of valueeditor if in

Version 0.1 Beta 2
-----------------------
* cursor problems

Version 0.1 Beta 1
-----------------------
* add bookmarkable to kpiecetablebytearray
* switch licensing
* see why documents don't get removed on close of view -> close for views, not document
* make drag'n'drop work properly again
* complete change notifications
* reset changebuffer if history gets cut
* make filter work on selection
* user documentation in docbook format
* complete i18n (@-stuff)
* fix paste controller and readonly modes
