diff options
Diffstat (limited to 'embed/mozilla/mozilla-history-item.cpp')
-rw-r--r-- | embed/mozilla/mozilla-history-item.cpp | 133 |
1 files changed, 0 insertions, 133 deletions
diff --git a/embed/mozilla/mozilla-history-item.cpp b/embed/mozilla/mozilla-history-item.cpp deleted file mode 100644 index b312fd912..000000000 --- a/embed/mozilla/mozilla-history-item.cpp +++ /dev/null @@ -1,133 +0,0 @@ -/* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2; -*- */ -/* - * Copyright © 2007 Xan Lopez - * - * 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#include "mozilla-config.h" -#include "config.h" - -#include "mozilla-history-item.h" -#include "ephy-history-item.h" -#include "EphyBrowser.h" - -#include <nsStringAPI.h> -#include <nsMemory.h> - -static void mozilla_history_item_finalize (GObject *object); - -static char* -impl_get_url (EphyHistoryItem *item) -{ - char *url = NULL; - nsresult rv; - nsCString nsUrl; - MozillaHistoryItem *mitem = MOZILLA_HISTORY_ITEM (item); - - if (!mitem->embed) - return NULL; - - EphyBrowser *browser = (EphyBrowser*)_mozilla_embed_get_browser (mitem->embed); - - rv = browser->GetSHUrlAtIndex(mitem->nth, nsUrl); - - if (NS_SUCCEEDED (rv) && nsUrl.Length()) { - url = g_strdup(nsUrl.get()); - } - - return url; -} - -static char* -impl_get_title (EphyHistoryItem *item) -{ - char *title = NULL; - nsresult rv; - PRUnichar *nsTitle; - - MozillaHistoryItem *mitem = MOZILLA_HISTORY_ITEM (item); - - if (!mitem->embed) - return NULL; - - EphyBrowser *browser = (EphyBrowser*)_mozilla_embed_get_browser (mitem->embed); - - rv = browser->GetSHTitleAtIndex(mitem->nth, &nsTitle); - - if (NS_SUCCEEDED (rv) && nsTitle) - { - nsCString cTitle; - NS_UTF16ToCString (nsString(nsTitle), - NS_CSTRING_ENCODING_UTF8, cTitle); - title = g_strdup (cTitle.get()); - nsMemory::Free (nsTitle); - } - - return title; -} - -static void -mozilla_history_item_iface_init (EphyHistoryItemIface *iface) -{ - iface->get_url = impl_get_url; - iface->get_title = impl_get_title; -} - -G_DEFINE_TYPE_WITH_CODE (MozillaHistoryItem, mozilla_history_item, G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (EPHY_TYPE_HISTORY_ITEM, - mozilla_history_item_iface_init)) - -static void -mozilla_history_item_class_init (MozillaHistoryItemClass *klass) -{ - GObjectClass *gobject_class = (GObjectClass *)klass; - - gobject_class->finalize = mozilla_history_item_finalize; -} - -static void -mozilla_history_item_init (MozillaHistoryItem *self) -{ -} - -static void -mozilla_history_item_finalize (GObject *object) -{ - MozillaHistoryItem *item = MOZILLA_HISTORY_ITEM (object); - MozillaEmbed **ptr = &item->embed; - - g_object_remove_weak_pointer (G_OBJECT (item->embed), - (gpointer*)ptr); - - G_OBJECT_CLASS (mozilla_history_item_parent_class)->finalize (object); -} - -MozillaHistoryItem* -mozilla_history_item_new (MozillaEmbed *embed, int index) -{ - MozillaHistoryItem *item; - MozillaEmbed **ptr; - - item = (MozillaHistoryItem*) g_object_new (MOZILLA_TYPE_HISTORY_ITEM, NULL); - item->embed = embed; - ptr = &item->embed; - - g_object_add_weak_pointer (G_OBJECT (embed), (gpointer*)ptr); - item->nth = index; - - return item; -} |