Attracted by virtual constructs

July 18, 2009

Kasten: WIP framework for composing programs

Filed under: Kasten,KDE,Okteta — by frinring @ 12:04 am

Since a few days kdeutils (from trunk) also installs some libraries, including public headers:

  • Okteta libraries
  • Kasten libraries

The Okteta libraries oktetacore and oktetagui provide some model and view classes for hex views of bytearrays. If you have some special data provider you could also subclass your own Okteta::AbstractByteArrayModel. So using the libs directly is now an option, if the KHexEdit interfaces from kdelibs don’t do it for you.

The Kasten libraries are far more interesting, at least to me. Kasten (former project title was Kakao), that is a project of mine where I try to develop a framework for composing programs from modules and interfaces by the model-view-controller pattern, with the pattern recursively applied to the view and the controller. Think KPart 2.0. So far the development was driven by the needs I had with Okteta (that program serving as the testing ground, now you know my motivation for Okteta. Byte arrays are just the most simple data structure.). The Kasten framework is still far from what I have in mind, but things at least are moving :) I try to express my ideas directly in code, so the ideas meet reality as soon as possible. Might be some more years before I am done, oh well.

Both libraries are still far from elaborated, especially Kasten, given that there has been only one usecase, that is the program Okteta. But you are invited to see if you already can make use of them. Just be prepared for changes. Which could also be done for your needs :)

The reason I turned to install these libraries now is that I want to reuse them in another project, working title Binspekt: It is about viewing and editing of binary files, that is executables, libraries, object files etc. I always forget about the parameters of objdump, objcopy, nm & Co., so I thought a GUI variant might be nice, and here we go (of course using the very same bfd library from the GNU binutils).

Obligatory screenshot of the current state, which is pre-alpha:
First screenshot of Binspekt, version 0.1.0 pre-alpha

Find the code at playground/devtools/binspekt in the KDE repository, imported there a few hours ago.

About these ads

5 Comments »

  1. binspekt looks pretty nice so far. I’ll make a note to watch it progress (since I don’t plan on following KDE trunk for the time being)

    Comment by Harley Laue — July 20, 2009 @ 5:42 pm |Reply

  2. [...] after that have taken on a long waiting task and removed some code duplication by porting it to the Kasten classes, now that these are available in shared libs. Which means, with KDE 4.4 you should have the same [...]

    Pingback by Binspekt KPart for reuse in KDevelop « Attracted by virtual constructs — July 29, 2009 @ 8:33 pm |Reply

  3. [...] now plugged into Qt Designer Filed under: KDE, Okteta — by frinring @ 9:05 pm As blogged about before, one of the things that will be new in the next release of KDE, 4.4, is the publishing of the [...]

    Pingback by Okteta widgets now plugged into Qt Designer « Attracted by virtual constructs — September 13, 2009 @ 9:05 pm |Reply

  4. [...] from this release: Other than written before here and here the headers of the Okteta libs and the Designer plugin are not yet installed in this [...]

    Pingback by All new Okteta features for KDE SC 4.4 in a picture « Attracted by virtual constructs — January 11, 2010 @ 12:04 am |Reply

  5. [...] you are interested to make use of these libs in your own code, see for Kasten and OktetaKasten e.g. this blog entry (hm, Binspekt code needs updating to current API, will not compile) and the code of the plugin for [...]

    Pingback by All new Okteta features for KDE Apps 4.7 in a picture « Attracted by virtual constructs — July 31, 2011 @ 1:20 pm |Reply


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Theme: Toni. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: