BioImager  4.9.0
A .NET microscopy imaging application based on Bio library. Supports various microscopes by using imported libraries & GUI automation. Supports XInput game controllers to move stage, take images, run ImageJ macros on images or Bio C# scripts.
Loading...
Searching...
No Matches
BioImager.NodeView Class Reference
Inheritance diagram for BioImager.NodeView:

Classes

class  Node
 

Public Member Functions

 NodeView (string[] args)
 
void UpdateOverlay ()
 
void InitNodes ()
 
void UpdateNodes ()
 
void Exit ()
 

Protected Member Functions

override void Dispose (bool disposing)
 Clean up any resources being used.
 

Detailed Description

Definition at line 3 of file NodeView.Designer.cs.

Constructor & Destructor Documentation

◆ NodeView()

BioImager.NodeView.NodeView ( string[] args)

Definition at line 55 of file NodeView.cs.

56 {
57 List<string> sts = new List<string>();
58 sts.AddRange(args);
59 for (int i = 0; i < args.Length; i++)
60 {
61 if (args[i].Contains("-setup"))
62 {
63 setup = true;
64 sts.RemoveAt(i);
65 }
66 }
67 App.nodeView = this;
68 InitializeComponent();
69 InitNodes();
70 Init();
71 if (args.Length > 0)
72 {
73 App.tabsView = new TabsView(sts.ToArray());
74 App.tabsView.Show();
75 }
76 else
77 {
78 App.tabsView = new TabsView();
79 App.tabsView.Show();
80 }
81 //timer.Start();
82 }

Member Function Documentation

◆ Dispose()

override void BioImager.NodeView.Dispose ( bool disposing)
protected

Clean up any resources being used.

Parameters
disposingtrue if managed resources should be disposed; otherwise, false.

Definition at line 14 of file NodeView.Designer.cs.

15 {
16 if (disposing && (components != null))
17 {
18 components.Dispose();
19 }
20 base.Dispose(disposing);
21 }

◆ Exit()

void BioImager.NodeView.Exit ( )

Definition at line 173 of file NodeView.cs.

174 {
175 this.Close();
176 Application.Exit();
177 Application.ExitThread();
178 }

◆ InitNodes()

void BioImager.NodeView.InitNodes ( )

Definition at line 99 of file NodeView.cs.

100 {
101 treeView.Nodes.Clear();
102 TreeNode images = new TreeNode();
103 images.Text = "BioImages";
104 images.ForeColor = System.Drawing.Color.White;
105 foreach (BioImage item in Images.images)
106 {
107 //TreeNode node = new TreeNode();
108 Node tree = new Node(item, Node.DataType.image);
109
110 Node implanes = new Node(item, Node.DataType.text);
111 implanes.Text = "Planes";
112
113 foreach (AForge.Bitmap buf in item.Buffers)
114 {
115 Node plane = new Node(buf, Node.DataType.buf);
116 plane.Text = buf.ID + ", " + buf.Coordinate.ToString();
117
118 implanes.node.Nodes.Add(plane.node);
119 }
120 tree.node.Nodes.Add(implanes.node);
121
122 Node rois = new Node(item, Node.DataType.text);
123 rois.Text = "ROI";
124
125 foreach (ROI an in item.Annotations)
126 {
127 Node roi = new Node(an, Node.DataType.roi);
128 rois.node.Nodes.Add(roi.node);
129 }
130 tree.node.Nodes.Add(rois.node);
131 images.Nodes.Add(tree.node);
132 }
133 treeView.Nodes.Add(images);
134 }

◆ UpdateNodes()

void BioImager.NodeView.UpdateNodes ( )

Definition at line 136 of file NodeView.cs.

137 {
138 if (Images.images.Count != treeView.Nodes[0].Nodes.Count)
139 {
140 //If image count is not same as node count we refresh whole tree.
141 InitNodes();
142 return;
143 }
144 TreeNode images = treeView.Nodes[0];
145 foreach (TreeNode item in images.Nodes)
146 {
147 //TreeNode node = new TreeNode();
148 Node node = (Node)item.Tag;
149 BioImage im = (BioImage)node.Object;
150
151 TreeNode rois = node.node.Nodes[1];
152 if(im.Annotations.Count != rois.Nodes.Count)
153 {
154 //If ROI count is not same as node count we refresh annotations.
155 rois.Nodes.Clear();
156 foreach (ROI an in im.Annotations)
157 {
158 Node roi = new Node(an, Node.DataType.roi);
159 rois.Nodes.Add(roi.node);
160 }
161 }
162 else
163 for (int i = 0; i < im.Annotations.Count; i++)
164 {
165 TreeNode roi = rois.Nodes[i];
166 Node n = (Node)roi.Tag;
167 ROI an = (ROI)n.Object;
168 roi.Text = an.ToString();
169 }
170 }
171 }

◆ UpdateOverlay()

void BioImager.NodeView.UpdateOverlay ( )

Definition at line 94 of file NodeView.cs.

95 {
96 if (App.viewer != null)
97 App.viewer.UpdateOverlay();
98 }

The documentation for this class was generated from the following files: