Jump to content

pyrochild

Members
  • Posts

    11,364
  • Joined

  • Last visited

  • Days Won

    44

Everything posted by pyrochild

  1. Update! ScriptLab and Curves+ are now on GitHub! More to come as time allows. Some changes in ScriptLab: - Improve horrible UI decisions - give me a break, I was in high school. - Fix hang when close button clicked while rendering - Individual progress bars for each effect - Change multiple step's colors at once - Fix: sometimes selection highlight would remain in script after an item was no longer selected - More robust script-saving
  2. Curves+ is now on GitHub! Go contribute! https://github.com/bsneeze/pdn-curvesplus
  3. ScriptLab is now open source and on GitHub! https://github.com/bsneeze/pdn-scriptlab
  4. Hello friends, I have for you a minor update to fix some major bugs in ScriptLab: - Fixed: Clicking in the Available list when there are no results for the search term would crash ScriptLab - Fixed: Clicking Cancel while rendering would sometimes hang Paint.NET Hooray
  5. Hello friends, I have for you a minor update to fix some major bugs: - Fixed: Clicking in the Available list when there are no results for the search term would crash the plugin - Fixed: Clicking Cancel while rendering would sometimes hang Paint.NET Hooray
  6. Trying to build to DLL always gives me the error message: --------------------------- Build Error --------------------------- Before you can save as a DLL you must first save your source file using the File > Save as... menu. --------------------------- OK ---------------------------
  7. ScriptLab gathers effect types this way: public static IEnumerable<Type> GatherEffects() { List<Assembly> assemblies = new List<Assembly>(); List<Type> ec = new List<Type>(); // PaintDotNet.Effects.dll assemblies.Add(Assembly.GetAssembly(typeof(Effect))); // TARGETDIR\Effects\*.dll string homeDir = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location); string effectsDir = Path.Combine(homeDir, "Effects"); bool dirExists; try { dirExists = Directory.Exists(effectsDir); } catch { dirExists = false; } if (dirExists) { string fileSpec = "*.dll"; string[] filePaths = Directory.GetFiles(effectsDir, fileSpec); foreach (string filePath in filePaths) { Assembly pluginAssembly = null; try { pluginAssembly = Assembly.LoadFrom(filePath); assemblies.Add(pluginAssembly); } catch { } } } foreach (Assembly a in assemblies) { try { foreach (Type t in a.GetTypes()) { if (t.IsSubclassOf(typeof(Effect)) && !t.IsAbstract && !t.IsObsolete(false)) { ec.Add(t); } } } catch { } } return ec; } I think this code was copied from Paint.NET's source code back when the source was available (and modified since), so it's not accessing PdN's internal EffectsCollection code.After instantiating an Effect from the Type collection, you need to check for effect.Category == EffectCategory.DoNotDisplay. There's an effect with that category that you can display - the RotateZoomEffect. It's marked as DoNotDisplay so it can be manually placed in the Layers menu instead of Effects. If you want to render an effect multithreaded like Paint.NET does you'll need to check for effect.CheckForEffectFlags(EffectFlags.SingleRenderCall) and effect.CheckForEffectFlags(EffectFlags.SingleThreaded). Or just always render on 1 thread but performance will suffer compared to running an effect natively.
  8. Bug: If you make a change to the script, then click OK before CodeLab rebuilds the effect, the change will not be applied. (Yeah, yeah, "just wait the 3 seconds, pyro")
  9. What OS and mail client? The send feedback thing does just use a mailto: link, but I don't think Chrome does anything with it. Try changing you default mail client. Also, nearest neighbor is the correct name for that scaling algorithm: https://en.wikipedia.org/wiki/Image_scaling#Scaling_methods
  10. Update: - Fixed color window showing alpha = 0 when a color is opaque black
  11. Update: - Fixed color window showing alpha = 0 when a color is opaque black
  12. Update: - Fixed color window showing alpha = 0 when a color is opaque black
  13. Update: - Fixed color window showing alpha = 0 when a color is opaque black
  14. Update: - Fixed color window showing alpha = 0 when a color is opaque black
  15. Update: - Fixed color window showing alpha = 0 when a color is opaque black
  16. Updated - Works with Levels effect - Can script another ScriptLab instance. I don't know why you would want to do this, but now you can. Scriptception! - Fixed progress bar not filling for certain effects like Red Eye Removal (effects using SingleRenderCall) - Changes begin rendering as soon as the currently rendering effect can be cancelled instead of waiting for the whole script to render before starting over - Fixed some crashes when moving/changing effects while rendering - Cancel now cancels as soon as possible instead of waiting for the whole script to finish (or hanging Paint.NET...) - OK no longer rerenders the whole script - Fixed some load errors while loading scripts w/ missing effects - Load/save errors now show detailed exceptions for easier troubleshooting - Fixed color window showing alpha = 0 when a color is opaque black - Misc performance improvements
  17. Updated: ScriptLab - Works with Levels effect - Can script another ScriptLab instance. I don't know why you would want to do this, but now you can. Scriptception! - Fixed progress bar not filling for certain effects like Red Eye Removal (effects using SingleRenderCall) - Changes begin rendering as soon as the currently rendering effect can be cancelled instead of waiting for the whole script to render before starting over - Fixed some crashes when moving/changing effects while rendering - Cancel now cancels as soon as possible instead of waiting for the whole script to finish (or hanging Paint.NET...) - OK no longer rerenders the whole script - Fixed some load errors while loading scripts w/ missing effects - Load/save errors now show detailed exceptions for easier troubleshooting - Fixed color window showing alpha = 0 when a color is opaque black - Misc performance improvements Gradient Mapping, Grid Warp, Liquify, Smudge, Splatter, and Twist - Fixed color window showing alpha = 0 when a color is opaque black
  18. We're trying out a new kind of CAPTCHA to hopefully reduce the amount of spam.
  19. Make sure you're saving with Bit Depth as Auto-detect, 32-bit or 8bit in the PNG save configuration dialog. 24 -bit does not save the alpha (transparency) channel.
  20. Settings -> User Interface -> [ ] Show image previews in the Windows taskbar
  21. 1 - default script location and a list in the UI - Good idea 2 - dyanmic previews - Also a good idea. I think there was some reason it can't do this, but it's been a long time! I'll take a look. 3 - saving scripts to paint.net Effects menu - This is probably not gonna happen. 4 - effect properties relative to image properties - I don't think this would be possible without a major rewrite. 5 - open source - Maybe someday
  22. This reproduces for me. I'll look into it. Did you try downloading the current version of the plugin? What's the error? What are you doing when it happens?
  23. Sounds like your download is corrupted. Clear your browser cache and try a fresh download.
×
×
  • Create New...