We now properly obtain the selection and report key presses. Much more

wiring up to be done.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@1332 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
mdb
2003-11-30 23:50:18 +00:00
parent d85e7a88c0
commit 756c28af57
4 changed files with 19 additions and 9 deletions
+16 -5
View File
@@ -1,10 +1,11 @@
//
// $Id: lookuplet.cc,v 1.1 2003/11/28 21:34:59 mdb Exp $
// $Id: lookuplet.cc,v 1.2 2003/11/30 23:50:18 mdb Exp $
#include <cstdlib>
#include <iostream>
#include <config.h>
#include <gtk/gtk.h>
#include <libgnomemm/main.h>
#include <libgnomeuimm/init.h>
// #include <bonobomm/widgets/wrap_init.h>
@@ -16,13 +17,21 @@
using namespace std;
bool lookuplet::on_query_key_press_event (GdkEventKey *ev)
static void got_clip_text (
GtkClipboard* clipboard, const gchar* text, gpointer data)
{
((lookuplet*)data)->on_clip_text_received(text);
}
bool lookuplet::on_query_key_press_event (GdkEventKey* ev)
{
printf("key pressed %d %d\n", ev->type, ev->keyval);
return 0;
}
void lookuplet::on_query_selection_received (GtkSelectionData *data, guint time)
void lookuplet::on_clip_text_received (const gchar* text)
{
_query->set_text(text);
}
void lookuplet::on_prefs_clicked ()
@@ -39,16 +48,18 @@ bool Gtk::Widget::on_delete_event (GdkEventAny* event)
exit(0);
}
int main(int argc, char **argv)
int main (int argc, char** argv)
{
Gnome::Main m(PACKAGE, VERSION, Gnome::UI::module_info_get(), argc, argv);
// Gnome::Bonobo::wrap_init();
lookuplet *lookuplet = new class lookuplet();
lookuplet* lookuplet = new class lookuplet();
// binding *binding = new class binding();
// about *about = new class about();
// properties *properties = new class properties();
GtkClipboard* clip = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
gtk_clipboard_request_text(clip, &got_clip_text, lookuplet);
m.run(*lookuplet);
delete lookuplet;
+3 -2
View File
@@ -1,5 +1,5 @@
//
// $Id: lookuplet.hh,v 1.1 2003/11/28 21:34:59 mdb Exp $
// $Id: lookuplet.hh,v 1.2 2003/11/30 23:50:18 mdb Exp $
#ifndef _LOOKUPLET_HH
#include "lookuplet_glade.hh"
@@ -9,9 +9,10 @@ class lookuplet : public lookuplet_glade
{
friend class lookuplet_glade;
bool on_query_key_press_event(GdkEventKey *ev);
void on_query_selection_received(GtkSelectionData *data, guint time);
void on_prefs_clicked();
void exit_lookuplet();
public:
void on_clip_text_received(const gchar* text);
};
#endif
@@ -46,7 +46,6 @@ lookuplet_glade::lookuplet_glade(
mainbox->show();
lookuplet->show();
_query->signal_key_press_event().connect(SigC::slot(*this, &lookuplet_glade::on_query_key_press_event));
_query->signal_selection_received().connect(SigC::slot(*this, &lookuplet_glade::on_query_selection_received), true);
prefs->signal_clicked().connect(SigC::slot(*this, &lookuplet_glade::on_prefs_clicked));
}
@@ -24,7 +24,6 @@ protected:
~lookuplet_glade();
private:
virtual bool on_query_key_press_event(GdkEventKey *ev) = 0;
virtual void on_query_selection_received(GtkSelectionData *selection_data,guint time) = 0;
virtual void on_prefs_clicked() = 0;
};
#endif