internal FileViewItem(DirectoryInfo parentDirectory, FileSystemInfo fsi, FileManagerControlBase fileView) { this._fsi = fsi; this._fileView = fileView; RelativePath = fsi.FullName.Substring(parentDirectory.FullName.TrimEnd(Path.DirectorySeparatorChar).Length + 1).Replace(Path.DirectorySeparatorChar, '/'); }
internal void RegisterComponent(FileManagerControlBase control) { fileMangerControls[control.ClientID] = control; }
void RaiseCallbackEvent(string eventArgument) { if (eventArgument == null) return; // Parse eventArgument string[] args = eventArgument.Split(new char[] { EventArgumentSplitter }, 3); _callbackControl = (FileManagerControlBase)fileMangerControls[args[0]]; _callbackCommand = (FileManagerCommands)Enum.Parse(typeof(FileManagerCommands), args[1]); _callbackCommandArgument = null; if (args.Length > 2) _callbackCommandArgument = args[2]; switch (_callbackCommand) { case FileManagerCommands.Refresh: break; case FileManagerCommands.FileViewSort: break; case FileManagerCommands.FileViewChangeView: break; case FileManagerCommands.FileViewShowInGroups: break; case FileManagerCommands.FileViewNavigate: _callbackResult = ProcessFileViewNavigate(_callbackControl.ResolveFileManagerItemInfo(DecodeURIComponent(_callbackCommandArgument))); break; case FileManagerCommands.ExecuteCommand: string[] inds = _callbackCommandArgument.Split(':'); _callbackResult = ProcessExecuteCommand(_callbackControl.SelectedItems, int.Parse(inds[0], null), int.Parse(inds[1], null)); break; default: if (ReadOnly) _callbackResult = String.Empty; else { switch (_callbackCommand) { case FileManagerCommands.Rename: if (!AllowDelete) { _callbackResult = String.Empty; break; } string[] paths = _callbackCommandArgument.Split(EventArgumentSplitter); _callbackResult = ProcessRename(_callbackControl.ResolveFileManagerItemInfo(DecodeURIComponent(paths[0])), DecodeURIComponent(paths[1])); break; case FileManagerCommands.NewDocument: int index = int.Parse(_callbackCommandArgument, null); NewDocumentTemplate template = Templates[index]; FileManagerItemInfo dir = _callbackControl.GetCurrentDirectory(); _callbackResult = ProcessNewDocument(dir, template); break; case FileManagerCommands.NewFolder: _callbackResult = ProcessNewFolder(_callbackControl.GetCurrentDirectory()); break; case FileManagerCommands.SelectedItemsDelete: if (!AllowDelete) { _callbackResult = String.Empty; break; } EvaluateSelectedItemsActionCommand(IZ.WebFileManager.SelectedItemsAction.Delete); break; case FileManagerCommands.SelectedItemsCopyTo: EvaluateSelectedItemsActionCommand(IZ.WebFileManager.SelectedItemsAction.Copy); break; case FileManagerCommands.SelectedItemsMoveTo: if (!AllowDelete) { _callbackResult = String.Empty; break; } EvaluateSelectedItemsActionCommand(IZ.WebFileManager.SelectedItemsAction.Move); break; default: String message = "Not Implemented Command \"{0}\""; throw new ArgumentException(String.Format(null, message, _callbackCommand)); } } break; } }
internal FileViewItem(FileSystemInfo fsi, FileManagerControlBase fileView) { this._fsi = fsi; this._fileView = fileView; }