1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-10 01:48:00 +00:00
putty-source/windows
Simon Tatham 3bbbdaad60 GUI PuTTY: stop using the global 'hwnd'.
This was the difficult part of cleaning up that global variable. The
main Windows PuTTY GUI is split between source files, so that _does_
actually need to refer to the main window from multiple places.

But all the places where windlg.c needed to use 'hwnd' are seat
methods, so they were already receiving a Seat pointer as a parameter.
In other words, the methods of the Windows GUI Seat were already split
between source files. So it seems only fair that they should be able
to share knowledge of the seat's data as well.

Hence, I've created a small 'WinGuiSeat' structure which both window.c
and windlg.c can see the layout of, and put the main terminal window
handle in there. Then the seat methods implemented in windlg.c, like
win_seat_verify_ssh_host_key, can use container_of to turn the Seat
pointer parameter back into the address of that structure, just as the
methods in window.c can do (even though they currently don't need to).

(Who knows: now that it _exists_, perhaps that structure can be
gradually expanded in future to turn it into a proper encapsulation of
all the Windows frontend's state, like we should have had all
along...)

I've also moved the Windows GUI LogPolicy implementation into the same
object (i.e. WinGuiSeat implements both traits at once). That allows
win_gui_logging_error to recover the same WinGuiSeat from its input
LogPolicy pointer, which means it can get from there to the Seat facet
of the same object, so that I don't need the extern variable
'win_seat' any more either.
2020-02-02 10:02:10 +00:00
..
installer.wxs Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
msiplatform.py Fix platform field in Windows on Arm installers. 2018-08-21 07:17:06 +01:00
pageant.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
pageant.mft Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
pageant.rc Grow the Windows Licence dialog. 2019-03-18 20:32:55 +00:00
pageants.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
plink.rc `win-versioninfo': all builds of all Windows binaries now contain 2005-10-04 14:13:28 +00:00
pscp.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
pscp.rc `win-versioninfo': all builds of all Windows binaries now contain 2005-10-04 14:13:28 +00:00
psftp.rc `win-versioninfo': all builds of all Windows binaries now contain 2005-10-04 14:13:28 +00:00
putty.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
putty.mft Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
putty.rc Tweak version string resources for EMBED_CHM. 2019-03-16 12:25:23 +00:00
puttycfg.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
puttygen.ico Tweak the icon script, and the generated icons, to more closely 2007-01-07 10:17:12 +00:00
puttygen.mft Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
puttygen.rc Grow the Windows Licence dialog. 2019-03-18 20:32:55 +00:00
puttyins.ico `installer.ico' doesn't fit into 8.3, so gets truncated to INSTALLE.ICO in 2007-02-06 22:39:15 +00:00
puttytel.mft Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
puttytel.rc Tweak version string resources for EMBED_CHM. 2019-03-16 12:25:23 +00:00
rcstuff.h Remove Makefile.bor. 2017-09-13 19:26:28 +01:00
README-msi.txt Remove note about .CHM on network drives. 2019-03-18 21:53:45 +00:00
sizetip.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
version.rc2 FIXME about Windows resource CHMfulness hint. 2019-03-18 22:02:13 +00:00
website.url Switch chiark URLs to https. 2017-05-07 16:29:01 +01:00
win_res.h Stop looking for putty.chm alongside the binary. 2019-03-16 12:25:23 +00:00
win_res.rc2 Grow the Windows Licence dialog. 2019-03-18 20:32:55 +00:00
wincapi.c Move obfuscate_name out of winshare.c. 2020-01-04 13:52:22 +00:00
wincapi.h Move obfuscate_name out of winshare.c. 2020-01-04 13:52:22 +00:00
wincfg.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
wincons.c Make wincons logging-related functions non-static. 2020-01-31 09:41:18 +00:00
winctrls.c Convert a few more universal asserts to unreachable(). 2019-09-09 19:12:02 +01:00
windefs.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
windlg.c GUI PuTTY: stop using the global 'hwnd'. 2020-02-02 10:02:10 +00:00
window.c GUI PuTTY: stop using the global 'hwnd'. 2020-02-02 10:02:10 +00:00
wingss.c Make dupcat() into a variadic macro. 2019-10-14 19:42:37 +01:00
winhandl.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winhelp.c Remove most traces of WinHelp support. 2019-03-26 00:27:04 +00:00
winhelp.h Remove most traces of WinHelp support. 2019-03-26 00:27:04 +00:00
winhelp.rc2 Tweak version string resources for EMBED_CHM. 2019-03-16 12:25:23 +00:00
winhsock.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winjump.c Make dupcat() into a variadic macro. 2019-10-14 19:42:37 +01:00
winmisc.c Make dupcat() into a variadic macro. 2019-10-14 19:42:37 +01:00
winmiscs.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winnet.c Assorted benign warning fixes. 2020-01-29 06:44:18 +00:00
winnohlp.c Stop looking for putty.chm alongside the binary. 2019-03-16 12:25:23 +00:00
winnoise.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winnojmp.c Fix up svn:eol-style and svn:keywords on new files. 2010-12-27 00:24:48 +00:00
winnpc.c winnpc.c: add low-level connect_to_named_pipe() function. 2020-01-04 13:52:22 +00:00
winnps.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winpgen.c Stop winutils.c from depending on the global HWND. 2020-02-02 10:02:10 +00:00
winpgnt.c Windows Pageant: stop using the global 'hwnd'. 2020-02-02 10:02:10 +00:00
winpgntc.c Add lots of missing 'static' keywords. 2020-01-29 06:44:18 +00:00
winplink.c Stop having a global Conf. 2020-02-02 10:02:10 +00:00
winprint.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winproxy.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winseat.h GUI PuTTY: stop using the global 'hwnd'. 2020-02-02 10:02:10 +00:00
winsecur.c Move the restricted_acl flag into winsecur.c. 2020-02-02 10:02:10 +00:00
winsecur.h Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winselcli.c Const-correctness in do_select() return value. 2020-01-04 13:52:22 +00:00
winselgui.c Const-correctness in do_select() return value. 2020-01-04 13:52:22 +00:00
winser.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winsftp.c Move the restricted_acl flag into winsecur.c. 2020-02-02 10:02:10 +00:00
winshare.c Move obfuscate_name out of winshare.c. 2020-01-04 13:52:22 +00:00
winstore.c Make dupcat() into a variadic macro. 2019-10-14 19:42:37 +01:00
winstuff.h GUI PuTTY: stop using the global 'hwnd'. 2020-02-02 10:02:10 +00:00
wintime.c wintime: add a precautionary memset to zero. 2017-02-14 23:25:25 +00:00
winucs.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
winutils.c Stop winutils.c from depending on the global HWND. 2020-02-02 10:02:10 +00:00
winx11.c Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00