Skip to content

Genetics UI rework and code refactoring#91

Open
Luca-Guettinger wants to merge 10 commits intoGTNewHorizons:masterfrom
Luca-Guettinger:feature/genetics-ui-rework
Open

Genetics UI rework and code refactoring#91
Luca-Guettinger wants to merge 10 commits intoGTNewHorizons:masterfrom
Luca-Guettinger:feature/genetics-ui-rework

Conversation

@Luca-Guettinger
Copy link
Copy Markdown

@Luca-Guettinger Luca-Guettinger commented Apr 6, 2026

Genetics UI Rework

Moving genetics GUIs over to MUI2.

What changed

  • Fixes a bug where searching in the Gene Bank triggers NEI bookmarks or NEI in general.
  • Added ModularUI2, ServerUtilities, GTNHLib (transitive)
  • New IMui2MachineGuiProvider interface so machines can provide MUI2 panels
  • TileEntityMachine now implements IGuiHolder<PosGuiData>, description packet rewritten to NBT sync
  • GregTech theme integrated into MUI2 GUIs
  • Ripped out the old per-machine window classes and reflection stuff from GeneticsGUI, only Analyst/MasterRegistry/Registry still use the old path
  • Deleted old GUI classes ControlGene and ControlGeneScroll, replaced by MUI2 widgets
  • Cached enum .values() into static VALUES
  • Machines can be toggled on/off with a button in the GUI, saved to NBT
  • Gene bank now shows discovered genes from your whole ServerUtilities team, not just your own (GeneTracker.getDisplayTracker())
  • Reworked gene database UI
  • Fixed fufilled typo, removed some dead code
  • NEI Filter now works in all Genetics Machines
  • Clicking on the Progress bar on a Machine shows you all recipes avaliable for this machine

Screenshots

Gene Bank:
image
image
*the filters are on all pages

Isolator:
image
image

Sequencer:
image
image

Polymeriser:
image
image

Inoculator:
image
image

Analyzer:
image
image

Incubator:
image
image

Genepool:
image
image

Acclimatiser:
image
image

Splicer:
image
image

@KleinGrrmpf
Copy link
Copy Markdown

KleinGrrmpf commented Apr 6, 2026

These look great! I'm a little sad to see the nice progress animation gone, but well... One thing for the Sequencer, I think having the line about whose gene library the genes will be sequenced into should stay! Or well, the team name at least!

@KleinGrrmpf
Copy link
Copy Markdown

Oh, and one thing for the Gene Bank: Can you click TAB and toggle the search like that? Would be a little QoL feature

@Luca-Guettinger
Copy link
Copy Markdown
Author

These look great! I'm a little sad to see the nice progress animation gone, but well... One thing for the Sequencer, I think having the line about whose gene library the genes will be sequenced into should stay! Or well, the team name at least!

Yeah, animations are difficult to implement in smaller GUIs. If you have an idea on how to integrate them into a smaller format, I’d love to change that. ^^

I added the “sequenced by” message. Technically, it would have been visible in the owner section, but it’s probably easier to understand what’s happening if there’s explicit text. I’d probably rework that part a bit once gtnhTeams is merged, but until then, this is fine.

@Luca-Guettinger
Copy link
Copy Markdown
Author

Oh, and one thing for the Gene Bank: Can you click TAB and toggle the search like that? Would be a little QoL feature

yea not tab absoulty does not work at all at the moment, good input, i will adjust it.
image

@Luca-Guettinger
Copy link
Copy Markdown
Author

Luca-Guettinger commented Apr 7, 2026

shift tab goes back 1, tab goes 1 forward:

2026-04-07.19-34-11.mp4

@Luca-Guettinger Luca-Guettinger marked this pull request as ready for review April 7, 2026 17:47
@ah-OOG-ah
Copy link
Copy Markdown
Member

Yeah, animations are difficult to implement in smaller GUIs. If you have an idea on how to integrate them into a smaller format, I’d love to change that. ^^

Is there a reason the UIs have to be smaller? Keeping the stye and flavor of Binnie's is important IMO, I don't think that should be discarded for the sake of cleaner code.

Also, why are they all blue?

@Luca-Guettinger
Copy link
Copy Markdown
Author

Luca-Guettinger commented Apr 7, 2026

Yeah, animations are difficult to implement in smaller GUIs. If you have an idea on how to integrate them into a smaller format, I’d love to change that. ^^

Is there a reason the UIs have to be smaller? Keeping the stye and flavor of Binnie's is important IMO, I don't think that should be discarded for the sake of cleaner code.

Also, why are they all blue?

its kinda hard to make the player inventory look good if its much wider, this part here:
image
just looks bad imo, might be a personal preference tho.

The Idea was to make them more like gt machines thats also why they are blue. I could change that to the same color as the carpenter for example, should i try that and send some more screenshots?

I could also try other specific stuff if you have any suggestions.

@KleinGrrmpf
Copy link
Copy Markdown

Oh, and one thing for the Gene Bank: Can you click TAB and toggle the search like that? Would be a little QoL feature

shift tab goes back 1, tab goes 1 forward:
2026-04-07.19-34-11.mp4

Oh, I meant something different. I meant the TAB thing like in the ME Terminal. Where it focuses the search bar when you press TAB. That may be a personal thing tho because I have auto-focus...

@ah-OOG-ah
Copy link
Copy Markdown
Member

The Idea was to make them more like gt machines thats also why they are blue. I could change that to the same color as the carpenter for example, should i try that and send some more screenshots?

yeah, they shouldn't look like GT machines. They're not GT, they're Binnie's, and they should be most similar to Forestry machines.

IMO the original UI is fine to leave as-is, if you want to change the looks that should be a separate PR from the code cleanup and MUI port.

@Luca-Guettinger
Copy link
Copy Markdown
Author

Oh, and one thing for the Gene Bank: Can you click TAB and toggle the search like that? Would be a little QoL feature

shift tab goes back 1, tab goes 1 forward:
2026-04-07.19-34-11.mp4

Oh, I meant something different. I meant the TAB thing like in the ME Terminal. Where it focuses the search bar when you press TAB. That may be a personal thing tho because I have auto-focus...

i did that too, so if you just press tab it automatically hops to the search bar

@Luca-Guettinger
Copy link
Copy Markdown
Author

The Idea was to make them more like gt machines thats also why they are blue. I could change that to the same color as the carpenter for example, should i try that and send some more screenshots?

yeah, they shouldn't look like GT machines. They're not GT, they're Binnie's, and they should be most similar to Forestry machines.

IMO the original UI is fine to leave as-is, if you want to change the looks that should be a separate PR from the code cleanup and MUI port.

alright i will look over the inventories again, i am not sure its a good idea to try and split this up in multiple PRs, a big part of the refactoring was using mui2.

do you have the same complaint about the gene bank or is it mostly about the machines? i was kinda unsure about the design from the machines, but i feel like the gene bank is just objectivly better especially considering how the one before had... some big flaws.

i will send some more screenshots as soon as i am done

@Luca-Guettinger Luca-Guettinger marked this pull request as draft April 7, 2026 21:47
@ah-OOG-ah
Copy link
Copy Markdown
Member

The gene bank change looks fine, except for the scroll bar being much smaller - unsure if it's problematically small without using it tho.

@KleinGrrmpf
Copy link
Copy Markdown

The gene bank change looks fine, except for the scroll bar being much smaller - unsure if it's problematically small without using it tho.

As someone who enjoys GUI scale 3, small scroll bars are the bane of my existence

@Luca-Guettinger
Copy link
Copy Markdown
Author

Yeah, that’s valid. I’ll see if I can make it bigger and maybe increase the overall window height so there’s more space.
Note, though, that in most real-world cases you won’t have that much information available. Even if you use evidence quite extensively, you’re unlikely to have all 1,400 genes in your gene bank.

@Luca-Guettinger
Copy link
Copy Markdown
Author

Luca-Guettinger commented Apr 12, 2026

i changed all the inventories:

first is the original, the second is the first draft, and the last is the current one:

Gene Bank:
Original
Draft
Current

Isolator:
Original
Draft
Current

Sequencer:
Original
Draft
Current

Polymeriser:
Original
Draft
Current

Inoculator:
Original
Draft
Current

Analyzer:
Original
Draft
Current

Incubator:
Original
Draft
Current

Genepool:
Original
Draft
Current

Acclimatiser:
Original
Draft
Current

Splicer:
Original
Draft
Current

@Luca-Guettinger Luca-Guettinger changed the title WIP: Genetics UI rework and code refactoring Genetics UI rework and code refactoring Apr 12, 2026
@Luca-Guettinger Luca-Guettinger marked this pull request as ready for review April 12, 2026 16:45
@Luca-Guettinger
Copy link
Copy Markdown
Author

The gene bank change looks fine, except for the scroll bar being much smaller - unsure if it's problematically small without using it tho.

@ah-OOG-ah @KleinGrrmpf I adjusted the gene bank, check the PR description for all the updated textures. That turned out to be a surprisingly large amount of pain.

@KleinGrrmpf
Copy link
Copy Markdown

Nice! Were the fluid buffers in the Polymerizer always 550 and 750 mB? I thought it would have been 1B for all of them... Anyway, they look awesome!

@Luca-Guettinger
Copy link
Copy Markdown
Author

Luca-Guettinger commented Apr 12, 2026

Nice! Were the fluid buffers in the Polymerizer always 550 and 750 mB? I thought it would have been 1B for all of them... Anyway, they look awesome!

yea no, thats a error, they show full when they are not full, thats a mistake, i am going to adjust it, thanks!

@Luca-Guettinger
Copy link
Copy Markdown
Author

wait no i fixed that, look at the pr description there the right screenshots should be displayed.

@KleinGrrmpf
Copy link
Copy Markdown

Ah, I see. Missed that, sorry!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants