Esempio n. 1
0
        private static void checkAllChildren(ExportedObjectViewEntity parent)
        {
            parent.Children.ForEach(e => {
                e.IsChecked = parent.IsChecked;

                if (e.Children.Any())
                {
                    checkAllChildren(e);
                }
            });
        }
Esempio n. 2
0
        private static void checkParents(ExportedObjectViewEntity parent)
        {
            while (true)
            {
                parent.IsChecked = parent.Children.All(e => e.IsChecked);

                if (parent.Parent != null)
                {
                    parent = parent.Parent;

                    continue;
                }

                break;
            }
        }
Esempio n. 3
0
        public void onExportedObjectViewEntityChanged(object sender, PropertyChangedEventArgs args)
        {
            if (isSelf)
            {
                return;
            }

            ExportedObjectViewEntity entity = sender as ExportedObjectViewEntity;

            if (entity == null)
            {
                return;
            }

            switch (args.PropertyName)
            {
            case "IsChecked":
            {
                isSelf = true;

                checkAllChildren(entity);

                checkParents(entity.Parent);

                isSelf = false;

                break;
            }

            case "IsSelected":
            {
                if (entity.IsSelected && Path.HasExtension(entity.Filename))
                {
                    messenger.Send(new ExportedObjectSelectedMessage {
                            Filename = entity.Filename
                        });
                }

                break;
            }

            default:
            {
                break;
            }
            }
        }
Esempio n. 4
0
    private static void checkParents(ExportedObjectViewEntity parent) {
      while(true) {
        parent.IsChecked = parent.Children.All(e => e.IsChecked);

        if (parent.Parent != null) {
          parent = parent.Parent;

          continue;
        }

        break;
      }
    }
Esempio n. 5
0
    private static void checkAllChildren(ExportedObjectViewEntity parent) {
      parent.Children.ForEach(e => {
        e.IsChecked = parent.IsChecked;

        if (e.Children.Any()) checkAllChildren(e);
      });
    }