Allow plugins to use color picker

As a Roblox developer, it is currently too hard to create a plugin that allows a user to pick a Color3 or BrickColor.

My request is to create some API to allow developers to utilize the built-in Color3 and BrickColor pickers. Such a feature would allow developers to easily add features into plugins that allow users to select colors to be used.

For instance, calling plugin:PromptColor3() would return either a Color3 value if picked, or nil if cancelled. Calling the method would open up the built-in color picker:

colorpicker

There could also be plugin:PromptBrickColor() because why not. I’m sure this feature could also be expanded to such things such as the built-in windows for NumberSequences and stuff.

182 Likes

It would also be particularly useful to have some ability to have real time updates to which color the user has selected. Perhaps that could be accomplished by exposing a ColorPicker object with .Changed and .Closed events.

29 Likes

Glad that this seems to have gotten a lot of support. I agree with @TheNickmaster21’s point entirely too.

9 Likes

I was just about to post my own version of this. I realize this is an old post, but I’d rather bump an old post and bring it back than create a separate one.

5 Likes

It may be old but I’m glad you bumped it. I still really want access to native pickers like this for plugins!

6 Likes

I really wish this was a thing already. Having something like this would greatly improve my plugin development workflow. Another benefit from this would be that it could empower my plugins’ users with the ability to sample colors from their screens.

11 Likes

Plugin widgets would greatly benefit from adding this feature. There’s so many uses for a colour picker API

5 Likes

I’m currently making a plugin that has options for colorizing parts, and segments. A function to get the color picker or brickcolor would be more efficient in my workflow.

My current workaround is having users input Color3 values into a TextBox, works, yet would be easier for a developer to pick through the color picker than input numbers IMO.

4 Likes

This needs to be a feature! While other open-source options do exist, they will never be as seamless or accessible as the native picker. Developers already know how to use the Studio color picker, and alternatives introduce friction, especially if multiple plugins don’t agree on the same color picker.

12 Likes

This needs a bump. I am in full agreement with being about to prompt the color picker.

As a plugin developer, it is difficult to make a color picker for my plugin which has as much customizability and ease of use as this.

Currently, I have a multiple-choice color picker limiting customization. I would have used a textbox that prompts the user to add an RGB value, but this isn’t great UX and can be confusing on what the user is to enter if they do not know RGB values.

I beg of this feature or some sort of color picker as versatile as this.

5 Likes

I do find that this would be IMMENSELY useful as it would save the hassle as well as being generally a lot more streamlined and easy to use.

However I have found a neat alternative which is built to be used within plugins and retains the same amount, if not more features than the native color picker: ColorPane

You can use GetObjects on my plugin

I took a Color Picker from something I worked on once and turned mouse functions into a sorta hack with ImageButton, since that has everything I need to get Mouse X Y.

I don’t provide a documentation for it though, feel free to discover it.

It’s still a terrible thing, as it’s a dock gui and it likes docking, so it’s kinda annoying, but it works.

Just don’t use the arrow buttons, I haven’t fixed those.

It would be much easier for the plugin itself to create a colour picker that fits the right design and features.

1 Like

Just add a custom color picker?

If your UI raises usability concerns, and the user is confused on how to pick a COLOR because there are more than one color pickers, I think the only issue here is your UI.

A custom color picker is possible. The only limitation is if you’re not doing it in the CoreGUI. You can’t use stuff like UserInputService that is outside of the game window.

I do it on the DockGUI and if the mouse leaves the window, it will still think that I am holding down Mouse1. So when I move my mouse back it would change the color again until I press Mouse1 again and let go of it.

So I had to make the height of the entire window a bit bigger to prevent that from happening a lot.

Another thing I noticed is that Buttons don’t do the default highlight and stuff, similar to CanvasGroup (Which is okay, really)

1 Like

I wanted to bump this thread for 2024 :slight_smile: Would be such a good addition.

As for the idea you should just make your own custom one. That’s a bad take in my opinion.
For one, it is what we are all doing currently and the suggestion would not stop one from making/using a custom widget.
Next, it would be much better to use the existing widget, making a custom colour picker for the sake of it is a good academic exercise but when you are making a plugin not only does one want to focus on the actual thing your plugin is doing but why add extra problems for the future if roblox change things about their colour picker. Why give the user even a moments thought about how to navigate and operate a tool, one already exists, one that users are already familiar with.
Finally, it is no accident that the standard colour picker has not changed much since the early days of windows. So if you think that you can just make a colour picker that is more intuitive AND more powerful for both new and old users that is somehow an improvement on the default one then ship it!, be the guy (or gal) that sets the new standard :grin:

5 Likes