svnno****@sourc*****
svnno****@sourc*****
Mon Apr 2 18:06:29 JST 2007
Revision: 3121 http://svn.sourceforge.jp/cgi-bin/viewcvs.cgi?root=kazehakase&view=rev&rev=3121 Author: makeinu Date: 2007-04-02 18:06:28 +0900 (Mon, 02 Apr 2007) Log Message: ----------- Add skeleton class for supporting Internet Explorer. Added Paths: ----------- kazehakase/trunk/module/embed/ie/ kazehakase/trunk/module/embed/ie/Makefile.am kazehakase/trunk/module/embed/ie/kz-ie-module.cpp kazehakase/trunk/module/embed/ie/kz-ie.cpp kazehakase/trunk/module/embed/ie/kz-ie.h Added: kazehakase/trunk/module/embed/ie/Makefile.am =================================================================== --- kazehakase/trunk/module/embed/ie/Makefile.am 2007-04-02 04:11:18 UTC (rev 3120) +++ kazehakase/trunk/module/embed/ie/Makefile.am 2007-04-02 09:06:28 UTC (rev 3121) @@ -0,0 +1,32 @@ +# -*- Mode: Makefile; tab-width: 8; indent-tabs-mode: t; -*- +CLEANFILES = *~ *.bak + +embed_LTLIBRARIES = ie.la + +INCLUDES = \ + -I$(GTK_CFLAGS) \ + -I$(top_srcdir)/src \ + -I$(top_srcdir)/src/bookmarks \ + -I$(top_srcdir)/src/dialogs \ + -I$(top_srcdir)/src/net \ + -I$(top_srcdir)/src/libegg/pixbufthumbnail \ + -I$(top_srcdir)/src/utils + +ie_la_CPPFLAGS= \ + -DKZ_DATADIR=\""$(datadir)/$(PACKAGE)"\" \ + -DGTK_DISABLE_DEPRECATED=1 \ + -DGDK_DISABLE_DEPRECATED=1 \ + -DG_DISABLE_DEPRECATED=1 + +ie_la_LDFLAGS = \ + -avoid-version \ + -module \ + -export-dynamic $(no_undefined) \ + $(LIBTOOL_EXPORT_OPTIONS) + +ie_la_SOURCES = \ + kz-ie-module.cpp \ + kz-ie.cpp kz-ie.h + +ie_la_LIBADD = \ + $(GTK_LIBS) Added: kazehakase/trunk/module/embed/ie/kz-ie-module.cpp =================================================================== --- kazehakase/trunk/module/embed/ie/kz-ie-module.cpp 2007-04-02 04:11:18 UTC (rev 3120) +++ kazehakase/trunk/module/embed/ie/kz-ie-module.cpp 2007-04-02 09:06:28 UTC (rev 3121) @@ -0,0 +1,50 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ + +/* + * Copyright (C) 2007 Takuro Ashie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Id: kz-gtk-webcore.cpp 3032 2007-03-26 10:30:49Z ikezoe $ + */ + +#include <glib/gi18n.h> + +#include "kz-module-impl.h" +#include "kz-ie.h" + +G_MODULE_EXPORT void +KZ_MODULE_IMPL_INIT (GTypeModule *module) +{ + kz_ie_register_type(module); +} + +G_MODULE_EXPORT void +KZ_MODULE_IMPL_EXIT (void) +{ +} + +G_MODULE_EXPORT GObject * +KZ_MODULE_IMPL_INSTANTIATE (const gchar *first_property, + va_list var_args) +{ + return g_object_new_valist(KZ_TYPE_IE, first_property, var_args); +} + +G_MODULE_EXPORT const gchar * +KZ_MODULE_IMPL_GET_NAME (void) +{ + return "Internet Explorer"; +} Added: kazehakase/trunk/module/embed/ie/kz-ie.cpp =================================================================== --- kazehakase/trunk/module/embed/ie/kz-ie.cpp 2007-04-02 04:11:18 UTC (rev 3120) +++ kazehakase/trunk/module/embed/ie/kz-ie.cpp 2007-04-02 09:06:28 UTC (rev 3121) @@ -0,0 +1,260 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ + +/* + * Copyright (C) 2007 Takuro Ashie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Id: kz-gtk-webcore.cpp 3111 2007-03-30 08:18:40Z makeinu $ + */ + +#include <glib/gi18n.h> +#include <math.h> +#include <sys/utsname.h> + +#include "kazehakase.h" +#include "kz-ie.h" +#include "kz-embed-prefs.h" +#include "kz-embed.h" +#include "kz-prompt-dialog.h" +#include "kz-proxy-item.h" +#include "gtk-utils.h" + +typedef struct _KzIEPrivate KzIEPrivate; +struct _KzIEPrivate +{ + gint dummy; +}; +#define KZ_IE_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), KZ_TYPE_IE, KzIEPrivate)) + +static GType kz_type_ie = 0; +static GtkWidgetClass *kz_ie_parent_class; + +GtkWidget *kz_ie_new (void); +static void kz_ie_class_init (KzIEClass *klass); +static void kz_ie_iface_init (KzEmbedIFace *iface); +static void kz_ie_init (KzIE *ie); +static void kz_ie_dispose (GObject *object); + +/* embed iface */ +/* no functions is implemented yet */ + +/* KzEmbedPrefs interfaces */ +/* no functions is implemented yet */ +static void kz_ie_prefs_iface_init (KzEmbedPrefsIFace *iface); + +void +kz_ie_register_type (GTypeModule *module) +{ + static const GTypeInfo kz_ie_info = + { + sizeof (KzIEClass), + NULL, /* base_init */ + NULL, /* base_finalize */ + (GClassInitFunc) kz_ie_class_init, + NULL, /* class_finalize */ + NULL, /* class_data */ + sizeof (KzIE), + 0, /* n_preallocs */ + (GInstanceInitFunc) kz_ie_init, + }; + + const GInterfaceInfo kz_embed_info = + { + (GInterfaceInitFunc) kz_ie_iface_init, + NULL, + NULL + }; + + const GInterfaceInfo kz_embed_prefs_info = + { + (GInterfaceInitFunc) kz_ie_prefs_iface_init, + NULL, + NULL + }; + + kz_type_ie = g_type_module_register_type(module, + GTK_TYPE_WIDGET, + "KzIE", + &kz_ie_info, + (GTypeFlags)0); + + g_type_module_add_interface(module, + KZ_TYPE_IE, + KZ_TYPE_EMBED, + &kz_embed_info); + + g_type_module_add_interface(module, + KZ_TYPE_IE, + KZ_TYPE_EMBED_PREFS, + &kz_embed_prefs_info); +} + +GType +kz_ie_get_type (void) +{ + return kz_type_ie; +} + +static void +kz_ie_class_init (KzIEClass *klass) +{ + GObjectClass *object_class; + GtkWidgetClass *widget_class; + + kz_ie_parent_class = (GtkWidgetClass *)g_type_class_peek_parent (klass); + object_class = (GObjectClass *) klass; + widget_class = (GtkWidgetClass *) klass; + + object_class->dispose = kz_ie_dispose; + + g_type_class_add_private (object_class, sizeof(KzIEPrivate)); +} + + +static void +kz_ie_iface_init (KzEmbedIFace *iface) +{ + iface->load_url = NULL; + iface->view_source = NULL; + iface->is_loading = NULL; + iface->get_title = NULL; + iface->get_location = NULL; + iface->ensure_title = NULL; + iface->get_link_message = NULL; + iface->get_progress = NULL; + iface->can_cut_selection = NULL; + iface->can_copy_selection = NULL; + iface->can_paste = NULL; + iface->cut_selection = NULL; + iface->copy_selection = NULL; + iface->paste = NULL; + iface->select_all = NULL; + iface->get_selection_string = NULL; + iface->find = NULL; + iface->incremental_search = NULL; + iface->selection_is_collapsed = NULL; + iface->get_links = NULL; + iface->copy_page = NULL; + iface->shistory_copy = NULL; + iface->shistory_get_pos = NULL; + iface->shistory_get_nth = NULL; + iface->reload = NULL; + iface->stop_load = NULL; + iface->go_back = NULL; + iface->go_forward = NULL; + iface->can_go_back = NULL; + iface->can_go_forward = NULL; + iface->can_go_nav_link = NULL; + iface->go_nav_link = NULL; + iface->append_nav_link = NULL; + iface->set_nav_link = NULL; + iface->set_nth_nav_link = NULL; + iface->get_nav_link = NULL; + iface->get_nth_nav_link = NULL; + iface->get_nav_links = NULL; + iface->go_history_index = NULL; + iface->do_command = NULL; + iface->can_do_command = NULL; + iface->get_lock = NULL; + iface->set_lock = NULL; + iface->get_body_text = NULL; +#if 0 + iface->get_selection_source = NULL; +#endif + iface->set_encoding = NULL; + iface->get_encoding = NULL; + iface->print = NULL; + iface->print_preview = NULL; + iface->get_printer_list = NULL; + iface->create_thumbnail = NULL; + iface->save_with_content = NULL; + iface->set_text_into_textarea = NULL; + iface->get_text_from_textarea = NULL; + iface->zoom_set = NULL; + iface->zoom_get = NULL; + iface->set_text_size = NULL; + iface->get_text_size = NULL; + iface->get_html_with_contents = NULL; + iface->set_history = NULL; + iface->get_history = NULL; + iface->get_last_modified = NULL; + iface->fine_scroll = NULL; + iface->page_up = NULL; + iface->page_down = NULL; + iface->get_allow_javascript = NULL; + iface->set_allow_javascript = NULL; + iface->get_allow_images = NULL; + iface->set_allow_images = NULL; +#if 0 + iface->set_edit_mode = NULL; + iface->set_view_mode = NULL; +#endif + + iface->link_message = NULL; + iface->js_status = NULL; + iface->location = NULL; + iface->title = NULL; + iface->progress = NULL; + iface->net_start = NULL; + iface->net_stop = NULL; + iface->new_window = NULL; + iface->open_uri = NULL; + iface->size_to = NULL; + iface->dom_key_down = NULL; + iface->dom_key_press = NULL; + iface->dom_key_up = NULL; + iface->dom_mouse_down = NULL; + iface->dom_mouse_up = NULL; + iface->dom_mouse_click = NULL; + iface->dom_mouse_dbl_click = NULL; + iface->dom_mouse_over = NULL; + iface->dom_mouse_out = NULL; + iface->security_change = NULL; + iface->status_change = NULL; +} + + +static void +kz_ie_prefs_iface_init (KzEmbedPrefsIFace *iface) +{ + iface->init = NULL; /* kz_ie_prefs_init;*/ + iface->get_font_list = NULL; /* kz_ie_prefs_get_font_list; */ + iface->get_passwords = NULL; /* kz_ie_prefs_get_passwords; */ + iface->remove_passwords = NULL; /* kz_ie_prefs_remove_passwords; */ +} + +static void +kz_ie_init (KzIE *ie) +{ + KzIEPrivate *priv = KZ_IE_GET_PRIVATE (ie); + + priv->dummy = 0; +} + +static void +kz_ie_dispose (GObject *object) +{ + KzIEPrivate *priv = KZ_IE_GET_PRIVATE(object); + + if (G_OBJECT_CLASS(kz_ie_parent_class)->dispose) + G_OBJECT_CLASS(kz_ie_parent_class)->dispose(object); +} + +GtkWidget * +kz_ie_new (void) +{ + return GTK_WIDGET(g_object_new(KZ_TYPE_IE, NULL)); +} Added: kazehakase/trunk/module/embed/ie/kz-ie.h =================================================================== --- kazehakase/trunk/module/embed/ie/kz-ie.h 2007-04-02 04:11:18 UTC (rev 3120) +++ kazehakase/trunk/module/embed/ie/kz-ie.h 2007-04-02 09:06:28 UTC (rev 3121) @@ -0,0 +1,56 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ + +/* + * Copyright (C) 2007 Takuro Ashie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Id: kz-gtk-webcore.h 3033 2007-03-26 23:31:29Z ikezoe $ + */ + +#ifndef __KZ_IE_H__ +#define __KZ_IE_H__ + +#include <gtk/gtk.h> + +G_BEGIN_DECLS + +#define KZ_TYPE_IE (kz_ie_get_type ()) +#define KZ_IE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), KZ_TYPE_IE, KzGtkWebcore)) +#define KZ_IE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), KZ_TYPE_IE, KzIEClass)) +#define KZ_IS_IE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), KZ_TYPE_IE)) +#define KZ_IS_IE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), KZ_TYPE_IE)) +#define KZ_IE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), KZ_TYPE_IE, KzIEClass)) + +typedef struct _KzIE KzIE; +typedef struct _KzIEClass KzIEClass; + +struct _KzIE +{ + GtkWidget parent; +}; + +struct _KzIEClass +{ + GtkWidgetClass parent_class; +}; + + +GType kz_ie_get_type (void) G_GNUC_CONST; +void kz_ie_register_type (GTypeModule *module); + +G_END_DECLS + +#endif /* __KZ_IE_H__ */