aboutsummaryrefslogtreecommitdiffstatsci
path: root/src/GraphicObjects/DirectoryView.cs
diff options
context:
space:
mode:
authorjpbruyere <jp.bruyere@hotmail.com>2016-08-07 02:43:45 +0200
committerjpbruyere <jp.bruyere@hotmail.com>2016-08-07 02:43:45 +0200
commit3ba387d4424eac597c7d512664214dc2437007d0 (patch)
tree811132956aaa511f2129edd8e90cc8ac0e542ac8 /src/GraphicObjects/DirectoryView.cs
parentd45cf90cb417222aef6e9a7e0de5c2d2f874ac91 (diff)
add missing files in previous commit
Diffstat (limited to 'src/GraphicObjects/DirectoryView.cs')
-rw-r--r--src/GraphicObjects/DirectoryView.cs73
1 files changed, 73 insertions, 0 deletions
diff --git a/src/GraphicObjects/DirectoryView.cs b/src/GraphicObjects/DirectoryView.cs
new file mode 100644
index 00000000..e9a9ef9b
--- /dev/null
+++ b/src/GraphicObjects/DirectoryView.cs
@@ -0,0 +1,73 @@
+//
+// DirectoryView.cs
+//
+// Author:
+// Jean-Philippe Bruyère <jp.bruyere@hotmail.com>
+//
+// Copyright (c) 2016 jp
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see <http://www.gnu.org/licenses/>.
+using System;
+using System.Xml.Serialization;
+using System.ComponentModel;
+using System.IO;
+
+namespace Crow
+{
+ [DefaultTemplate("#Crow.Templates.DirectoryView.crow")]
+ public class DirectoryView : TemplatedControl
+ {
+ #region CTOR
+ public DirectoryView ()
+ : base()
+ {}
+ #endregion
+
+ #region events
+ public event EventHandler<SelectionChangeEventArgs> SelectedItemChanged;
+ #endregion
+
+ string _root = "/";
+ bool _showFiles;
+
+ [XmlAttributeAttribute()][DefaultValue(true)]
+ public virtual bool ShowFiles {
+ get { return _showFiles; }
+ set {
+ if (_showFiles == value)
+ return;
+ _showFiles = value;
+ NotifyValueChanged ("ShowFiles", _showFiles);
+ }
+ }
+ [XmlAttributeAttribute][DefaultValue("/")]
+ public virtual string Root {
+ get { return _root; }
+ set {
+ if (_root == value)
+ return;
+ _root = value;
+ NotifyValueChanged ("Root", _root);
+ NotifyValueChanged ("CurrentDirectory", CurrentDirectory);
+ }
+ }
+ [XmlIgnore]public FileSystemInfo[] CurrentDirectory {
+ get { return new DirectoryInfo (Root).GetFileSystemInfos (); }
+ }
+ public void onSelectedItemChanged (object sender, SelectionChangeEventArgs e){
+ SelectedItemChanged.Raise (this, e);
+ }
+ }
+}
+