Sign in to follow this  
Asmageddon Prince

Made hiper plugin in CodeLab, don`t know how to create UI

Recommended Posts

Well, the current codelab let you create plugins with a few predefined UI. The other way is to get Visual C# Express, and use the package (see stickied threads) to create your plugin.

Share this post


Link to post
Share on other sites

I've changed some lines for optimisation...

1.Take src[x,y] in TEMP to extract RGBA, 1 pixel read instead 4...

2.If selection visible useless, as x,y are inside the selection...

3.Avoid same calculation in the loop, calculate it 1 time in a variable before the loop(s) : mPI = Math.PI /180.0;

Do you want me to make a UI for that ?

Share this post


Link to post
Share on other sites

I definitely recommend writing for the IndirectUI system in 3.20. Targeting v3.10 and writing your own WinForms dialog with all the data binding and other requisite clumsiness is just a waste of time. I even plan on writing documentation for it!

Share this post


Link to post
Share on other sites
I definitely recommend writing for the IndirectUI system in 3.20. Targeting v3.10 and writing your own WinForms dialog with all the data binding and other requisite clumsiness is just a waste of time. I even plan on writing documentation for it!

Of course I was thinking in this way...(at least not targeting past(soon) version).

May I ask you?

...some help to implement the list of choice control that (you should know) I'm not able (yet) to make working correctly.

...if you have found/changed something about the set ragne proprieties for the sliders.

(wounder if I could public link to beta center)

And BTW the new IndirectUI will be a great help for this plugin with a hudge of parameters (at least to code), but I'm afraid that the size of the UI in the end will force me/us to write a visualy efficient UI form for the user...

Share this post


Link to post
Share on other sites

:cry:

Only 3/5 (about) of the UI is visible on a screen wide 1600x1200...

visible:

      configUI.SetPropertyControlValue(PropertyNames.Mode, ControlInfoPropertyNames.DisplayName, "Choose the color mode");
     configUI.SetPropertyControlValue(PropertyNames.Mode, ControlInfoPropertyNames.Description, "1:RGB grey, 2:RGB normal, 3:Prim.Sec.*RGB Grey, 4:Prim.Sec.*RGB normal, 5:Blur the image");
     configUI.SetPropertyControlValue(PropertyNames.BlendMode, ControlInfoPropertyNames.DisplayName, "Choose the blend mode");
     configUI.SetPropertyControlValue(PropertyNames.BlendMode, ControlInfoPropertyNames.Description, "1:Normal, 2:Additive, 3:Substraction, 4:Multiply, 5:Lighten, 6:Darken");
     configUI.SetPropertyControlValue(PropertyNames.PercentRed, ControlInfoPropertyNames.DisplayName, "Color percentage");
     configUI.SetPropertyControlValue(PropertyNames.PercentRed, ControlInfoPropertyNames.Description, "Red");
     configUI.SetPropertyControlValue(PropertyNames.PercentGreen, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.PercentGreen, ControlInfoPropertyNames.Description, "Green");
     configUI.SetPropertyControlValue(PropertyNames.PercentBlue, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.PercentBlue, ControlInfoPropertyNames.Description, "Blue");
     configUI.SetPropertyControlValue(PropertyNames.IRed, ControlInfoPropertyNames.DisplayName, "Color include/exclude");
     configUI.SetPropertyControlValue(PropertyNames.IRed, ControlInfoPropertyNames.Description, "Red");
     configUI.SetPropertyControlValue(PropertyNames.IGreen, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.IGreen, ControlInfoPropertyNames.Description, "Green");
     configUI.SetPropertyControlValue(PropertyNames.IBlue, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.IBlue, ControlInfoPropertyNames.Description, "Blue");
     configUI.SetPropertyControlValue(PropertyNames.OpacityR, ControlInfoPropertyNames.DisplayName, "Color Opacity");
     configUI.SetPropertyControlValue(PropertyNames.OpacityR, ControlInfoPropertyNames.Description, "Red");
     configUI.SetPropertyControlValue(PropertyNames.OpacityG, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.OpacityG, ControlInfoPropertyNames.Description, "Green");
     configUI.SetPropertyControlValue(PropertyNames.OpacityB, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.OpacityB, ControlInfoPropertyNames.Description, "Blue");
     configUI.SetPropertyControlValue(PropertyNames.Lenght, ControlInfoPropertyNames.DisplayName, "Lenght");
     configUI.SetPropertyControlValue(PropertyNames.Angle, ControlInfoPropertyNames.DisplayName, "Angle");
     configUI.SetPropertyControlType(PropertyNames.Angle, PropertyControlType.AngleChooser);
     configUI.SetPropertyControlValue(PropertyNames.Intensity, ControlInfoPropertyNames.DisplayName, "Intensity");
     configUI.SetPropertyControlValue(PropertyNames.SizeX, ControlInfoPropertyNames.DisplayName, "Height of matrix");
     configUI.SetPropertyControlValue(PropertyNames.SizeY, ControlInfoPropertyNames.DisplayName, "Width of matrix");

invisible:

      configUI.SetPropertyControlValue(PropertyNames.SwapColors, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.SwapColors, ControlInfoPropertyNames.Description, "Swap P/S Colors");
     configUI.SetPropertyControlValue(PropertyNames.InvertColors, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.InvertColors, ControlInfoPropertyNames.Description, "Invert Colors");
     configUI.SetPropertyControlValue(PropertyNames.Vector, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.Vector, ControlInfoPropertyNames.Description, "Vector (use Angle Y/N)");
     configUI.SetPropertyControlValue(PropertyNames.VectorOffset, ControlInfoPropertyNames.DisplayName, "VectorOffset");
     configUI.SetPropertyControlType(PropertyNames.VectorOffset, PropertyControlType.AngleChooser);
     configUI.SetPropertyControlValue(PropertyNames.VectorAngle, ControlInfoPropertyNames.DisplayName, "Vector Angle");
     configUI.SetPropertyControlValue(PropertyNames.Vector, ControlInfoPropertyNames.Description, "off:By angle offset, on:By angle+90 offset");
     configUI.SetPropertyControlValue(PropertyNames.OffsetMode, ControlInfoPropertyNames.DisplayName, "Offset Mode");
     configUI.SetPropertyControlValue(PropertyNames.OffsetMode, ControlInfoPropertyNames.Description, "off:Normal offset, on:Vector offset");
     configUI.SetPropertyControlValue(PropertyNames.RandXoffset, ControlInfoPropertyNames.DisplayName, "Random offset");
     configUI.SetPropertyControlValue(PropertyNames.RandXoffset, ControlInfoPropertyNames.Description, "X");
     configUI.SetPropertyControlValue(PropertyNames.RandYoffset, ControlInfoPropertyNames.DisplayName, string.Empty);
     configUI.SetPropertyControlValue(PropertyNames.RandYoffset, ControlInfoPropertyNames.Description, "Y");
     configUI.SetPropertyControlValue(PropertyNames.AngleVariation, ControlInfoPropertyNames.DisplayName, "Angle Variation");
     configUI.SetPropertyControlValue(PropertyNames.AngleMod1, ControlInfoPropertyNames.DisplayName, "Angle mod1");
     configUI.SetPropertyControlValue(PropertyNames.AngleMod2, ControlInfoPropertyNames.DisplayName, "Angle mod2");

Share this post


Link to post
Share on other sites
:cry:

Only 3/5 (about) of the UI is visible on a screen wide 1600x1200...[attachment=0]asfx.png[/attachment]

Mabye in VS C# 2008 Express (yes, it's out and the old template still works apart from the PdnLib refrence) change the design to something more rectangular?

Mabye a bit like the GenTree plug-in?

Share this post


Link to post
Share on other sites
:cry:

Only 3/5 (about) of the UI is visible on a screen wide 1600x1200...[attachment=0]asfx.png[/attachment]

Mabye in VS C# 2008 Express (yes, it's out and the old template still works apart from the PdnLib refrence) change the design to something more rectangular?

Mabye a bit like the GenTree plug-in?

It's like that because I'm using the IndirectUI possibilities...I'll have to create my own form then...

Share this post


Link to post
Share on other sites
What does this effect allow for?

lol, I don't know (yet), it's some kind of conditional color tint with random/noisy things...

I've tested it with CodeLab, but then I have to change manually the parameters...

I even don't know how to call it...

@Asmageddon Prince: could you give some more details...

Share this post


Link to post
Share on other sites
What does this effect allow for?

lol, I don't know (yet), it's some kind of conditional color tint with random/noisy things...

I've tested it with CodeLab, but then I have to change manually the parameters...

I even don't know how to call it...

@Asmageddon Prince: could you give some more details...

Well, the UI is ginarmous to say the least, and you can't really create a form easily from it.

BTW, as far as I can see, VS C# Express 2005 and 2008 are EXACTLY the same.

Share this post


Link to post
Share on other sites
BTW, as far as I can see, VS C# Express 2005 and 2008 are EXACTLY the same.

At first glance, 2008 is just slightly prettier. Dig a little deeper, and you'll find gobs of new features and enhancements to old ones. Of course, I still recommend fullscale Visual Studio over the express editions any day, unless you're writing an XNA game.

Share this post


Link to post
Share on other sites
BTW, as far as I can see, VS C# Express 2005 and 2008 are EXACTLY the same.

At first glance, 2008 is just slightly prettier. Dig a little deeper, and you'll find gobs of new features and enhancements to old ones. Of course, I still recommend fullscale Visual Studio over the express editions any day, unless you're writing an XNA game.

I'll check the change log......they better have made good use of those 3 years......

They don't have a change log >_>

Share this post


Link to post
Share on other sites

@MattBlackLamb: Property system doesn't have an implementation for radio buttons, I think. It does, however, have dropdowns. But MadJik hasn't figured out how to make those work yet, and I haven't even bothered to try, as none of my new plugins need one yet.

@Andrew D: The changes aren't just in Visual Studio; you'll need to poke around in .NET's change log to see all of what's new.

Share this post


Link to post
Share on other sites
BTW, as far as I can see, VS C# Express 2005 and 2008 are EXACTLY the same.
Then you aren't looking hard enough :D
......they better have made good use of those 3 years......

Off Topic, but to be fair, it's only just over 2 years (2005-10-27 -> 2007-11-19)

And you can't really make statements of entitlement like that, it's not like you paid for it :lol:

Share this post


Link to post
Share on other sites
BTW, as far as I can see, VS C# Express 2005 and 2008 are EXACTLY the same.
Then you aren't looking hard enough :D
......they better have made good use of those 3 years......

Off Topic, but to be fair, it's only just over 2 years (2005-10-27 -> 2007-11-19)

And you can't really make statements of entitlement like that, it's not like you paid for it :lol:

Good point...... :)

Anyways, I've had a little go at trying to get it done....got pretty much nowhere......mainly because I have no idea how to create the forms used in it.....even though I have PaintDotNet.System and all the other .dll's as refrences.

Share this post


Link to post
Share on other sites
:cry:

Only 3/5 (about) of the UI is visible on a screen wide 1600x1200...[attachment=0]asfx.png[/attachment]

Can you send me the source code for what you're working on here? It's *supposed* to add a scroll bar if it gets too big.

Share this post


Link to post
Share on other sites

Ok, I've corrected some layout issues that should make it work fine using IndirectUI. If the controls overflow the working area of the screen, then it will introduce a scrollbar automatically.

I still cannot reproduce the Ctrl+F issue you claim to have. I changed your "mode" property to use a StaticListChoiceProperty, and everything worked perfectly fine.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this