[WIP] libZDGUI v0.0.1 - ZDoom GUI widgets library for mods

Any utility that assists in the creation of mods, assets, etc, go here. For example: Ultimate Doom Builder, Slade, WadSmoosh, Oblige, etc.
Forum rules
The Projects forums are ONLY for YOUR PROJECTS! If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
cybermind
Posts: 64
Joined: Mon Jan 03, 2011 3:33 pm

[WIP] libZDGUI v0.0.1 - ZDoom GUI widgets library for mods

Post by cybermind »

New version of libZDGUI powered by GDCC is released. Currently it remains in alpha stage and should not be used for real projects.

Image

About libZDGUI.
libZDGUI is a graphical user interface (GUI) widget toolkit for use in mods for ZDoom-based games. It provides an extensible event-driven framework and a set of default widgets like buttons, windows, listboxes etc.

Features:
- Generic widget framework which could run any kind of widget combinations.
- Easy creation of new widgets.
- Mouse control (supports dragging)
- Easy addition of new fonts and cursors.
- Graphics system which uses clipping rectangles to draw overlapping widgets of any complexity, including support for scaled images.
- Widget focusing system which is able to set a modal focus for widgets.
- Utility module with C++ STL-like vectors, lists, queues and strings.

Default widgets:
- Window (basic resizable and draggable window)
- Button (generic image button)
- Label (with word wrapping)
- Container (could include any kind of other widgets, including other containers)
- Scrolling box (provides scroll bars to display content not fit on screen)
- List box (containing string values)
- Checkbox
- Radiobutton (grouped in containers)
- Slider (horizontal and vertical)
- Image (any image)


Additional information and how-to is in README.md file

GitHub: https://github.com/Mistranger/libzdgui

Old post about tech demo:
Spoiler:
Attachments
libzdgui.7z
libZDGUI v0.0.1
(195.86 KiB) Downloaded 250 times
libzdgui.zip
(OUTDATED) libZDGUI Tech Demo
(74.98 KiB) Downloaded 307 times
Last edited by cybermind on Mon Jan 30, 2017 12:16 pm, edited 4 times in total.
The_Funktasm
Posts: 612
Joined: Tue Mar 17, 2009 5:12 am
Location: done making ZDF free sprites

Re: [WIP] GUI Library 0.1

Post by The_Funktasm »

That's incredibly interesting, and I'm going to have to look into some of the code later.
User avatar
MetalPapat
Posts: 56
Joined: Sat Jul 21, 2007 6:19 am
Location: France

Re: [WIP] GUI Library 0.1

Post by MetalPapat »

That's so cool. There is a lot of possibilities for this kind of thing. Like a map or status screen or just inventory system.
User avatar
Nash
 
 
Posts: 17433
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: [WIP] GUI Library 0.1

Post by Nash »

I like how you select which windows draw in front, and clicking on a window will properly select that particular window.

Any chance of seeing the source on this?
User avatar
wildweasel
Posts: 21706
Joined: Tue Jul 15, 2003 7:33 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): A lot of them
Graphics Processor: Not Listed
Contact:

Re: [WIP] GUI Library 0.1

Post by wildweasel »

Nash wrote:I like how you select which windows draw in front, and clicking on a window will properly select that particular window.

Any chance of seeing the source on this?
Holy topic-bump, Nash. =P

But yeah, I'm sure the source to this would be useful. If not, then I know of a certain in-development project that might serve as an adequate replacement...though I'm unsure if I'm at liberty to discuss the details.
User avatar
Nash
 
 
Posts: 17433
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: [WIP] GUI Library 0.1

Post by Nash »

Yeah sorry for the bump... it's just that this thread doesn't have any feedback so I'm afraid the OP assumes there's no interest. So I bumped it in the hope that he sees it and considers releasing the source...
User avatar
Captain Proof
Posts: 1028
Joined: Wed Aug 27, 2008 8:51 am
Location: Henderson
Contact:

Re: [WIP] GUI Library 0.1

Post by Captain Proof »

I just noticed this, I am gonna try it out as soon as I finish catching up on Walking Dead.

EDIT:The code needs to be released, with some work done it might be really useful.
User avatar
Sarah
Posts: 551
Joined: Wed Sep 06, 2006 12:36 pm
Preferred Pronouns: She/Her
Operating System Version (Optional): Debian 11 (bullseye), Windows 10
Location: Middle of Nowheresville Il.
Contact:

Re: [WIP] GUI Library 0.1

Post by Sarah »

I'm all on board for the source to be released. I'm studying this and a couple other gui mods in lieu of creating my own. I'd like to see how this is accomplished and a compiled acs file isn't helping.

So bump away!
User avatar
Angelofthefallen
Posts: 91
Joined: Sun Jun 15, 2008 8:42 pm
Location: Looking Over Your Shoulder ;)

Re: [WIP] GUI Library 0.1

Post by Angelofthefallen »

I'd love to get a look at this code. Been looking to make an RPG mod, this could really help with the inventory system.
User avatar
Captain Proof
Posts: 1028
Joined: Wed Aug 27, 2008 8:51 am
Location: Henderson
Contact:

Re: [WIP] GUI Library 0.1

Post by Captain Proof »

Angelofthefallen wrote:I'd love to get a look at this code. Been looking to make an RPG mod, this could really help with the inventory system.
I didn't even think of that, I was thinking of making a Space Hulk style Motion Detector.
User avatar
Ravick
Posts: 2002
Joined: Sun Aug 22, 2010 10:59 pm
Location: Tubarão, Brasil
Contact:

Re: [WIP] GUI Library 0.1

Post by Ravick »

Can't take a look now, but i will when I get home. Just a question: Is there a way to allow player to type a string in game?
User avatar
Sarah
Posts: 551
Joined: Wed Sep 06, 2006 12:36 pm
Preferred Pronouns: She/Her
Operating System Version (Optional): Debian 11 (bullseye), Windows 10
Location: Middle of Nowheresville Il.
Contact:

Re: [WIP] GUI Library 0.1

Post by Sarah »

In what context specifically?
User avatar
Ravick
Posts: 2002
Joined: Sun Aug 22, 2010 10:59 pm
Location: Tubarão, Brasil
Contact:

Re: [WIP] GUI Library 0.1

Post by Ravick »

Well, I'm doing a mod that has its own maps, and also allows "gameplay modding" if playing the IWAD maps, or loading it with other map mod.

So the menu has an 'episode' that loads a map where player can choose options in a console and specify what IWAD he is using and other stuff. The IWAD specification is just to set the map names to be loaded when player leaves the map. But there is also mods with custom map names, so I want to allow player to specify the map name format.

Would also be very useful to create a way to player to write something in the game, specially because there is a lot of 'usable' computers in my mod, so I could make more variable stuff with it.

I know Blue Shadow's numbers console, but if i'd use the same method it would be hard to make all the letters of the keyboard.
User avatar
cq75
Posts: 1212
Joined: Sun Dec 27, 2009 9:28 pm
Graphics Processor: nVidia with Vulkan support
Location: Just beyond the line horizon

Re: [WIP] GUI Library 0.1

Post by cq75 »

It seems like there is no way to get all of the letters of the keyboard See [wiki]GetPlayerInput[/wiki]

What you could do, though, is bring up an on-screen keyboard and have the player move a cursor to a key using the movement keys and pressing FIRE to select it. That's how I made the floor selection screen for the elevator of my Blake Stone mod, the player would move the cursor to floor 1-9 and hit fire. Your system would be a lot bigger, and likely more tedious to use, though.
User avatar
Ravick
Posts: 2002
Joined: Sun Aug 22, 2010 10:59 pm
Location: Tubarão, Brasil
Contact:

Re: [WIP] GUI Library 0.1

Post by Ravick »

Yeah, I was afraid of that :(

I've seem the same idea of the on screen keyboard in Blue Shadow's doom3 keypad, I didn't know your mod (Can you post a link, please? :) )

Yes, it'd be tedious to use (and code!), it's 26, and more other characters. I think I will make a 'slot' system, that changes the characters in order by the "foward" and "backward" keys, but just to type map names, not to use in the computers.
Post Reply

Return to “Creation, Conversion, and Editing”