updated TODO: bookmarks, config button, button size
[simple-launcher] / sla-list.h
index 5ca852d..7f93552 100644 (file)
@@ -1,6 +1,6 @@
 // This file is a part of Simple Launcher
 //
-// Copyright (C) 2006, Mikhail Sobolev
+// Copyright (C) 2006, 2007, Mikhail Sobolev
 //
 // Simple Launcher is free software; you can redistribute it and/or modify it
 // under the terms of the GNU General Public License version 2 as published by
 #include <gtk/gtkbutton.h>
 #include <gtk/gtkcellrenderertoggle.h>
 
-#include "launchable-item.h"
+#include "launcher-item.h"
 
 class SLAList {
 public:
-  SLAList(int, LaunchableItems&);
+  SLAList(int, LauncherItems&);
  ~SLAList();
 
   GtkWidget *getWidget() { return myWidget; }
 
 private:
+  static void _selectionChanged(GtkTreeSelection *, gpointer);
+
+         void selectionChanged(GtkTreeSelection *);
+         void kickIt(GtkTreeIter *);
+
   static void _renderText(GtkTreeViewColumn *column, GtkCellRenderer *cell, GtkTreeModel *model, GtkTreeIter *iter, gpointer self);
   static void _renderBool(GtkTreeViewColumn *column, GtkCellRenderer *cell, GtkTreeModel *model, GtkTreeIter *iter, gpointer self);
   static void _moveUp(GtkButton *, void *);
@@ -45,13 +50,17 @@ private:
   void moveDown(GtkButton *);
   void toggleBool(GtkCellRendererToggle *, const gchar *);
 
+  void swap(GtkTreeIter& a, GtkTreeIter& b);
+
 private:
   GtkWidget *myWidget;
   GtkListStore *myStore;
   GtkTreeView *myView;
   GtkTreeSelection *mySelection;
 
-  LaunchableItems& myItems;
+  GtkTreeIter *myLastSelection;
+
+  LauncherItems& myItems;
 };
 
 #endif