예제 #1
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Visibility), Visibility);
     p.Print(nameof(Parameters), Parameters);
     p.Print(nameof(BaseArguments), BaseArguments);
     p.Print(nameof(Body), Body);
 }
예제 #2
0
        public void sort()
        {
            DeviceUserEntry entry = UserInputService.get_user_entry(_Console);

            if (entry.Equals(default(DeviceUserEntry)))
            {
                return;
            }

            //TODO check for parser for all modules
            var files = Directory.EnumerateFiles(_parser.DirPath, "*.*") // Remove/Add SearchOption if dont need to resort
                        .Where(s => s.EndsWith(".png") || s.EndsWith(".jpg") || s.EndsWith(".tif"));

            if (files.Count() == 0)
            {
                return;
            }
            var sortPath = Directory.CreateDirectory(Path.Combine(_parser.DirPath, entry.SortWord));

            int index = 0;

            foreach (var file in files)
            {
                FileInfo curFile = DevicePathService.get_file(file);
                if (!(entry.SortTime.Year == curFile.CreationTime.Year &&
                      entry.SortTime.Day == curFile.CreationTime.Day &&
                      entry.SortTime.Month == curFile.CreationTime.Month))
                {
                    continue;
                }
                try
                {
                    System.IO.File.Move(curFile.FullName, Path.Combine(sortPath.FullName, curFile.Name));
                    index++;
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            }

            if (index == 0)
            {
                Directory.Delete(sortPath.FullName);
                _Console.WriteLine("No entries with this creation date found.");
                _Console.ReadLine();
            }
            else
            {
                DeviceNoteService.add_entry(_parser.DirPath, entry);
                var tree = new Node(_parser.DirPath);

                _Console.Clear();
                _Console.WriteLine("Your new Structure! Press Any Key to proceed.");
                _Console.WriteLine("");
                NodePrinter.print_tree(tree, "", true);
                _Console.ReadLine();
            }
        }
예제 #3
0
        public static void Simple2()
        {
            var o     = new Options();
            var paths = new List <Path> {
                new Path("folder_1/folder_1_1/file_1.txt", o),
                new Path("folder_1/folder_1_1/file_2.txt", o),
                new Path("folder_1/folder_1_2/file_2.txt", o),
                new Path("folder_2/folder_2_1/file_3.txt", o),
                new Path("folder_2/folder_2_1/file_4.txt", o),
                new Path("folder_1/folder_1_2/file_5.txt", o),
                new Path("folder_3/folder_3_1", o),
                new Path("folder_3/folder_3_1/file_6.txt", o),
            };
            var root   = new Node.Folder.Root(paths);
            var result = new NodePrinter(root, o);

            var correct = @" ┬ folder_1
 ├── folder_1_1
 │    file_1.txt
 │    file_2.txt
 └── folder_1_2
      file_2.txt
      file_5.txt
 ┬ folder_2
 └── folder_2_1
      file_3.txt
      file_4.txt
 ┬ folder_3
 └── folder_3_1
      file_6.txt
".Replace("\r\n", "\n");

            Assert.AreEqual(correct, result.ToString());
        }
예제 #4
0
 public override void Print(NodePrinter p)
 {
     p.Print("visibility", Visibility);
     p.Print("type", Type);
     p.Print("name", Name);
     p.Print("expression", Expression);
 }
예제 #5
0
        public static void Simple()
        {
            var o = new Options();

            o.TrySetFromSwitch("s");

            var paths = new List <Path> {
                new Path("M  asdfsdf.txt", o),
                new Path("R  dfgdfg.txt -> ssdfds/dfgdfg.txt", o),
                new Path("A  \"ssdfds/ssdfds 2/dfgdfg.txt\"", o),
                new Path("A  \"ssdfds/ssdfds 2/fdsgfdgdfg.txt\"", o),
                new Path("A  \"ssdfds/ssdfds 2/ssdfds 3/dfgdfg.txt\"", o),
                new Path("A  \"ssdfds/ssdfds 2/ssdfds 3/fdsgfdgdfg.txt\"", o),
            };
            var root   = new Node.Folder.Root(paths);
            var result = new NodePrinter(root, o);

            var correct = @" R  dfgdfg.txt -> ssdfds/dfgdfg.txt
 M_ asdfsdf.txt
 ┬ ssdfds
 └─┬ ssdfds 2
   │  A_ dfgdfg.txt
   │  A_ fdsgfdgdfg.txt
   └── ssdfds 3
        A_ dfgdfg.txt
        A_ fdsgfdgdfg.txt
".Replace("\r\n", "\n");

            Assert.AreEqual(correct, result.ToString());
        }
예제 #6
0
 public static NodePrinter GetInstance()
 {
     if (instance == null)
     {
         instance = new NodePrinter();
     }
     return(instance);
 }
예제 #7
0
 public void Start()
 {
     NodePrinter.GetInstance().LobbyText    = LobbyText;
     NodePrinter.GetInstance().BrowserText  = BrowserText;
     NodePrinter.GetInstance().QueryText    = QueryText;
     NodePrinter.GetInstance().AnalyticText = AnalyticText;
     NodePrinter.GetInstance().panelText    = panelText;
 }
예제 #8
0
        public void print_structure()
        {
            var tree = new Node(_parser.DirPath);

            _Console.Clear();
            _Console.WriteLine("Device Structure: (Any Key to continue)");
            NodePrinter.print_tree(tree, "", true);
            _Console.ReadLine();
        }
예제 #9
0
 public void resetTool()
 {
     inputButton  = null;
     outputButton = null;
     if (NodePrinter.GetInstance().vidObj != null)
     {
         NodePrinter.GetInstance().PrintText();
     }
 }
예제 #10
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Visibility), Visibility);
     p.Print(nameof(Virtual_Override), Virtual_Override);
     p.Print(nameof(ReturnType), ReturnType);
     p.Print(nameof(Name), Name);
     p.Print(nameof(Parameters), Parameters);
     p.Print(nameof(Body), Body);
 }
예제 #11
0
        public static void Simple()
        {
            var o     = new Options();
            var paths = new List <Path>();

            paths.Add(new Path(@"file1", o));
            paths.Add(new Path(@"folder/file2", o));

            var root   = new Node.Folder.Root(paths);
            var result = new NodePrinter(root, o);

            var correct = @" file1
 + folder
    file2
".Replace("\r\n", "\n");

            Assert.AreEqual(correct, result.ToString());
        }
예제 #12
0
    public void SetMySQLQuery()
    {
        if (ut == null)
        {
            return;
        }
        Vid_Object vidObj;
        GameObject go = ut.LastObj();

        if (go != null)
        {
            vidObj = go.GetComponent <Vid_Object>();
            if (vidObj != null)
            {
                NodePrinter np = NodePrinter.GetInstance();
                np.vidObj = vidObj;
                np.PrintText();
            }
        }
    }
예제 #13
0
        public static void Complex()
        {
            var o     = new Options();
            var paths = new List <Path>();

            paths.Add(new Path(@"C:\WINDOWS\AppPatch\MUI\040C.file", o));
            paths.Add(new Path(@"C:\foo.file", o));
            paths.Add(new Path(@"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MUI", o));
            paths.Add(new Path(@"C:\WINDOWS\addins.file", o));
            paths.Add(new Path(@"C:\WINDOWS\AppPatch\MUI", o));
            paths.Add(new Path(@"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\MUI\0409.file", o));
            paths.Add(new Path(@"C:\WINDOWS\Microsoft.NET\Framework2\v2.0.50727\MUI\0409.file", o));

            var root   = new Node.Folder.Root(paths);
            var result = new NodePrinter(root, o);

            var correct = @" ┬ C:
 │  foo.file
 └─┬ WINDOWS
   │  addins.file
   ├─┬ AppPatch
   │ └── MUI
   │      040C.file
   └─┬ Microsoft.NET
     ├─┬ Framework
     │ └─┬ v2.0.50727
     │   └── MUI
     │        0409.file
     └─┬ Framework2
       └─┬ v2.0.50727
         └── MUI
              0409.file
".Replace("\r\n", "\n");

            Assert.AreEqual(correct, result.ToString());
        }
예제 #14
0
        public static void Lite()
        {
            var o = new Options();

            o.TrySetFromSwitch("s");
            o.TrySetFromSwitch("i");

            var paths = new List <Path>();

            paths.Add(new Path(@"M F1.txt", o));
            paths.Add(new Path(@"M Folder\F2.txt", o));
            paths.Add(new Path(@"! F3.txt", o));
            paths.Add(new Path(@"? Folder\F33.txt", o));
            paths.Add(new Path(@"? Folder\Folder 1\F2.txt", o));
            paths.Add(new Path(@"? Folder\Folder 1\F33.txt", o));
            paths.Add(new Path(@"? Folder\Folder 1\Folder 2\F2.txt", o));
            paths.Add(new Path(@"? Folder\Folder 1\Folder 2\F33.txt", o));

            var root   = new Node.Folder.Root(paths);
            var result = new NodePrinter(root, o);

            var correct = @" M F1.txt
 ! F3.txt
 > Folder
   M F2.txt
   ? F33.txt
   > Folder 1
     ? F2.txt
     ? F33.txt
     > Folder 2
       ? F2.txt
       ? F33.txt
".Replace("\r\n", "\n");

            Assert.AreEqual(correct, result.ToString());
        }
예제 #15
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(MethodName), MethodName);
     p.Print(nameof(Arguments), Arguments);
 }
예제 #16
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Type), Type);
     p.Print(nameof(Name), Name);
 }
예제 #17
0
 public override void Print(NodePrinter p)
 {
     p.Print("Members", Members);
 }
예제 #18
0
 public static NodePrinter GetInstance() {
     if(instance == null) {
         instance = new NodePrinter();
     }
     return instance;
 }
예제 #19
0
 public SolutionTreePrinter(NodePrinter nodePrinter)
 {
     this.nodePrinter = nodePrinter;
 }
예제 #20
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Operator), Operator);
     p.Print(nameof(Expression), Expression);
 }
예제 #21
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Arguments), Arguments);
 }
예제 #22
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Variable), Variable);
     p.Print(nameof(Expression), Expression);
 }
예제 #23
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Left), Left);
     p.Print(nameof(Operator), Operator);
     p.Print(nameof(Right), Right);
 }
예제 #24
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Variables), Variables);
 }
예제 #25
0
 private SolutionTreePrinter ()
 {
     nodePrinter = PrintNode;
 }
예제 #26
0
 public SolutionTreePrinter (NodePrinter nodePrinter)
 {
     this.nodePrinter = nodePrinter;
 }
예제 #27
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Condition), Condition);
     p.Print(nameof(Body), Body);
 }
예제 #28
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Type), Type);
     p.Print(nameof(Expression), Expression);
 }
예제 #29
0
 public virtual void Print(NodePrinter p)
 {
     throw new NotImplementedException($"{nameof(Print)} not implemented for {GetType()}");
 }
예제 #30
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(If), If);
     p.Print(nameof(Body), Body);
 }
예제 #31
0
 private SolutionTreePrinter()
 {
     nodePrinter = PrintNode;
 }
예제 #32
0
 public override void Print(NodePrinter p)
 {
     p.Print(nameof(Statements), Statements);
 }
예제 #33
0
 public override void Print(NodePrinter p)
 {
     p.Print("Classes", Classes);
 }