Gregory Haynes' Weblog


  • Burberry Classic Check Bag
  • Alexander McQueen Patent Black Heart Peep Toe Pumps
  • Jimmy Choo Patent Black Bardia Bag
  • Cartier Black

    Libqinfinity: A portable/lightweight Qt interface to Libinfinity

    Sunday, February 8. 2009

    For those who do not know, Libinfinity is an extensible collaborative editing library and is the core of the collaborative editor Gobby as well as my recent project to create a KDE counterpart: Kobby.  In order to use this library in a C++/Qt environment I created Libinfinitymm and Libqinfinitymm this past summer which wrap Libinfinity's GObjects, and add some code for use with the Qt event system.  While these libraries do what they need to, they are far heavier of a dependancy than they probably should be.  It would be a nightmare to port them to non *nix platforms in the future due to the use of code generation in Libinfinitymm.  As a result, when I began work on updating Libinfinitymm to work with the latest Libinfinity I decided to give writing a pure C++/Qt interface for the Libinfinity a try.  So far, things have turned out much better than expected, and I can say with almost absolute certainty that I will be switching Kobby to make use of this new Library in the next couple of days.


    I have noticed interest recently from several projects pertaining to implementing Libinfinity in a Qt environment, and I highly suggest anyone considering doing this give Libqinfinity a look.  Unlike its predecessor, it has a very simplistic design and does not try to hide access to the Libinfinity interface underneath.  It also depends only on Libinfinity and Qt, and uses CMake for building so you should not lose out on portability by chosing to use it.  Although it is still being developed, all of the core features which are needed for interacting with an infinote server are complete.


    Edit: It's been pointed out to me that the code generation used in Libinfinitymm (and Glibmm) is not a portability issue as I mentioned.


     



    Entry posted by Gregory Haynes Filed under All, Code, KDE, Kobby, Libinfinitymm, Libqinfinity, Qt.
    Comments (3) Trackbacks (0)
    You can leave a response, or trackback from your own blog.

    Trackbacks


    Trackback specific URI for this entry
      No Trackbacks

    Comments


      #1 Murray Cumming on 02/09/09 at 08:52 PM [Reply]
      Nothing about the gmmproc code generation makes porting difficult. The generated code should be shipped in tarballs - so you don't do code generation on the other platforms.
      #1.1 Gregory Haynes on 02/09/09 at 10:20 PM [Reply]
      Thanks for pointing that out, and sorry for the wrong information. The entry has been updated to reflect this.
      #2 Armin Burgmeier on 02/11/09 at 02:07 PM [Reply]
      Just had a quick lock at the code. It seems that you are leaking the string returned in IpAddress::to_string(). The result of inf_ip_address_to_string() needs to be freed:

      http://infinote.0x539.de/libinfinity/API/libinfinity/libinfinity-InfIpAddress.html#inf-ip-address-to-string

    Add Comment

    Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
    Standard emoticons like :-) and ;-) are converted to images.

       

Navigation

  • Greghaynes.net

Quicksearch

Archives

  • September 2010
  • August 2010
  • July 2010
  • Recent...
  • Older...

Categories

  • XML All
  • XML Code
  • XML Kobby
  • XML Libinfinitymm
  • XML Libqinfinity
  • XML KDE
  • XML Qt
  • XML QtOnly
  • XML SoC
  • XML Uncategorized


All categories

Syndicate This Blog

  • XML RSS 0.91 feed
  • XML RSS 1.0 feed
  • XML RSS 2.0 feed
  • ATOM/XML ATOM 0.3 feed
  • ATOM/XML ATOM 1.0 feed
  • XML RSS 2.0 Comments

Blog Administration

Open login screen
Gregory Haynes' Weblog is proudly using the Simpla theme originally designed by Phu. Powered by Serendipity. Ported by Kunze Media