private void OnDirRename(object o, EventArgs args) { TreePath treepath; TreeViewColumn column; performingtask = PerformingTask.Renaming; text_render.Editable = true; tv.GetCursor(out treepath, out column); tv.SetCursor(treepath, column, true); }
// FIXME: When the scrollbars of the directory list // are shown, and we perform a new dir action // the column is never edited, but Populate is called private void OnNewDir(object o, EventArgs args) { TreeIter iter; TreePath treepath; TreeViewColumn column; performingtask = PerformingTask.CreatingNew; text_render.Editable = true; iter = store.AppendValues(DesktopService.GetPixbufForFile(CurrentDir, Gtk.IconSize.Menu), "folder name"); treepath = tv.Model.GetPath(iter); column = tv.GetColumn(0); tv.SetCursor(treepath, column, true); }
private void OnDirEdited(object o, EditedArgs args) { text_render.Editable = false; switch (performingtask) { case PerformingTask.Renaming: TreeIter iter; tv.Model.IterNthChild(out iter, Int32.Parse(args.Path)); string oldpath = (string)store.GetValue(iter, 1); if (oldpath != args.NewText) { try { System.IO.Directory.Move(System.IO.Path.Combine(CurrentDir, oldpath), System.IO.Path.Combine(CurrentDir, args.NewText)); } catch (Exception ex) { string message = GettextCatalog.GetString("Could not rename folder '{0}' to '{1}'", oldpath, args.NewText); LoggingService.LogError(message, ex); MessageService.ShowException(ex, message); } finally { Populate(); } } break; case PerformingTask.CreatingNew: System.IO.DirectoryInfo dirinfo = new DirectoryInfo(CurrentDir); try { dirinfo.CreateSubdirectory(args.NewText); } catch (Exception ex) { string message = GettextCatalog.GetString("Could not create new folder '{0}'", args.NewText); LoggingService.LogError(message, ex); MessageService.ShowException(ex, message); } finally { Populate(); } break; default: LoggingService.LogError("FileBrowser: Reached unknown case in OnDirEdited"); break; } performingtask = PerformingTask.None; }
// FIXME: When the scrollbars of the directory list // are shown, and we perform a new dir action // the column is never edited, but Populate is called private void OnNewDir(object o, EventArgs args) { TreeIter iter; TreePath treepath; TreeViewColumn column; performingtask = PerformingTask.CreatingNew; text_render.Editable = true; tv.Reorderable = false; iter = store.AppendValues (FileIconLoader.GetPixbufForFile (CurrentDir, 24), "folder name"); treepath = tv.Model.GetPath(iter); column = tv.GetColumn (0); tv.SetCursor (treepath, column, true); }
private void OnDirRename(object o, EventArgs args) { TreePath treepath; TreeViewColumn column; performingtask = PerformingTask.Renaming; text_render.Editable = true; tv.GetCursor (out treepath, out column); tv.SetCursor (treepath, column, true); }
private void OnDirEdited(object o, EditedArgs args) { text_render.Editable = false; switch (performingtask) { case PerformingTask.Renaming: TreeIter iter; tv.Model.IterNthChild (out iter, Int32.Parse (args.Path)); string oldpath = (string) store.GetValue (iter, 1); if (oldpath != args.NewText) { try { System.IO.Directory.Move (System.IO.Path.Combine(CurrentDir, oldpath), System.IO.Path.Combine(CurrentDir, args.NewText)); } catch (Exception ex) { messageService.ShowError (ex, String.Format (GettextCatalog.GetString ("Could not rename folder '{0}' to '{1}'"), oldpath, args.NewText)); } finally { Populate (); } } break; case PerformingTask.CreatingNew: System.IO.DirectoryInfo dirinfo = new DirectoryInfo (CurrentDir); try { dirinfo.CreateSubdirectory(args.NewText); } catch (Exception ex) { messageService.ShowError (ex, String.Format (GettextCatalog.GetString ("Could not create new folder '{0}'"), args.NewText)); } finally { Populate (); } break; default: Console.WriteLine ("This should not be happening"); break; } performingtask = PerformingTask.None; }
private void OnDirEdited (object o, EditedArgs args) { text_render.Editable = false; switch (performingtask) { case PerformingTask.Renaming: TreeIter iter; tv.Model.IterNthChild (out iter, Int32.Parse (args.Path)); string oldpath = (string) store.GetValue (iter, 1); if (oldpath != args.NewText) { try { System.IO.Directory.Move (System.IO.Path.Combine(CurrentDir, oldpath), System.IO.Path.Combine(CurrentDir, args.NewText)); } catch (Exception ex) { string message = GettextCatalog.GetString ("Could not rename folder '{0}' to '{1}'", oldpath, args.NewText); LoggingService.LogError (message, ex); MessageService.ShowException (ex, message); } finally { Populate (); } } break; case PerformingTask.CreatingNew: System.IO.DirectoryInfo dirinfo = new DirectoryInfo (CurrentDir); try { dirinfo.CreateSubdirectory(args.NewText); } catch (Exception ex) { string message = GettextCatalog.GetString ("Could not create new folder '{0}'", args.NewText); LoggingService.LogError (message, ex); MessageService.ShowException (ex, message); } finally { Populate (); } break; default: LoggingService.LogError ("FileBrowser: Reached unknown case in OnDirEdited"); break; } performingtask = PerformingTask.None; }