nhmall
96c564f09d
Merge branch 'x11-bmp-gif' of https://github.com/chasonr/NetHack into NetHack-5.0
2026-09-09 11:23:34 -04:00
Ray Chason
2f42bd7e27
Display tabs in the text window
...
Actually a menu, but menu windows convert to text if only displaying
text.
2026-08-30 19:03:45 -04:00
Ray Chason
393130a629
Handle tabs in the message window
2026-08-30 17:51:10 -04:00
Ray Chason
c88403f4ec
Correct display of tabified PICK_NONE menu
2026-08-30 16:44:26 -04:00
Ray Chason
564affea88
Remove limit in size of widget_table
...
It is difficult, but possible, to exceed 1024 widgets. One way is to
set a very large Unicode symbol set, and then use #wizcustom. As there
is no limit to how many objects can occupy a square, this limit is a
possible hazard even to a normal game.
2026-08-30 15:52:15 -04:00
Ray Chason
d9194cb4df
Make hero visible at start
...
Scroll to make the hero visible when starting and when the main window
is resized.
2026-08-27 18:10:26 -04:00
Ray Chason
f3e0dc49b8
Adjust screen height to allow for a task bar
2026-08-24 12:02:35 -04:00
Ray Chason
cc47605531
Add BMP and GIF support
2026-08-24 12:02:35 -04:00
nhmall
97a6c131a9
Merge branch 'menu-columns' of https://github.com/chasonr/NetHack into NetHack-5.0
2026-08-24 07:28:33 -04:00
Ray Chason
b61aef834e
Set menu font to proportional
2026-08-22 20:46:13 -04:00
Ray Chason
7840d75365
X11: set menu font to proportional
...
Menus that needed to be tabified now are.
2026-08-22 20:43:46 -04:00
Ray Chason
db32a639a7
Extend last column to end of line
...
If a line in the menu has fewer columns than the others, the last one
is deemed to extend to the right margin, and does not count toward the
maximum width of that column.
Also, revert the change to NetHack.font_menu.
2026-08-22 10:57:25 +03:00
Ray Chason
cadde6d317
Use text window for display_file
...
The text window is assumed to use a monospaced font.
2026-08-22 10:57:25 +03:00
Ray Chason
84bf23640c
Line up selectable items
2026-08-22 10:57:24 +03:00
Ray Chason
ffb08d3be6
Don't set columns for rows without tabs
2026-08-22 10:57:24 +03:00
Ray Chason
bc14bd7f30
Adjust extra menu width
2026-08-22 10:57:24 +03:00
Ray Chason
ae8b4bf12a
Add support for tabbed menu columns
2026-08-22 10:57:24 +03:00
Ray Chason
6dc9ac1c31
Adjust font hights so underscores are not cut off
2026-08-19 09:37:41 +03:00
Ray Chason
b8dc070d07
Fix right side of border rectangle
2026-08-19 09:37:41 +03:00
Ray Chason
392142d322
For menu items, set up pixmap and then manage
...
The widget is created with a label but not a pixmap, and then a pixmap
is set up for display. If the label is already realized and managed, it
will not resize when the pixmap is set up. This causes problems when
the inventory window is updated: unlike other menus, the parent Form
widget is already realized. The fix is to create the item widget in an
unmanaged state (XtCreateWidget), set up the pixmap (X11_wrap_widget
and X11_set_attrs), and then manage it (XtManageChild).
2026-08-19 09:37:41 +03:00
Ray Chason
e3170cdedc
Provide more space between TTY-style status fields
2026-08-19 09:37:41 +03:00
Ray Chason
3f8e704231
More ifdefs; use Xft font to split messages
2026-08-19 09:37:41 +03:00
Ray Chason
cada45a786
Apply appropriate #ifdefs and static declarations
2026-08-19 09:37:41 +03:00
Ray Chason
5883fe4abb
Declutter the rendering code a bit
2026-08-19 09:37:41 +03:00
Ray Chason
faba01dd25
Dismiss the text window on key press
2026-08-19 09:37:41 +03:00
Ray Chason
6e80039c49
Convert the tombstone window to Xft
2026-08-19 09:37:41 +03:00
Ray Chason
31f5ca334d
Convert the text window to Xft
2026-08-19 09:37:41 +03:00
Ray Chason
cfe67ecc62
Convert dialogs to Xft
2026-08-19 09:37:41 +03:00
Ray Chason
8ae58f9347
Convert the one line message prompt to Xft
2026-08-19 09:37:41 +03:00
Ray Chason
7c9cf20d1d
Convert fancy status and menus to Xft
2026-08-19 09:37:41 +03:00
Ray Chason
9e57c85b16
Condition should be USE_XFT, not USE_XPM
2026-08-19 09:37:40 +03:00
Ray Chason
737b3ac89a
Implement italic fonts
2026-08-19 09:37:40 +03:00
Ray Chason
9d1aac189e
Convert TTY status to Xft
2026-08-19 09:37:40 +03:00
Ray Chason
e53b76b0e5
Convert message window to use Xft
2026-08-19 09:37:40 +03:00
Ray Chason
fbc586bf44
Convert map to use Xft
2026-08-19 09:37:40 +03:00
Ray Chason
23315cf857
Combine XLoadFont and XQueryFont calls
...
The separate calls crash if the font does not exist; the combined call
returns NULL, as the caller expects.
Resolves #1508 and possibly #569 .
2026-08-18 13:40:35 +03:00
Pasi Kallinen
4652cd3ae7
Remove extra array indices
2026-08-14 11:08:26 +03:00
Ray Chason
0454838d13
Arrange labels more compactly
2026-08-14 11:08:26 +03:00
Ray Chason
ddbea3b727
Implement remaining status labels
2026-08-14 11:08:26 +03:00
Ray Chason
fbfac21aac
Fix menu group accelerators
...
If there are, say, two or more potions in the menu, and multiple
selections are allowed, then '!' should select all potions. Such keys
were selecting only the first matching item.
2026-08-14 11:08:26 +03:00
Ray Chason
2d261f1398
Implement all text attributes for menus
2026-08-14 11:08:26 +03:00
Ray Chason
84ff4f8b7e
Fix a null dereference when freeing fonts
2026-08-14 11:08:26 +03:00
Ray Chason
3398d250aa
Implement blink on fancy status
...
and fix a bug with condition labels on the TTY status
2026-08-14 11:08:26 +03:00
Ray Chason
514669823b
Implement bold, dim, italic, inverse, underline
...
Didn't get everything the last time.
2026-08-14 11:08:26 +03:00
Ray Chason
8d7d609a56
Implement attributes: bold, dim, italic, inverse
...
Track highlighting of recent changes separately from inverse, and
display highlight plus inverse as bordered text
2026-08-14 11:08:25 +03:00
Ray Chason
0ee7eef3ef
Implement a hit point bar
2026-08-14 11:08:25 +03:00
Ray Chason
6043d189e1
Define wrapper for Label widgets
...
Renders to a Pixmap and then sets the Pixmap. This in itself does not
change the appearance, but provides a means to do percentage bars,
italics and more.
2026-08-14 11:08:25 +03:00
Ray Chason
f7bb4eaae8
Fix timeout of fancy status colors
...
This was trying to retrieve the foreground color of the form created
in create_value(). Forms don't have colors, and so this was failing,
and update_color() didn't update the color.
2026-08-14 11:08:25 +03:00
Pasi Kallinen
b56189cfcd
X11: toggle off perm_invent if the window is closed manually
2026-08-13 11:16:45 +03:00
Pasi Kallinen
a64c7c64e5
X11: Allow scrolling menus with PageUp/PageDown/Home/End
...
Change the menu_key() translation table command so it accepts
a parameter, and we can pass a (default) menu control key to it.
2026-08-12 12:37:37 +03:00