BasKet Note Pads - an system for organizing information in KDE.
C++ Shell C
Latest commit 6d489cb Sep 25, 2012 @kelvie Merge branch 'master' of
* 'master' of (119 commits)
  Fix problem with the text selection
  restore the basket properties dialog
  Comment some unused parameters, remove some traces
  update d&d/cut/copy/paste
  Fix tests after port to QGraphicsView
  Fix an include name error
  Restore FocusWidgetFilter in TextEditor
  Fix compile errors.
  Remove old kcolorcombo2 class and fix signals.
  Fix NetworkAccess signal.
  Comment out spammy debug message.
  Fix 18n calls.
  Replace Qt classes with KDE equivalents.
  Remove undef of None.
  Replace custom X11 keyboard modifier checks.
  Switch QHttp to QNetworkReply classes....
  Replace deprecated QHttp with KIO::AccessManager
  Add comment to avoid krazy false positive.
  Fix spelling errors (mostly in comments).
  Don't use QString::Null or QString() everywhere.
Failed to load latest commit information.
backgrounds-previews Clean up the CMake files Aug 7, 2008
backgrounds Removed the executable bit from green-curves.png Jan 26, 2009
debian-upstream Fixed Debian/Ubuntu build dependencies. Oct 26, 2010
doc Remove the versioning scripts and related files. Jun 30, 2008
file-integration Make startsWith/endsWith more efficient. Aug 23, 2011
images Move icons for new KDE4 naming scheme. Jul 31, 2009
po Fix spelling errors (mostly in comments). Aug 23, 2011
src Merge branch 'master' of Sep 25, 2012
tags Rename image files and remove kontactinterfaces. Oct 23, 2009
welcome Clean up the CMake files Aug 7, 2008
.gitignore Merge commit 'refs/merge-requests/2216' of git://… Apr 9, 2011
AUTHORS Make all files UTF-8. Jun 22, 2008
CMakeLists.txt Fix the build when kdepimlibs is in a different prefix from kdelibs Apr 11, 2011
COPYING Initial import.\nSince 0.6.0 Alpha 2b, 40 bugs, crashes, and little b… Jun 4, 2006
INSTALL Updated the INSTALL document and the installer. Aug 4, 2008
README Update the Contributing section of the README Mar 27, 2010
TODO Updated the TODO file. Mar 9, 2009
basket.qrc Rename image files and remove kontactinterfaces. Oct 23, 2009 Added script for generating Debian packages (thanks to the Arora proj… Dec 1, 2009
config.h.cmake Merge remote branch 'parent/master' Sep 28, 2010 Made translations work again May 17, 2009
installer Assigned 2 as default for $threads Sep 14, 2010 Fix some broken icons. Jan 18, 2010


BasKet Note Pads
Kelvie Wong <>

Run this document through asciidoc to read it nicely-formatted in HTML.

(From the original README by Sébastien)

This application provides as many baskets as you wish, and you can drag and drop
various objects (text, URLs, images, sounds...)  into its.

Objects can be edited, copied, dragged... So, you can arrange them as you want !

It's a DropDrawers clone ( for
KDE 3 (soon to be 4, hopefully).

Project Status
Currently, porting to KDE 4 is under way.  The KDE 3 version remains unmaintained.

As you may or may not have noticed, there isn't a user's section currently.
If you are reading this, chances are, you are a developer (if I'm wrong email me
;), so most of the developers documentation will go here until we can finalize a
user README after we're done porting.

The porting effort will use Git.  The main reason for this is that right now, we
don't have much contact with the main developers, and a bunch of us do not have
SVN access.  There are other people who wish to contribute and are in a similar
situation, and so the easiest way to coordinate these efforts is through a
distributed source management system -- Git fills this void nicely, is under
very active development, and is quickly gaining popularity.

Using Git
I'm sure not everyone is familiar with Git.  There's plenty of resources about
what commands do what, so here's a just a quick rundown of some Git conventions.

Don't work on the master branch
Your published `master` branch is the branch other people will be pulling, so
only merge what you are confident with sharing.  I generally keep a branch
called `work` in my repository for the main work, and `next` as a branch that's
waiting to be merged into master.

Basically, keep your `master` clean.  Don't try to rewrite history on master
(with git rebase) after it has been published -- if anyone else has pulled from
you, they are going to be in heaps of trouble the next time they try to.
Instead, just add things like revert commits (via `git revert`), or other
amending commits on top of your current `master`.

Commit messages
Feel free to write whatever you want in your own branches, but try to have the
messages that you merge into master follow a specific convention

It is important to follow this convention because many git tools (such as Gitorious
and the gitweb web interfaces, as well as `git format-patch`, and even `git
log`!)  rely on this convention when parsing commit messages.

In short, the first line of your commit message should be a _very_ short (no
longer than 80 characters) summary of your commit.  When creating a patch, it
becomes the subject of the email (in Git, patches are emails).

Separate it then with two lines (this part's important!), and a detailed
description of the commit.  Do not be afraid to write really detailed commit
message (in fact, I'd encourage it! People who want the short version can just
read the first line).

For example (this is commit `688ab72c`):
    Removed all of the whitespace changes from kde4port-svn. (<-- subject line)

    The process to get rid of the whitespace changes was this: (full descrip.)
    1. First ask git to create a diff without whitespace changes
    2. Run a script to go in and reject hunks with non-trivial whitespace
       changes (such as multiline whitespace changes and adding whitespace
       where there were none before).
    3. Apply the new patch.
    4. Apply the changes between this new HEAD and kde4port-svn onto kde4port-svn


Also, good commit messages means we don't have to write changelogs (try it! type
`git shortlog`)

TODO: More to come..

The first step to contribute is to clone a source repository:

  git clone git://

You should do this through the Gitorious web interface.  When you have a series of
patches ready to be merged with upstream, first make sure your master is up to

  git pull git:// master

Then push your changes to your repository on Gitorious and then submit a merge
request against the main repository.

If you have any questions, or would like to contribute (always welcome!) please
send me an email to the  development mailing list at

Developers are usually idle on #basket-devel @ freenode on IRC, and it's quite
likely you'll catch one of us there Due to timezone differences, however, it's
generally better to email the list.

The BasKet web site (again, unmaintained right now) is at:

It will be a while before the master branch is able to be built without errors,
but to try and do so, follow these steps (this assumes you have the relevant
kde4 development libraries and CMake):

mkdir build
cd build
cmake ..