From 75856b87b6d6f8e04618b2b4aa13170c731295ec Mon Sep 17 00:00:00 2001 From: "hyatt%mozilla.org" Date: Sun, 13 Apr 2003 00:44:02 +0000 Subject: [PATCH] Forking bookmarks for Phoenix. git-svn-id: svn://10.0.0.236/trunk@141076 18797224-902f-48f8-a5cc-f745e15eee43 --- .../components/bookmarks/public/MANIFEST_IDL | 1 + .../components/bookmarks/public/Makefile.in | 35 ++++++ .../bookmarks/public/nsIBookmarksService.idl | 109 ++++++++++++++++++ .../components/bookmarks/src/Makefile.in | 57 +++++++++ 4 files changed, 202 insertions(+) create mode 100644 mozilla/browser/components/bookmarks/public/MANIFEST_IDL create mode 100644 mozilla/browser/components/bookmarks/public/Makefile.in create mode 100644 mozilla/browser/components/bookmarks/public/nsIBookmarksService.idl create mode 100644 mozilla/browser/components/bookmarks/src/Makefile.in diff --git a/mozilla/browser/components/bookmarks/public/MANIFEST_IDL b/mozilla/browser/components/bookmarks/public/MANIFEST_IDL new file mode 100644 index 00000000000..fb9667a177b --- /dev/null +++ b/mozilla/browser/components/bookmarks/public/MANIFEST_IDL @@ -0,0 +1 @@ +nsIBookmarksService.idl diff --git a/mozilla/browser/components/bookmarks/public/Makefile.in b/mozilla/browser/components/bookmarks/public/Makefile.in new file mode 100644 index 00000000000..ae8ed8a7976 --- /dev/null +++ b/mozilla/browser/components/bookmarks/public/Makefile.in @@ -0,0 +1,35 @@ +# +# The contents of this file are subject to the Netscape Public +# License Version 1.1 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.mozilla.org/NPL/ +# +# Software distributed under the License is distributed on an "AS +# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or +# implied. See the License for the specific language governing +# rights and limitations under the License. +# +# The Original Code is mozilla.org code. +# +# The Initial Developer of the Original Code is Netscape +# Communications Corporation. Portions created by Netscape are +# Copyright (C) 1998 Netscape Communications Corporation. All +# Rights Reserved. +# +# Contributor(s): +# + +DEPTH = ../../../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ + +include $(DEPTH)/config/autoconf.mk + +MODULE = browsercomps +XPIDL_MODULE = bookmarks + +XPIDLSRCS = nsIBookmarksService.idl + +include $(topsrcdir)/config/rules.mk + diff --git a/mozilla/browser/components/bookmarks/public/nsIBookmarksService.idl b/mozilla/browser/components/bookmarks/public/nsIBookmarksService.idl new file mode 100644 index 00000000000..5721b0c046d --- /dev/null +++ b/mozilla/browser/components/bookmarks/public/nsIBookmarksService.idl @@ -0,0 +1,109 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: NPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Netscape Public License + * Version 1.1 (the "License"); you may not use this file except in + * compliance with the License. You may obtain a copy of the License at + * http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Ben Goodger + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the NPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the NPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +/** + * The Browser Bookmarks service + */ + +#include "nsISupports.idl" + +interface nsIRDFResource; +interface nsITransactionManager; + +[scriptable, uuid(a82e9300-e4af-11d2-8fdf-0008c70adc7b)] +interface nsIBookmarksService : nsISupports +{ + const unsigned long BOOKMARK_DEFAULT_TYPE = 0; + const unsigned long BOOKMARK_SEARCH_TYPE = 1; + const unsigned long BOOKMARK_FIND_TYPE = 2; + + boolean readBookmarks(); + boolean isBookmarked(in string aURL); + + void addBookmarkImmediately(in string aURI, in wstring aTitle, in long bmType, in wstring docCharset); + + nsIRDFResource createFolder(in wstring aName); + nsIRDFResource createFolderInContainer(in wstring aName, in nsIRDFResource aParentFolder, + in long aIndex); + + nsIRDFResource createGroup(in wstring aName); + nsIRDFResource createGroupInContainer(in wstring aName, in nsIRDFResource aParentFolder, + in long aIndex); + + nsIRDFResource createBookmark(in wstring aName, + in string aURL, + in wstring aShortcutURL, + in wstring aDescription, + in wstring aDocCharSet); + nsIRDFResource createBookmarkInContainer(in wstring aName, + in string aURL, + in wstring aShortcutURL, + in wstring aDescription, + in wstring aDocCharSet, + in nsIRDFResource aFolder, + in long aIndex); + + nsIRDFResource createSeparator(); + + void updateBookmarkIcon(in string aURL, in wstring aIconURL); + void removeBookmarkIcon(in string aURL, in wstring aIconURL); + + void updateLastVisitedDate(in string aURL, in wstring docCharset); + + string resolveKeyword(in wstring aName); + + wstring getLastCharset(in string aURL); + + void importSystemBookmarks(in nsIRDFResource aParentFolder); + + readonly attribute nsITransactionManager transactionManager; +}; + +%{C++ + +// {E638D760-8687-11d2-B530-000000000000} +#define NS_BOOKMARKS_SERVICE_CID \ +{ 0xe638d760, 0x8687, 0x11d2, { 0xb5, 0x30, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } } + +#define NS_BOOKMARKS_SERVICE_CONTRACTID \ + "@mozilla.org/browser/bookmarks-service;1" + +#define NS_BOOKMARKS_DATASOURCE_CONTRACTID \ + "@mozilla.org/rdf/datasource;1?name=bookmarks" + +%} diff --git a/mozilla/browser/components/bookmarks/src/Makefile.in b/mozilla/browser/components/bookmarks/src/Makefile.in new file mode 100644 index 00000000000..cadc22f4ba7 --- /dev/null +++ b/mozilla/browser/components/bookmarks/src/Makefile.in @@ -0,0 +1,57 @@ +# +# The contents of this file are subject to the Netscape Public +# License Version 1.1 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.mozilla.org/NPL/ +# +# Software distributed under the License is distributed on an "AS +# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or +# implied. See the License for the specific language governing +# rights and limitations under the License. +# +# The Original Code is mozilla.org code. +# +# The Initial Developer of the Original Code is Netscape +# Communications Corporation. Portions created by Netscape are +# Copyright (C) 1998 Netscape Communications Corporation. All +# Rights Reserved. +# +# Contributor(s): +# + +DEPTH = ../../../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ + +include $(DEPTH)/config/autoconf.mk + +MODULE = appcomps +LIBRARY_NAME = bookmarks_s + +REQUIRES = xpcom \ + string \ + rdf \ + appshell \ + widget \ + necko \ + nkcache \ + uconv \ + pref \ + profile \ + dom \ + intl \ + webshell \ + windowwatcher \ + unicharutil \ + txmgr \ + $(NULL) + +CPPSRCS = nsBookmarksService.cpp + +# we don't want the shared lib, but we want to force the creation of a +# static lib. +FORCE_STATIC_LIB = 1 + +include $(topsrcdir)/config/rules.mk +