resavetool.c 1011 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. [WorkbenchPluginAttribute("Re-Save Tool", "Saves all files with given extension", "", "", {"ResourceManager"})]
  2. class ResavePlugin: WorkbenchPlugin
  3. {
  4. [Attribute(".layout", "editbox", "File extension" )]
  5. string Extension;
  6. WBModuleDef m_module;
  7. void Resave(string file)
  8. {
  9. Print("Resaving: " + file);
  10. m_module.SetOpenedResource(file);
  11. m_module.Save();
  12. }
  13. override void Run()
  14. {
  15. if (Workbench.ScriptDialog("Resave", "Which files you want to resave?", this))
  16. {
  17. m_module = Workbench.GetModule("ResourceManager");
  18. Workbench.SearchResources(Extension, Resave);
  19. }
  20. }
  21. override void RunCommandline()
  22. {
  23. m_module = Workbench.GetModule("ResourceManager");
  24. if (m_module.GetCmdLine("-extension", Extension))
  25. {
  26. Extension.Replace("\"", "");
  27. }
  28. Workbench.SearchResources(Extension, Resave);
  29. Workbench.GetModule("ResourceManager").Close();
  30. }
  31. [ButtonAttribute("Re-Save")]
  32. bool OK()
  33. {
  34. return true;
  35. }
  36. [ButtonAttribute("Cancel")]
  37. bool Cancel()
  38. {
  39. return false;
  40. }
  41. };