39 for(
const char*
p=
s; *
p; ++
p)
71 const char* cont =
eq + 1;
90 if (
pos.go_down(
"title")) {
95 if (
pos.go_down(
"desc")) {
100 if (
pos.go_down(
"info")) {
103 for(const_XMLChildrenFilter::const_iterator it=
metadata.begin(); it!=
metadata.end(); ++it) {
104 const XMLNode&
node = **it;
105 const_XMLPos sub_pos(&
node);
107 if (
node.get(
"owner") ==
"ros-explorer") {
108 if (sub_pos.go_down(
"icon")) {
121 return !
_url.empty();
127 pos.create(
"bookmark");
131 if (!
_name.empty()) {
145 pos.create(
"metadata");
146 pos[
"owner"] =
"ros-explorer";
162 if (
pos.go_down(
"title")) {
167 if (
pos.go_down(
"desc")) {
178 pos.create(
"folder");
180 if (!
_name.empty()) {
203 : _type(BMNT_BOOKMARK)
283 const XMLNode::Children& children =
pos->get_children();
285 for(XMLNode::Children::const_iterator it=children.begin(); it!=children.end(); ++it) {
286 const XMLNode&
node = **it;
287 const_XMLPos sub_pos(&
node);
289 if (
node ==
"folder") {
295 }
else if (
node ==
"bookmark") {
298 if (bookmark.
read(sub_pos))
319 if (!bookmark.
_url.empty())
347 tv.iSelectedImage = 4;
350 folder._bookmarks.fill_tree(
hwnd, hitem, himagelist, hdc_wnd);
356 tv.iSelectedImage = 2;
379 if (
entry->_shell_attribs & SFGAO_HIDDEN)
392 new_folder.
_name = DecodeXMLString(
name);
429 if (!xbel.read_file(
path)) {
430 if (!xbel._errors.empty())
432 TEXT(
"ROS Explorer - reading bookmark file"),
MB_OK);
435 const_XMLPos
pos(&xbel);
437 if (!
pos.go_down(
"xbel"))
457 xbel._format._doctype._name =
"xbel";
458 xbel._format._doctype._public =
"+//IDN python.org//DTD XML Bookmark Exchange Language 1.0//EN//XML";
459 xbel._format._doctype._system =
"http://www.python.org/topics/xml/dtds/xbel-1.0.dtd";
461 xbel.write_file(
path);
int strncmp(const char *String1, const char *String2, ACPI_SIZE Count)
char * strchr(const char *String, int ch)
VOID WaitCursor(BOOL bBegin)
void push_back(const_reference __x)
_STLP_PRIV _List_iterator< BookmarkNode, _Const_traits< BookmarkNode > > const_iterator
_STLP_PRIV _List_iterator< StartMenuDirectory, _Nonconst_traits< StartMenuDirectory > > iterator
#define _strnicmp(_String1, _String2, _MaxCount)
static const WCHAR *const ext[]
@ SCAN_DONT_EXTRACT_ICONS
String DecodeURLString(const char *s)
static void new_dir(void)
ExplorerGlobals g_Globals
#define eq(received, expected, label, type)
#define FILE_ATTRIBUTE_DIRECTORY
#define TreeView_InsertItem(hwnd, lpis)
#define TVIF_SELECTEDIMAGE
ShellFolder & GetDesktopFolder()
#define CSIDL_COMMON_FAVORITES
void write(XMLPos &pos) const
write bookmark folder content from XBEL formated XML tree
void read(const_XMLPos &pos)
read bookmark folder from XBEL formated XML tree
void write(XMLPos &pos) const
write bookmark list into XBEL formated XML tree
void import_IE_favorites(struct ShellDirectory &dir, HWND hwnd)
import Internet Explorer bookmarks from Favorites folder into bookmark list
void fill_tree(HWND hwnd, HTREEITEM parent, HIMAGELIST, HDC hdc_wnd) const
fill treeview control with bookmark tree content
void read(const_XMLPos &pos)
read bookmark list from XBEL formated XML tree
BookmarkNode & operator=(const Bookmark &bm)
BookmarkFolder * _pfolder
void write(XMLPos &pos) const
write XBEL bookmark node
bool read_url(LPCTSTR path)
read .URL file
bool read(const_XMLPos &pos)
convert XBEL bookmark node
Exception with context information.
base of all file and directory entries
bool read(LPCTSTR path)
read XBEL bookmark file
bool import_IE_favorites(HWND hwnd)
import Internet Explorer bookmarks from Favorites folder
void write(LPCTSTR path) const
write XBEL bookmark file
const Icon & extract(LPCTSTR path, ICONCACHE_FLAGS flags=ICF_NORMAL)
int add_to_imagelist(HIMAGELIST himl, HDC hdc_wnd, COLORREF bk_color=GetSysColor(COLOR_WINDOW), HBRUSH bk_brush=GetSysColorBrush(COLOR_WINDOW)) const
shell file/directory entry
Retrieval of special shell folder paths.
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String