Created open game functionality in the player. Fix #37.
[rodin/chimara.git] / tests / callbacks.c
index 6067526bde9fab7ed7848d83b90a7508d58d8e91..55e459d74283c1b2566c06a54165a16f8e83345d 100644 (file)
  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include "callbacks.h"
+#include <gdk/gdkkeysyms.h>
+#include <libchimara/chimara-glk.h>
+#include "error.h"
 
-void on_save_tool_button_clicked(GtkToolButton *toolbutton, gpointer user_data) {
-       error_dialog( GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(toolbutton))), NULL, "Not implemented yet" );
+void on_save(GtkAction *action, ChimaraGlk *glk) {
+       chimara_glk_feed_line_input(glk, "save");
 }
 
-gboolean on_window_delete_event(GtkWidget *widget, GdkEvent *event, gpointer user_data) {
+void on_restore(GtkAction *action, ChimaraGlk *glk) {
+       chimara_glk_feed_line_input(glk, "restore");
+}
+
+gboolean on_window_delete_event(GtkWidget *widget, GdkEvent *event, ChimaraGlk *glk) {
        gtk_main_quit();
        return TRUE;
 }
 
-void on_file_quit_activate(GtkMenuItem *menuitem, gpointer user_data) {
+void on_quit(GtkAction *action, ChimaraGlk *glk) {
        gtk_main_quit();
 }
 
+void on_hint(GtkAction *action, ChimaraGlk *glk) {
+       chimara_glk_feed_line_input(glk, "se");
+       chimara_glk_feed_line_input(glk, "push cans to window");
+       chimara_glk_feed_line_input(glk, "stand on cans");
+       chimara_glk_feed_line_input(glk, "open window");
+       chimara_glk_feed_line_input(glk, "enter window");
+}
+
+void on_press_r(GtkAction *action, ChimaraGlk *glk) {
+       chimara_glk_feed_char_input(glk, GDK_R);
+}
+
+void on_press_enter(GtkAction *action, ChimaraGlk *glk) {
+       chimara_glk_feed_char_input(glk, GDK_Return);
+       chimara_glk_feed_char_input(glk, GDK_Return);
+       chimara_glk_feed_char_input(glk, GDK_Return);
+}