Comments (5)
Likely won't happen.
Components do not have any association with other components other than their ID name. Even if we did manually create a grouping to make sets of components, this type of sorted layout in the GUI would require a bunch of work to get it working with the way Config Presets currently handles custom fields.
from config-presets.
A visual separation doesn't seem too difficult to achieve, fields_checkboxgroup is fairly standalone and might be rendered in a loop by grouping extension ids from the base list (the naming scheme is fairly reliable at least in the major ones).
What I think might pose a problem is components affecting other components; not sure gradio supports this natively, had to use tabs in the past, Vlad's added some hide / unhide thing in recent versions, but I suspect it's some js hackery. Perhaps instead, if the group checkbox is unchecked then all children values are simply ignored without changing the check values themselves.
from config-presets.
@Symbiomatrix not sure if this is still on your radar but I still yearn for this functionality fairly regularly -- did you do any exploration on this? Thanks!
from config-presets.
or just a master checkbox to toggle all checkboxes? Im tired turning off check boxes when my need is only few components among dozens I've produced. Any thought? Thanks.
from config-presets.
@marcsyp Sorry, never check notifications.
What zyin said way back still holds true - getting a high level of polish on the particular layout and functionality you propose is a lot of gui work, and I daresay for a relatively esoteric QOL improvement. Adding js to the mix further complicates things (and I know too little js to predict what may arise or how to do it).
A patchwork solution can be achieved with relative ease: as I'd suggested, creating group level checkboxes, dumping them together before all the component checkboxes, then using a group-components relation to ignore all the unchecked groups when saving.
- First, you add another set of checkboxes for the groups, similar to
fields_checkboxgroup
; only difference is changingcomponent_ids
to a list containing the group checkboxes' displayed names.Config-Presets/scripts/config_presets.py
Line 942 in 1351554
- The group needs to be rendered above fields over here.
Config-Presets/scripts/config_presets.py
Line 1158 in 1351554
- Add the new set of checkboxes as an input parameter to the
save_config
bit.Config-Presets/scripts/config_presets.py
Line 1119 in 1351554
- Add the new parameter to the function signature (actually the func within save, it's just a wrapper for customising func).
Config-Presets/scripts/config_presets.py
Line 1186 in 1351554
- Add a "if group checkbox is off then continue" condition to this portion of the saving to ignore unchecked groups. A simple hardcoded dictionary in the early parts of the program will serve nicely, eg
DGROUPS = {"gen_params": ["txt2img_sampling", "txt2imgsteps" ...], "controlnet-0":[...
, or one could get fancy and assign to it all components whose name is similar (eg"controlnet-0":[comp for comp in self.txt2img_component_ids if "ControlNet-0" in comp]
).Config-Presets/scripts/config_presets.py
Line 1202 in 1351554
from config-presets.
Related Issues (20)
- UI elements don't show up in 1.6 HOT 9
- Save Script name instead of index HOT 5
- BUG: Config Presets breaks in A1111 v1.6 HOT 1
- Save causes error. HOT 5
- update my stable diffusion doesn't appear anymore HOT 2
- aDetailer Section Now Broken - Extension Load Fails HOT 6
- Tiled Diffusion - Tiled VAE elements changed IDs HOT 1
- Custom Options not applying HOT 4
- Feature request: Override setting field. HOT 1
- Confused on how to populate aDetailer fields in the add preset feature. HOT 4
- Feature Request : Ability to save Adetailer Separate Checkpoint HOT 1
- How do I save prompt and neg prompts? HOT 6
- [BUG] I get ERROR icons when saving sometimes AUTOMATIC1111 v1.7.0 HOT 9
- Uncommenting controlnet components breaks extension HOT 4
- Adding an Extension Checkbox Option HOT 5
- Config Presets not showing on img2img tab HOT 6
- Component with id 2096 not a valid input component. HOT 1
- The 4/13/2024 update breaks compatibility with Forge UI HOT 3
- Incompatibility with Tiled Diffusion HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from config-presets.