internal static bool HasChildNodes(ITreeBuilder tb, NodeBuilder[] chain, object dataObject) { NodePosition pos = tb.CurrentPosition; foreach (NodeBuilder nb in chain) { try { bool res = nb.HasChildNodes(tb, dataObject); if (res) { return(true); } } catch (Exception ex) { LoggingService.LogError(ex.ToString()); } finally { tb.MoveToPosition(pos); } } return(false); }
internal static NodeAttributes GetAttributes(ITreeBuilder tb, NodeBuilder[] chain, object dataObject) { NodePosition pos = tb.CurrentPosition; NodeAttributes ats = NodeAttributes.None; foreach (NodeBuilder nb in chain) { try { nb.GetNodeAttributes(tb, dataObject, ref ats); } catch (Exception ex) { LoggingService.LogError(ex.ToString()); } tb.MoveToPosition(pos); } return(ats); }
ProjectPackagesFolderNode GetPackagesFolderNode (ITreeBuilder treeBuilder) { NodePosition originalPosition = treeBuilder.CurrentPosition; if (!treeBuilder.MoveToParent ()) { return null; } ProjectPackagesFolderNode packagesFolder = null; if (treeBuilder.MoveToChild (ProjectPackagesFolderNode.NodeName, typeof(ProjectPackagesFolderNode))) { packagesFolder = treeBuilder.DataItem as ProjectPackagesFolderNode; } treeBuilder.MoveToPosition (originalPosition); return packagesFolder; }
internal static void GetNodeInfo(ExtensibleTreeView tree, ITreeBuilder tb, NodeBuilder[] chain, object dataObject, out string text, out Gdk.Pixbuf icon, out Gdk.Pixbuf closedIcon) { icon = null; closedIcon = null; text = string.Empty; NodePosition pos = tb.CurrentPosition; foreach (NodeBuilder builder in chain) { try { builder.BuildNode(tb, dataObject, ref text, ref icon, ref closedIcon); } catch (Exception ex) { LoggingService.LogError(ex.ToString()); } tb.MoveToPosition(pos); } if (closedIcon == null) { closedIcon = icon; } if (tree.CopyObjects != null && ((IList)tree.CopyObjects).Contains(dataObject) && tree.CurrentTransferOperation == DragOperation.Move) { Gdk.Pixbuf gicon = tree.BuilderContext.GetComposedIcon(icon, "fade"); if (gicon == null) { gicon = ImageService.MakeTransparent(icon, 0.5); tree.BuilderContext.CacheComposedIcon(icon, "fade", gicon); } icon = gicon; gicon = tree.BuilderContext.GetComposedIcon(closedIcon, "fade"); if (gicon == null) { gicon = ImageService.MakeTransparent(closedIcon, 0.5); tree.BuilderContext.CacheComposedIcon(closedIcon, "fade", gicon); } closedIcon = gicon; } }
internal static NodeInfo GetNodeInfo(ExtensibleTreeView tree, ITreeBuilder tb, NodeBuilder[] chain, object dataObject) { NodeInfo nodeInfo = new NodeInfo() { Label = string.Empty }; NodePosition pos = tb.CurrentPosition; foreach (NodeBuilder builder in chain) { try { builder.BuildNode(tb, dataObject, nodeInfo); } catch (Exception ex) { LoggingService.LogError(ex.ToString()); } tb.MoveToPosition(pos); } if (nodeInfo.ClosedIcon == null) { nodeInfo.ClosedIcon = nodeInfo.Icon; } if (tree.CopyObjects != null && ((IList)tree.CopyObjects).Contains(dataObject) && tree.CurrentTransferOperation == DragOperation.Move) { var gicon = tree.BuilderContext.GetComposedIcon(nodeInfo.Icon, "fade"); if (gicon == null) { gicon = nodeInfo.Icon.WithAlpha(0.5); tree.BuilderContext.CacheComposedIcon(nodeInfo.Icon, "fade", gicon); } nodeInfo.Icon = gicon; gicon = tree.BuilderContext.GetComposedIcon(nodeInfo.ClosedIcon, "fade"); if (gicon == null) { gicon = nodeInfo.ClosedIcon.WithAlpha(0.5); tree.BuilderContext.CacheComposedIcon(nodeInfo.ClosedIcon, "fade", gicon); } nodeInfo.ClosedIcon = gicon; } return(nodeInfo); }
ProjectPackagesFolderNode GetPackagesFolderNode(ITreeBuilder treeBuilder) { NodePosition originalPosition = treeBuilder.CurrentPosition; if (!treeBuilder.MoveToParent()) { return(null); } ProjectPackagesFolderNode packagesFolder = null; if (treeBuilder.MoveToChild(ProjectPackagesFolderNode.NodeName, typeof(ProjectPackagesFolderNode))) { packagesFolder = treeBuilder.DataItem as ProjectPackagesFolderNode; } treeBuilder.MoveToPosition(originalPosition); return(packagesFolder); }
internal static void GetNodeInfo (ExtensibleTreeView tree, ITreeBuilder tb, NodeBuilder[] chain, object dataObject, out string text, out Gdk.Pixbuf icon, out Gdk.Pixbuf closedIcon) { icon = null; closedIcon = null; text = string.Empty; NodePosition pos = tb.CurrentPosition; foreach (NodeBuilder builder in chain) { try { builder.BuildNode (tb, dataObject, ref text, ref icon, ref closedIcon); } catch (Exception ex) { LoggingService.LogError (ex.ToString ()); } tb.MoveToPosition (pos); } if (closedIcon == null) closedIcon = icon; if (tree.CopyObjects != null && ((IList)tree.CopyObjects).Contains (dataObject) && tree.CurrentTransferOperation == DragOperation.Move) { Gdk.Pixbuf gicon = tree.BuilderContext.GetComposedIcon (icon, "fade"); if (gicon == null) { gicon = ImageService.MakeTransparent (icon, 0.5); tree.BuilderContext.CacheComposedIcon (icon, "fade", gicon); } icon = gicon; gicon = tree.BuilderContext.GetComposedIcon (closedIcon, "fade"); if (gicon == null) { gicon = ImageService.MakeTransparent (closedIcon, 0.5); tree.BuilderContext.CacheComposedIcon (closedIcon, "fade", gicon); } closedIcon = gicon; } }
internal static bool HasChildNodes (ITreeBuilder tb, NodeBuilder[] chain, object dataObject) { NodePosition pos = tb.CurrentPosition; foreach (NodeBuilder nb in chain) { try { bool res = nb.HasChildNodes (tb, dataObject); if (res) return true; } catch (Exception ex) { LoggingService.LogError (ex.ToString ()); } finally { tb.MoveToPosition (pos); } } return false; }
internal static NodeAttributes GetAttributes (ITreeBuilder tb, NodeBuilder[] chain, object dataObject) { NodePosition pos = tb.CurrentPosition; NodeAttributes ats = NodeAttributes.None; foreach (NodeBuilder nb in chain) { try { nb.GetNodeAttributes (tb, dataObject, ref ats); } catch (Exception ex) { LoggingService.LogError (ex.ToString ()); } tb.MoveToPosition (pos); } return ats; }
internal static NodeInfo GetNodeInfo (NodeInfo nodeInfo, ExtensibleTreeView tree, ITreeBuilder tb, NodeBuilder[] chain, object dataObject) { NodePosition pos = tb.CurrentPosition; foreach (NodeBuilder builder in chain) { try { builder.BuildNode (tb, dataObject, nodeInfo); } catch (Exception ex) { LoggingService.LogError (ex.ToString ()); } tb.MoveToPosition (pos); } if (nodeInfo.ClosedIcon == null) nodeInfo.ClosedIcon = nodeInfo.Icon; if (tree.CopyObjects != null && ((IList)tree.CopyObjects).Contains (dataObject) && tree.CurrentTransferOperation == DragOperation.Move) { var gicon = tree.BuilderContext.GetComposedIcon (nodeInfo.Icon, "fade"); if (gicon == null) { gicon = nodeInfo.Icon.WithAlpha (0.5); tree.BuilderContext.CacheComposedIcon (nodeInfo.Icon, "fade", gicon); } nodeInfo.Icon = gicon; gicon = tree.BuilderContext.GetComposedIcon (nodeInfo.ClosedIcon, "fade"); if (gicon == null) { gicon = nodeInfo.ClosedIcon.WithAlpha (0.5); tree.BuilderContext.CacheComposedIcon (nodeInfo.ClosedIcon, "fade", gicon); } nodeInfo.ClosedIcon = gicon; } return nodeInfo; }