⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xbookmarkfolder.java

📁 XBrowser是一个完全免费并且开源的Web浏览器
💻 JAVA
字号:
/****************************************************************
*              XBrowser  -  eXtended web Browser                *
*                                                               *
*           Copyright (c) 2000-2001  Armond Avanes              *
*     Refer to ReadMe & License files for more information      *
*                                                               *
*                                                               *
*                      By: Armond Avanes                        *
*       Armond555@yahoo.com     &    Armond333@yahoo.com        *
*                http://xbrowser.sourceforge.net/               *
*****************************************************************/
package xbrowser.bookmark;

import java.awt.*;
import java.awt.datatransfer.*;
import java.util.*;
import java.io.*;

import xbrowser.*;

/** Logocal Folder with title and description which contains bookmarks and subfolders. */
public class XBookmarkFolder extends XAbstractBookmark
{
	/** Create new empty unnamed Folder. */
	public XBookmarkFolder()
	{
		super();
	}

	/** Create new empty Folder with name and description specified. */
	public XBookmarkFolder(String title, String desc)
	{
		super(title, desc);
	}

	/** Add bookmark or bookmark subfolder. */
	public void addBookmark(XAbstractBookmark bookmark)
	{
		if( bookmarks.contains(bookmark) )
			return;

		if( bookmark.getParent()!=null )
			bookmark.getParent().removeBookmark(bookmark);

		bookmarks.add(bookmark);
		bookmark.setParent(this);

		XRepository.getBookmarkManager().bookmarkAdded(bookmark,this);
	}

	/** Remove bookmark or bookmark subfolder. */
	public void removeBookmark(XAbstractBookmark bookmark)
	{
		if( !bookmarks.contains(bookmark) )
			return;

		bookmark.setParent(null);
		bookmarks.remove(bookmark);

		XRepository.getBookmarkManager().bookmarkRemoved(bookmark,this);
	}

	/** Make this folder empty. */
	public void removeAllBookmarks()
	{
	int size = bookmarks.size();

		for( int i=0; i<size; i++ )
			removeBookmark( (XAbstractBookmark)bookmarks.get(0) );
	}

	/** Return list of bookmarks. */
	public Iterator getBookmarks()
	{
		return bookmarks.iterator();
	}

	/** Returns count of items in folder. */
	public int getBookmarkCount()
	{
		return bookmarks.size();
	}

	/** Returns item in folder at position <code>index</code>. */
	public XAbstractBookmark getBookmarkAt(int index)
	{
		return (XAbstractBookmark)bookmarks.get(index);
	}

	/** Marks or unmarks this folder as 'Personal'. */
	public void setPersonalFolder(boolean is_personal)
	{
		if( is_personal )
			XRepository.getBookmarkManager().setPersonalFolder(this);
		else
			XRepository.getBookmarkManager().setPersonalFolder(null);
	}

	/** Returns true if this folder marked as 'Personal', false otherwise. */
	public boolean isPersonalFolder()
	{
		return( XRepository.getBookmarkManager().getPersonalFolder()==this );
	}

	/** Opens all bookmarks and subfolders in this folder. */
	public void open()
	{
	Iterator it = getBookmarks();

		while( it.hasNext() )
			((XAbstractBookmark)it.next()).open();
	}

	/** Put folder's title to system clipboard. */
	public void copy()
	{
	StringSelection str_sel = new StringSelection(title);

		Toolkit.getDefaultToolkit().getSystemClipboard().setContents(str_sel,str_sel);
	}

// Attributes:
    private static XBookmarkFolder personalFolder = null;
    private LinkedList bookmarks = new LinkedList();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -