├── .gitattributes ├── .gitignore ├── ActivityDoc.cpp ├── ActivityDoc.h ├── ActivityView.cpp ├── ActivityView.h ├── Color.cpp ├── Color.h ├── DDV_validation.cpp ├── Dmetaph.cpp ├── Dmetaph.h ├── Example_filters.lua ├── Finding.cpp ├── HyprLink.cpp ├── HyprLink.h ├── Line.cpp ├── MDIClientWnd.cpp ├── MDIClientWnd.h ├── MDITabs.cpp ├── MDITabs.h ├── MUSHclient.cpp ├── MUSHclient.exe.manifest ├── MUSHclient.h ├── MUSHclient.rc ├── MUSHclient.vcxproj ├── MUSHclient_2017.sln ├── MakeWindowTransparent.cpp ├── MakeWindowTransparent.h ├── Mapping.cpp ├── MySplitterWnd.cpp ├── MySplitterWnd.h ├── MyStatusBar.cpp ├── MyStatusBar.h ├── NameGeneration.cpp ├── OtherTypes.h ├── ProcessPreviousLine.cpp ├── Replace.cpp ├── StatLink.cpp ├── StatLink.h ├── TextDocument.cpp ├── TextDocument.h ├── TextView.cpp ├── TextView.h ├── TimerWnd.cpp ├── TimerWnd.h ├── UDPsocket.cpp ├── UDPsocket.h ├── Utilities.cpp ├── accelerators.cpp ├── activitychildfrm.cpp ├── activitychildfrm.h ├── announcement_template.txt ├── ansi.cpp ├── appveyor.yml ├── art.cpp ├── blending.h ├── build_files_list.lua ├── chatlistensock.cpp ├── chatlistensock.h ├── chatsock.cpp ├── chatsock.h ├── childfrm.cpp ├── childfrm.h ├── compose.hpp ├── count_locale_usage.lua ├── detect_locale_changes.lua ├── dialogs ├── AsciiArtDlg.cpp ├── AsciiArtDlg.h ├── ChooseNotepadDlg.cpp ├── ChooseNotepadDlg.h ├── ColourComboBox.cpp ├── ColourComboBox.h ├── ColourPickerDlg.cpp ├── ColourPickerDlg.h ├── CompleteWordDlg.cpp ├── CompleteWordDlg.h ├── ConfirmPreamble.cpp ├── ConfirmPreamble.h ├── CreditsDlg.cpp ├── CreditsDlg.h ├── DebugLuaDlg.cpp ├── DebugLuaDlg.h ├── DebugWorldInputDlg.cpp ├── DebugWorldInputDlg.h ├── EditDlg.cpp ├── EditDlg.h ├── EditMultiLine.cpp ├── EditMultiLine.h ├── FindDlg.cpp ├── FindDlg.h ├── FunctionListDlg.cpp ├── FunctionListDlg.h ├── GeneratedNameDlg.cpp ├── GeneratedNameDlg.h ├── GlobalChangeDlg.cpp ├── GlobalChangeDlg.h ├── GoToLineDlg.cpp ├── GoToLineDlg.h ├── HighlightPhraseDlg.cpp ├── HighlightPhraseDlg.h ├── ImmediateDlg.cpp ├── ImmediateDlg.h ├── ImportXMLdlg.cpp ├── ImportXMLdlg.h ├── InsertUnicodeDlg.cpp ├── InsertUnicodeDlg.h ├── KeyNameDlg.cpp ├── KeyNameDlg.h ├── LuaChooseBox.cpp ├── LuaChooseBox.h ├── LuaChooseList.cpp ├── LuaChooseList.h ├── LuaChooseListMulti.cpp ├── LuaChooseListMulti.h ├── LuaGsubDlg.cpp ├── LuaGsubDlg.h ├── LuaInputBox.cpp ├── LuaInputBox.h ├── LuaInputEditDlg.cpp ├── LuaInputEditDlg.h ├── MXPscriptRoutinesDlg.cpp ├── MXPscriptRoutinesDlg.h ├── MapCommentDlg.cpp ├── MapCommentDlg.h ├── MapDlg.cpp ├── MapDlg.h ├── MapMoveDlg.cpp ├── MapMoveDlg.h ├── MultiLineTriggerDlg.cpp ├── MultiLineTriggerDlg.h ├── ProgDlg.cpp ├── ProgDlg.h ├── ProxyServerPasswordDlg.cpp ├── ProxyServerPasswordDlg.h ├── QuickConnectDlg.cpp ├── QuickConnectDlg.h ├── RecallDlg.cpp ├── RecallDlg.h ├── RecallSearchDlg.cpp ├── RecallSearchDlg.h ├── RegexpProblemDlg.cpp ├── RegexpProblemDlg.h ├── ScriptErrorDlg.cpp ├── ScriptErrorDlg.h ├── SendToAllDlg.cpp ├── SendToAllDlg.h ├── SpellCheckDlg.cpp ├── SpellCheckDlg.h ├── Splash.cpp ├── Splash.h ├── TextAttributesDlg.cpp ├── TextAttributesDlg.h ├── TipDlg.cpp ├── TipDlg.h ├── UniqueIDDlg.cpp ├── UniqueIDDlg.h ├── WinsockInfoDlg.cpp ├── WinsockInfoDlg.h ├── chat │ ├── ChatCallDlg.cpp │ ├── ChatCallDlg.h │ ├── ChatDetailsDlg.cpp │ ├── ChatDetailsDlg.h │ ├── ChatListDlg.cpp │ ├── ChatListDlg.h │ ├── ChatToAllDlg.cpp │ ├── ChatToAllDlg.h │ ├── EmoteToAllDlg.cpp │ └── EmoteToAllDlg.h ├── cmdhist.cpp ├── cmdhist.h ├── global_prefs │ ├── GlobalPrefs.cpp │ ├── GlobalPrefs.h │ ├── GlobalPrefsSheet.cpp │ └── GlobalPrefsSheet.h ├── logdlg.cpp ├── logdlg.h ├── password.cpp ├── password.h ├── plugins │ ├── PluginWizard.cpp │ ├── PluginWizard.h │ ├── PluginWizardSheet.cpp │ ├── PluginWizardSheet.h │ ├── PluginsDlg.cpp │ └── PluginsDlg.h ├── welcome.cpp ├── welcome.h ├── welcome1.cpp ├── welcome1.h └── world_prefs │ ├── ButtonColour.cpp │ ├── ButtonColour.h │ ├── CommandOptionsDlg.cpp │ ├── CommandOptionsDlg.h │ ├── EditVariable.cpp │ ├── EditVariable.h │ ├── GenPropertyPage.h │ ├── MissingEntryPoints.cpp │ ├── MissingEntryPoints.h │ ├── PrefsPropertySheet.cpp │ ├── PrefsPropertySheet.h │ ├── TabDefaultsDlg.cpp │ ├── TabDefaultsDlg.h │ ├── TimerDlg.cpp │ ├── TimerDlg.h │ ├── TreePropertySheet.cpp │ ├── TreePropertySheet.h │ ├── aliasdlg.cpp │ ├── aliasdlg.h │ ├── configuration.cpp │ ├── editmac.cpp │ ├── editmac.h │ ├── genpropertypage.cpp │ ├── prefspropertypages.cpp │ ├── prefspropertypages.h │ ├── triggdlg.cpp │ └── triggdlg.h ├── doc.cpp ├── doc.h ├── doc_construct.cpp ├── docgen ├── .gitignore └── help.hpj ├── docs ├── Figlet_license.txt ├── JSON License.txt ├── Lua Colors LICENSE.txt ├── LuaJSON.txt ├── LuaSocket_documentation │ ├── dns.html │ ├── ftp.html │ ├── http.html │ ├── index.html │ ├── installation.html │ ├── introduction.html │ ├── ltn12.html │ ├── luasocket.png │ ├── mime.html │ ├── reference.css │ ├── reference.html │ ├── smtp.html │ ├── socket.html │ ├── tcp.html │ ├── udp.html │ └── url.html ├── LuaSocket_license.txt ├── PCRE_ChangeLog.txt ├── RegularExpressions.txt ├── agreement.txt ├── gpl.txt ├── lpeg-128.gif ├── lpeg.html ├── lsqlite3.html ├── lua_license.txt ├── luacom.pdf ├── mersenne_twister.txt └── re.html ├── evaluate.cpp ├── exceptions.cpp ├── exceptions.h ├── flags.h ├── fonts ├── banner.flf ├── big.flf ├── block.flf ├── bubble.flf ├── digital.flf ├── lean.flf ├── mini.flf ├── script.flf ├── shadow.flf ├── slant.flf ├── small.flf ├── smscript.flf ├── smshadow.flf ├── smslant.flf ├── standard.flf └── term.flf ├── forcelib.h ├── format.cpp ├── format.h ├── generate_documentation.lua ├── genprint.cpp ├── genprint.h ├── globalregistryoptions.cpp ├── hostsite.h ├── how_to_make_standalone_installer.txt ├── how_to_release.txt ├── install ├── .gitattributes ├── .gitignore ├── Cross.bmp ├── MUSHclient Installer.bmp ├── Make_Announcement.xml ├── Tick.bmp ├── announcement_template.txt ├── mushclient.ico ├── mushclient.nsi └── readme.txt ├── lauxlib.h ├── licences ├── FIGlet licence.txt ├── GNU General Public License.txt ├── JSON licence.txt ├── Lua Colors licence.txt ├── Lua licence.txt ├── LuaCOM licence.txt ├── Luasocket licence.txt ├── MD5 licence.txt ├── MUSHclient licence.txt ├── Mersenne Twister licence.txt ├── PCRE licence.txt ├── README.txt ├── SHA license.txt ├── SHS licence.txt ├── SQLite licence.txt ├── bc licence.txt ├── big numbers licence.txt ├── libpng-LICENSE.txt └── zLib licence.txt ├── locale_notes.txt ├── localize.bat ├── localize.lua ├── lsqlite └── lsqlite3.c ├── lua.h ├── lua ├── InfoBox.lua ├── addxml.lua ├── alphanum.lua ├── check.lua ├── checkplugin.lua ├── colors.lua ├── com.lua ├── commas.lua ├── copytable.lua ├── declare.lua ├── gauge.lua ├── getlines.lua ├── getstyle.lua ├── getworld.lua ├── json.lua ├── json │ ├── decode.lua │ ├── decode │ │ ├── array.lua │ │ ├── calls.lua │ │ ├── composite.lua │ │ ├── number.lua │ │ ├── object.lua │ │ ├── others.lua │ │ ├── state.lua │ │ ├── strings.lua │ │ └── util.lua │ ├── encode.lua │ ├── encode │ │ ├── array.lua │ │ ├── calls.lua │ │ ├── number.lua │ │ ├── object.lua │ │ ├── others.lua │ │ ├── output.lua │ │ ├── output_utility.lua │ │ └── strings.lua │ └── util.lua ├── ltn12.lua ├── mapper.lua ├── mime.lua ├── movewindow.lua ├── mw.lua ├── pairsbykeys.lua ├── ppi.lua ├── re.lua ├── sandbox.lua ├── serialize.lua ├── show_loaded.lua ├── socket.lua ├── socket │ ├── ftp.lua │ ├── http.lua │ ├── smtp.lua │ ├── tp.lua │ └── url.lua ├── strict.lua ├── string_indexing.lua ├── tabbed_window.lua ├── tprint.lua ├── var.lua ├── wait.lua └── words_to_numbers.lua ├── lua5.1.lib ├── lua_helpers.h ├── luacom ├── LuaAux.cpp ├── LuaAux.h ├── LuaCompat.cpp ├── LuaCompat.h ├── luabeans.cpp ├── luabeans.h ├── luacom.cpp ├── luacom.h ├── luacom5.lua ├── luacom_internal.h ├── readme.txt ├── tCOMUtil.cpp ├── tCOMUtil.h ├── tLuaCOM.cpp ├── tLuaCOM.h ├── tLuaCOMClassFactory.cpp ├── tLuaCOMClassFactory.h ├── tLuaCOMConnPoints.cpp ├── tLuaCOMConnPoints.h ├── tLuaCOMEnumerator.cpp ├── tLuaCOMEnumerator.h ├── tLuaCOMException.cpp ├── tLuaCOMException.h ├── tLuaCOMTypeHandler.cpp ├── tLuaCOMTypeHandler.h ├── tLuaControl.cpp ├── tLuaControl.h ├── tLuaDispatch.cpp ├── tLuaDispatch.h ├── tLuaObjList.cpp ├── tLuaObjList.h ├── tLuaObject.cpp ├── tLuaObject.h ├── tLuaTLB.cpp ├── tLuaTLB.h ├── tLuaVector.cpp ├── tLuaVector.h ├── tStringBuffer.cpp ├── tStringBuffer.h ├── tUtil.cpp ├── tUtil.h └── t_luacom.lua ├── luaconf.h ├── lualib.h ├── mainfrm.cpp ├── mainfrm.h ├── mcdatetime.cpp ├── mcdatetime.h ├── miniwindow.cpp ├── miniwindow.h ├── mushclient.cnt ├── mushclient.hpj ├── mushclient.odl ├── mushview.cpp ├── mushview.h ├── mxp ├── mxp.cpp ├── mxp.h ├── mxpClose.cpp ├── mxpCloseAtomic.cpp ├── mxpDefs.cpp ├── mxpEnd.cpp ├── mxpEntities.cpp ├── mxpError.cpp ├── mxpMode.cpp ├── mxpOnOff.cpp ├── mxpOpenAtomic.cpp ├── mxpStart.cpp ├── mxp_phases.cpp ├── mxpinit.cpp └── mxputils.cpp ├── names.txt ├── names ├── ALBION.NAM ├── ALVER.NAM ├── ALVER1.NAM ├── ALVER2.NAM ├── DEVERRY1.NAM ├── DEVERRY2.NAM ├── DVARGAR.NAM ├── Dragonl1.nam ├── Felana.nam ├── GALLER.NAM ├── HOBER.NAM ├── MALL.NAM ├── ORC1.NAM ├── ORC2.NAM ├── albion1.nam ├── albion2.nam ├── dvargar1.nam ├── dvargar2.nam ├── f_female.nam ├── f_male.nam ├── gnome1.nam ├── gnome2.nam ├── hober1.nam ├── hober2.nam ├── kender1.nam ├── kender2.nam ├── kerrel.nam ├── orc.nam └── sparhawk.nam ├── paneline.cpp ├── paneline.h ├── pcre ├── .gitignore ├── LICENCE ├── config.h ├── pcre.h ├── pcre_chartables.c ├── pcre_compile.c ├── pcre_config.c ├── pcre_dfa_exec.c ├── pcre_exec.c ├── pcre_fullinfo.c ├── pcre_get.c ├── pcre_globals.c ├── pcre_internal.h ├── pcre_maketables.c ├── pcre_newline.c ├── pcre_ord2utf8.c ├── pcre_refcount.c ├── pcre_study.c ├── pcre_tables.c ├── pcre_ucd.c ├── pcre_valid_utf8.c ├── pcre_version.c ├── pcre_xclass.c ├── readme.txt └── ucp.h ├── plugins.cpp ├── plugins.h ├── plugins ├── AFK_timer.xml ├── ANSI_Log.xml ├── AOD_EQ.xml ├── ATCP_Mapper.xml ├── ATCP_NJG.xml ├── Add_Newline_To_Prompt.xml ├── Add_Newline_To_Prompt2.xml ├── Automatic_Backup.xml ├── Baron_Dude.xml ├── Calculator.xml ├── Calendar.xml ├── CheckAttribute.xml ├── Code_Chart.xml ├── ColourNote.xml ├── Command_Queue.xml ├── Config_Option_Changer.xml ├── Convert_code_to_pre.xml ├── Current_Output_Window.xml ├── Editor.xml ├── Function_Executer.xml ├── GB2312_converter.xml ├── GB2312_table.lua ├── Global_Option_Updater.xml ├── Hyperlink_URL.xml ├── Hyperlink_URL2.xml ├── InfoBox_Demo.xml ├── Installer_sumcheck.xml ├── JScript_Version.xml ├── Level_Timer.xml ├── MUSHclient_Help.xml ├── MXP_statusbar.xml ├── Messages_Window.xml ├── MudDatabase.xml ├── NewActivity.xml ├── Omit_Blank_Lines.xml ├── OnPluginSentPythonTest.xml ├── PlaySoundTest.xml ├── ProcessBackspaces.xml ├── Reconnecter.xml ├── Reconnecter_Lua.xml ├── SMAUG_automapper_helper.xml ├── Slow_speedwalk.xml ├── Summary.xml ├── Super_Health_Bar.xml ├── Text_To_Speech.xml ├── Timestamps.xml ├── Trace.xml ├── Trim_White_Space.xml ├── VBscript_Version.xml ├── Version_Check.xml ├── automap.xml ├── chat.xml ├── clearscreen.xml ├── command_filter.xml ├── constants.js ├── constants.lua ├── constants.pl ├── constants.pys ├── constants.vbs ├── copy_output.xml ├── encrypted_chat.xml ├── error_plugin.xml ├── gag.xml ├── get_last_sent.xml ├── health_bar.xml ├── helpsystem.xml ├── idle_message.xml ├── include_test.xml ├── jscript_plugin_test.xml ├── lua_chat_plugin_test.xml ├── lua_requires_test.xml ├── main.xml ├── msp.xml ├── multiple_send.xml ├── mush_teleport.xml ├── mxperrortest.xml ├── packet_received_test.xml ├── packet_test_2.xml ├── perlscript_plugin_test.xml ├── perlscript_version.xml ├── plugin_list.xml ├── plugin_summary.xml ├── python_version.xml ├── random_socials.xml ├── reloadtest.xml ├── reverse_speedwalk.xml ├── sample_plugin.xml ├── scan.xml ├── screendraw_test.xml ├── serialize_test.xml ├── setentity_test.xml ├── showactivity.xml ├── status_bar_prompt.xml ├── tabcompletiontest.xml ├── test.xml ├── test_OnPluginCommandEntered.xml ├── timer.xml ├── trim_whitespace.xml ├── udplistentest.xml ├── unicodetest.xml └── variabletest.xml ├── png ├── .gitignore ├── LICENSE ├── png.c ├── png.h ├── pngconf.h ├── pngdebug.h ├── pngerror.c ├── pngget.c ├── pnginfo.h ├── pnglibconf.h ├── pngmem.c ├── pngpread.c ├── pngpriv.h ├── pngread.c ├── pngrio.c ├── pngrtran.c ├── pngrutil.c ├── pngset.c ├── pngstruct.h ├── pngtrans.c ├── pngwio.c ├── pngwrite.c ├── pngwtran.c ├── pngwutil.c └── readme.txt ├── readme.md ├── regexp.cpp ├── regexp.h ├── res ├── .gitattributes ├── MUSHclient.ico └── cursor1.cur ├── resource.h ├── scripting ├── bcconfig.h ├── bits.c ├── errors.h ├── exampscript.js ├── exampscript.lua ├── exampscript.pl ├── exampscript.pys ├── exampscript.vbs ├── functionlist.cpp ├── lbc.c ├── lpeg │ ├── .gitignore │ ├── lpcap.c │ ├── lpcap.h │ ├── lpcode.c │ ├── lpcode.h │ ├── lpprint.h │ ├── lptree.c │ ├── lptree.h │ ├── lptypes.h │ ├── lpvm.c │ └── lpvm.h ├── lrexlib.c ├── lua_compress.c ├── lua_methods.cpp ├── lua_progressdlg.cpp ├── lua_scripting.cpp ├── lua_utils.cpp ├── md5.c ├── md5.h ├── methods │ ├── methods.cpp │ ├── methods_accelerators.cpp │ ├── methods_aliases.cpp │ ├── methods_arrays.cpp │ ├── methods_chat.cpp │ ├── methods_clipboard.cpp │ ├── methods_colours.cpp │ ├── methods_commands.cpp │ ├── methods_database.cpp │ ├── methods_defaults.cpp │ ├── methods_info.cpp │ ├── methods_infobar.cpp │ ├── methods_logging.cpp │ ├── methods_mapping.cpp │ ├── methods_miniwindows.cpp │ ├── methods_notepad.cpp │ ├── methods_noting.cpp │ ├── methods_output.cpp │ ├── methods_panes.cpp │ ├── methods_plugins.cpp │ ├── methods_sending.cpp │ ├── methods_sounds.cpp │ ├── methods_speedwalks.cpp │ ├── methods_spellchecker.cpp │ ├── methods_timers.cpp │ ├── methods_tracing.cpp │ ├── methods_triggers.cpp │ ├── methods_udp.cpp │ ├── methods_utilities.cpp │ ├── methods_variables.cpp │ ├── methods_worlds.cpp │ └── methods_xml.cpp ├── mt19937ar.c ├── number.c ├── number.h ├── scriptengine.cpp ├── scripting.cpp ├── scripting.h ├── sha256.c ├── sha256.h ├── shs.c ├── shs.h └── spellchecker.lua ├── scriptingoptions.cpp ├── sendvw.cpp ├── sendvw.h ├── serialize.cpp ├── spell ├── american-words.10 ├── american-words.20 ├── english-contractions.10 ├── english-contractions.35 ├── english-upper.10 ├── english-upper.35 ├── english-upper.40 ├── english-words.10 ├── english-words.20 ├── english-words.35 ├── english-words.40 └── spellchecker.lua ├── sqlite3 ├── .gitignore ├── readme.txt ├── sqlite3.c ├── sqlite3.h └── sqlite3ext.h ├── stdafx.cpp ├── stdafx.h ├── telnet_phases.cpp ├── textchildfrm.cpp ├── textchildfrm.h ├── timers.cpp ├── tips.txt ├── version.h ├── winplace.cpp ├── winplace.h ├── world_debug.cpp ├── worldsock.cpp ├── worldsock.h ├── xml ├── xml_load_world.cpp ├── xml_save_world.cpp ├── xml_serialize.cpp ├── xmlparse.cpp └── xmlparse.h └── zlib ├── .gitignore ├── LICENSE ├── adler32.c ├── compress.c ├── crc32.c ├── crc32.h ├── deflate.c ├── deflate.h ├── gzclose.c ├── gzguts.h ├── gzlib.c ├── gzread.c ├── gzwrite.c ├── inffast.c ├── inffast.h ├── inffixed.h ├── inflate.c ├── inflate.h ├── inftrees.c ├── inftrees.h ├── readme.txt ├── trees.c ├── trees.h ├── uncompr.c ├── zconf.h ├── zlib.h ├── zutil.c └── zutil.h /.gitattributes: -------------------------------------------------------------------------------- 1 | *.lib binary -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .* 2 | !.gitignore 3 | !.gitattributes 4 | 5 | # 6 | # Help file is generated from database 7 | # 8 | MUSHCLIENT.HLP 9 | 10 | # 11 | # These two directories are where the object and .exe files are generated 12 | # 13 | WinRel 14 | WinDebug 15 | 16 | # 17 | # These two files are generated by MUSHclient during testing 18 | # 19 | mushclient_prefs.sqlite 20 | MUSHclient.ini 21 | 22 | # 23 | # These two files are generated during the install, to generate localization files 24 | # 25 | all_files_list.txt 26 | Localize_template.lua 27 | 28 | # 29 | # This searches all files for funny problems 30 | # 31 | find_non_standard_encoding.lua 32 | 33 | # 34 | # Compiler work files, editor backups, DLLs used for testing, etc. 35 | # 36 | *.ncb 37 | *.plg 38 | *.opt 39 | *.aps 40 | *.bak 41 | *.dll 42 | *.fon 43 | *.po 44 | *.GID 45 | *.suo 46 | *.clw 47 | 48 | # 49 | # Notes for me: 50 | # 51 | 52 | using_git.txt 53 | 54 | 55 | # 56 | # VS2005 user-specific project data 57 | # 58 | MUSHclient.vcproj.* 59 | 60 | # 61 | # VS2010 user-specific project data 62 | # 63 | MUSHclient.vcxproj.* 64 | MUSHclient.sdf 65 | MUSHclient.opensdf 66 | ipch 67 | 68 | # 69 | # Help database (generated) 70 | # 71 | help.db 72 | documentation_fixed.sql 73 | 74 | # 75 | # TinyGL stuff 76 | # 77 | TinyGL* 78 | 79 | # 80 | # temporary files 81 | # 82 | git_diff_output.txt 83 | git_log_output.txt 84 | -------------------------------------------------------------------------------- /ActivityDoc.h: -------------------------------------------------------------------------------- 1 | // ActivityDoc.h : header file 2 | // 3 | 4 | ///////////////////////////////////////////////////////////////////////////// 5 | // CActivityDoc document 6 | 7 | class CActivityDoc : public CDocument 8 | { 9 | protected: 10 | CActivityDoc(); // protected constructor used by dynamic creation 11 | DECLARE_DYNCREATE(CActivityDoc) 12 | 13 | // Attributes 14 | public: 15 | 16 | // Operations 17 | public: 18 | 19 | // Overrides 20 | // ClassWizard generated virtual function overrides 21 | //{{AFX_VIRTUAL(CActivityDoc) 22 | public: 23 | virtual void Serialize(CArchive& ar); // overridden for document i/o 24 | protected: 25 | virtual BOOL OnNewDocument(); 26 | //}}AFX_VIRTUAL 27 | 28 | // Implementation 29 | public: 30 | virtual ~CActivityDoc(); 31 | #ifdef _DEBUG 32 | virtual void AssertValid() const; 33 | virtual void Dump(CDumpContext& dc) const; 34 | #endif 35 | 36 | // Generated message map functions 37 | protected: 38 | //{{AFX_MSG(CActivityDoc) 39 | afx_msg void OnFileOpen(); 40 | //}}AFX_MSG 41 | DECLARE_MESSAGE_MAP() 42 | }; 43 | -------------------------------------------------------------------------------- /Color.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/Color.h -------------------------------------------------------------------------------- /Dmetaph.h: -------------------------------------------------------------------------------- 1 | 2 | //////////////////////////////////////////////////////////////////////////////// 3 | // 4 | //////////////////////////////////////////////////////////////////////////////// 5 | class MString : public CString 6 | { 7 | 8 | int length, last; 9 | const int maxlength; 10 | bool alternate; 11 | CString primary, secondary; 12 | 13 | public: 14 | 15 | MString(); 16 | MString(const char*, const int max); 17 | MString(const CString&, const int max); 18 | bool SlavoGermanic(); 19 | bool IsVowel(int at); 20 | inline void MetaphAdd(const char* main); 21 | inline void MetaphAdd(const char* main, const char* alt); 22 | bool StringAt(int start, int length, ... ); 23 | void DoubleMetaphone(CString &metaph, CString &metaph2); 24 | 25 | }; 26 | 27 | -------------------------------------------------------------------------------- /HyprLink.cpp: -------------------------------------------------------------------------------- 1 | //////////////////////////////////////////////////////////////// 2 | // 1997 Microsoft Systems Journal 3 | // If this code works, it was written by Paul DiLascia. 4 | // If not, I don't know who wrote it. 5 | // 6 | #include "StdAfx.h" 7 | #include "HyprLink.h" 8 | 9 | #ifdef _DEBUG 10 | #define new DEBUG_NEW 11 | #undef THIS_FILE 12 | static char THIS_FILE[] = __FILE__; 13 | #endif 14 | 15 | ////////////////// 16 | // Navigate link -- ie, execute the file 17 | // Returns instance handle of app run, or error code (just like ShellExecute) 18 | // 19 | HINSTANCE CHyperlink::Navigate() 20 | { 21 | return IsEmpty() ? NULL : 22 | ShellExecute(0, _T("open"), *this, 0, 0, SW_SHOWNORMAL); 23 | } 24 | 25 | -------------------------------------------------------------------------------- /HyprLink.h: -------------------------------------------------------------------------------- 1 | //////////////////////////////////////////////////////////////// 2 | // 1997 Microsoft Systems Journal 3 | // If this code works, it was written by Paul DiLascia. 4 | // If not, I don't know who wrote it. 5 | // 6 | // CHyperlink implements a simple text hyperlink 7 | // 8 | #ifndef _HYPRILNK_H 9 | #define _HYPRILNK_H 10 | 11 | ////////////////// 12 | // Simple text hyperlink derived from CString 13 | // 14 | class CHyperlink : public CString { 15 | public: 16 | CHyperlink(LPCTSTR lpLink = NULL) : CString(lpLink) { } 17 | ~CHyperlink() { } 18 | const CHyperlink& operator=(LPCTSTR lpsz) { 19 | CString::operator=(lpsz); 20 | return *this; 21 | } 22 | operator LPCTSTR() { 23 | return CString::operator LPCTSTR(); 24 | } 25 | HINSTANCE Navigate(); 26 | }; 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /MDIClientWnd.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "MUSHclient.h" 3 | #include "mainfrm.h" 4 | 5 | #include "MDIClientWnd.h" 6 | 7 | // CMDIClientWnd 8 | 9 | IMPLEMENT_DYNAMIC(CMDIClientWnd, CWnd) 10 | 11 | CMDIClientWnd::CMDIClientWnd() 12 | { 13 | } 14 | 15 | CMDIClientWnd::~CMDIClientWnd() 16 | { 17 | } 18 | 19 | 20 | BEGIN_MESSAGE_MAP(CMDIClientWnd, CWnd) 21 | ON_WM_ERASEBKGND() 22 | END_MESSAGE_MAP() 23 | 24 | 25 | 26 | // CMDIClientWnd message handlers 27 | 28 | // utils.setbackgroundcolour (ColourNameToRGB ("yellow") ) 29 | 30 | BOOL CMDIClientWnd::OnEraseBkgnd(CDC* pDC) 31 | { 32 | 33 | // if colour is 0xFFFFFFFF then use Windows default (same as before) 34 | if (Frame.m_backgroundColour == 0xFFFFFFFF) 35 | return CWnd::OnEraseBkgnd(pDC); 36 | 37 | // Set brush to desired background color 38 | CBrush backBrush(Frame.m_backgroundColour); 39 | 40 | // Save old brush 41 | CBrush* pOldBrush = pDC->SelectObject(&backBrush); 42 | 43 | CRect rect; 44 | pDC->GetClipBox(&rect); // Erase the area needed 45 | pDC->PatBlt(rect.left, rect.top, rect.Width(), rect.Height(), PATCOPY); 46 | 47 | // put brush back 48 | pDC->SelectObject(pOldBrush); 49 | 50 | return TRUE; 51 | } -------------------------------------------------------------------------------- /MDIClientWnd.h: -------------------------------------------------------------------------------- 1 | // MDIClientWnd.h : sub-classed MDI frame 2 | // 3 | ///////////////////////////////////////////////////////////////////////////// 4 | 5 | #pragma once 6 | 7 | class CMDIClientWnd : public CWnd 8 | { 9 | DECLARE_DYNAMIC(CMDIClientWnd) 10 | 11 | public: 12 | CMDIClientWnd(); 13 | virtual ~CMDIClientWnd(); 14 | 15 | afx_msg BOOL OnEraseBkgnd(CDC* pDC); 16 | 17 | protected: 18 | DECLARE_MESSAGE_MAP() 19 | }; 20 | -------------------------------------------------------------------------------- /MUSHclient.exe.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 13 | 14 | MUSHclient 15 | 16 | 17 | 18 | 19 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /MUSHclient.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/MUSHclient.rc -------------------------------------------------------------------------------- /MUSHclient_2017.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 15 4 | VisualStudioVersion = 15.0.26730.16 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MUSHclient", "MUSHclient.vcxproj", "{A72BFD9B-2A5C-4509-BB92-593FF2C8CE95}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Win32 = Debug|Win32 11 | Release|Win32 = Release|Win32 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {A72BFD9B-2A5C-4509-BB92-593FF2C8CE95}.Debug|Win32.ActiveCfg = Debug|Win32 15 | {A72BFD9B-2A5C-4509-BB92-593FF2C8CE95}.Debug|Win32.Build.0 = Debug|Win32 16 | {A72BFD9B-2A5C-4509-BB92-593FF2C8CE95}.Release|Win32.ActiveCfg = Release|Win32 17 | {A72BFD9B-2A5C-4509-BB92-593FF2C8CE95}.Release|Win32.Build.0 = Release|Win32 18 | {A72BFD9B-2A5C-4509-BB92-593FF2C8CE95}.Release|Win32.Deploy.0 = Release|Win32 19 | EndGlobalSection 20 | GlobalSection(SolutionProperties) = preSolution 21 | HideSolutionNode = FALSE 22 | EndGlobalSection 23 | EndGlobal 24 | -------------------------------------------------------------------------------- /MakeWindowTransparent.h: -------------------------------------------------------------------------------- 1 | /************************************************************** 2 | * MakewWindowTransparent.h 3 | * Copyright 2003, East Coast Toolworks LLC. 4 | * 5 | * by Mike Schaeffer 6 | * mschaef@mschaef.com 7 | * 8 | * Permission is freely granted to make use of this code as you 9 | * see fit. Nothing is guaranteed about this code and no warranties 10 | * are provided about suitability for any purpose. 11 | */ 12 | 13 | #ifndef __MAKEWINDOWTRANSPARENT_H 14 | #define __MAKEWINDOWTRANSPARENT_H 15 | 16 | #define MWT_MIN_FACTOR (0) 17 | #define MWT_MAX_FACTOR (0xFF) 18 | 19 | BOOL MakeWindowTransparent(HWND hWnd, long key, const unsigned char factor); 20 | BOOL MakeWindowTransparent(CWnd *w, long key, const unsigned char factor); 21 | 22 | #endif // __MAKEWINDOWTRANSPARENT_H -------------------------------------------------------------------------------- /MySplitterWnd.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_MYSPLITTERWND_H__8731F757_5508_11D3_A6C8_0000B4595568__INCLUDED_) 2 | #define AFX_MYSPLITTERWND_H__8731F757_5508_11D3_A6C8_0000B4595568__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // MySplitterWnd.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CMySplitterWnd window 12 | 13 | class CMySplitterWnd : public CSplitterWnd 14 | { 15 | // Construction 16 | public: 17 | CMySplitterWnd(); 18 | 19 | // Attributes 20 | public: 21 | 22 | CMUSHclientDoc * m_pDoc; 23 | 24 | // Operations 25 | public: 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CMySplitterWnd) 30 | //}}AFX_VIRTUAL 31 | 32 | // Implementation 33 | public: 34 | virtual ~CMySplitterWnd(); 35 | 36 | // Generated message map functions 37 | protected: 38 | //{{AFX_MSG(CMySplitterWnd) 39 | afx_msg void OnLButtonUp(UINT nFlags, CPoint point); 40 | //}}AFX_MSG 41 | DECLARE_MESSAGE_MAP() 42 | }; 43 | 44 | ///////////////////////////////////////////////////////////////////////////// 45 | 46 | //{{AFX_INSERT_LOCATION}} 47 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 48 | 49 | #endif // !defined(AFX_MYSPLITTERWND_H__8731F757_5508_11D3_A6C8_0000B4595568__INCLUDED_) 50 | -------------------------------------------------------------------------------- /MyStatusBar.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_MYSTATUSBAR_H__040BE3BE_7AD7_11D8_9931_00008C012785__INCLUDED_) 2 | #define AFX_MYSTATUSBAR_H__040BE3BE_7AD7_11D8_9931_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // MyStatusBar.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CMyStatusBar window 12 | 13 | class CMyStatusBar : public CStatusBar 14 | { 15 | // Construction 16 | public: 17 | CMyStatusBar(); 18 | 19 | // Attributes 20 | public: 21 | 22 | // Operations 23 | public: 24 | 25 | // Overrides 26 | // ClassWizard generated virtual function overrides 27 | //{{AFX_VIRTUAL(CMyStatusBar) 28 | //}}AFX_VIRTUAL 29 | 30 | // Implementation 31 | public: 32 | virtual ~CMyStatusBar(); 33 | 34 | // Generated message map functions 35 | protected: 36 | //{{AFX_MSG(CMyStatusBar) 37 | afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point); 38 | afx_msg void OnLButtonDown(UINT nFlags, CPoint point); 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | }; 42 | 43 | ///////////////////////////////////////////////////////////////////////////// 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_MYSTATUSBAR_H__040BE3BE_7AD7_11D8_9931_00008C012785__INCLUDED_) 49 | -------------------------------------------------------------------------------- /TimerWnd.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_TIMERWND_H__126EF919_6B46_11D4_BB14_0080AD7972EF__INCLUDED_) 2 | #define AFX_TIMERWND_H__126EF919_6B46_11D4_BB14_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // TimerWnd.h : header file 8 | // 9 | 10 | class CMUSHclientDoc; 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | // CTimerWnd window 14 | 15 | class CTimerWnd : public CWnd 16 | { 17 | // Construction 18 | public: 19 | CTimerWnd(CMUSHclientDoc * pDoc); 20 | 21 | // Attributes 22 | public: 23 | 24 | CMUSHclientDoc * m_pDoc; 25 | int m_iTimer; 26 | 27 | // Operations 28 | public: 29 | 30 | // Overrides 31 | // ClassWizard generated virtual function overrides 32 | //{{AFX_VIRTUAL(CTimerWnd) 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | public: 37 | virtual ~CTimerWnd(); 38 | 39 | void ChangeTimerRate (const int iRate); 40 | 41 | // Generated message map functions 42 | protected: 43 | //{{AFX_MSG(CTimerWnd) 44 | afx_msg void OnTimer(UINT nIDEvent); 45 | afx_msg void OnDestroy(); 46 | //}}AFX_MSG 47 | DECLARE_MESSAGE_MAP() 48 | }; 49 | 50 | ///////////////////////////////////////////////////////////////////////////// 51 | 52 | //{{AFX_INSERT_LOCATION}} 53 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 54 | 55 | #endif // !defined(AFX_TIMERWND_H__126EF919_6B46_11D4_BB14_0080AD7972EF__INCLUDED_) 56 | -------------------------------------------------------------------------------- /UDPsocket.cpp: -------------------------------------------------------------------------------- 1 | // UDPsocket.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "mushclient.h" 6 | #include "doc.h" 7 | #include "UDPsocket.h" 8 | 9 | #ifdef _DEBUG 10 | #define new DEBUG_NEW 11 | #undef THIS_FILE 12 | static char THIS_FILE[] = __FILE__; 13 | #endif 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // UDPsocket 17 | 18 | UDPsocket::UDPsocket(CMUSHclientDoc * pDoc) 19 | { 20 | m_pDoc = pDoc; 21 | 22 | } 23 | 24 | UDPsocket::~UDPsocket() 25 | { 26 | } 27 | 28 | 29 | // Do not edit the following lines, which are needed by ClassWizard. 30 | #if 0 31 | BEGIN_MESSAGE_MAP(UDPsocket, CAsyncSocket) 32 | //{{AFX_MSG_MAP(UDPsocket) 33 | //}}AFX_MSG_MAP 34 | END_MESSAGE_MAP() 35 | #endif // 0 36 | 37 | ///////////////////////////////////////////////////////////////////////////// 38 | // UDPsocket member functions 39 | 40 | void UDPsocket::OnReceive(int nErrorCode) 41 | { 42 | char buff [1000]; 43 | int count = Receive (buff, sizeof (buff) - 1); 44 | 45 | if (count == SOCKET_ERROR) 46 | return; // strange 47 | 48 | buff [count] = 0; // null terminate it 49 | 50 | // call script 51 | m_pDoc->CallPlugin (m_strPluginID, m_strScript, buff); 52 | 53 | } 54 | -------------------------------------------------------------------------------- /UDPsocket.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_UDPSOCKET_H__7F93BD46_41BB_11D9_9953_00008C012785__INCLUDED_) 2 | #define AFX_UDPSOCKET_H__7F93BD46_41BB_11D9_9953_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // UDPsocket.h : header file 8 | // 9 | 10 | 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | // UDPsocket command target 14 | 15 | class UDPsocket : public CAsyncSocket 16 | { 17 | // Attributes 18 | public: 19 | 20 | // Operations 21 | public: 22 | UDPsocket(CMUSHclientDoc * pDoc); 23 | virtual ~UDPsocket(); 24 | 25 | CMUSHclientDoc * m_pDoc; 26 | CString m_strScript; 27 | CString m_strPluginID; 28 | 29 | // Overrides 30 | public: 31 | // ClassWizard generated virtual function overrides 32 | //{{AFX_VIRTUAL(UDPsocket) 33 | //}}AFX_VIRTUAL 34 | 35 | virtual void OnReceive (int nErrorCode); 36 | 37 | // Generated message map functions 38 | //{{AFX_MSG(UDPsocket) 39 | // NOTE - the ClassWizard will add and remove member functions here. 40 | //}}AFX_MSG 41 | 42 | // Implementation 43 | protected: 44 | }; 45 | 46 | ///////////////////////////////////////////////////////////////////////////// 47 | 48 | //{{AFX_INSERT_LOCATION}} 49 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 50 | 51 | #endif // !defined(AFX_UDPSOCKET_H__7F93BD46_41BB_11D9_9953_00008C012785__INCLUDED_) 52 | -------------------------------------------------------------------------------- /activitychildfrm.h: -------------------------------------------------------------------------------- 1 | // activitychildfrm.h : interface of the CActivityChildFrame class 2 | // 3 | ///////////////////////////////////////////////////////////////////////////// 4 | 5 | class CActivityChildFrame : public CMDIChildWnd 6 | { 7 | DECLARE_DYNCREATE(CActivityChildFrame) 8 | public: 9 | CActivityChildFrame(); 10 | 11 | // Attributes 12 | protected: 13 | 14 | // Operations 15 | public: 16 | 17 | virtual void OnUpdateFrameMenu(BOOL bActivate, CWnd* pActivateWnd, HMENU hMenuAlt); 18 | 19 | // Overrides 20 | // ClassWizard generated virtual function overrides 21 | //{{AFX_VIRTUAL(CActivityChildFrame) 22 | protected: 23 | virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 24 | //}}AFX_VIRTUAL 25 | 26 | // Implementation 27 | public: 28 | virtual ~CActivityChildFrame(); 29 | #ifdef _DEBUG 30 | virtual void AssertValid() const; 31 | virtual void Dump(CDumpContext& dc) const; 32 | #endif 33 | 34 | // Generated message map functions 35 | protected: 36 | //{{AFX_MSG(CActivityChildFrame) 37 | //}}AFX_MSG 38 | DECLARE_MESSAGE_MAP() 39 | }; 40 | 41 | ///////////////////////////////////////////////////////////////////////////// 42 | -------------------------------------------------------------------------------- /build_files_list.lua: -------------------------------------------------------------------------------- 1 | -- builds a file containing every source file in it 2 | 3 | assert (package.loadlib ("lua_utils.dll", "luaopen_utils")) () 4 | 5 | function scan_dir (path, f) 6 | 7 | -- find all files in that directory 8 | local t = assert (utils.readdir (path .. "\\*")) 9 | 10 | for k, v in pairs (t) do 11 | if not v.hidden and 12 | not v.system and 13 | k:sub (1, 1) ~= "." then 14 | 15 | -- recurse to process file or subdirectory 16 | if v.directory then 17 | scan_dir (path .. "\\" .. k, f) 18 | else 19 | f (path .. "\\" .. k, v) 20 | end -- if 21 | 22 | end -- if 23 | 24 | end -- for 25 | 26 | end -- scan_dir 27 | 28 | files = {} 29 | 30 | -- this function is called for every found file 31 | function load_file (name, stats) 32 | 33 | if string.match (name:lower (), "%.cpp$") or 34 | string.match (name:lower (), "%.c$")then 35 | table.insert (files, name) 36 | end -- if 37 | 38 | end -- load_file 39 | 40 | scan_dir ("C:\\source\\mushclient", load_file) 41 | 42 | 43 | table.sort (files) 44 | 45 | fo = assert (io.open ("all_files_list.txt", "w")) 46 | for _, name in ipairs (files) do 47 | name = string.gsub (name, "^C:\\source\\mushclient\\", "/cygdrive/c/source/mushclient/") 48 | name = string.gsub (name, "\\", "/") 49 | fo:write (name .. "\n") 50 | end -- for 51 | 52 | fo:close () 53 | 54 | -------------------------------------------------------------------------------- /chatlistensock.h: -------------------------------------------------------------------------------- 1 | // chatlistensock.h : interface of the CChatListenSocket class 2 | // 3 | 4 | #pragma once 5 | 6 | class CMUSHclientDoc; 7 | 8 | class CChatListenSocket : public CAsyncSocket 9 | { 10 | DECLARE_DYNAMIC(CChatListenSocket); 11 | 12 | // Construction 13 | public: 14 | CChatListenSocket(CMUSHclientDoc* pDoc); 15 | ~CChatListenSocket(); 16 | 17 | // Operations 18 | public: 19 | CMUSHclientDoc* m_pDoc; 20 | 21 | // Implementation 22 | 23 | virtual void OnAccept( int nErrorCode ); 24 | 25 | // virtual void OnReceive(int nErrorCode); 26 | // virtual void OnSend(int nErrorCode); 27 | // virtual void OnClose(int nErrorCode); 28 | // virtual void OnConnect(int nErrorCode); 29 | 30 | 31 | }; 32 | -------------------------------------------------------------------------------- /childfrm.h: -------------------------------------------------------------------------------- 1 | // childfrm.h : interface of the CChildFrame class 2 | // 3 | ///////////////////////////////////////////////////////////////////////////// 4 | 5 | #include "MySplitterWnd.h" 6 | 7 | class CChildFrame : public CMDIChildWnd 8 | { 9 | DECLARE_DYNCREATE(CChildFrame) 10 | public: 11 | CChildFrame(); 12 | 13 | // Attributes 14 | protected: 15 | 16 | public: 17 | 18 | CMySplitterWnd m_wndSplitter; 19 | 20 | CMUSHView * m_topview; 21 | 22 | CMUSHclientDoc * m_pDoc; 23 | 24 | // Operations 25 | public: 26 | 27 | void FixUpSplitterBar (void); 28 | 29 | virtual void OnUpdateFrameMenu(BOOL bActivate, CWnd* pActivateWnd, HMENU hMenuAlt); 30 | 31 | // Overrides 32 | // ClassWizard generated virtual function overrides 33 | //{{AFX_VIRTUAL(CChildFrame) 34 | public: 35 | virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext); 36 | protected: 37 | virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 38 | //}}AFX_VIRTUAL 39 | 40 | // Implementation 41 | public: 42 | virtual ~CChildFrame(); 43 | #ifdef _DEBUG 44 | virtual void AssertValid() const; 45 | virtual void Dump(CDumpContext& dc) const; 46 | #endif 47 | 48 | // Generated message map functions 49 | protected: 50 | //{{AFX_MSG(CChildFrame) 51 | afx_msg void OnClose(); 52 | afx_msg void OnSize(UINT nType, int cx, int cy); 53 | //}}AFX_MSG 54 | BOOL OnToolTipNeedText(UINT id, NMHDR * pNMHDR, LRESULT * pResult); 55 | DECLARE_MESSAGE_MAP() 56 | 57 | }; 58 | 59 | ///////////////////////////////////////////////////////////////////////////// 60 | -------------------------------------------------------------------------------- /dialogs/AsciiArtDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_ASCIIARTDLG_H__2B40250B_6DE4_11D4_BB16_0080AD7972EF__INCLUDED_) 2 | #define AFX_ASCIIARTDLG_H__2B40250B_6DE4_11D4_BB16_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // AsciiArtDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CAsciiArtDlg dialog 12 | 13 | class CAsciiArtDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CAsciiArtDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CAsciiArtDlg) 21 | enum { IDD = IDD_ASCII_ART }; 22 | CEdit m_ctlText; 23 | CEdit m_ctlFont; 24 | CString m_strText; 25 | CString m_strFont; 26 | int m_iLayout; 27 | //}}AFX_DATA 28 | 29 | 30 | // Overrides 31 | // ClassWizard generated virtual function overrides 32 | //{{AFX_VIRTUAL(CAsciiArtDlg) 33 | protected: 34 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 35 | //}}AFX_VIRTUAL 36 | 37 | // Implementation 38 | protected: 39 | 40 | // Generated message map functions 41 | //{{AFX_MSG(CAsciiArtDlg) 42 | afx_msg void OnBrowse(); 43 | //}}AFX_MSG 44 | afx_msg LRESULT OnKickIdle(WPARAM, LPARAM); 45 | afx_msg void OnUpdateNeedThings(CCmdUI* pCmdUI); 46 | DECLARE_MESSAGE_MAP() 47 | }; 48 | 49 | //{{AFX_INSERT_LOCATION}} 50 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 51 | 52 | #endif // !defined(AFX_ASCIIARTDLG_H__2B40250B_6DE4_11D4_BB16_0080AD7972EF__INCLUDED_) 53 | -------------------------------------------------------------------------------- /dialogs/ChooseNotepadDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_CHOOSENOTEPADDLG_H__CF599423_3B2F_11D4_BB11_0080AD7972EF__INCLUDED_) 2 | #define AFX_CHOOSENOTEPADDLG_H__CF599423_3B2F_11D4_BB11_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // ChooseNotepadDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CChooseNotepadDlg dialog 12 | 13 | class CChooseNotepadDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CChooseNotepadDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CChooseNotepadDlg) 21 | enum { IDD = IDD_CHOOSE_NOTEPAD }; 22 | CListBox m_ctlNotepadList; 23 | //}}AFX_DATA 24 | 25 | CMUSHclientDoc * m_pWorld; 26 | CTextDocument * m_pTextDocument; 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CChooseNotepadDlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CChooseNotepadDlg) 40 | afx_msg void OnOpenExisting(); 41 | afx_msg void OnDblclkNotepadList(); 42 | //}}AFX_MSG 43 | afx_msg LRESULT OnKickIdle(WPARAM, LPARAM); 44 | afx_msg void OnUpdateNeedSelection(CCmdUI* pCmdUI); 45 | DECLARE_MESSAGE_MAP() 46 | }; 47 | 48 | //{{AFX_INSERT_LOCATION}} 49 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 50 | 51 | #endif // !defined(AFX_CHOOSENOTEPADDLG_H__CF599423_3B2F_11D4_BB11_0080AD7972EF__INCLUDED_) 52 | -------------------------------------------------------------------------------- /dialogs/ColourComboBox.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_COLOURCOMBOBOX_H__3414F5A8_2628_11D4_BB0D_0080AD7972EF__INCLUDED_) 2 | #define AFX_COLOURCOMBOBOX_H__3414F5A8_2628_11D4_BB0D_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // ColourComboBox.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CColourComboBox window 12 | 13 | class CColourComboBox : public CComboBox 14 | { 15 | // Construction 16 | public: 17 | CColourComboBox(); 18 | 19 | // Attributes 20 | public: 21 | 22 | // custom (user-defined) colours for triggers etc. 23 | COLORREF m_customtext [MAX_CUSTOM]; 24 | COLORREF m_customback [MAX_CUSTOM]; 25 | 26 | COLORREF m_iOtherForeground; 27 | COLORREF m_iOtherBackground; 28 | 29 | // Operations 30 | public: 31 | 32 | // Overrides 33 | // ClassWizard generated virtual function overrides 34 | //{{AFX_VIRTUAL(CColourComboBox) 35 | public: 36 | virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct); 37 | //}}AFX_VIRTUAL 38 | 39 | // Implementation 40 | public: 41 | virtual ~CColourComboBox(); 42 | 43 | // Generated message map functions 44 | protected: 45 | //{{AFX_MSG(CColourComboBox) 46 | // NOTE - the ClassWizard will add and remove member functions here. 47 | //}}AFX_MSG 48 | 49 | DECLARE_MESSAGE_MAP() 50 | }; 51 | 52 | ///////////////////////////////////////////////////////////////////////////// 53 | 54 | //{{AFX_INSERT_LOCATION}} 55 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 56 | 57 | #endif // !defined(AFX_COLOURCOMBOBOX_H__3414F5A8_2628_11D4_BB0D_0080AD7972EF__INCLUDED_) 58 | -------------------------------------------------------------------------------- /dialogs/CreditsDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_CREDITSDLG_H__71365423_C53B_11D2_A279_0000B4595568__INCLUDED_) 2 | #define AFX_CREDITSDLG_H__71365423_C53B_11D2_A279_0000B4595568__INCLUDED_ 3 | 4 | #if _MSC_VER >= 1000 5 | #pragma once 6 | #endif // _MSC_VER >= 1000 7 | // CreditsDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CCreditsDlg dialog 12 | 13 | class CCreditsDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CCreditsDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CCreditsDlg) 21 | enum { IDD = IDD_CREDITS }; 22 | CEdit m_ctlCreditsText; 23 | //}}AFX_DATA 24 | 25 | bool m_first_time; 26 | int m_iResourceID; 27 | CString m_strTitle; 28 | 29 | CFont m_font; 30 | 31 | // Overrides 32 | // ClassWizard generated virtual function overrides 33 | //{{AFX_VIRTUAL(CCreditsDlg) 34 | protected: 35 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 36 | //}}AFX_VIRTUAL 37 | 38 | // Implementation 39 | protected: 40 | 41 | // Generated message map functions 42 | //{{AFX_MSG(CCreditsDlg) 43 | virtual BOOL OnInitDialog(); 44 | afx_msg void OnSetfocusCreditsList(); 45 | //}}AFX_MSG 46 | DECLARE_MESSAGE_MAP() 47 | }; 48 | 49 | //{{AFX_INSERT_LOCATION}} 50 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 51 | 52 | #endif // !defined(AFX_CREDITSDLG_H__71365423_C53B_11D2_A279_0000B4595568__INCLUDED_) 53 | -------------------------------------------------------------------------------- /dialogs/FindDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_FINDDLG_H__84E45A73_B390_11D0_8EBA_00A0247B3BFD__INCLUDED_) 2 | #define AFX_FINDDLG_H__84E45A73_B390_11D0_8EBA_00A0247B3BFD__INCLUDED_ 3 | 4 | #if _MSC_VER >= 1000 5 | #pragma once 6 | #endif // _MSC_VER >= 1000 7 | // FindDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CFindDlg dialog 12 | 13 | class CFindDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CFindDlg(CStringList & strFindStringList, 18 | CWnd* pParent = NULL); // standard constructor 19 | 20 | // Dialog Data 21 | //{{AFX_DATA(CFindDlg) 22 | enum { IDD = IDD_FIND }; 23 | CComboBox m_ctlFindText; 24 | BOOL m_bMatchCase; 25 | int m_bForwards; 26 | BOOL m_bRegexp; 27 | CString m_strFindText; 28 | //}}AFX_DATA 29 | 30 | CString m_strTitle; 31 | 32 | CStringList & m_strFindStringList; 33 | 34 | // Overrides 35 | // ClassWizard generated virtual function overrides 36 | //{{AFX_VIRTUAL(CFindDlg) 37 | protected: 38 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 39 | //}}AFX_VIRTUAL 40 | 41 | // Implementation 42 | protected: 43 | 44 | // Generated message map functions 45 | //{{AFX_MSG(CFindDlg) 46 | virtual BOOL OnInitDialog(); 47 | afx_msg void OnRegexpHelp(); 48 | //}}AFX_MSG 49 | DECLARE_MESSAGE_MAP() 50 | }; 51 | 52 | //{{AFX_INSERT_LOCATION}} 53 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 54 | 55 | #endif // !defined(AFX_FINDDLG_H__84E45A73_B390_11D0_8EBA_00A0247B3BFD__INCLUDED_) 56 | -------------------------------------------------------------------------------- /dialogs/GeneratedNameDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_GENERATEDNAMEDLG_H__C14D6353_34F9_11D4_BB0E_0080AD7972EF__INCLUDED_) 2 | #define AFX_GENERATEDNAMEDLG_H__C14D6353_34F9_11D4_BB0E_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // GeneratedNameDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CGeneratedNameDlg dialog 12 | 13 | class CGeneratedNameDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CGeneratedNameDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CGeneratedNameDlg) 21 | enum { IDD = IDD_GENERATED_NAME }; 22 | CStatic m_ctlFileName; 23 | CEdit m_ctlName; 24 | CString m_strName; 25 | CString m_strFileName; 26 | //}}AFX_DATA 27 | 28 | 29 | CMUSHclientDoc * m_pDoc; 30 | 31 | // Overrides 32 | // ClassWizard generated virtual function overrides 33 | //{{AFX_VIRTUAL(CGeneratedNameDlg) 34 | protected: 35 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 36 | //}}AFX_VIRTUAL 37 | 38 | // Implementation 39 | protected: 40 | 41 | // Generated message map functions 42 | //{{AFX_MSG(CGeneratedNameDlg) 43 | afx_msg void OnTryAgain(); 44 | afx_msg void OnCopy(); 45 | afx_msg void OnSendToWorld(); 46 | afx_msg void OnBrowseName(); 47 | //}}AFX_MSG 48 | DECLARE_MESSAGE_MAP() 49 | }; 50 | 51 | //{{AFX_INSERT_LOCATION}} 52 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 53 | 54 | #endif // !defined(AFX_GENERATEDNAMEDLG_H__C14D6353_34F9_11D4_BB0E_0080AD7972EF__INCLUDED_) 55 | -------------------------------------------------------------------------------- /dialogs/GlobalChangeDlg.cpp: -------------------------------------------------------------------------------- 1 | // GlobalChangeDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\mushclient.h" 6 | #include "GlobalChangeDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CGlobalChangeDlg dialog 16 | 17 | 18 | CGlobalChangeDlg::CGlobalChangeDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CGlobalChangeDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CGlobalChangeDlg) 22 | m_strChangeTo = _T(""); 23 | m_strChangeFrom = _T(""); 24 | //}}AFX_DATA_INIT 25 | } 26 | 27 | 28 | void CGlobalChangeDlg::DoDataExchange(CDataExchange* pDX) 29 | { 30 | CDialog::DoDataExchange(pDX); 31 | //{{AFX_DATA_MAP(CGlobalChangeDlg) 32 | DDX_Text(pDX, IDC_CHANGE_TO, m_strChangeTo); 33 | DDX_Text(pDX, IDC_CHANGE_FROM, m_strChangeFrom); 34 | //}}AFX_DATA_MAP 35 | 36 | if(pDX->m_bSaveAndValidate) 37 | { 38 | 39 | if (m_strChangeFrom.IsEmpty ()) 40 | { 41 | ::TMessageBox("This field cannot be empty."); 42 | DDX_Text(pDX, IDC_CHANGE_FROM, m_strChangeFrom); 43 | pDX->Fail(); 44 | } 45 | 46 | } // end of saving and validating 47 | 48 | } 49 | 50 | 51 | BEGIN_MESSAGE_MAP(CGlobalChangeDlg, CDialog) 52 | //{{AFX_MSG_MAP(CGlobalChangeDlg) 53 | //}}AFX_MSG_MAP 54 | END_MESSAGE_MAP() 55 | 56 | ///////////////////////////////////////////////////////////////////////////// 57 | // CGlobalChangeDlg message handlers 58 | 59 | -------------------------------------------------------------------------------- /dialogs/GlobalChangeDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_GLOBALCHANGEDLG_H__32AAE166_5E05_11D3_A6CB_0000B4595568__INCLUDED_) 2 | #define AFX_GLOBALCHANGEDLG_H__32AAE166_5E05_11D3_A6CB_0000B4595568__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // GlobalChangeDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CGlobalChangeDlg dialog 12 | 13 | class CGlobalChangeDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CGlobalChangeDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CGlobalChangeDlg) 21 | enum { IDD = IDD_GLOBAL_CHANGE }; 22 | CString m_strChangeTo; 23 | CString m_strChangeFrom; 24 | //}}AFX_DATA 25 | 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CGlobalChangeDlg) 30 | protected: 31 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | protected: 36 | 37 | // Generated message map functions 38 | //{{AFX_MSG(CGlobalChangeDlg) 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | }; 42 | 43 | //{{AFX_INSERT_LOCATION}} 44 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 45 | 46 | #endif // !defined(AFX_GLOBALCHANGEDLG_H__32AAE166_5E05_11D3_A6CB_0000B4595568__INCLUDED_) 47 | -------------------------------------------------------------------------------- /dialogs/GoToLineDlg.cpp: -------------------------------------------------------------------------------- 1 | // GoToLineDlg.cpp : implementation file 2 | // 3 | 4 | /* 5 | Copyright (C) 2000 Nick Gammon. 6 | 7 | */ 8 | 9 | #include "stdafx.h" 10 | #include "..\MUSHclient.h" 11 | #include "GoToLineDlg.h" 12 | 13 | #ifdef _DEBUG 14 | #define new DEBUG_NEW 15 | #undef THIS_FILE 16 | static char THIS_FILE[] = __FILE__; 17 | #endif 18 | 19 | ///////////////////////////////////////////////////////////////////////////// 20 | // CGoToLineDlg dialog 21 | 22 | 23 | CGoToLineDlg::CGoToLineDlg(CWnd* pParent /*=NULL*/) 24 | : CDialog(CGoToLineDlg::IDD, pParent) 25 | { 26 | //{{AFX_DATA_INIT(CGoToLineDlg) 27 | m_iLineNumber = 0; 28 | //}}AFX_DATA_INIT 29 | } 30 | 31 | 32 | void CGoToLineDlg::DoDataExchange(CDataExchange* pDX) 33 | { 34 | CDialog::DoDataExchange(pDX); 35 | //{{AFX_DATA_MAP(CGoToLineDlg) 36 | DDX_Text(pDX, IDC_LINE_NUMBER, m_iLineNumber); 37 | //}}AFX_DATA_MAP 38 | 39 | if(pDX->m_bSaveAndValidate) 40 | { 41 | 42 | if (m_iLineNumber < 1 || m_iLineNumber > m_iMaxLine) 43 | { 44 | CString strMessage; 45 | strMessage = TFormat ("Line number must be in range 1 to %i", m_iMaxLine); 46 | ::UMessageBox(strMessage); 47 | DDX_Text(pDX, IDC_LINE_NUMBER, m_iLineNumber); 48 | pDX->Fail(); 49 | } 50 | 51 | } // end of saving and validating 52 | 53 | 54 | } 55 | 56 | 57 | BEGIN_MESSAGE_MAP(CGoToLineDlg, CDialog) 58 | //{{AFX_MSG_MAP(CGoToLineDlg) 59 | // NOTE: the ClassWizard will add message map macros here 60 | //}}AFX_MSG_MAP 61 | END_MESSAGE_MAP() 62 | 63 | ///////////////////////////////////////////////////////////////////////////// 64 | // CGoToLineDlg message handlers 65 | -------------------------------------------------------------------------------- /dialogs/GoToLineDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_GOTOLINEDLG_H__D2527D3E_0F59_11D4_BB0A_0080AD7972EF__INCLUDED_) 2 | #define AFX_GOTOLINEDLG_H__D2527D3E_0F59_11D4_BB0A_0080AD7972EF__INCLUDED_ 3 | 4 | /* 5 | Copyright (C) 2000 Nick Gammon. 6 | 7 | */ 8 | 9 | #if _MSC_VER > 1000 10 | #pragma once 11 | #endif // _MSC_VER > 1000 12 | // GoToLineDlg.h : header file 13 | // 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // CGoToLineDlg dialog 17 | 18 | class CGoToLineDlg : public CDialog 19 | { 20 | // Construction 21 | public: 22 | CGoToLineDlg(CWnd* pParent = NULL); // standard constructor 23 | 24 | // Dialog Data 25 | //{{AFX_DATA(CGoToLineDlg) 26 | enum { IDD = IDD_GOTO }; 27 | int m_iLineNumber; 28 | //}}AFX_DATA 29 | 30 | int m_iMaxLine; 31 | 32 | // Overrides 33 | // ClassWizard generated virtual function overrides 34 | //{{AFX_VIRTUAL(CGoToLineDlg) 35 | protected: 36 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 37 | //}}AFX_VIRTUAL 38 | 39 | // Implementation 40 | protected: 41 | 42 | // Generated message map functions 43 | //{{AFX_MSG(CGoToLineDlg) 44 | // NOTE: the ClassWizard will add member functions here 45 | //}}AFX_MSG 46 | DECLARE_MESSAGE_MAP() 47 | }; 48 | 49 | //{{AFX_INSERT_LOCATION}} 50 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 51 | 52 | #endif // !defined(AFX_GOTOLINEDLG_H__D2527D3E_0F59_11D4_BB0A_0080AD7972EF__INCLUDED_) 53 | -------------------------------------------------------------------------------- /dialogs/ImmediateDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_IMMEDIATEDLG_H__11DFC5FF_AD6F_11D0_8EAE_00A0247B3BFD__INCLUDED_) 2 | #define AFX_IMMEDIATEDLG_H__11DFC5FF_AD6F_11D0_8EAE_00A0247B3BFD__INCLUDED_ 3 | 4 | #if _MSC_VER >= 1000 5 | #pragma once 6 | #endif // _MSC_VER >= 1000 7 | // ImmediateDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CImmediateDlg dialog 12 | 13 | class CImmediateDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CImmediateDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | CMUSHclientDoc * m_pDoc; // owning document 20 | 21 | // Dialog Data 22 | //{{AFX_DATA(CImmediateDlg) 23 | enum { IDD = IDD_IMMEDIATE }; 24 | CEdit m_ctlExpression; 25 | CString m_strExpression; 26 | //}}AFX_DATA 27 | 28 | 29 | // Overrides 30 | // ClassWizard generated virtual function overrides 31 | //{{AFX_VIRTUAL(CImmediateDlg) 32 | protected: 33 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 34 | //}}AFX_VIRTUAL 35 | 36 | // Implementation 37 | protected: 38 | 39 | virtual void OnCancel( ); 40 | 41 | // Generated message map functions 42 | //{{AFX_MSG(CImmediateDlg) 43 | afx_msg void OnRun(); 44 | afx_msg void OnEdit(); 45 | virtual BOOL OnInitDialog(); 46 | //}}AFX_MSG 47 | afx_msg void OnRemoveSelection(); 48 | DECLARE_MESSAGE_MAP() 49 | }; 50 | 51 | //{{AFX_INSERT_LOCATION}} 52 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 53 | 54 | #endif // !defined(AFX_IMMEDIATEDLG_H__11DFC5FF_AD6F_11D0_8EAE_00A0247B3BFD__INCLUDED_) 55 | -------------------------------------------------------------------------------- /dialogs/InsertUnicodeDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_INSERTUNICODEDLG_H__84B8CA6E_EEB9_11DB_99AC_00008C012785__INCLUDED_) 2 | #define AFX_INSERTUNICODEDLG_H__84B8CA6E_EEB9_11DB_99AC_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // InsertUnicodeDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CInsertUnicodeDlg dialog 12 | 13 | class CInsertUnicodeDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CInsertUnicodeDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CInsertUnicodeDlg) 21 | enum { IDD = IDD_INSERT_UNICODE }; 22 | CString m_strCharacter; 23 | BOOL m_bHex; 24 | //}}AFX_DATA 25 | 26 | __int64 m_iCode; // converted code 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CInsertUnicodeDlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CInsertUnicodeDlg) 40 | // NOTE: the ClassWizard will add member functions here 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_INSERTUNICODEDLG_H__84B8CA6E_EEB9_11DB_99AC_00008C012785__INCLUDED_) 49 | -------------------------------------------------------------------------------- /dialogs/KeyNameDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_KEYNAMEDLG_H__6CC9D657_FD01_11DA_9974_00008C012785__INCLUDED_) 2 | #define AFX_KEYNAMEDLG_H__6CC9D657_FD01_11DA_9974_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // KeyNameDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CKeyNameDlg dialog 12 | 13 | class CKeyNameDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CKeyNameDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CKeyNameDlg) 21 | enum { IDD = IDD_KEY_NAME }; 22 | CHotKeyCtrl m_ctlHotkeyValue; 23 | CEdit m_ctlTextName; 24 | //}}AFX_DATA 25 | 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CKeyNameDlg) 30 | protected: 31 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | protected: 36 | 37 | // Generated message map functions 38 | //{{AFX_MSG(CKeyNameDlg) 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | afx_msg LRESULT OnKickIdle(WPARAM, LPARAM); 42 | afx_msg void OnUpdateKeyName(CCmdUI* pCmdUI); 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_KEYNAMEDLG_H__6CC9D657_FD01_11DA_9974_00008C012785__INCLUDED_) 49 | -------------------------------------------------------------------------------- /dialogs/LuaChooseBox.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_LUACHOOSEBOX_H__6E9EEA73_586E_11DA_9963_00008C012785__INCLUDED_) 2 | #define AFX_LUACHOOSEBOX_H__6E9EEA73_586E_11DA_9963_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // LuaChooseBox.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CLuaChooseBox dialog 12 | 13 | class CLuaChooseBox : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CLuaChooseBox(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CLuaChooseBox) 21 | enum { IDD = IDD_LUA_CHOOSE }; 22 | CComboBox m_ctlCombo; 23 | CString m_strMessage; 24 | //}}AFX_DATA 25 | 26 | CString m_strTitle; 27 | 28 | vector m_data; 29 | 30 | int m_iDefault; // default key item (vector number) 31 | 32 | int m_iResult; // result item (vector number) 33 | 34 | // Overrides 35 | // ClassWizard generated virtual function overrides 36 | //{{AFX_VIRTUAL(CLuaChooseBox) 37 | protected: 38 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 39 | //}}AFX_VIRTUAL 40 | 41 | // Implementation 42 | protected: 43 | 44 | // Generated message map functions 45 | //{{AFX_MSG(CLuaChooseBox) 46 | virtual BOOL OnInitDialog(); 47 | virtual void OnOK(); 48 | //}}AFX_MSG 49 | DECLARE_MESSAGE_MAP() 50 | }; 51 | 52 | //{{AFX_INSERT_LOCATION}} 53 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 54 | 55 | #endif // !defined(AFX_LUACHOOSEBOX_H__6E9EEA73_586E_11DA_9963_00008C012785__INCLUDED_) 56 | -------------------------------------------------------------------------------- /dialogs/MXPscriptRoutinesDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_MXPSCRIPTROUTINESDLG_H__7FB4E347_5865_11D5_BB6E_0080AD7972EF__INCLUDED_) 2 | #define AFX_MXPSCRIPTROUTINESDLG_H__7FB4E347_5865_11D5_BB6E_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // MXPscriptRoutinesDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CMXPscriptRoutinesDlg dialog 12 | 13 | class CMXPscriptRoutinesDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CMXPscriptRoutinesDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CMXPscriptRoutinesDlg) 21 | enum { IDD = IDD_MXP_SCRIPTS }; 22 | CString m_strOnMXP_Start; 23 | CString m_strOnMXP_Stop; 24 | CString m_strOnMXP_OpenTag; 25 | CString m_strOnMXP_CloseTag; 26 | CString m_strOnMXP_SetVariable; 27 | CString m_strOnMXP_Error; 28 | //}}AFX_DATA 29 | 30 | 31 | // Overrides 32 | // ClassWizard generated virtual function overrides 33 | //{{AFX_VIRTUAL(CMXPscriptRoutinesDlg) 34 | protected: 35 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 36 | //}}AFX_VIRTUAL 37 | 38 | // Implementation 39 | protected: 40 | 41 | // Generated message map functions 42 | //{{AFX_MSG(CMXPscriptRoutinesDlg) 43 | // NOTE: the ClassWizard will add member functions here 44 | //}}AFX_MSG 45 | DECLARE_MESSAGE_MAP() 46 | }; 47 | 48 | //{{AFX_INSERT_LOCATION}} 49 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 50 | 51 | #endif // !defined(AFX_MXPSCRIPTROUTINESDLG_H__7FB4E347_5865_11D5_BB6E_0080AD7972EF__INCLUDED_) 52 | -------------------------------------------------------------------------------- /dialogs/MapCommentDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_MAPCOMMENTDLG_H__9125B8D6_B0CA_11D6_BBBE_0080AD7972EF__INCLUDED_) 2 | #define AFX_MAPCOMMENTDLG_H__9125B8D6_B0CA_11D6_BBBE_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // MapCommentDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CMapCommentDlg dialog 12 | 13 | class CMapCommentDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CMapCommentDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CMapCommentDlg) 21 | enum { IDD = IDD_MAP_COMMENT }; 22 | CString m_strComment; 23 | //}}AFX_DATA 24 | 25 | 26 | // Overrides 27 | // ClassWizard generated virtual function overrides 28 | //{{AFX_VIRTUAL(CMapCommentDlg) 29 | protected: 30 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 31 | //}}AFX_VIRTUAL 32 | 33 | // Implementation 34 | protected: 35 | 36 | // Generated message map functions 37 | //{{AFX_MSG(CMapCommentDlg) 38 | // NOTE: the ClassWizard will add member functions here 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | }; 42 | 43 | //{{AFX_INSERT_LOCATION}} 44 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 45 | 46 | #endif // !defined(AFX_MAPCOMMENTDLG_H__9125B8D6_B0CA_11D6_BBBE_0080AD7972EF__INCLUDED_) 47 | -------------------------------------------------------------------------------- /dialogs/MapMoveDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_MAPMOVEDLG_H__3494CB78_61D5_11D4_BB13_0080AD7972EF__INCLUDED_) 2 | #define AFX_MAPMOVEDLG_H__3494CB78_61D5_11D4_BB13_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // MapMoveDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CMapMoveDlg dialog 12 | 13 | class CMapMoveDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CMapMoveDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CMapMoveDlg) 21 | enum { IDD = IDD_MAP_MOVE }; 22 | CEdit m_ctlReverse; 23 | CEdit m_ctlAction; 24 | CString m_strAction; 25 | CString m_strReverse; 26 | BOOL m_bSendToMUD; 27 | //}}AFX_DATA 28 | 29 | 30 | // Overrides 31 | // ClassWizard generated virtual function overrides 32 | //{{AFX_VIRTUAL(CMapMoveDlg) 33 | protected: 34 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 35 | //}}AFX_VIRTUAL 36 | 37 | // Implementation 38 | protected: 39 | 40 | // Generated message map functions 41 | //{{AFX_MSG(CMapMoveDlg) 42 | // NOTE: the ClassWizard will add member functions here 43 | //}}AFX_MSG 44 | DECLARE_MESSAGE_MAP() 45 | afx_msg LRESULT OnKickIdle(WPARAM, LPARAM); 46 | afx_msg void OnUpdateNeedAction(CCmdUI* pCmdUI); 47 | }; 48 | 49 | //{{AFX_INSERT_LOCATION}} 50 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 51 | 52 | #endif // !defined(AFX_MAPMOVEDLG_H__3494CB78_61D5_11D4_BB13_0080AD7972EF__INCLUDED_) 53 | -------------------------------------------------------------------------------- /dialogs/MultiLineTriggerDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_MULTILINETRIGGERDLG_H__A3149338_56DC_11D9_9957_00008C012785__INCLUDED_) 2 | #define AFX_MULTILINETRIGGERDLG_H__A3149338_56DC_11D9_9957_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // MultiLineTriggerDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CMultiLineTriggerDlg dialog 12 | 13 | class CMultiLineTriggerDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CMultiLineTriggerDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | ~CMultiLineTriggerDlg () { delete m_font; }; 20 | 21 | // Dialog Data 22 | //{{AFX_DATA(CMultiLineTriggerDlg) 23 | enum { IDD = IDD_MULTILINE_TRIGGER }; 24 | CEdit m_ctlTriggerText; 25 | CString m_strTriggerText; 26 | BOOL m_bMatchCase; 27 | //}}AFX_DATA 28 | 29 | CFont * m_font; 30 | 31 | // Overrides 32 | // ClassWizard generated virtual function overrides 33 | //{{AFX_VIRTUAL(CMultiLineTriggerDlg) 34 | protected: 35 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 36 | //}}AFX_VIRTUAL 37 | 38 | // Implementation 39 | protected: 40 | 41 | // Generated message map functions 42 | //{{AFX_MSG(CMultiLineTriggerDlg) 43 | virtual BOOL OnInitDialog(); 44 | //}}AFX_MSG 45 | afx_msg void OnRemoveSelection(); 46 | DECLARE_MESSAGE_MAP() 47 | }; 48 | 49 | //{{AFX_INSERT_LOCATION}} 50 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 51 | 52 | #endif // !defined(AFX_MULTILINETRIGGERDLG_H__A3149338_56DC_11D9_9957_00008C012785__INCLUDED_) 53 | -------------------------------------------------------------------------------- /dialogs/ProxyServerPasswordDlg.cpp: -------------------------------------------------------------------------------- 1 | // ProxyServerPasswordDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\mushclient.h" 6 | #include "ProxyServerPasswordDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CProxyServerPasswordDlg dialog 16 | 17 | 18 | CProxyServerPasswordDlg::CProxyServerPasswordDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CProxyServerPasswordDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CProxyServerPasswordDlg) 22 | m_strProxyUserName = _T(""); 23 | m_strProxyPassword = _T(""); 24 | //}}AFX_DATA_INIT 25 | } 26 | 27 | 28 | void CProxyServerPasswordDlg::DoDataExchange(CDataExchange* pDX) 29 | { 30 | CDialog::DoDataExchange(pDX); 31 | //{{AFX_DATA_MAP(CProxyServerPasswordDlg) 32 | DDX_Text(pDX, IDC_LOGON_NAME, m_strProxyUserName); 33 | DDX_Text(pDX, IDC_LOGON_PASSWORD, m_strProxyPassword); 34 | //}}AFX_DATA_MAP 35 | } 36 | 37 | 38 | BEGIN_MESSAGE_MAP(CProxyServerPasswordDlg, CDialog) 39 | //{{AFX_MSG_MAP(CProxyServerPasswordDlg) 40 | // NOTE: the ClassWizard will add message map macros here 41 | //}}AFX_MSG_MAP 42 | END_MESSAGE_MAP() 43 | 44 | ///////////////////////////////////////////////////////////////////////////// 45 | // CProxyServerPasswordDlg message handlers 46 | -------------------------------------------------------------------------------- /dialogs/ProxyServerPasswordDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_PROXYSERVERPASSWORDDLG_H__0A7832A6_783C_11D7_A77E_0080AD7972EF__INCLUDED_) 2 | #define AFX_PROXYSERVERPASSWORDDLG_H__0A7832A6_783C_11D7_A77E_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // ProxyServerPasswordDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CProxyServerPasswordDlg dialog 12 | 13 | class CProxyServerPasswordDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CProxyServerPasswordDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CProxyServerPasswordDlg) 21 | enum { IDD = IDD_PROXY_PASSWORD }; 22 | CString m_strProxyUserName; 23 | CString m_strProxyPassword; 24 | //}}AFX_DATA 25 | 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CProxyServerPasswordDlg) 30 | protected: 31 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | protected: 36 | 37 | // Generated message map functions 38 | //{{AFX_MSG(CProxyServerPasswordDlg) 39 | // NOTE: the ClassWizard will add member functions here 40 | //}}AFX_MSG 41 | DECLARE_MESSAGE_MAP() 42 | }; 43 | 44 | //{{AFX_INSERT_LOCATION}} 45 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 46 | 47 | #endif // !defined(AFX_PROXYSERVERPASSWORDDLG_H__0A7832A6_783C_11D7_A77E_0080AD7972EF__INCLUDED_) 48 | -------------------------------------------------------------------------------- /dialogs/QuickConnectDlg.cpp: -------------------------------------------------------------------------------- 1 | // QuickConnectDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\mushclient.h" 6 | #include "QuickConnectDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CQuickConnectDlg dialog 16 | 17 | 18 | CQuickConnectDlg::CQuickConnectDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CQuickConnectDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CQuickConnectDlg) 22 | m_iPort = 0; 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CQuickConnectDlg::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CQuickConnectDlg) 31 | DDX_MinMaxString(pDX, IDC_MUSH_NAME, m_strWorldName); 32 | DDV_MinMaxString(pDX, m_strWorldName, 1, 255); 33 | DDX_MinMaxString(pDX, IDC_SERVER, m_strAddress); 34 | DDV_MinMaxString(pDX, m_strAddress, 1, 255); 35 | DDX_Text(pDX, IDC_CHANNEL, m_iPort); 36 | //}}AFX_DATA_MAP 37 | } 38 | 39 | 40 | BEGIN_MESSAGE_MAP(CQuickConnectDlg, CDialog) 41 | //{{AFX_MSG_MAP(CQuickConnectDlg) 42 | // NOTE: the ClassWizard will add message map macros here 43 | //}}AFX_MSG_MAP 44 | END_MESSAGE_MAP() 45 | 46 | ///////////////////////////////////////////////////////////////////////////// 47 | // CQuickConnectDlg message handlers 48 | -------------------------------------------------------------------------------- /dialogs/QuickConnectDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_QUICKCONNECTDLG_H__8E59D505_D802_11D2_A27F_0000B4595568__INCLUDED_) 2 | #define AFX_QUICKCONNECTDLG_H__8E59D505_D802_11D2_A27F_0000B4595568__INCLUDED_ 3 | 4 | #if _MSC_VER >= 1000 5 | #pragma once 6 | #endif // _MSC_VER >= 1000 7 | // QuickConnectDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CQuickConnectDlg dialog 12 | 13 | class CQuickConnectDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CQuickConnectDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CQuickConnectDlg) 21 | enum { IDD = IDD_QUICK_CONNECT }; 22 | CString m_strWorldName; 23 | CString m_strAddress; 24 | int m_iPort; 25 | //}}AFX_DATA 26 | 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CQuickConnectDlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CQuickConnectDlg) 40 | // NOTE: the ClassWizard will add member functions here 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_QUICKCONNECTDLG_H__8E59D505_D802_11D2_A27F_0000B4595568__INCLUDED_) 49 | -------------------------------------------------------------------------------- /dialogs/RegexpProblemDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_REGEXPPROBLEMDLG_H__7404107A_94A0_11D8_9937_00008C012785__INCLUDED_) 2 | #define AFX_REGEXPPROBLEMDLG_H__7404107A_94A0_11D8_9937_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // RegexpProblemDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CRegexpProblemDlg dialog 12 | 13 | class CRegexpProblemDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CRegexpProblemDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CRegexpProblemDlg) 21 | enum { IDD = IDD_REGEXP_PROBLEM }; 22 | CStatic m_ctlErrorMessage; 23 | CEdit m_ctlRegexpText; 24 | CString m_strColumn; 25 | CString m_strErrorMessage; 26 | CString m_strText; 27 | //}}AFX_DATA 28 | 29 | CFont m_font; 30 | int m_iColumn; 31 | 32 | // Overrides 33 | // ClassWizard generated virtual function overrides 34 | //{{AFX_VIRTUAL(CRegexpProblemDlg) 35 | protected: 36 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 37 | //}}AFX_VIRTUAL 38 | 39 | // Implementation 40 | protected: 41 | 42 | // Generated message map functions 43 | //{{AFX_MSG(CRegexpProblemDlg) 44 | virtual BOOL OnInitDialog(); 45 | afx_msg void OnSetfocusRegexpText(); 46 | //}}AFX_MSG 47 | DECLARE_MESSAGE_MAP() 48 | }; 49 | 50 | //{{AFX_INSERT_LOCATION}} 51 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 52 | 53 | #endif // !defined(AFX_REGEXPPROBLEMDLG_H__7404107A_94A0_11D8_9937_00008C012785__INCLUDED_) 54 | -------------------------------------------------------------------------------- /dialogs/SendToAllDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_SENDTOALLDLG_H__3414F5B1_2628_11D4_BB0D_0080AD7972EF__INCLUDED_) 2 | #define AFX_SENDTOALLDLG_H__3414F5B1_2628_11D4_BB0D_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // SendToAllDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CSendToAllDlg dialog 12 | 13 | class CSendToAllDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CSendToAllDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CSendToAllDlg) 21 | enum { IDD = IDD_SEND_TO_ALL }; 22 | CEdit m_ctlSendText; 23 | CListBox m_ctlWorldList; 24 | CString m_strSendText; 25 | BOOL m_bEcho; 26 | //}}AFX_DATA 27 | 28 | CFont m_font; 29 | 30 | // Overrides 31 | // ClassWizard generated virtual function overrides 32 | //{{AFX_VIRTUAL(CSendToAllDlg) 33 | protected: 34 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 35 | //}}AFX_VIRTUAL 36 | 37 | // Implementation 38 | protected: 39 | 40 | // Generated message map functions 41 | //{{AFX_MSG(CSendToAllDlg) 42 | virtual BOOL OnInitDialog(); 43 | afx_msg void OnSelectAll(); 44 | afx_msg void OnSelectNone(); 45 | //}}AFX_MSG 46 | afx_msg LRESULT OnKickIdle(WPARAM, LPARAM); 47 | afx_msg void OnUpdateCheckIfReady(CCmdUI* pCmdUI); 48 | DECLARE_MESSAGE_MAP() 49 | }; 50 | 51 | //{{AFX_INSERT_LOCATION}} 52 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 53 | 54 | #endif // !defined(AFX_SENDTOALLDLG_H__3414F5B1_2628_11D4_BB0D_0080AD7972EF__INCLUDED_) 55 | -------------------------------------------------------------------------------- /dialogs/Splash.h: -------------------------------------------------------------------------------- 1 | // CG: This file was added by the Splash Screen component. 2 | 3 | #ifndef _SPLASH_SCRN_ 4 | #define _SPLASH_SCRN_ 5 | 6 | // Splash.h : header file 7 | // 8 | 9 | ///////////////////////////////////////////////////////////////////////////// 10 | // Splash Screen class 11 | 12 | class CSplashWnd : public CWnd 13 | { 14 | // Construction 15 | protected: 16 | CSplashWnd(); 17 | 18 | // Attributes: 19 | public: 20 | CBitmap m_bitmap; 21 | 22 | CPalette m_pal; 23 | 24 | bool m_bNick; 25 | 26 | // Operations 27 | public: 28 | static void EnableSplashScreen(BOOL bEnable = TRUE); 29 | static void ShowSplashScreen(CWnd* pParentWnd, const int iResourceID); 30 | static BOOL PreTranslateAppMessage(MSG* pMsg); 31 | static bool CSplashWnd::HaveSplashScreen (void); 32 | 33 | // Overrides 34 | // ClassWizard generated virtual function overrides 35 | //{{AFX_VIRTUAL(CSplashWnd) 36 | //}}AFX_VIRTUAL 37 | 38 | // Implementation 39 | public: 40 | ~CSplashWnd(); 41 | virtual void PostNcDestroy(); 42 | 43 | protected: 44 | BOOL Create(CWnd* pParentWnd, const int iResourceID); 45 | void HideSplashScreen(); 46 | static BOOL c_bShowSplashWnd; 47 | static CSplashWnd* c_pSplashWnd; 48 | 49 | // Generated message map functions 50 | protected: 51 | //{{AFX_MSG(CSplashWnd) 52 | afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); 53 | afx_msg void OnPaint(); 54 | afx_msg void OnTimer(UINT nIDEvent); 55 | //}}AFX_MSG 56 | DECLARE_MESSAGE_MAP() 57 | }; 58 | 59 | 60 | #endif 61 | -------------------------------------------------------------------------------- /dialogs/TipDlg.h: -------------------------------------------------------------------------------- 1 | // CG: This file added by 'Tip of the Day' component. 2 | 3 | ///////////////////////////////////////////////////////////////////////////// 4 | // CTipDlg dialog 5 | 6 | class CTipDlg : public CDialog 7 | { 8 | // Construction 9 | public: 10 | CTipDlg(CWnd* pParent = NULL); // standard constructor 11 | 12 | // Dialog Data 13 | //{{AFX_DATA(CTipDlg) 14 | // enum { IDD = IDD_TIP }; 15 | BOOL m_bStartup; 16 | CString m_strTip; 17 | //}}AFX_DATA 18 | 19 | FILE* m_pStream; 20 | 21 | // Overrides 22 | // ClassWizard generated virtual function overrides 23 | //{{AFX_VIRTUAL(CTipDlg) 24 | protected: 25 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 26 | //}}AFX_VIRTUAL 27 | 28 | // Implementation 29 | public: 30 | virtual ~CTipDlg(); 31 | 32 | protected: 33 | // Generated message map functions 34 | //{{AFX_MSG(CTipDlg) 35 | afx_msg void OnNextTip(); 36 | afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor); 37 | virtual void OnOK(); 38 | virtual BOOL OnInitDialog(); 39 | afx_msg void OnPaint(); 40 | //}}AFX_MSG 41 | DECLARE_MESSAGE_MAP() 42 | 43 | void GetNextTipString(CString& strNext); 44 | }; 45 | 46 | -------------------------------------------------------------------------------- /dialogs/UniqueIDDlg.cpp: -------------------------------------------------------------------------------- 1 | // UniqueIDDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\mushclient.h" 6 | #include "UniqueIDDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CUniqueIDDlg dialog 16 | 17 | 18 | CUniqueIDDlg::CUniqueIDDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CUniqueIDDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CUniqueIDDlg) 22 | m_strUniqueID = _T(""); 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CUniqueIDDlg::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CUniqueIDDlg) 31 | DDX_Text(pDX, IDC_ID, m_strUniqueID); 32 | //}}AFX_DATA_MAP 33 | } 34 | 35 | 36 | BEGIN_MESSAGE_MAP(CUniqueIDDlg, CDialog) 37 | //{{AFX_MSG_MAP(CUniqueIDDlg) 38 | // NOTE: the ClassWizard will add message map macros here 39 | //}}AFX_MSG_MAP 40 | END_MESSAGE_MAP() 41 | 42 | ///////////////////////////////////////////////////////////////////////////// 43 | // CUniqueIDDlg message handlers 44 | -------------------------------------------------------------------------------- /dialogs/UniqueIDDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_UNIQUEIDDLG_H__A3149331_56DC_11D9_9957_00008C012785__INCLUDED_) 2 | #define AFX_UNIQUEIDDLG_H__A3149331_56DC_11D9_9957_00008C012785__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // UniqueIDDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CUniqueIDDlg dialog 12 | 13 | class CUniqueIDDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CUniqueIDDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CUniqueIDDlg) 21 | enum { IDD = IDD_GENERATE_UNIQUE_ID }; 22 | CString m_strUniqueID; 23 | //}}AFX_DATA 24 | 25 | 26 | // Overrides 27 | // ClassWizard generated virtual function overrides 28 | //{{AFX_VIRTUAL(CUniqueIDDlg) 29 | protected: 30 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 31 | //}}AFX_VIRTUAL 32 | 33 | // Implementation 34 | protected: 35 | 36 | // Generated message map functions 37 | //{{AFX_MSG(CUniqueIDDlg) 38 | // NOTE: the ClassWizard will add member functions here 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | }; 42 | 43 | //{{AFX_INSERT_LOCATION}} 44 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 45 | 46 | #endif // !defined(AFX_UNIQUEIDDLG_H__A3149331_56DC_11D9_9957_00008C012785__INCLUDED_) 47 | -------------------------------------------------------------------------------- /dialogs/WinsockInfoDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_WINSOCKINFODLG_H__488873B7_4CDF_11D4_BB13_0080AD7972EF__INCLUDED_) 2 | #define AFX_WINSOCKINFODLG_H__488873B7_4CDF_11D4_BB13_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // WinsockInfoDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CWinsockInfoDlg dialog 12 | 13 | class CWinsockInfoDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CWinsockInfoDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CWinsockInfoDlg) 21 | enum { IDD = IDD_WINSOCK_INFO }; 22 | CString m_szDescription; 23 | CString m_szSystemStatus; 24 | short m_iMaxSockets; 25 | CString m_strVersion; 26 | CString m_strHighVersion; 27 | CString m_strHostName; 28 | CString m_strAddresses; 29 | //}}AFX_DATA 30 | 31 | 32 | // Overrides 33 | // ClassWizard generated virtual function overrides 34 | //{{AFX_VIRTUAL(CWinsockInfoDlg) 35 | protected: 36 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 37 | //}}AFX_VIRTUAL 38 | 39 | // Implementation 40 | protected: 41 | 42 | // Generated message map functions 43 | //{{AFX_MSG(CWinsockInfoDlg) 44 | // NOTE: the ClassWizard will add member functions here 45 | //}}AFX_MSG 46 | DECLARE_MESSAGE_MAP() 47 | }; 48 | 49 | //{{AFX_INSERT_LOCATION}} 50 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 51 | 52 | #endif // !defined(AFX_WINSOCKINFODLG_H__488873B7_4CDF_11D4_BB13_0080AD7972EF__INCLUDED_) 53 | -------------------------------------------------------------------------------- /dialogs/chat/ChatCallDlg.cpp: -------------------------------------------------------------------------------- 1 | // ChatCallDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\..\mushclient.h" 6 | #include "ChatCallDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CChatCallDlg dialog 16 | 17 | 18 | CChatCallDlg::CChatCallDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CChatCallDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CChatCallDlg) 22 | m_iPort = 0; 23 | m_bzChat = FALSE; 24 | //}}AFX_DATA_INIT 25 | } 26 | 27 | 28 | void CChatCallDlg::DoDataExchange(CDataExchange* pDX) 29 | { 30 | CDialog::DoDataExchange(pDX); 31 | //{{AFX_DATA_MAP(CChatCallDlg) 32 | DDX_Text(pDX, IDC_PORT, m_iPort); 33 | DDV_MinMaxLong(pDX, m_iPort, 1, 65535); 34 | DDX_MinMaxString(pDX, IDC_IP_ADDRESS, m_strAddress); 35 | DDV_MinMaxString(pDX, m_strAddress, 1, 512); 36 | DDX_Check(pDX, IDC_ZCHAT, m_bzChat); 37 | //}}AFX_DATA_MAP 38 | } 39 | 40 | 41 | BEGIN_MESSAGE_MAP(CChatCallDlg, CDialog) 42 | //{{AFX_MSG_MAP(CChatCallDlg) 43 | // NOTE: the ClassWizard will add message map macros here 44 | //}}AFX_MSG_MAP 45 | END_MESSAGE_MAP() 46 | 47 | ///////////////////////////////////////////////////////////////////////////// 48 | // CChatCallDlg message handlers 49 | -------------------------------------------------------------------------------- /dialogs/chat/ChatCallDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_CHATCALLDLG_H__9B3793C7_7539_11D7_A77E_0080AD7972EF__INCLUDED_) 2 | #define AFX_CHATCALLDLG_H__9B3793C7_7539_11D7_A77E_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // ChatCallDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CChatCallDlg dialog 12 | 13 | class CChatCallDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CChatCallDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CChatCallDlg) 21 | enum { IDD = IDD_CHAT_CALL }; 22 | long m_iPort; 23 | CString m_strAddress; 24 | BOOL m_bzChat; 25 | //}}AFX_DATA 26 | 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CChatCallDlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CChatCallDlg) 40 | // NOTE: the ClassWizard will add member functions here 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_CHATCALLDLG_H__9B3793C7_7539_11D7_A77E_0080AD7972EF__INCLUDED_) 49 | -------------------------------------------------------------------------------- /dialogs/chat/ChatToAllDlg.cpp: -------------------------------------------------------------------------------- 1 | // ChatToAllDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\..\mushclient.h" 6 | #include "ChatToAllDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CChatToAllDlg dialog 16 | 17 | 18 | CChatToAllDlg::CChatToAllDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CChatToAllDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CChatToAllDlg) 22 | // NOTE: the ClassWizard will add member initialization here 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CChatToAllDlg::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CChatToAllDlg) 31 | DDX_MinMaxString(pDX, IDC_SAY_TEXT, m_strText); 32 | DDV_MinMaxString(pDX, m_strText, 1, 1000); 33 | //}}AFX_DATA_MAP 34 | } 35 | 36 | 37 | BEGIN_MESSAGE_MAP(CChatToAllDlg, CDialog) 38 | //{{AFX_MSG_MAP(CChatToAllDlg) 39 | //}}AFX_MSG_MAP 40 | END_MESSAGE_MAP() 41 | 42 | ///////////////////////////////////////////////////////////////////////////// 43 | // CChatToAllDlg message handlers 44 | 45 | BOOL CChatToAllDlg::OnInitDialog() 46 | { 47 | CDialog::OnInitDialog(); 48 | 49 | SetWindowText (m_strTitle); 50 | 51 | return TRUE; // return TRUE unless you set the focus to a control 52 | // EXCEPTION: OCX Property Pages should return FALSE 53 | } 54 | -------------------------------------------------------------------------------- /dialogs/chat/ChatToAllDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_CHATTOALLDLG_H__AA5D5A73_7541_11D7_A77E_0080AD7972EF__INCLUDED_) 2 | #define AFX_CHATTOALLDLG_H__AA5D5A73_7541_11D7_A77E_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // ChatToAllDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CChatToAllDlg dialog 12 | 13 | class CChatToAllDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CChatToAllDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CChatToAllDlg) 21 | enum { IDD = IDD_CHAT_SAY_ALL }; 22 | CString m_strText; 23 | //}}AFX_DATA 24 | 25 | 26 | CString m_strTitle; 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CChatToAllDlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CChatToAllDlg) 40 | virtual BOOL OnInitDialog(); 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_CHATTOALLDLG_H__AA5D5A73_7541_11D7_A77E_0080AD7972EF__INCLUDED_) 49 | -------------------------------------------------------------------------------- /dialogs/chat/EmoteToAllDlg.cpp: -------------------------------------------------------------------------------- 1 | // EmoteToAllDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\..\mushclient.h" 6 | #include "EmoteToAllDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CEmoteToAllDlg dialog 16 | 17 | 18 | CEmoteToAllDlg::CEmoteToAllDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CEmoteToAllDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CEmoteToAllDlg) 22 | // NOTE: the ClassWizard will add member initialization here 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CEmoteToAllDlg::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CEmoteToAllDlg) 31 | DDX_MinMaxString(pDX, IDC_EMOTE_TEXT, m_strText); 32 | DDV_MinMaxString(pDX, m_strText, 1, 1000); 33 | //}}AFX_DATA_MAP 34 | } 35 | 36 | 37 | BEGIN_MESSAGE_MAP(CEmoteToAllDlg, CDialog) 38 | //{{AFX_MSG_MAP(CEmoteToAllDlg) 39 | //}}AFX_MSG_MAP 40 | END_MESSAGE_MAP() 41 | 42 | ///////////////////////////////////////////////////////////////////////////// 43 | // CEmoteToAllDlg message handlers 44 | 45 | BOOL CEmoteToAllDlg::OnInitDialog() 46 | { 47 | CDialog::OnInitDialog(); 48 | 49 | SetWindowText (m_strTitle); 50 | 51 | return TRUE; // return TRUE unless you set the focus to a control 52 | // EXCEPTION: OCX Property Pages should return FALSE 53 | } 54 | -------------------------------------------------------------------------------- /dialogs/chat/EmoteToAllDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_EMOTETOALLDLG_H__AA5D5A74_7541_11D7_A77E_0080AD7972EF__INCLUDED_) 2 | #define AFX_EMOTETOALLDLG_H__AA5D5A74_7541_11D7_A77E_0080AD7972EF__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // EmoteToAllDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CEmoteToAllDlg dialog 12 | 13 | class CEmoteToAllDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CEmoteToAllDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CEmoteToAllDlg) 21 | enum { IDD = IDD_CHAT_EMOTE_ALL }; 22 | CString m_strText; 23 | //}}AFX_DATA 24 | 25 | 26 | CString m_strTitle; 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CEmoteToAllDlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CEmoteToAllDlg) 40 | virtual BOOL OnInitDialog(); 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_EMOTETOALLDLG_H__AA5D5A74_7541_11D7_A77E_0080AD7972EF__INCLUDED_) 49 | -------------------------------------------------------------------------------- /dialogs/cmdhist.h: -------------------------------------------------------------------------------- 1 | // cmdhist.h : header file 2 | // 3 | 4 | ///////////////////////////////////////////////////////////////////////////// 5 | // CCmdHistory dialog 6 | 7 | class CCmdHistory : public CDialog 8 | { 9 | // Construction 10 | public: 11 | CCmdHistory(CWnd* pParent = NULL); // standard constructor 12 | 13 | CStringList * m_msgList; 14 | CSendView * m_sendview; 15 | CFindInfo * m_pHistoryFindInfo; 16 | CMUSHclientDoc* m_pDoc; 17 | 18 | // Dialog Data 19 | //{{AFX_DATA(CCmdHistory) 20 | enum { IDD = IDD_COMMAND_HISTORY }; 21 | CEdit m_ctlHistoryItem; 22 | //}}AFX_DATA 23 | 24 | 25 | // Overrides 26 | // ClassWizard generated virtual function overrides 27 | //{{AFX_VIRTUAL(CCmdHistory) 28 | protected: 29 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 30 | //}}AFX_VIRTUAL 31 | 32 | // Implementation 33 | protected: 34 | 35 | 36 | // for finding 37 | 38 | static void InitiateSearch (const CObject * pObject, 39 | CFindInfo & FindInfo); 40 | 41 | static bool GetNextLine (const CObject * pObject, 42 | CFindInfo & FindInfo, 43 | CString & strLine); 44 | 45 | void DoFind (bool bAgain); 46 | 47 | 48 | // Generated message map functions 49 | //{{AFX_MSG(CCmdHistory) 50 | virtual void OnOK(); 51 | afx_msg void OnDblclkCommands(); 52 | afx_msg void OnHelpbutton(); 53 | afx_msg void OnFind(); 54 | afx_msg void OnFindNext(); 55 | afx_msg void OnSelchangeCommands(); 56 | afx_msg void OnDo(); 57 | afx_msg void OnNotepad(); 58 | //}}AFX_MSG 59 | DECLARE_MESSAGE_MAP() 60 | }; 61 | -------------------------------------------------------------------------------- /dialogs/logdlg.h: -------------------------------------------------------------------------------- 1 | // logdlg.h : header file 2 | // 3 | 4 | ///////////////////////////////////////////////////////////////////////////// 5 | // CLogDlg dialog 6 | 7 | class CLogDlg : public CDialog 8 | { 9 | // Construction 10 | public: 11 | CLogDlg(CWnd* pParent = NULL); // standard constructor 12 | 13 | 14 | CMUSHclientDoc * m_doc; 15 | 16 | // Dialog Data 17 | //{{AFX_DATA(CLogDlg) 18 | enum { IDD = IDD_LINE_COUNT }; 19 | long m_lines; 20 | BOOL m_bAppendToLogFile; 21 | BOOL m_bWriteWorldName; 22 | CString m_strPreamble; 23 | BOOL m_bLogNotes; 24 | BOOL m_bLogInput; 25 | BOOL m_bLogOutput; 26 | //}}AFX_DATA 27 | 28 | 29 | // Overrides 30 | // ClassWizard generated virtual function overrides 31 | //{{AFX_VIRTUAL(CLogDlg) 32 | protected: 33 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 34 | //}}AFX_VIRTUAL 35 | 36 | // Implementation 37 | protected: 38 | 39 | // Generated message map functions 40 | //{{AFX_MSG(CLogDlg) 41 | afx_msg void OnHelpbutton(); 42 | //}}AFX_MSG 43 | DECLARE_MESSAGE_MAP() 44 | }; 45 | -------------------------------------------------------------------------------- /dialogs/password.h: -------------------------------------------------------------------------------- 1 | // password.h : header file 2 | // 3 | 4 | ///////////////////////////////////////////////////////////////////////////// 5 | // CPasswordDialog dialog 6 | 7 | class CPasswordDialog : public CDialog 8 | { 9 | // Construction 10 | public: 11 | CPasswordDialog(CWnd* pParent = NULL); // standard constructor 12 | 13 | // Dialog Data 14 | //{{AFX_DATA(CPasswordDialog) 15 | enum { IDD = IDD_PASSWORD }; 16 | CString m_character; 17 | CString m_password; 18 | //}}AFX_DATA 19 | 20 | 21 | // Overrides 22 | // ClassWizard generated virtual function overrides 23 | //{{AFX_VIRTUAL(CPasswordDialog) 24 | protected: 25 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 26 | //}}AFX_VIRTUAL 27 | 28 | // Implementation 29 | protected: 30 | 31 | // Generated message map functions 32 | //{{AFX_MSG(CPasswordDialog) 33 | afx_msg void OnHelpbutton(); 34 | //}}AFX_MSG 35 | DECLARE_MESSAGE_MAP() 36 | }; 37 | -------------------------------------------------------------------------------- /dialogs/welcome.cpp: -------------------------------------------------------------------------------- 1 | // welcome.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\mushclient.h" 6 | #include "..\doc.h" 7 | #include "..\StatLink.h" 8 | 9 | #include "welcome.h" 10 | 11 | #ifdef _DEBUG 12 | #define new DEBUG_NEW 13 | #undef THIS_FILE 14 | static char BASED_CODE THIS_FILE[] = __FILE__; 15 | #endif 16 | 17 | ///////////////////////////////////////////////////////////////////////////// 18 | // CWelcomeDlg dialog 19 | 20 | 21 | CWelcomeDlg::CWelcomeDlg(CWnd* pParent /*=NULL*/) 22 | : CDialog(CWelcomeDlg::IDD, pParent) 23 | { 24 | //{{AFX_DATA_INIT(CWelcomeDlg) 25 | m_strMessage = _T(""); 26 | m_strChangeHistoryAddress = _T(""); 27 | //}}AFX_DATA_INIT 28 | } 29 | 30 | 31 | void CWelcomeDlg::DoDataExchange(CDataExchange* pDX) 32 | { 33 | CDialog::DoDataExchange(pDX); 34 | //{{AFX_DATA_MAP(CWelcomeDlg) 35 | DDX_Text(pDX, IDC_MESSAGE, m_strMessage); 36 | DDX_Text(pDX, IDC_CHANGES_ADDRESS, m_strChangeHistoryAddress); 37 | //}}AFX_DATA_MAP 38 | } 39 | 40 | 41 | BEGIN_MESSAGE_MAP(CWelcomeDlg, CDialog) 42 | //{{AFX_MSG_MAP(CWelcomeDlg) 43 | //}}AFX_MSG_MAP 44 | END_MESSAGE_MAP() 45 | 46 | 47 | ///////////////////////////////////////////////////////////////////////////// 48 | // CWelcomeDlg message handlers 49 | 50 | BOOL CWelcomeDlg::OnInitDialog() 51 | { 52 | // subclass static controls. 53 | m_ChangesLink.SubclassDlgItem(IDC_CHANGES_ADDRESS, this); 54 | 55 | m_strChangeHistoryAddress = CHANGES_WEB_PAGE; 56 | 57 | return CDialog::OnInitDialog(); 58 | } 59 | -------------------------------------------------------------------------------- /dialogs/welcome.h: -------------------------------------------------------------------------------- 1 | // welcome.h : header file 2 | // 3 | 4 | ///////////////////////////////////////////////////////////////////////////// 5 | // CWelcomeDlg dialog 6 | 7 | class CWelcomeDlg : public CDialog 8 | { 9 | 10 | protected: 11 | 12 | // static controls with hyperlinks 13 | CStaticLink m_ChangesLink; 14 | 15 | // Construction 16 | public: 17 | CWelcomeDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CWelcomeDlg) 21 | enum { IDD = IDD_WELCOME }; 22 | CString m_strMessage; 23 | CString m_strChangeHistoryAddress; 24 | //}}AFX_DATA 25 | 26 | 27 | // Overrides 28 | // ClassWizard generated virtual function overrides 29 | //{{AFX_VIRTUAL(CWelcomeDlg) 30 | protected: 31 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 32 | //}}AFX_VIRTUAL 33 | 34 | // Implementation 35 | protected: 36 | 37 | // Generated message map functions 38 | //{{AFX_MSG(CWelcomeDlg) 39 | virtual BOOL OnInitDialog(); 40 | //}}AFX_MSG 41 | DECLARE_MESSAGE_MAP() 42 | }; 43 | -------------------------------------------------------------------------------- /dialogs/welcome1.cpp: -------------------------------------------------------------------------------- 1 | // welcome1.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\mushclient.h" 6 | #include "..\doc.h" 7 | #include "..\StatLink.h" 8 | 9 | #include "welcome1.h" 10 | 11 | #ifdef _DEBUG 12 | #define new DEBUG_NEW 13 | #undef THIS_FILE 14 | static char BASED_CODE THIS_FILE[] = __FILE__; 15 | #endif 16 | 17 | ///////////////////////////////////////////////////////////////////////////// 18 | // CWelcome1Dlg dialog 19 | 20 | 21 | CWelcome1Dlg::CWelcome1Dlg(CWnd* pParent /*=NULL*/) 22 | : CDialog(CWelcome1Dlg::IDD, pParent) 23 | { 24 | //{{AFX_DATA_INIT(CWelcome1Dlg) 25 | m_strMessage1 = _T(""); 26 | m_strMessage2 = _T(""); 27 | m_strChangeHistoryAddress = _T(""); 28 | //}}AFX_DATA_INIT 29 | } 30 | 31 | 32 | void CWelcome1Dlg::DoDataExchange(CDataExchange* pDX) 33 | { 34 | CDialog::DoDataExchange(pDX); 35 | //{{AFX_DATA_MAP(CWelcome1Dlg) 36 | DDX_Text(pDX, IDC_MESSAGE1, m_strMessage1); 37 | DDX_Text(pDX, IDC_MESSAGE2, m_strMessage2); 38 | DDX_Text(pDX, IDC_CHANGES_ADDRESS, m_strChangeHistoryAddress); 39 | //}}AFX_DATA_MAP 40 | } 41 | 42 | 43 | BEGIN_MESSAGE_MAP(CWelcome1Dlg, CDialog) 44 | //{{AFX_MSG_MAP(CWelcome1Dlg) 45 | //}}AFX_MSG_MAP 46 | END_MESSAGE_MAP() 47 | 48 | 49 | ///////////////////////////////////////////////////////////////////////////// 50 | // CWelcome1Dlg message handlers 51 | 52 | BOOL CWelcome1Dlg::OnInitDialog() 53 | { 54 | // subclass static controls. 55 | m_ChangesLink.SubclassDlgItem(IDC_CHANGES_ADDRESS, this); 56 | m_strChangeHistoryAddress = CHANGES_WEB_PAGE; 57 | 58 | return CDialog::OnInitDialog(); 59 | } 60 | -------------------------------------------------------------------------------- /dialogs/welcome1.h: -------------------------------------------------------------------------------- 1 | // welcome1.h : header file 2 | // 3 | 4 | ///////////////////////////////////////////////////////////////////////////// 5 | // CWelcome1Dlg dialog 6 | 7 | class CWelcome1Dlg : public CDialog 8 | { 9 | 10 | protected: 11 | 12 | // static controls with hyperlinks 13 | CStaticLink m_ChangesLink; 14 | 15 | // Construction 16 | public: 17 | CWelcome1Dlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CWelcome1Dlg) 21 | enum { IDD = IDD_WELCOME1 }; 22 | CString m_strMessage1; 23 | CString m_strMessage2; 24 | CString m_strChangeHistoryAddress; 25 | //}}AFX_DATA 26 | 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CWelcome1Dlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CWelcome1Dlg) 40 | virtual BOOL OnInitDialog(); 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | -------------------------------------------------------------------------------- /dialogs/world_prefs/ButtonColour.h: -------------------------------------------------------------------------------- 1 | // ButtonColour.h : header file 2 | // 3 | 4 | #pragma once 5 | 6 | ///////////////////////////////////////////////////////////////////////////// 7 | // CColourButton window 8 | 9 | class CColourButton : public CButton 10 | { 11 | // Construction 12 | public: 13 | CColourButton(); 14 | 15 | // Attributes 16 | public: 17 | COLORREF m_colour; 18 | COLORREF m_clipboardColour; 19 | 20 | // Operations 21 | public: 22 | 23 | // Overrides 24 | // ClassWizard generated virtual function overrides 25 | //{{AFX_VIRTUAL(CColourButton) 26 | public: 27 | virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct); 28 | //}}AFX_VIRTUAL 29 | 30 | // Implementation 31 | public: 32 | virtual ~CColourButton(); 33 | 34 | // Generated message map functions 35 | protected: 36 | //{{AFX_MSG(CColourButton) 37 | afx_msg void OnRButtonDown(UINT nFlags, CPoint point); 38 | afx_msg void OnPopupCopycolour(); 39 | afx_msg void OnPopupPastecolour(); 40 | afx_msg void OnContextMenu(CWnd* pWnd, CPoint point); 41 | //}}AFX_MSG 42 | 43 | DECLARE_MESSAGE_MAP() 44 | }; 45 | 46 | ///////////////////////////////////////////////////////////////////////////// 47 | -------------------------------------------------------------------------------- /dialogs/world_prefs/EditVariable.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_EDITVARIABLE_H__D34279E3_B2C3_11D0_8EB9_00A0247B3BFD__INCLUDED_) 2 | #define AFX_EDITVARIABLE_H__D34279E3_B2C3_11D0_8EB9_00A0247B3BFD__INCLUDED_ 3 | 4 | #if _MSC_VER >= 1000 5 | #pragma once 6 | #endif // _MSC_VER >= 1000 7 | // EditVariable.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CEditVariable dialog 12 | 13 | class CEditVariable : public CDialog 14 | { 15 | DECLARE_DYNAMIC(CEditVariable) 16 | 17 | // Construction 18 | public: 19 | CEditVariable(CWnd* pParent = NULL); // standard constructor 20 | 21 | // Dialog Data 22 | //{{AFX_DATA(CEditVariable) 23 | enum { IDD = IDD_EDIT_VARIABLE }; 24 | CEdit m_ctlContents; 25 | CEdit m_ctlName; 26 | CString m_strContents; 27 | CString m_strName; 28 | //}}AFX_DATA 29 | 30 | CVariableMap * m_pVariableMap; 31 | bool m_bDoingChange; 32 | 33 | // Overrides 34 | // ClassWizard generated virtual function overrides 35 | //{{AFX_VIRTUAL(CEditVariable) 36 | protected: 37 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 38 | //}}AFX_VIRTUAL 39 | 40 | // Implementation 41 | protected: 42 | 43 | // Generated message map functions 44 | //{{AFX_MSG(CEditVariable) 45 | afx_msg void OnHelpbutton(); 46 | virtual BOOL OnInitDialog(); 47 | afx_msg void OnEditContents(); 48 | //}}AFX_MSG 49 | DECLARE_MESSAGE_MAP() 50 | }; 51 | 52 | //{{AFX_INSERT_LOCATION}} 53 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 54 | 55 | #endif // !defined(AFX_EDITVARIABLE_H__D34279E3_B2C3_11D0_8EB9_00A0247B3BFD__INCLUDED_) 56 | -------------------------------------------------------------------------------- /dialogs/world_prefs/MissingEntryPoints.cpp: -------------------------------------------------------------------------------- 1 | // MissingEntryPoints.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\..\mushclient.h" 6 | #include "MissingEntryPoints.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CMissingEntryPoints dialog 16 | 17 | 18 | CMissingEntryPoints::CMissingEntryPoints(CWnd* pParent /*=NULL*/) 19 | : CDialog(CMissingEntryPoints::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CMissingEntryPoints) 22 | m_strErrorMessage = _T(""); 23 | //}}AFX_DATA_INIT 24 | } 25 | 26 | 27 | void CMissingEntryPoints::DoDataExchange(CDataExchange* pDX) 28 | { 29 | CDialog::DoDataExchange(pDX); 30 | //{{AFX_DATA_MAP(CMissingEntryPoints) 31 | DDX_Text(pDX, IDC_ERROR_LIST, m_strErrorMessage); 32 | //}}AFX_DATA_MAP 33 | } 34 | 35 | 36 | BEGIN_MESSAGE_MAP(CMissingEntryPoints, CDialog) 37 | //{{AFX_MSG_MAP(CMissingEntryPoints) 38 | // NOTE: the ClassWizard will add message map macros here 39 | //}}AFX_MSG_MAP 40 | END_MESSAGE_MAP() 41 | 42 | ///////////////////////////////////////////////////////////////////////////// 43 | // CMissingEntryPoints message handlers 44 | -------------------------------------------------------------------------------- /dialogs/world_prefs/MissingEntryPoints.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_MISSINGENTRYPOINTS_H__CDF93193_C987_11D0_8EB9_00A0247B3BFD__INCLUDED_) 2 | #define AFX_MISSINGENTRYPOINTS_H__CDF93193_C987_11D0_8EB9_00A0247B3BFD__INCLUDED_ 3 | 4 | #if _MSC_VER >= 1000 5 | #pragma once 6 | #endif // _MSC_VER >= 1000 7 | // MissingEntryPoints.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CMissingEntryPoints dialog 12 | 13 | class CMissingEntryPoints : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CMissingEntryPoints(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CMissingEntryPoints) 21 | enum { IDD = IDD_MISSING_ENTRY_POINTS }; 22 | CString m_strErrorMessage; 23 | //}}AFX_DATA 24 | 25 | 26 | // Overrides 27 | // ClassWizard generated virtual function overrides 28 | //{{AFX_VIRTUAL(CMissingEntryPoints) 29 | protected: 30 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 31 | //}}AFX_VIRTUAL 32 | 33 | // Implementation 34 | protected: 35 | 36 | // Generated message map functions 37 | //{{AFX_MSG(CMissingEntryPoints) 38 | // NOTE: the ClassWizard will add member functions here 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | }; 42 | 43 | //{{AFX_INSERT_LOCATION}} 44 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 45 | 46 | #endif // !defined(AFX_MISSINGENTRYPOINTS_H__CDF93193_C987_11D0_8EB9_00A0247B3BFD__INCLUDED_) 47 | -------------------------------------------------------------------------------- /dialogs/world_prefs/PrefsPropertySheet.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_PREFSPROPERTYSHEET_H__11FEF0C3_AA75_11D0_8EA7_00A0247B3BFD__INCLUDED_) 2 | #define AFX_PREFSPROPERTYSHEET_H__11FEF0C3_AA75_11D0_8EA7_00A0247B3BFD__INCLUDED_ 3 | 4 | #if _MSC_VER >= 1000 5 | #pragma once 6 | #endif // _MSC_VER >= 1000 7 | // PrefsPropertySheet.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CPrefsPropertySheet 12 | 13 | class CPrefsPropertySheet : public CPropertySheet 14 | { 15 | DECLARE_DYNAMIC(CPrefsPropertySheet) 16 | 17 | // Construction 18 | public: 19 | CPrefsPropertySheet(UINT nIDCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0); 20 | CPrefsPropertySheet(LPCTSTR pszCaption, CWnd* pParentWnd = NULL, UINT iSelectPage = 0); 21 | 22 | // Attributes 23 | public: 24 | 25 | // Operations 26 | public: 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CPrefsPropertySheet) 31 | public: 32 | virtual BOOL OnInitDialog(); 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | public: 37 | virtual ~CPrefsPropertySheet(); 38 | 39 | // Generated message map functions 40 | protected: 41 | //{{AFX_MSG(CPrefsPropertySheet) 42 | //}}AFX_MSG 43 | afx_msg LRESULT OnKickIdle(WPARAM, LPARAM); 44 | DECLARE_MESSAGE_MAP() 45 | }; 46 | 47 | ///////////////////////////////////////////////////////////////////////////// 48 | 49 | //{{AFX_INSERT_LOCATION}} 50 | // Microsoft Developer Studio will insert additional declarations immediately before the previous line. 51 | 52 | #endif // !defined(AFX_PREFSPROPERTYSHEET_H__11FEF0C3_AA75_11D0_8EA7_00A0247B3BFD__INCLUDED_) 53 | -------------------------------------------------------------------------------- /dialogs/world_prefs/TabDefaultsDlg.cpp: -------------------------------------------------------------------------------- 1 | // TabDefaultsDlg.cpp : implementation file 2 | // 3 | 4 | #include "stdafx.h" 5 | #include "..\..\mushclient.h" 6 | #include "TabDefaultsDlg.h" 7 | 8 | #ifdef _DEBUG 9 | #define new DEBUG_NEW 10 | #undef THIS_FILE 11 | static char THIS_FILE[] = __FILE__; 12 | #endif 13 | 14 | ///////////////////////////////////////////////////////////////////////////// 15 | // CTabDefaultsDlg dialog 16 | 17 | 18 | CTabDefaultsDlg::CTabDefaultsDlg(CWnd* pParent /*=NULL*/) 19 | : CDialog(CTabDefaultsDlg::IDD, pParent) 20 | { 21 | //{{AFX_DATA_INIT(CTabDefaultsDlg) 22 | m_strWordList = _T(""); 23 | m_iTabCompletionLines = 0; 24 | m_bTabCompletionSpace = FALSE; 25 | //}}AFX_DATA_INIT 26 | } 27 | 28 | 29 | void CTabDefaultsDlg::DoDataExchange(CDataExchange* pDX) 30 | { 31 | CDialog::DoDataExchange(pDX); 32 | //{{AFX_DATA_MAP(CTabDefaultsDlg) 33 | DDX_Text(pDX, IDC_WORD_LIST, m_strWordList); 34 | DDX_Text(pDX, IDC_TAB_COMPLETION_LINES, m_iTabCompletionLines); 35 | DDV_MinMaxUInt(pDX, m_iTabCompletionLines, 1, 500000); 36 | DDX_Check(pDX, IDC_TAB_COMPLETION_SPACE, m_bTabCompletionSpace); 37 | //}}AFX_DATA_MAP 38 | } 39 | 40 | 41 | BEGIN_MESSAGE_MAP(CTabDefaultsDlg, CDialog) 42 | //{{AFX_MSG_MAP(CTabDefaultsDlg) 43 | // NOTE: the ClassWizard will add message map macros here 44 | //}}AFX_MSG_MAP 45 | END_MESSAGE_MAP() 46 | 47 | ///////////////////////////////////////////////////////////////////////////// 48 | // CTabDefaultsDlg message handlers 49 | -------------------------------------------------------------------------------- /dialogs/world_prefs/TabDefaultsDlg.h: -------------------------------------------------------------------------------- 1 | #if !defined(AFX_TABDEFAULTSDLG_H__9F3FE613_59C2_11D3_A6C9_0000B4595568__INCLUDED_) 2 | #define AFX_TABDEFAULTSDLG_H__9F3FE613_59C2_11D3_A6C9_0000B4595568__INCLUDED_ 3 | 4 | #if _MSC_VER > 1000 5 | #pragma once 6 | #endif // _MSC_VER > 1000 7 | // TabDefaultsDlg.h : header file 8 | // 9 | 10 | ///////////////////////////////////////////////////////////////////////////// 11 | // CTabDefaultsDlg dialog 12 | 13 | class CTabDefaultsDlg : public CDialog 14 | { 15 | // Construction 16 | public: 17 | CTabDefaultsDlg(CWnd* pParent = NULL); // standard constructor 18 | 19 | // Dialog Data 20 | //{{AFX_DATA(CTabDefaultsDlg) 21 | enum { IDD = IDD_TAB_COMPLETION_DEFAULTS_DLG }; 22 | CString m_strWordList; 23 | UINT m_iTabCompletionLines; 24 | BOOL m_bTabCompletionSpace; 25 | //}}AFX_DATA 26 | 27 | 28 | // Overrides 29 | // ClassWizard generated virtual function overrides 30 | //{{AFX_VIRTUAL(CTabDefaultsDlg) 31 | protected: 32 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 33 | //}}AFX_VIRTUAL 34 | 35 | // Implementation 36 | protected: 37 | 38 | // Generated message map functions 39 | //{{AFX_MSG(CTabDefaultsDlg) 40 | // NOTE: the ClassWizard will add member functions here 41 | //}}AFX_MSG 42 | DECLARE_MESSAGE_MAP() 43 | }; 44 | 45 | //{{AFX_INSERT_LOCATION}} 46 | // Microsoft Visual C++ will insert additional declarations immediately before the previous line. 47 | 48 | #endif // !defined(AFX_TABDEFAULTSDLG_H__9F3FE613_59C2_11D3_A6C9_0000B4595568__INCLUDED_) 49 | -------------------------------------------------------------------------------- /dialogs/world_prefs/editmac.h: -------------------------------------------------------------------------------- 1 | // editmac.h : header file 2 | // 3 | 4 | ///////////////////////////////////////////////////////////////////////////// 5 | // CEditMacro dialog 6 | 7 | class CEditMacro : public CDialog 8 | { 9 | // Construction 10 | public: 11 | CEditMacro(CWnd* pParent = NULL); // standard constructor 12 | 13 | // Dialog Data 14 | //{{AFX_DATA(CEditMacro) 15 | enum { IDD = IDD_EDIT_MACRO }; 16 | CEdit m_ctlSend; 17 | CString m_macro; 18 | int m_macro_type; 19 | CString m_macro_desc; 20 | //}}AFX_DATA 21 | 22 | CString m_strTitle; 23 | 24 | // Overrides 25 | // ClassWizard generated virtual function overrides 26 | //{{AFX_VIRTUAL(CEditMacro) 27 | protected: 28 | virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 29 | //}}AFX_VIRTUAL 30 | 31 | // Implementation 32 | protected: 33 | 34 | // Generated message map functions 35 | //{{AFX_MSG(CEditMacro) 36 | afx_msg void OnHelpbutton(); 37 | afx_msg void OnEdit(); 38 | virtual BOOL OnInitDialog(); 39 | //}}AFX_MSG 40 | DECLARE_MESSAGE_MAP() 41 | }; 42 | -------------------------------------------------------------------------------- /docgen/.gitignore: -------------------------------------------------------------------------------- 1 | help.rtf 2 | help.hm 3 | -------------------------------------------------------------------------------- /docgen/help.hpj: -------------------------------------------------------------------------------- 1 | ; This file is maintained by HCW. Do not modify this file directly. 2 | 3 | [OPTIONS] 4 | COMPRESS=12 Hall Zeck 5 | LCID=0xc09 0x0 0x0 ; English (Australia) 6 | REPORT=Yes 7 | CONTENTS=DOC_CONTENTS 8 | TITLE=MUSHclient help 9 | COPYRIGHT=Copyright 2003 Gammon Software Solutions 10 | HLP=..\mushclient.hlp 11 | 12 | [FILES] 13 | help.rtf 14 | 15 | [MAP] 16 | #include help.hm 17 | 18 | [WINDOWS] 19 | main="",,27904,(r14876671),(r12632256),f2 20 | -------------------------------------------------------------------------------- /docs/JSON License.txt: -------------------------------------------------------------------------------- 1 | The following license is applied to all documents in this project with the 2 | exception of the 'tests' directory at the root. 3 | The 'tests' directory is dual-licenses Public Domain / MIT, whichever is 4 | least restrictive in your legal jurisdiction. 5 | 6 | The MIT License 7 | 8 | Copyright (c) 2008 Thomas Harning Jr. 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in 18 | all copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 26 | THE SOFTWARE. 27 | 28 | -- 29 | -------------------------------------------------------------------------------- /docs/Lua Colors LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2007, 2008 Yuri Takhteyev 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. 23 | 24 | -- 25 | -------------------------------------------------------------------------------- /docs/LuaSocket_documentation/luasocket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/docs/LuaSocket_documentation/luasocket.png -------------------------------------------------------------------------------- /docs/LuaSocket_documentation/mime.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/docs/LuaSocket_documentation/mime.html -------------------------------------------------------------------------------- /docs/LuaSocket_documentation/reference.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin-left: 1em; 3 | margin-right: 1em; 4 | font-family: "Verdana", sans-serif; 5 | } 6 | 7 | tt { 8 | font-family: "Andale Mono", monospace; 9 | } 10 | 11 | h1, h2, h3, h4 { margin-left: 0em; } 12 | 13 | 14 | h3 { padding-top: 1em; } 15 | 16 | p { margin-left: 1em; } 17 | 18 | p.name { 19 | font-family: "Andale Mono", monospace; 20 | padding-top: 1em; 21 | margin-left: 0em; 22 | } 23 | 24 | a[href] { color: #00007f; } 25 | 26 | blockquote { margin-left: 3em; } 27 | 28 | pre.example { 29 | background: #ccc; 30 | padding: 1em; 31 | margin-left: 1em; 32 | font-family: "Andale Mono", monospace; 33 | font-size: small; 34 | } 35 | 36 | hr { 37 | margin-left: 0em; 38 | background: #00007f; 39 | border: 0px; 40 | height: 1px; 41 | } 42 | 43 | ul { list-style-type: disc; } 44 | 45 | table.index { border: 1px #00007f; } 46 | table.index td { text-align: left; vertical-align: top; } 47 | table.index ul { padding-top: 0em; margin-top: 0em; } 48 | 49 | h1:first-letter, 50 | h2:first-letter, 51 | h2:first-letter, 52 | h3:first-letter { color: #00007f; } 53 | 54 | div.header, div.footer { margin-left: 0em; } 55 | -------------------------------------------------------------------------------- /docs/LuaSocket_license.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/docs/LuaSocket_license.txt -------------------------------------------------------------------------------- /docs/lpeg-128.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/docs/lpeg-128.gif -------------------------------------------------------------------------------- /docs/lua_license.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/docs/lua_license.txt -------------------------------------------------------------------------------- /docs/luacom.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/docs/luacom.pdf -------------------------------------------------------------------------------- /flags.h: -------------------------------------------------------------------------------- 1 | // flags.h - flags for adding triggers, aliases, timers and so on 2 | 3 | 4 | // flags for AddTrigger 5 | enum 6 | { 7 | eEnabled = 0x01, 8 | eOmitFromLog = 0x02, 9 | eOmitFromOutput = 0x04, 10 | eKeepEvaluating = 0x08, 11 | eIgnoreCase = 0x10, 12 | eTriggerRegularExpression = 0x20, 13 | eExpandVariables = 0x200, 14 | eReplace = 0x400, 15 | eLowercaseWildcard = 0x800, 16 | eTemporary = 0x4000, 17 | eTriggerOneShot = 0x8000, 18 | }; 19 | 20 | // flags for AddAlias 21 | enum 22 | { 23 | // eEnabled = 0x01, // same as above 24 | eUseClipboard = 0x02, 25 | // eDelayed = 0x04, // delayed send 26 | // eMatchStart = 0x04, 27 | // eMatchAnywhere = 0x08, 28 | // eMatchExactly = 0x10, 29 | eIgnoreAliasCase = 0x20, 30 | eOmitFromLogFile = 0x40, 31 | eAliasRegularExpression = 0x80, 32 | eAliasOmitFromOutput = 0x100, 33 | // eExpandVariables = 0x200, 34 | // eReplace = 0x400, // same as above 35 | eAliasSpeedWalk = 0x800, 36 | eAliasQueue = 0x1000, 37 | eAliasMenu = 0x2000, 38 | // eTemporary = 0x4000, // same as above 39 | eAliasOneShot = 0x8000, 40 | 41 | }; 42 | 43 | // flags for AddTimer 44 | enum 45 | { 46 | // eEnabled = 0x01, // same as above 47 | eAtTime = 0x02, // if not set, time is "every" 48 | eOneShot = 0x04, 49 | eTimerSpeedWalk = 0x08, // timer does speed walk 50 | eTimerNote = 0x10, // timer does note 51 | eActiveWhenClosed = 0x20, // timer fires when world closed 52 | // eReplace = 0x400, // same as above 53 | // eTemporary = 0x4000, // same as above 54 | }; 55 | -------------------------------------------------------------------------------- /fonts/bubble.flf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/fonts/bubble.flf -------------------------------------------------------------------------------- /fonts/digital.flf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/fonts/digital.flf -------------------------------------------------------------------------------- /fonts/term.flf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/fonts/term.flf -------------------------------------------------------------------------------- /format.cpp: -------------------------------------------------------------------------------- 1 | // Format.cpp - format CStrings on-the-fly 2 | // 3 | 4 | #include "stdafx.h" 5 | 6 | #ifdef _DEBUG 7 | #define new DEBUG_NEW 8 | #undef THIS_FILE 9 | static char BASED_CODE THIS_FILE[] = __FILE__; 10 | #endif 11 | 12 | 13 | ///////////////////////////////////////////////////////////////////////////// 14 | // CFormat 15 | 16 | CFormat::CFormat(LPCTSTR lpszFormat, ...) 17 | { 18 | ASSERT(AfxIsValidString(lpszFormat, FALSE)); 19 | 20 | va_list argList; 21 | va_start(argList, lpszFormat); 22 | FormatV(lpszFormat, argList); 23 | va_end(argList); 24 | } 25 | 26 | CFormat::CFormat(UINT nFormatID, ...) 27 | { 28 | CString strFormat; 29 | VERIFY(strFormat.LoadString(nFormatID) != 0); 30 | 31 | va_list argList; 32 | va_start(argList, nFormatID); 33 | FormatV(strFormat, argList); 34 | va_end(argList); 35 | } 36 | 37 | CFormat::CFormat (LPCTSTR lpszFormat, va_list argList) 38 | { 39 | ASSERT(AfxIsValidString(lpszFormat, FALSE)); 40 | 41 | FormatV(lpszFormat, argList); 42 | } 43 | 44 | CFormat::CFormat (UINT nFormatID, va_list argList) 45 | { 46 | CString strFormat; 47 | VERIFY(strFormat.LoadString(nFormatID) != 0); 48 | 49 | FormatV(strFormat, argList); 50 | } 51 | 52 | -------------------------------------------------------------------------------- /format.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | ///////////////////////////////////////////////////////////////////////////// 4 | // CFormat 5 | 6 | struct CFormat : CString 7 | { 8 | CFormat (LPCTSTR lpszFormat, ...); 9 | CFormat (UINT nFormatID, ...); 10 | CFormat (LPCTSTR lpszFormat, va_list argList); 11 | CFormat (UINT nFormatID, va_list argList); 12 | }; 13 | 14 | -------------------------------------------------------------------------------- /install/.gitattributes: -------------------------------------------------------------------------------- 1 | *.ico binary 2 | *.cur binary 3 | *.bmp binary 4 | -------------------------------------------------------------------------------- /install/.gitignore: -------------------------------------------------------------------------------- 1 | Make Installer.lnk 2 | *.exe 3 | git_diff_output.txt 4 | git_log_output.txt 5 | -------------------------------------------------------------------------------- /install/Cross.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/install/Cross.bmp -------------------------------------------------------------------------------- /install/MUSHclient Installer.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/install/MUSHclient Installer.bmp -------------------------------------------------------------------------------- /install/Tick.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/install/Tick.bmp -------------------------------------------------------------------------------- /install/mushclient.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/install/mushclient.ico -------------------------------------------------------------------------------- /licences/JSON licence.txt: -------------------------------------------------------------------------------- 1 | The following license is applied to all documents in this project with the 2 | exception of the 'tests' directory at the root. 3 | The 'tests' directory is dual-licenses Public Domain / MIT, whichever is 4 | least restrictive in your legal jurisdiction. 5 | 6 | The MIT License 7 | 8 | Copyright (c) 2008-2017 Thomas Harning Jr. 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in 18 | all copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 26 | THE SOFTWARE. 27 | 28 | -------------------------------------------------------------------------------- /licences/Lua Colors licence.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2007, 2008 Yuri Takhteyev 2 | 3 | Permission is hereby granted, free of charge, to any person 4 | obtaining a copy of this software and associated documentation 5 | files (the "Software"), to deal in the Software without 6 | restriction, including without limitation the rights to use, 7 | copy, modify, merge, publish, distribute, sublicense, and/or sell 8 | copies of the Software, and to permit persons to whom the 9 | Software is furnished to do so, subject to the following 10 | conditions: 11 | 12 | The above copyright notice and this permission notice shall be 13 | included in all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 17 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 19 | HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 20 | WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 | FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 22 | OTHER DEALINGS IN THE SOFTWARE. 23 | 24 | -- 25 | -------------------------------------------------------------------------------- /licences/Lua licence.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/licences/Lua licence.txt -------------------------------------------------------------------------------- /licences/LuaCOM licence.txt: -------------------------------------------------------------------------------- 1 | =============================================================================== 2 | LuaCOM is available under the same terms and conditions as the Lua language. 3 | 4 | Copyright (C) 1998-2005 Tecgraf, PUC-Rio 5 | Authors: V. Almendra, R. Cerqueira, F. Mascarenhas, and others. 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in 15 | all copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | THE SOFTWARE. 24 | =============================================================================== 25 | -------------------------------------------------------------------------------- /licences/Luasocket licence.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/licences/Luasocket licence.txt -------------------------------------------------------------------------------- /licences/MD5 licence.txt: -------------------------------------------------------------------------------- 1 | RFC 1321 compliant MD5 implementation 2 | 3 | Copyright (C) 2001-2003 Christophe Devine 4 | 5 | This program is free software; you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation; either version 2 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program; if not, write to the Free Software 17 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -------------------------------------------------------------------------------- /licences/MUSHclient licence.txt: -------------------------------------------------------------------------------- 1 | COPYRIGHT 2 | 3 | MUSHclient is copyright 1995 onwards by Nick Gammon. All rights reserved worldwide. 4 | 5 | MUSHclient is not in the public domain and Nick Gammon keeps its copyright. 6 | 7 | 8 | PERMISSION TO DISTRIBUTE 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 13 | 14 | 15 | LIMITATION OF LIABILITY 16 | 17 | The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. 18 | -------------------------------------------------------------------------------- /licences/SHA license.txt: -------------------------------------------------------------------------------- 1 | FIPS-180-2 compliant SHA-256 implementation 2 | 3 | Copyright (C) 2001-2003 Christophe Devine 4 | 5 | This program is free software; you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation; either version 2 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program; if not, write to the Free Software 17 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -------------------------------------------------------------------------------- /licences/SHS licence.txt: -------------------------------------------------------------------------------- 1 | Written 2 September 1992. Peter C. Gutmann. 2 | This implementation placed in the public domain. 3 | -------------------------------------------------------------------------------- /licences/SQLite licence.txt: -------------------------------------------------------------------------------- 1 | SQLite Is Public Domain 2 | 3 | All of the code and documentation in SQLite has been dedicated to the public domain by the authors. All code authors, and representatives of the companies they work for, have signed affidavits dedicating their contributions to the public domain and originals of those signed affidavits are stored in a firesafe at the main offices of Hwaci. Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. 4 | 5 | The previous paragraph applies to the deliverable code and documentation in SQLite - those parts of the SQLite library that you actually bundle and ship with a larger application. Some scripts used as part of the build process (for example the "configure" scripts generated by autoconf) might fall under other open-source licenses. Nothing from these build scripts ever reaches the final deliverable SQLite library, however, and so the licenses associated with those scripts should not be a factor in assessing your rights to copy and use the SQLite library. 6 | 7 | All of the deliverable code in SQLite has been written from scratch. No code has been taken from other projects or from the open internet. Every line of code can be traced back to its original author, and all of those authors have public domain dedications on file. So the SQLite code base is clean and is uncontaminated with licensed code from other projects. 8 | -------------------------------------------------------------------------------- /licences/bc licence.txt: -------------------------------------------------------------------------------- 1 | big-number library for Lua 5.1 based on GNU bc-1.06 core library 2 | 3 | Luiz Henrique de Figueiredo 4 | 04 Apr 2010 22:40:22 5 | This code is hereby placed in the public domain. -------------------------------------------------------------------------------- /licences/big numbers licence.txt: -------------------------------------------------------------------------------- 1 | Copyright (C) 1991, 1992, 1993, 1994, 1997, 2000 Free Software Foundation, Inc. 2 | 3 | This program is free software; you can redistribute it and/or modify 4 | it under the terms of the GNU General Public License as published by 5 | the Free Software Foundation; either version 2 of the License , or 6 | (at your option) any later version. 7 | 8 | This program is distributed in the hope that it will be useful, 9 | but WITHOUT ANY WARRANTY; without even the implied warranty of 10 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 | GNU General Public License for more details. 12 | 13 | You should have received a copy of the GNU General Public License 14 | along with this program; see the file COPYING. If not, write to: 15 | 16 | The Free Software Foundation, Inc. 17 | 59 Temple Place, Suite 330 18 | Boston, MA 02111-1307 USA. 19 | 20 | 21 | You may contact the author by: 22 | e-mail: philnelson@acm.org 23 | us-mail: Philip A. Nelson 24 | Computer Science Department, 9062 25 | Western Washington University 26 | Bellingham, WA 98226-9062 -------------------------------------------------------------------------------- /licences/zLib licence.txt: -------------------------------------------------------------------------------- 1 | Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler 2 | 3 | This software is provided 'as-is', without any express or implied 4 | warranty. In no event will the authors be held liable for any damages 5 | arising from the use of this software. 6 | 7 | Permission is granted to anyone to use this software for any purpose, 8 | including commercial applications, and to alter it and redistribute it 9 | freely, subject to the following restrictions: 10 | 11 | 1. The origin of this software must not be misrepresented; you must not 12 | claim that you wrote the original software. If you use this software 13 | in a product, an acknowledgment in the product documentation would be 14 | appreciated but is not required. 15 | 2. Altered source versions must be plainly marked as such, and must not be 16 | misrepresented as being the original software. 17 | 3. This notice may not be removed or altered from any source distribution. 18 | 19 | Jean-loup Gailly Mark Adler 20 | jloup@gzip.org madler@alumni.caltech.edu 21 | -------------------------------------------------------------------------------- /localize.bat: -------------------------------------------------------------------------------- 1 | cd \source\mushclient\ 2 | 3 | echo Converting documentation file ... 4 | lua5.1.exe generate_documentation.lua 5 | 6 | echo Creating documentation help.db file ... 7 | del help.db 8 | sqlite3 help.db < documentation_fixed.sql 9 | echo Vacuuming the database ... 10 | sqlite3 help.db vacuum 11 | echo Analyzing the database ... 12 | sqlite3 help.db analyze 13 | 14 | echo Building list of files to process ... 15 | lua5.1.exe build_files_list.lua 16 | 17 | echo Generating internationalization files ... 18 | xgettext -kTMessageBox -kTranslate -kTranslate_NoOp -o mushclient_static.po --files-from=all_files_list.txt 19 | xgettext -kTFormat -o mushclient_formatted.po --files-from=all_files_list.txt 20 | xgettext -kTranslateTime -o mushclient_time.po --files-from=all_files_list.txt 21 | xgettext -kTranslateHeading -o mushclient_heading.po --files-from=all_files_list.txt 22 | 23 | echo Running localize.lua ... 24 | lua5.1.exe localize.lua 25 | -------------------------------------------------------------------------------- /lua/check.lua: -------------------------------------------------------------------------------- 1 | -- 2 | -- check.lua 3 | -- 4 | -- ---------------------------------------------------------- 5 | -- return-code checker for MUSHclient functions that return error codes 6 | -- ---------------------------------------------------------- 7 | -- 8 | --[[ 9 | 10 | Call for those MUSHclient functions that return a result code (like eOK). 11 | Not all functions return such a code. 12 | 13 | eg. 14 | 15 | require "check 16 | check (SetVariable ("abc", "def")) --> works ok 17 | check (SetVariable ("abc-", "def")) --> The name of this object is invalid 18 | 19 | --]] 20 | 21 | function check (result) 22 | if result ~= error_code.eOK then 23 | error (error_desc [result] or 24 | string.format ("Unknown error code: %i", result), 25 | 2) -- error level - whoever called this function 26 | end -- if 27 | end -- function check 28 | 29 | return check -------------------------------------------------------------------------------- /lua/com.lua: -------------------------------------------------------------------------------- 1 | -- com.lua 2 | 3 | -- Glue module to help load luacom 4 | 5 | assert (package.loadlib ("luacom.dll", "luacom_open")) () 6 | 7 | return luacom 8 | -------------------------------------------------------------------------------- /lua/declare.lua: -------------------------------------------------------------------------------- 1 | -- declare.lua 2 | -- See: http://www.gammon.com.au/forum/?id=7327 3 | -- 4 | -- If you use this inside a function you cannot access global variables that have 5 | -- not already been declared, and must declare all local variables 6 | 7 | function force_declarations () 8 | setfenv (2, setmetatable ({}, 9 | { 10 | __index = function (t, n) 11 | error("variable '"..n.."' is not declared", 2) 12 | end, 13 | __newindex = function (t, n, v) 14 | error("assign to undeclared variable '"..n.."'", 2) 15 | end }) 16 | ) 17 | end -- force_declarations 18 | 19 | return force_declarations 20 | 21 | --[[ 22 | 23 | Example of use: 24 | 25 | 26 | require "declare" 27 | 28 | function test (x) 29 | -- capture any global variables we want 30 | local print = print 31 | 32 | -- after this we can't access global variables, and must declare local ones 33 | force_declarations () 34 | 35 | -- must declare every variable now before we use it 36 | local a, b, c 37 | 38 | print (a) 39 | a = 1 40 | b = 2 41 | c = x * 2 42 | print (c) 43 | end -- test 44 | 45 | test (1) 46 | 47 | --]] 48 | -------------------------------------------------------------------------------- /lua/getlines.lua: -------------------------------------------------------------------------------- 1 | -- getlines.lua 2 | -- getlines iterator - iterates over a string and returns one item per line 3 | 4 | function getlines (str) 5 | 6 | local pos = 0 7 | 8 | -- the for loop calls this for every iteration 9 | -- returning nil terminates the loop 10 | local function iterator (s) 11 | 12 | if not pos then 13 | return nil 14 | end -- end of string, exit loop 15 | 16 | local oldpos = pos + 1 -- step past previous newline 17 | pos = string.find (s, "\n", oldpos) -- find next newline 18 | 19 | if not pos then -- no more newlines, return rest of string 20 | return string.sub (s, oldpos) 21 | end -- no newline 22 | 23 | return string.sub (s, oldpos, pos - 1) 24 | 25 | end -- iterator 26 | 27 | return iterator, str 28 | end -- getlines 29 | 30 | return getlines 31 | 32 | --[=[ 33 | 34 | Example of use: 35 | 36 | require "getlines" 37 | 38 | test = [[ 39 | every good 40 | boy 41 | deserves 42 | fruit]] 43 | 44 | for l in getlines (test) do 45 | print ('"' .. l .. '"') 46 | end -- for 47 | 48 | --]=] 49 | -------------------------------------------------------------------------------- /lua/json.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | Licensed according to the included 'LICENSE' document 3 | Author: Thomas Harning Jr 4 | ]] 5 | local decode = require("json.decode") 6 | local encode = require("json.encode") 7 | local util = require("json.util") 8 | 9 | local _G = _G 10 | 11 | local _ENV = nil 12 | 13 | local json = { 14 | _VERSION = "1.3.4", 15 | _DESCRIPTION = "LuaJSON : customizable JSON decoder/encoder", 16 | _COPYRIGHT = "Copyright (c) 2007-2014 Thomas Harning Jr. ", 17 | decode = decode, 18 | encode = encode, 19 | util = util 20 | } 21 | 22 | _G.json = json 23 | 24 | return json 25 | -------------------------------------------------------------------------------- /lua/json/encode/number.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | Licensed according to the included 'LICENSE' document 3 | Author: Thomas Harning Jr 4 | ]] 5 | local tostring = tostring 6 | local assert = assert 7 | local jsonutil = require("json.util") 8 | local huge = require("math").huge 9 | 10 | local _ENV = nil 11 | 12 | local defaultOptions = { 13 | nan = true, 14 | inf = true 15 | } 16 | 17 | local modeOptions = {} 18 | modeOptions.strict = { 19 | nan = false, 20 | inf = false 21 | } 22 | 23 | local function mergeOptions(options, mode) 24 | jsonutil.doOptionMerge(options, false, 'number', defaultOptions, mode and modeOptions[mode]) 25 | end 26 | 27 | 28 | local function encodeNumber(number, options) 29 | if number ~= number then 30 | assert(options.nan, "Invalid number: NaN not enabled") 31 | return "NaN" 32 | end 33 | if number == huge then 34 | assert(options.inf, "Invalid number: Infinity not enabled") 35 | return "Infinity" 36 | end 37 | if number == -huge then 38 | assert(options.inf, "Invalid number: Infinity not enabled") 39 | return "-Infinity" 40 | end 41 | return tostring(number) 42 | end 43 | 44 | local function getEncoder(options) 45 | options = options and jsonutil.merge({}, defaultOptions, options) or defaultOptions 46 | return { 47 | number = function(number, state) 48 | return encodeNumber(number, options) 49 | end 50 | } 51 | end 52 | 53 | local number = { 54 | mergeOptions = mergeOptions, 55 | getEncoder = getEncoder 56 | } 57 | 58 | return number 59 | -------------------------------------------------------------------------------- /lua/pairsbykeys.lua: -------------------------------------------------------------------------------- 1 | -- pairsbykeys.lua 2 | -- From Programming in Lua book, 2nd edition 3 | -- Gives you an iterator that moves through an ordinary table (eg. string keys) 4 | -- but sorted into key sequence. 5 | -- It does that by copying the table keys into a temporary table and sorting that. 6 | 7 | -- If you need to sort keys other than strings, see: 8 | 9 | -- See: http://lua-users.org/wiki/SortedIteration 10 | 11 | function pairsByKeys (t, f) 12 | local a = {} 13 | -- build temporary table of the keys 14 | for n in pairs (t) do 15 | table.insert (a, n) 16 | end 17 | table.sort (a, f) -- sort using supplied function, if any 18 | local i = 0 -- iterator variable 19 | return function () -- iterator function 20 | i = i + 1 21 | return a[i], t[a[i]] 22 | end -- iterator function 23 | end -- pairsByKeys 24 | 25 | return pairsByKeys 26 | 27 | --[[ 28 | 29 | 30 | -- This prints the math functions in random order 31 | for k, v in pairs (math) do 32 | print (k, v) 33 | end -- for 34 | 35 | require "pairsbykeys" 36 | 37 | -- This prints the math functions in key order 38 | for k, v in pairsByKeys (math) do 39 | print (k, v) 40 | end -- for 41 | 42 | --]] 43 | -------------------------------------------------------------------------------- /lua/show_loaded.lua: -------------------------------------------------------------------------------- 1 | -- show_loaded.lua 2 | 3 | --[[ 4 | 5 | Shows each plugin as it is loaded. 6 | 7 | To enable this, add to: 8 | 9 | File menu -> Global Preferences -> Lua -> Preliminary Code 10 | 11 | ... this line: 12 | 13 | require "show_loaded" 14 | 15 | 16 | --]] 17 | 18 | if GetPluginID () == "" then 19 | ColourNote ("gray", "", "Initializing main world script ...") 20 | else 21 | ColourNote ("gray", "", string.format ("Loading plugin '%s' (%s) version %0.2f ...", 22 | GetPluginInfo ( GetPluginID (), 7), 23 | GetPluginInfo ( GetPluginID (), 1), 24 | GetPluginInfo ( GetPluginID (), 19))) 25 | end -- if 26 | -------------------------------------------------------------------------------- /lua/strict.lua: -------------------------------------------------------------------------------- 1 | -- strict.lua 2 | 3 | -- by Roberto Ierusalimschy 4 | -- checks uses of undeclared global variables 5 | -- All global variables must be 'declared' through a regular assignment 6 | -- (even assigning nil will do) in a main chunk before being used 7 | -- anywhere or assigned to inside a function. 8 | -- 9 | 10 | local mt = getmetatable(_G) 11 | if mt == nil then 12 | mt = {} 13 | setmetatable(_G, mt) 14 | end 15 | 16 | mt.__declared = {} 17 | 18 | mt.__newindex = function (t, n, v) 19 | if not mt.__declared[n] then 20 | local w = debug.getinfo(2, "S").what 21 | if w ~= "main" and w ~= "C" then 22 | error("assign to undeclared variable '"..n.."'", 2) 23 | end 24 | mt.__declared[n] = true 25 | end 26 | rawset(t, n, v) 27 | end 28 | 29 | mt.__index = function (t, n) 30 | if not mt.__declared[n] then 31 | error("variable '"..n.."' is not declared", 2) 32 | end 33 | return rawget(t, n) 34 | end 35 | 36 | -------------------------------------------------------------------------------- /lua/string_indexing.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | 3 | string_indexing.lua 4 | 5 | If you install this, then you can index into strings, like this: 6 | 7 | 8 | require "string_indexing" 9 | 10 | a = "nick" 11 | print (a [3]) --> c 12 | 13 | 14 | 15 | --]] 16 | 17 | getmetatable ("").__index = function (str, i) 18 | 19 | if (type (i) == "number") then 20 | return string.sub (str, i, i) -- index into str 21 | end -- if 22 | 23 | return string [i] -- fallback (eg. string.match) 24 | end -- function 25 | -------------------------------------------------------------------------------- /lua/tprint.lua: -------------------------------------------------------------------------------- 1 | -- 2 | -- tprint.lua 3 | 4 | --[[ 5 | 6 | For debugging what tables have in them, prints recursively 7 | 8 | See forum thread: http://www.gammon.com.au/forum/?id=4903 9 | 10 | eg. 11 | 12 | require "tprint" 13 | 14 | tprint (GetStyleInfo (20)) 15 | 16 | --]] 17 | 18 | function tprint (t, indent, done) 19 | -- in case we run it standalone 20 | local Note = Note or print 21 | local Tell = Tell or io.write 22 | 23 | -- show strings differently to distinguish them from numbers 24 | local function show (val) 25 | if type (val) == "string" then 26 | return '"' .. val .. '"' 27 | else 28 | return tostring (val) 29 | end -- if 30 | end -- show 31 | -- entry point here 32 | done = done or {} 33 | indent = indent or 0 34 | for key, value in pairs (t) do 35 | Tell (string.rep (" ", indent)) -- indent it 36 | if type (value) == "table" and not done [value] then 37 | done [value] = true 38 | Note (show (key), ":"); 39 | tprint (value, indent + 2, done) 40 | else 41 | Tell (show (key), "=") 42 | print (show (value)) 43 | end 44 | end 45 | end 46 | 47 | return tprint 48 | -------------------------------------------------------------------------------- /lua/var.lua: -------------------------------------------------------------------------------- 1 | -- var.lua 2 | -- ---------------------------------------------------------- 3 | -- Accessing MUSHclient variables through the 'var' table. 4 | -- See forum thread: 5 | -- http://www.gammon.com.au/forum/?id=4904 6 | 7 | --[[ 8 | 9 | * Set a variable by assigning something to it. 10 | * Delete a variable by assigning nil to it. 11 | * Get a variable by retrieving its value, will return nil if the variable does not exist. 12 | 13 | Examples: 14 | 15 | var.target = "kobold" -- set MUSHclient variable 'target' to kobold 16 | print (var.target) -- print contents of MUSHclient variable 17 | 18 | --]] 19 | 20 | -- ---------------------------------------------------------- 21 | 22 | var = {} -- variables table 23 | 24 | setmetatable (var, 25 | { 26 | -- called to access an entry 27 | __index = 28 | function (t, name) 29 | return GetVariable (name) 30 | end, 31 | 32 | -- called to change or delete an entry 33 | __newindex = 34 | function (t, name, val) 35 | local result 36 | if val == nil then -- nil deletes it 37 | result = DeleteVariable (name) 38 | else 39 | result = SetVariable (name, tostring (val)) 40 | end 41 | -- warn if they are using bad variable names 42 | if result == error_code.eInvalidObjectLabel then 43 | error ("Bad variable name '" .. name .. "'", 2) 44 | end 45 | end 46 | }) 47 | 48 | return var -------------------------------------------------------------------------------- /lua5.1.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/lua5.1.lib -------------------------------------------------------------------------------- /lua_helpers.h: -------------------------------------------------------------------------------- 1 | #include "lua.h" 2 | #include "lauxlib.h" 3 | 4 | void MakeTableItem (lua_State *L, const char * name, const CString & str); 5 | void MakeTableItem (lua_State *L, const char * name, const string & str); 6 | void MakeTableItem (lua_State *L, const char * name, const double n); 7 | void MakeTableItem (lua_State *L, const char * name, const COleDateTime d); 8 | void MakeTableItemBool (lua_State *L, const char * name, const bool b); 9 | const bool optboolean (lua_State *L, const int narg, const int def); 10 | bool FindLuaFunction (lua_State * L, const char * sName); 11 | bool GetNestedFunction (lua_State * L, const char * sName, const bool bRaiseError = false); 12 | int CallLuaWithTraceBack (lua_State *L, const int iArguments, const int iReturn); 13 | -------------------------------------------------------------------------------- /luacom/LuaAux.h: -------------------------------------------------------------------------------- 1 | // LuaAux.h: interface for the LuaAux class. 2 | // 3 | ////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_LUAAUX_H__4C0212A0_1DD9_11D4_B880_0000B45D7541__INCLUDED_) 6 | #define AFX_LUAAUX_H__4C0212A0_1DD9_11D4_B880_0000B45D7541__INCLUDED_ 7 | 8 | extern "C" 9 | { 10 | #include "lua.h" 11 | } 12 | #include "tStringBuffer.h" 13 | 14 | typedef int stkIndex; 15 | 16 | class LuaAux 17 | { 18 | public: 19 | static void printLuaTable(lua_State *L, stkIndex index); 20 | static void printLuaStack(lua_State *L); 21 | static void printPreDump(int expected); 22 | static tStringBuffer makeLuaErrorMessage(int return_value, const char* msg); 23 | LuaAux(); 24 | virtual ~LuaAux(); 25 | 26 | }; 27 | 28 | #include 29 | 30 | #define LUASTACK_SET(L) const int __LuaAux_luastack_top_index = lua_gettop(L) 31 | #define LUASTACK_DOCLEAN(L, n) lua_settop(L, __LuaAux_luastack_top_index + n) 32 | 33 | #ifdef NDEBUG 34 | #define LUASTACK_CLEAN(L, n) LUASTACK_DOCLEAN(L, n) 35 | #else 36 | #define LUASTACK_CLEAN(L, n) if((__LuaAux_luastack_top_index + n) != lua_gettop(L)) { LuaAux::printPreDump(__LuaAux_luastack_top_index + n); LuaAux::printLuaStack(L); assert(0); } 37 | #endif 38 | 39 | #endif // !defined(AFX_LUAAUX_H__4C0212A0_1DD9_11D4_B880_0000B45D7541__INCLUDED_) 40 | -------------------------------------------------------------------------------- /luacom/luabeans.h: -------------------------------------------------------------------------------- 1 | #ifndef LUABEANS_H 2 | #define LUABEANS_H 3 | 4 | class LuaBeans 5 | { 6 | public: 7 | 8 | class Events 9 | { 10 | public: 11 | lua_CFunction settable; 12 | lua_CFunction index; 13 | lua_CFunction call; 14 | lua_CFunction gc; 15 | 16 | Events() 17 | { 18 | settable = index = call = gc = NULL; 19 | } 20 | }; 21 | 22 | //lua_State* getLuaState(void); 23 | 24 | static void createBeans( 25 | lua_State *L, 26 | const char* module_name, 27 | const char* name); 28 | 29 | //static void Clean(void); 30 | 31 | static void registerObjectEvents(lua_State* L, class Events& events); 32 | static void registerPointerEvents(lua_State* L, class Events& events); 33 | static void push(lua_State* L, void* userdata); 34 | static void* check_tag(lua_State* L, int index); 35 | static void* from_lua(lua_State* L, int index); 36 | 37 | protected: 38 | static const char tag_name_key; 39 | static const char udtag_name_key; 40 | static const char module_name_key; 41 | }; 42 | #endif 43 | -------------------------------------------------------------------------------- /luacom/luacom.h: -------------------------------------------------------------------------------- 1 | #ifndef LUACOM_H 2 | #define LUACOM_H 3 | 4 | #define LUACOM_VERSION "LuaCOM 1.3b 2005-01-06" 5 | #define LUACOM_COPYRIGHT "Copyright (C) 1998-2005 Tecgraf, PUC-Rio" 6 | #define LUACOM_AUTHORS "V. Almendra & R. Cerqueira & F. Mascarenhas" 7 | 8 | #ifndef LUACOM_API 9 | #define LUACOM_API __declspec(dllexport) 10 | #endif 11 | 12 | enum 13 | { 14 | LUACOM_AUTOMATION, 15 | LUACOM_NOAUTOMATION, 16 | LUACOM_REGISTER, 17 | LUACOM_UNREGISTER, 18 | LUACOM_AUTOMATION_ERROR 19 | }; 20 | 21 | #ifdef __cplusplus 22 | extern "C" 23 | { 24 | #endif 25 | 26 | LUACOM_API void luacom_open(lua_State *L); 27 | LUACOM_API void luacom_close(lua_State *L); 28 | 29 | LUACOM_API int luacom_IDispatch2LuaCOM(lua_State *L, void *pdisp_arg); 30 | 31 | LUACOM_API int luacom_detectAutomation(lua_State *L, int argc, char *argv[]); 32 | 33 | #ifdef __cplusplus 34 | } 35 | #endif 36 | 37 | #endif 38 | -------------------------------------------------------------------------------- /luacom/luacom_internal.h: -------------------------------------------------------------------------------- 1 | /* 2 | * luacom_internal.h 3 | * 4 | * Global definitions for the LuaCOM library 5 | */ 6 | 7 | // Here we define the module name we'll use in Lua 8 | // to be used in the registry 9 | 10 | #ifndef __LUACOM_INTERNAL_H 11 | #define __LUACOM_INTERNAL_H 12 | 13 | #include "luabeans.h" 14 | 15 | #define MODULENAME "__LuaCOM__" 16 | 17 | 18 | // This is the name of the configuration table inside 19 | // the library table 20 | 21 | #define CONFIGTABLE_NAME "config" 22 | 23 | 24 | // Here is the libname, that is, the name used to access 25 | // luacom methods 26 | 27 | #define LIBNAME "luacom" 28 | 29 | 30 | // keys in the configuration table used by luacom 31 | // internally 32 | 33 | #define LCOM_LUACOM_TYPENAME "LuaCOM" 34 | #define LCOM_IUNKNOWN_TYPENAME "IUnknown" 35 | #define LCOM_CONNPOINT_TYPENAME "IConnectionPoint" 36 | 37 | 38 | // names of the configuration keys 39 | 40 | #define LUACOM_SHOULD_ABORT "abort_on_error" 41 | #define LUACOM_SHOULD_ABORT_API "abort_on_API_error" 42 | #define LUACOM_LAST_ERROR "last_error" 43 | 44 | 45 | #define LCOM_IUNKNOWN_ATTRIBUTE "IUnknown" 46 | 47 | 48 | void luacom_error(lua_State* L, const char* message); 49 | 50 | LuaBeans *getLuaBeans(lua_State *L); 51 | 52 | extern HINSTANCE g_hInstance; 53 | extern HWND g_hwndParking; 54 | 55 | #endif // __LUACOM_INTERNAL_H 56 | -------------------------------------------------------------------------------- /luacom/readme.txt: -------------------------------------------------------------------------------- 1 | LuaCOM built as follows: 2 | 3 | 1. Download recent version from http://github.com/davidm/luacom/ 4 | 5 | 6 | 2. Edit: LuaCompat.h and add the following lines to the start of it: 7 | 8 | // pragmas added by Nick Gammon 9 | #pragma warning ( disable : 4100) // unreferenced formal parameter 10 | #pragma warning ( disable : 4189) // warning C4189: 'iVersion' : local variable is initialized but not referenced 11 | #pragma warning ( disable : 4244) // conversion from 'int' to 'unsigned short', possible loss of data 12 | #pragma warning ( disable : 4310) // cast truncates constant value 13 | #pragma warning ( disable : 4245) // conversion from 'long' to 'unsigned long', signed/unsigned mismatch 14 | #pragma warning ( disable : 4127) // conditional expression is constant 15 | #pragma warning ( disable : 4701) // local variable 'xxx' may be used without having been initialized 16 | #pragma warning ( disable : 4702) // unreachable code 17 | #pragma warning ( disable : 4710) // function 'x' not inlined 18 | -------------------------------------------------------------------------------- /luacom/tLuaCOMClassFactory.h: -------------------------------------------------------------------------------- 1 | // tLuaCOMClassFactory.h: interface for the tLuaCOMClassFactory class. 2 | // 3 | ////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_TLUACOMCLASSFACTORY_H__B2C2D8B2_FE51_4745_8C21_FFC29FE81F86__INCLUDED_) 6 | #define AFX_TLUACOMCLASSFACTORY_H__B2C2D8B2_FE51_4745_8C21_FFC29FE81F86__INCLUDED_ 7 | 8 | #include "lua.h" 9 | #include // IClassFactory 10 | 11 | // 12 | // LuaCOM Classfactory 13 | // 14 | 15 | class tLuaCOMClassFactory : public IClassFactory 16 | { 17 | public: 18 | // IUnknown methods 19 | STDMETHOD(QueryInterface)(REFIID riid, LPVOID FAR* ppvObj); 20 | STDMETHOD_(ULONG, AddRef)(void); 21 | STDMETHOD_(ULONG, Release)(void); 22 | 23 | // IClassFactory methods 24 | STDMETHOD(CreateInstance)(IUnknown* punkOuter, REFIID riid, 25 | void** ppv); 26 | STDMETHOD(LockServer)(BOOL fLock); 27 | 28 | tLuaCOMClassFactory(IDispatch* object); 29 | tLuaCOMClassFactory(lua_State* L); 30 | virtual ~tLuaCOMClassFactory(); 31 | 32 | private: 33 | ULONG m_cRef; 34 | lua_State* L_inproc; 35 | protected: 36 | IDispatch* object; 37 | }; 38 | 39 | #endif // !defined(AFX_TLUACOMCLASSFACTORY_H__B2C2D8B2_FE51_4745_8C21_FFC29FE81F86__INCLUDED_) 40 | -------------------------------------------------------------------------------- /luacom/tLuaCOMEnumerator.h: -------------------------------------------------------------------------------- 1 | /** 2 | tLuaCOMEnumerator.h: interface for the tLuaCOMEnumerator class. 3 | */ 4 | 5 | #ifndef _TLUACOMENUMERATOR_H 6 | #define _TLUACOMENUMERATOR_H 7 | 8 | #include 9 | #include 10 | 11 | extern "C" 12 | { 13 | #include "lua.h" 14 | } 15 | 16 | #include "tLuaCOMTypeHandler.h" 17 | #include "luabeans.h" 18 | #include "tCOMUtil.h" 19 | 20 | 21 | class tLuaCOMEnumerator 22 | { 23 | public: 24 | static void registerLuaType(lua_State* L, const char* module); 25 | void push(lua_State* L); 26 | tLuaCOMEnumerator(IEnumVARIANT* pEV_param); 27 | virtual ~tLuaCOMEnumerator(); 28 | 29 | protected: 30 | int callCOMmethod(lua_State* L, const char* name, int first_param, int last_param); 31 | static int call_method(lua_State* L); 32 | static int garbagecollect(lua_State* L); 33 | static int index(lua_State* L); 34 | 35 | static const char* type_name; 36 | static const char module_name_key; 37 | static const char* pointer_type_name; 38 | tCOMPtr pEV; 39 | 40 | tLuaCOMTypeHandler* typehandler; 41 | }; 42 | 43 | #endif // _TLUACOMENUMERATOR_H 44 | -------------------------------------------------------------------------------- /luacom/tLuaObjList.cpp: -------------------------------------------------------------------------------- 1 | // tLuaObjList.cpp: implementation of the tLuaObjList class. 2 | // 3 | ////////////////////////////////////////////////////////////////////// 4 | 5 | #include "tLuaObjList.h" 6 | #include "tLuaCOMException.h" 7 | 8 | ////////////////////////////////////////////////////////////////////// 9 | // Construction/Destruction 10 | ////////////////////////////////////////////////////////////////////// 11 | 12 | 13 | tLuaObjList::tLuaObjList(stkIndex first_param_pos, long num_params_p) 14 | { 15 | CHECKPARAM(first_param_pos >= 0 && num_params_p >= 0); 16 | 17 | first_param = first_param_pos; 18 | num_params = num_params_p; 19 | 20 | } 21 | 22 | tLuaObjList::tLuaObjList(void) 23 | { 24 | first_param = 0; 25 | num_params = 0; 26 | } 27 | 28 | stkIndex tLuaObjList::getparam(long i) 29 | { 30 | CHECKPARAM(i >= 0); 31 | 32 | if(i < num_params) 33 | return first_param + i; 34 | else 35 | return 0; 36 | } 37 | 38 | long tLuaObjList::getNumParams() 39 | { 40 | return num_params; 41 | } 42 | -------------------------------------------------------------------------------- /luacom/tLuaObjList.h: -------------------------------------------------------------------------------- 1 | // tLuaObjList.h: interface for the tLuaObjList class. 2 | // 3 | ////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_TLUAOBJLIST_H__D9585072_945D_11D4_B881_0000B45D7541__INCLUDED_) 6 | #define AFX_TLUAOBJLIST_H__D9585072_945D_11D4_B881_0000B45D7541__INCLUDED_ 7 | 8 | #include "lua.h" 9 | 10 | #include "tUtil.h" 11 | #include "LuaAux.h" 12 | 13 | class tLuaObjList 14 | { 15 | protected: 16 | stkIndex first_param; 17 | long num_params; 18 | 19 | public: 20 | long getNumParams(void); 21 | 22 | tLuaObjList(stkIndex first_param_pos, long num_params_p); 23 | tLuaObjList(void); 24 | 25 | stkIndex getparam(long i); 26 | }; 27 | 28 | #endif // !defined(AFX_TLUAOBJLIST_H__D9585072_945D_11D4_B881_0000B45D7541__INCLUDED_) 29 | -------------------------------------------------------------------------------- /luacom/tStringBuffer.h: -------------------------------------------------------------------------------- 1 | // tStringBuffer.h: interface for the tStringBuffer class. 2 | // 3 | ////////////////////////////////////////////////////////////////////// 4 | 5 | #if !defined(AFX_TSTRINGBUFFER_H__35A7FE20_7CD4_11D4_B881_0000B45D7541__INCLUDED_) 6 | #define AFX_TSTRINGBUFFER_H__35A7FE20_7CD4_11D4_B881_0000B45D7541__INCLUDED_ 7 | 8 | class tStringBuffer 9 | { 10 | public: 11 | const char * getBuffer(void); 12 | const size_t getSize(); 13 | void copyToBuffer(const char *source); 14 | void copyToBuffer(const char *source, size_t length); 15 | tStringBuffer(); 16 | tStringBuffer(const char* source); 17 | tStringBuffer(const char* source, size_t length); 18 | tStringBuffer(const tStringBuffer& copy); 19 | tStringBuffer& operator=(const tStringBuffer& other); 20 | operator const char*(); 21 | virtual ~tStringBuffer(); 22 | 23 | 24 | protected: 25 | void Init(); 26 | void Reset(); 27 | size_t size; 28 | char * buffer; 29 | }; 30 | 31 | #endif // !defined(AFX_TSTRINGBUFFER_H__35A7FE20_7CD4_11D4_B881_0000B45D7541__INCLUDED_) 32 | -------------------------------------------------------------------------------- /luacom/t_luacom.lua: -------------------------------------------------------------------------------- 1 | if not luacom then 2 | local init, err1, err2 = loadlib("LUACOM_DLL","luacom_openlib") 3 | assert (init, (err1 or '')..(err2 or '')) 4 | init() 5 | end 6 | 7 | return nil 8 | -------------------------------------------------------------------------------- /lualib.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** $Id: lualib.h,v 1.1 2007-04-18 01:23:50 nick Exp $ 3 | ** Lua standard libraries 4 | ** See Copyright Notice in lua.h 5 | */ 6 | 7 | 8 | #ifndef lualib_h 9 | #define lualib_h 10 | 11 | #include "lua.h" 12 | 13 | 14 | /* Key to file-handle type */ 15 | #define LUA_FILEHANDLE "FILE*" 16 | 17 | 18 | #define LUA_COLIBNAME "coroutine" 19 | LUALIB_API int (luaopen_base) (lua_State *L); 20 | 21 | #define LUA_TABLIBNAME "table" 22 | LUALIB_API int (luaopen_table) (lua_State *L); 23 | 24 | #define LUA_IOLIBNAME "io" 25 | LUALIB_API int (luaopen_io) (lua_State *L); 26 | 27 | #define LUA_OSLIBNAME "os" 28 | LUALIB_API int (luaopen_os) (lua_State *L); 29 | 30 | #define LUA_STRLIBNAME "string" 31 | LUALIB_API int (luaopen_string) (lua_State *L); 32 | 33 | #define LUA_MATHLIBNAME "math" 34 | LUALIB_API int (luaopen_math) (lua_State *L); 35 | 36 | #define LUA_DBLIBNAME "debug" 37 | LUALIB_API int (luaopen_debug) (lua_State *L); 38 | 39 | #define LUA_LOADLIBNAME "package" 40 | LUALIB_API int (luaopen_package) (lua_State *L); 41 | 42 | 43 | /* open all previous libraries */ 44 | LUALIB_API void (luaL_openlibs) (lua_State *L); 45 | 46 | 47 | 48 | #ifndef lua_assert 49 | #define lua_assert(x) ((void)0) 50 | #endif 51 | 52 | 53 | #endif 54 | -------------------------------------------------------------------------------- /names/ALBION.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/ALBION.NAM -------------------------------------------------------------------------------- /names/ALVER.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/ALVER.NAM -------------------------------------------------------------------------------- /names/ALVER1.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/ALVER1.NAM -------------------------------------------------------------------------------- /names/ALVER2.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/ALVER2.NAM -------------------------------------------------------------------------------- /names/DEVERRY1.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/DEVERRY1.NAM -------------------------------------------------------------------------------- /names/DEVERRY2.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/DEVERRY2.NAM -------------------------------------------------------------------------------- /names/DVARGAR.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/DVARGAR.NAM -------------------------------------------------------------------------------- /names/Dragonl1.nam: -------------------------------------------------------------------------------- 1 | /*****************************************************/ 2 | /* Dragonlance names, goldmoon etc... */ 3 | /*****************************************************/ 4 | [startstav] 5 | Gold 6 | Silver 7 | Diamond 8 | Steel 9 | Iron 10 | [mittstav] 11 | 12 | 13 | 14 | Star 15 | Moon 16 | Wind 17 | [slutstav] 18 | 19 | 20 | [stop] 21 | -------------------------------------------------------------------------------- /names/Felana.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/Felana.nam -------------------------------------------------------------------------------- /names/GALLER.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/GALLER.NAM -------------------------------------------------------------------------------- /names/HOBER.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/HOBER.NAM -------------------------------------------------------------------------------- /names/MALL.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/MALL.NAM -------------------------------------------------------------------------------- /names/ORC1.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/ORC1.NAM -------------------------------------------------------------------------------- /names/ORC2.NAM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/ORC2.NAM -------------------------------------------------------------------------------- /names/albion1.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/albion1.nam -------------------------------------------------------------------------------- /names/albion2.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/albion2.nam -------------------------------------------------------------------------------- /names/dvargar1.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/dvargar1.nam -------------------------------------------------------------------------------- /names/dvargar2.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/dvargar2.nam -------------------------------------------------------------------------------- /names/f_female.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/f_female.nam -------------------------------------------------------------------------------- /names/f_male.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/f_male.nam -------------------------------------------------------------------------------- /names/gnome1.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/gnome1.nam -------------------------------------------------------------------------------- /names/gnome2.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/gnome2.nam -------------------------------------------------------------------------------- /names/hober1.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/hober1.nam -------------------------------------------------------------------------------- /names/hober2.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/hober2.nam -------------------------------------------------------------------------------- /names/kender1.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/kender1.nam -------------------------------------------------------------------------------- /names/kender2.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/kender2.nam -------------------------------------------------------------------------------- /names/kerrel.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/kerrel.nam -------------------------------------------------------------------------------- /names/orc.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/orc.nam -------------------------------------------------------------------------------- /names/sparhawk.nam: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/names/sparhawk.nam -------------------------------------------------------------------------------- /pcre/.gitignore: -------------------------------------------------------------------------------- 1 | version 8* 2 | -------------------------------------------------------------------------------- /pcre/readme.txt: -------------------------------------------------------------------------------- 1 | LICENSE 2 | ------- 3 | 4 | See the file LICENSE for the PCRE license details. 5 | 6 | Note that the PCRE source is unchanged except as noted below. 7 | 8 | 9 | BUILDING A NEW VERSION 10 | ---------------------- 11 | 12 | PCRE built as follows: 13 | 14 | 1. Download: https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.zip/download 15 | 16 | 2. Unzip the file pcre-8.45.zip 17 | 18 | 19 | 3. Copy the following files to the mushclient source "pcre" directory: 20 | 21 | 22 | pcre.h.generic 23 | pcre_chartables.c.dist 24 | 25 | pcre_compile.c 26 | pcre_config.c 27 | pcre_dfa_exec.c 28 | pcre_exec.c 29 | pcre_fullinfo.c 30 | pcre_get.c 31 | pcre_globals.c 32 | pcre_internal.h 33 | pcre_maketables.c 34 | pcre_newline.c 35 | pcre_ord2utf8.c 36 | pcre_refcount.c 37 | pcre_study.c 38 | pcre_tables.c 39 | pcre_ucd.c 40 | pcre_valid_utf8.c 41 | pcre_version.c 42 | pcre_xclass.c 43 | ucp.h 44 | 45 | 46 | (Note that config.h is part of the git repository) 47 | 48 | 4. Rename pcre_chartables.c.dist as pcre_chartables.c 49 | Rename pcre.h.generic as pcre.h 50 | 51 | -------------------------------------------------------------------------------- /plugins/Add_Newline_To_Prompt2.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | ]> 5 | 6 | 7 | 8 | 9 | 10 | 20 | 21 | Detects prompt lines without a newline, and if found, adds one. 22 | 23 | Change ENTITY line on 3rd line of plugin to be a regular expression 24 | that matches your prompt. 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /plugins/Baron_Dude.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 11 | 12 | 16 | cast "farsight" 17 | 18 | 19 | 20 | 21 | 29 | gtell *Baron Dude* %1 30 | 31 | 40 | 41 | 42 | 43 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /plugins/Convert_code_to_pre.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 19 | 20 | tags in incoming packets to
 tags.
22 | ]]>
23 | 
24 | 
25 | 
26 | 
27 | 
28 | 
29 | 
30 | 
31 | 
54 | 
55 | 
56 | 


--------------------------------------------------------------------------------
/plugins/Function_Executer.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
27 | 
28 | 
29 | 
30 | 
31 | 
32 | 
33 | 
34 | 
35 |   
40 |   
41 | 
42 | 
43 | 
44 | 
45 | 
46 | 
59 | 
60 | 
61 | 
62 | 
63 | 
64 |   
69 |   
70 | 
71 | 
72 |  
79 | 
80 | 
81 | 


--------------------------------------------------------------------------------
/plugins/GB2312_converter.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
15 | 
16 | 
17 | 
18 | 
42 | 
43 | 


--------------------------------------------------------------------------------
/plugins/MXP_statusbar.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
61 | 
62 | 
63 | 
64 | 


--------------------------------------------------------------------------------
/plugins/Omit_Blank_Lines.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
23 | 
24 | 
25 | 
26 | 
27 | 
28 | 
29 | 
30 | 
31 |   
38 |   
39 | 
40 | 
41 | 
42 | 


--------------------------------------------------------------------------------
/plugins/OnPluginSentPythonTest.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
34 | 
35 | 
36 | 
37 | 


--------------------------------------------------------------------------------
/plugins/PlaySoundTest.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
34 | 
35 | 
36 | 
37 | 


--------------------------------------------------------------------------------
/plugins/ProcessBackspaces.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
51 | 
52 | 
53 | 
54 | 


--------------------------------------------------------------------------------
/plugins/Summary.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
15 | 
16 | Type "summary" to use.
17 | 
18 | 
19 | 
20 | 
21 | 
22 |   
28 |   Debug "summary"
29 |   
30 | 
31 | 
32 | 
33 | 


--------------------------------------------------------------------------------
/plugins/Trace.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
34 | 
35 | 
36 | 
37 | 


--------------------------------------------------------------------------------
/plugins/Trim_White_Space.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
33 | 
34 | 
35 | 
36 | 


--------------------------------------------------------------------------------
/plugins/clearscreen.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
15 | 
16 | 
17 | 
18 | 
19 | 
31 | 
32 | 
33 | 


--------------------------------------------------------------------------------
/plugins/command_filter.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
13 | 
14 |   
15 |   Example of filtering all commands through a plugin.
16 |   
17 | 
18 | 
19 | 
20 |  
44 | 
45 | 
46 | 


--------------------------------------------------------------------------------
/plugins/error_plugin.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 |   
29 |   error "error in test"
30 |   
31 | 
32 | 
33 | 
34 | 
35 | 
36 | 
37 | 
42 | 
43 | 
44 | 
45 | 


--------------------------------------------------------------------------------
/plugins/include_test.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 


--------------------------------------------------------------------------------
/plugins/jscript_plugin_test.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
10 | 
11 | 
12 | 
13 | 
29 | 
30 | 
31 | 


--------------------------------------------------------------------------------
/plugins/lua_chat_plugin_test.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
27 | 
28 | 
29 | 
30 | 
47 | 
48 | 
49 | 
50 | 


--------------------------------------------------------------------------------
/plugins/lua_requires_test.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
27 | 
32 | 
33 | 
34 | 
35 | 


--------------------------------------------------------------------------------
/plugins/main.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 9 | 
10 | 
11 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
27 | 
28 | 
29 | 
30 | 
31 |  
44 | 


--------------------------------------------------------------------------------
/plugins/mxperrortest.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
37 | 
38 | 
39 | 
40 | 


--------------------------------------------------------------------------------
/plugins/packet_test_2.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
36 | 
37 | 
38 | 
39 | 


--------------------------------------------------------------------------------
/plugins/perlscript_plugin_test.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
10 | 
11 | 
12 | 
13 | 
29 | 
30 | 
31 | 


--------------------------------------------------------------------------------
/plugins/perlscript_version.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
33 | 
34 | 
35 | 
36 | 
37 | 
38 | 
39 | 
40 | 
41 | 
55 | 
56 | 
57 | 
58 | 
59 | 
60 |   
65 |   
66 | 
67 | 
68 |  
76 | 
77 | 
78 | 


--------------------------------------------------------------------------------
/plugins/reloadtest.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
15 | 
16 | 
17 | 
18 |   
24 |   
25 | 
26 | 
50 | 
51 | 


--------------------------------------------------------------------------------
/plugins/screendraw_test.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
33 | 
34 | 
35 | 
36 | 


--------------------------------------------------------------------------------
/plugins/showactivity.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
23 | 
24 | 
25 | 
26 | 
27 | 
28 | 
29 | 
30 | 
31 |   
33 |   active = ""
34 | 
35 | '
36 | '  check all worlds
37 | '
38 | for each id in world.GetWorldIdList
39 |   set thisworld = GetWorldById (id)
40 |   if not (thisworld is nothing) then
41 |     if thisworld.GetInfo (202) > 0 then
42 |       if active <> "" then active = active & ", "
43 |       active = active & thisworld.GetInfo (2)
44 |     end if
45 |     set thisworld = nothing
46 |   end if
47 | next
48 | 
49 | '
50 | '  display results
51 | '
52 | InfoClear
53 | if active <> "" then
54 |  InfoFont "", 0, 1  ' bold font 
55 |  Info "Activity: " 
56 |  InfoFont "", 0, 0  ' normal font
57 |  Info active
58 | end if
59 | 
60 |   
61 | 
62 | 
63 | 
64 | 


--------------------------------------------------------------------------------
/plugins/tabcompletiontest.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
27 | 
28 | 
29 | 
30 | 
41 | 
42 | 
43 | 
44 | 


--------------------------------------------------------------------------------
/plugins/test.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
45 | 
46 | 
47 | 
48 | 


--------------------------------------------------------------------------------
/plugins/test_OnPluginCommandEntered.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
27 | 
50 | 
51 | 
52 | 
53 | 


--------------------------------------------------------------------------------
/plugins/udplistentest.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
19 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 | 
44 | 
45 | 
46 | 
47 | 


--------------------------------------------------------------------------------
/plugins/unicodetest.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/plugins/unicodetest.xml


--------------------------------------------------------------------------------
/plugins/variabletest.xml:
--------------------------------------------------------------------------------
 1 | 
 2 | 
 3 | 
 4 | 
 5 | 
 6 | 
 7 | 
 8 | 
 9 | 
20 | 
21 | 
22 | 
23 | 
24 | 
25 | 
26 |   
33 |   %1
34 |   
35 | 
36 | 
37 | 
38 | 
39 | 
40 | 
41 |   Gore
42 | 
43 | 
44 | 
45 | 


--------------------------------------------------------------------------------
/png/.gitignore:
--------------------------------------------------------------------------------
1 | version 1*
2 | 


--------------------------------------------------------------------------------
/png/readme.txt:
--------------------------------------------------------------------------------
 1 | LICENSE
 2 | -------
 3 | 
 4 | See the file LICENSE for the libpng license details.
 5 | 
 6 | Note that the libpng source is unchanged except as noted below.
 7 | 
 8 | 
 9 | BUILDING A NEW VERSION
10 | ----------------------
11 | 
12 | PNG built as follows:
13 | 
14 | 1. Download recent version from download.sourceforge.net
15 | 
16 |     In this case: http://download.sourceforge.net/libpng/libpng-1.6.37.tar.gz
17 | 
18 | 
19 | 2. Uncompress the archive with 7-Zip (if necessary), obtainable from:
20 | 
21 | 	http://www.7-zip.org/
22 | 
23 | 
24 | 3. If backing up the old version, leave behind the file pnglibconf.h which is the configuration file.
25 | 
26 | 4. Copy the following files to the mushclient source "png" directory:
27 | 
28 | 	png.c
29 | 	png.h
30 | 	pngconf.h
31 | 	pngdebug.h
32 | 	pngerror.c
33 | 	pngget.c
34 | 	pnginfo.h
35 | 	pngmem.c
36 | 	pngpread.c
37 | 	pngpriv.h
38 | 	pngread.c
39 | 	pngrio.c
40 | 	pngrtran.c
41 | 	pngrutil.c
42 | 	pngset.c
43 | 	pngstruct.h
44 | 	pngtrans.c
45 | 	pngwio.c
46 | 	pngwrite.c
47 | 	pngwtran.c
48 | 	pngwutil.c
49 | 
50 | 5.  Copy scripts/pnglibconf.h.prebuilt to pnglibconf.h
51 | 
52 | 
53 | 6. Edit: pngstruct.h and change
54 | 
55 | #include "zlib.h"
56 | 
57 | to
58 | 
59 | #include "../zlib/zlib.h"
60 | 
61 | 
62 | Also add to the very start of png.h:
63 | 
64 | // pragmas added by Nick Gammon
65 | #pragma warning( disable : 4115)  // named type definition in parentheses
66 | #pragma warning( disable : 4701)  // local variable 'x' may be used without having been initialized
67 | 


--------------------------------------------------------------------------------
/res/.gitattributes:
--------------------------------------------------------------------------------
1 | *.ico binary
2 | *.cur binary
3 | 


--------------------------------------------------------------------------------
/res/MUSHclient.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/res/MUSHclient.ico


--------------------------------------------------------------------------------
/res/cursor1.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/res/cursor1.cur


--------------------------------------------------------------------------------
/scripting/bcconfig.h:
--------------------------------------------------------------------------------
 1 | /*
 2 | * config.h
 3 | * number.c from GNU bc-1.06 exports some symbols without the bc_ prefix.
 4 | * This header file fixes this without touching either number.c or number.h
 5 | * (luckily, number.c already wants to include a config.h).
 6 | * Clients of number.c should include config.h before number.h.
 7 | */
 8 | 
 9 | #include 
10 | #include 
11 | #define NDEBUG 1
12 | 
13 | #define _zero_		bc_zero
14 | #define _one_		bc_one
15 | #define _two_		bc_two
16 | #define num2str		bc_num2str
17 | #define mul_base_digits bc_mul_base_digits
18 | 
19 | #define bc_rt_warn		bc_error
20 | #define bc_rt_error		bc_error
21 | #define bc_out_of_memory()	bc_error(NULL)
22 | 
23 | void bc_error(const char *mesg);
24 | 


--------------------------------------------------------------------------------
/scripting/lpeg/.gitignore:
--------------------------------------------------------------------------------
1 | v1*
2 | 
3 | 


--------------------------------------------------------------------------------
/scripting/lpeg/lpcap.h:
--------------------------------------------------------------------------------
 1 | /*
 2 | ** $Id: lpcap.h,v 1.2 2015/02/27 17:13:17 roberto Exp $
 3 | */
 4 | 
 5 | #if !defined(lpcap_h)
 6 | #define lpcap_h
 7 | 
 8 | 
 9 | #include "lptypes.h"
10 | 
11 | 
12 | /* kinds of captures */
13 | typedef enum CapKind {
14 |   Cclose, Cposition, Cconst, Cbackref, Carg, Csimple, Ctable, Cfunction,
15 |   Cquery, Cstring, Cnum, Csubst, Cfold, Cruntime, Cgroup
16 | } CapKind;
17 | 
18 | 
19 | typedef struct Capture {
20 |   const char *s;  /* subject position */
21 |   unsigned short idx;  /* extra info (group name, arg index, etc.) */
22 |   byte kind;  /* kind of capture */
23 |   byte siz;  /* size of full capture + 1 (0 = not a full capture) */
24 | } Capture;
25 | 
26 | 
27 | typedef struct CapState {
28 |   Capture *cap;  /* current capture */
29 |   Capture *ocap;  /* (original) capture list */
30 |   lua_State *L;
31 |   int ptop;  /* index of last argument to 'match' */
32 |   const char *s;  /* original string */
33 |   int valuecached;  /* value stored in cache slot */
34 | } CapState;
35 | 
36 | 
37 | int runtimecap (CapState *cs, Capture *close, const char *s, int *rem);
38 | int getcaptures (lua_State *L, const char *s, const char *r, int ptop);
39 | int finddyncap (Capture *cap, Capture *last);
40 | 
41 | #endif
42 | 
43 | 
44 | 


--------------------------------------------------------------------------------
/scripting/lpeg/lpcode.h:
--------------------------------------------------------------------------------
 1 | /*
 2 | ** $Id: lpcode.h,v 1.7 2015/06/12 18:24:45 roberto Exp $
 3 | */
 4 | 
 5 | #if !defined(lpcode_h)
 6 | #define lpcode_h
 7 | 
 8 | #ifdef LUA_52
 9 |     #include "..\..\..\lua52\src\lua.h"
10 |     #include "..\..\..\lua52\src\lauxlib.h"
11 | #else
12 |     #include "..\..\lua.h"
13 |     #include "..\..\lauxlib.h"
14 | #endif
15 | 
16 | #include "lptypes.h"
17 | #include "lptree.h"
18 | #include "lpvm.h"
19 | 
20 | int tocharset (TTree *tree, Charset *cs);
21 | int checkaux (TTree *tree, int pred);
22 | int fixedlenx (TTree *tree, int count, int len);
23 | int hascaptures (TTree *tree);
24 | int lp_gc (lua_State *L);
25 | Instruction *compile (lua_State *L, Pattern *p);
26 | void realloccode (lua_State *L, Pattern *p, int nsize);
27 | int sizei (const Instruction *i);
28 | 
29 | 
30 | #define PEnullable      0
31 | #define PEnofail        1
32 | 
33 | /*
34 | ** nofail(t) implies that 't' cannot fail with any input
35 | */
36 | #define nofail(t)	checkaux(t, PEnofail)
37 | 
38 | /*
39 | ** (not nullable(t)) implies 't' cannot match without consuming
40 | ** something
41 | */
42 | #define nullable(t)	checkaux(t, PEnullable)
43 | 
44 | #define fixedlen(t)     fixedlenx(t, 0, 0)
45 | 
46 | 
47 | 
48 | #endif
49 | 


--------------------------------------------------------------------------------
/scripting/lpeg/lpprint.h:
--------------------------------------------------------------------------------
 1 | /*
 2 | ** $Id: lpprint.h,v 1.2 2015/06/12 18:18:08 roberto Exp $
 3 | */
 4 | 
 5 | 
 6 | #if !defined(lpprint_h)
 7 | #define lpprint_h
 8 | 
 9 | 
10 | #include "lptree.h"
11 | #include "lpvm.h"
12 | 
13 | 
14 | #if defined(LPEG_DEBUG)
15 | 
16 | void printpatt (Instruction *p, int n);
17 | void printtree (TTree *tree, int ident);
18 | void printktable (lua_State *L, int idx);
19 | void printcharset (const byte *st);
20 | void printcaplist (Capture *cap, Capture *limit);
21 | void printinst (const Instruction *op, const Instruction *p);
22 | 
23 | #else
24 | 
25 | #define printktable(L,idx)  \
26 | 	luaL_error(L, "function only implemented in debug mode")
27 | #define printtree(tree,i)  \
28 | 	luaL_error(L, "function only implemented in debug mode")
29 | #define printpatt(p,n)  \
30 | 	luaL_error(L, "function only implemented in debug mode")
31 | 
32 | #endif
33 | 
34 | 
35 | #endif
36 | 
37 | 


--------------------------------------------------------------------------------
/scripting/lua_utils.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/scripting/lua_utils.cpp


--------------------------------------------------------------------------------
/scripting/md5.h:
--------------------------------------------------------------------------------
 1 | #ifndef _MD5_H
 2 | #define _MD5_H
 3 | 
 4 | #ifndef uint8
 5 | #define uint8  unsigned char
 6 | #endif
 7 | 
 8 | #ifndef uint32
 9 | #define uint32 unsigned long int
10 | #endif
11 | 
12 | typedef struct
13 | {
14 |     uint32 total[2];
15 |     uint32 state[4];
16 |     uint8 buffer[64];
17 | }
18 | md5_context;
19 | 
20 | void md5_starts( md5_context *ctx );
21 | void md5_update( md5_context *ctx, uint8 *input, uint32 length );
22 | void md5_finish( md5_context *ctx, uint8 digest[16] );
23 | 
24 | #endif /* md5.h */
25 | 


--------------------------------------------------------------------------------
/scripting/methods/methods_clipboard.cpp:
--------------------------------------------------------------------------------
 1 | // methods_clipboard.cpp
 2 | 
 3 | // Clipboard handling
 4 | 
 5 | #include "stdafx.h"
 6 | #include "..\..\MUSHclient.h"
 7 | #include "..\..\doc.h"
 8 | 
 9 | // Implements:
10 | 
11 | //    GetClipboard
12 | //    SetClipboard
13 | 
14 | 
15 | BSTR CMUSHclientDoc::GetClipboard() 
16 | {
17 | CString strContents; 
18 | 
19 |  GetClipboardContents (strContents, m_bUTF_8, false);   // no warning
20 | 
21 | 	return strContents.AllocSysString();
22 | }  // end of CMUSHclientDoc::GetClipboard
23 | 
24 | 
25 | 
26 | void CMUSHclientDoc::SetClipboard(LPCTSTR Text) 
27 | {
28 | putontoclipboard (Text, m_bUTF_8);
29 | }  // end of CMUSHclientDoc::SetClipboard
30 | 


--------------------------------------------------------------------------------
/scripting/sha256.h:
--------------------------------------------------------------------------------
 1 | #ifndef _SHA256_H
 2 | #define _SHA256_H
 3 | 
 4 | #ifndef uint8
 5 | #define uint8  unsigned char
 6 | #endif
 7 | 
 8 | #ifndef uint32
 9 | #define uint32 unsigned long int
10 | #endif
11 | 
12 | typedef struct
13 | {
14 |     uint32 total[2];
15 |     uint32 state[8];
16 |     uint8 buffer[64];
17 | }
18 | sha256_context;
19 | 
20 | void sha256_starts( sha256_context *ctx );
21 | void sha256_update( sha256_context *ctx, uint8 *input, uint32 length );
22 | void sha256_finish( sha256_context *ctx, uint8 digest[32] );
23 | 
24 | #endif /* sha256.h */
25 | 


--------------------------------------------------------------------------------
/scripting/shs.h:
--------------------------------------------------------------------------------
 1 | /* -------------- SHS.H --------------------------- */
 2 | 
 3 | typedef unsigned char BYTE;
 4 | typedef unsigned long SHSLONG;
 5 | 
 6 | #define SHS_BLOCKSIZE 64
 7 | 
 8 | #define SHS_DIGESTSIZE 20
 9 | 
10 | typedef struct
11 |   {
12 |   SHSLONG digest [5];  // message digest
13 |   SHSLONG countLo, countHi;  // 64-bit bit count
14 |   SHSLONG data [16];   // SHS data buffer
15 |   } SHS_INFO;
16 | 
17 | // include the define below if running on a little-endian machine, such as Intel
18 | 
19 | #define LITTLE_ENDIAN
20 | 
21 |   void shsInit (SHS_INFO * shsInfo);
22 |   void shsUpdate (SHS_INFO * shsInfo, BYTE * buffer, int count);
23 |   void shsFinal (SHS_INFO * shsInfo);
24 | 


--------------------------------------------------------------------------------
/spell/american-words.10:
--------------------------------------------------------------------------------
 1 | afterward
 2 | apologize
 3 | behavior
 4 | behavior's
 5 | catalog
 6 | catalog's
 7 | center
 8 | center's
 9 | check
10 | checks
11 | color
12 | color's
13 | colors
14 | defense
15 | defense's
16 | favor
17 | favor's
18 | favorite
19 | fices
20 | flavor
21 | flavor's
22 | gray
23 | judgment
24 | labeled
25 | labeling
26 | labor
27 | labor's
28 | learned
29 | organization
30 | organization's
31 | organize
32 | organized
33 | organizes
34 | organizing
35 | practice
36 | practice's
37 | program
38 | program's
39 | programed
40 | programing
41 | programmed
42 | programming
43 | programs
44 | realize
45 | realized
46 | realizes
47 | realizing
48 | recognize
49 | recognized
50 | recognizes
51 | recognizing
52 | rumor
53 | rumor's
54 | spelled
55 | story
56 | story's
57 | 


--------------------------------------------------------------------------------
/spell/english-contractions.10:
--------------------------------------------------------------------------------
 1 | aren't
 2 | can't
 3 | couldn't
 4 | didn't
 5 | doesn't
 6 | don't
 7 | haven't
 8 | isn't
 9 | they're
10 | wasn't
11 | won't
12 | wouldn't
13 | you're
14 | 


--------------------------------------------------------------------------------
/spell/english-contractions.35:
--------------------------------------------------------------------------------
1 | I'm
2 | ain't
3 | ma'am
4 | o'clock
5 | we're
6 | 


--------------------------------------------------------------------------------
/spell/english-upper.10:
--------------------------------------------------------------------------------
 1 | American
 2 | Brown
 3 | Brown's
 4 | Christian
 5 | Christian's
 6 | Congress
 7 | Congress's
 8 | Doctor
 9 | England
10 | England's
11 | English
12 | English's
13 | Europe
14 | Europe's
15 | French
16 | French's
17 | God
18 | God's
19 | I
20 | John
21 | John's
22 | Mister
23 | Mister's
24 | Mr
25 | Mr's
26 | Mrs
27 | 


--------------------------------------------------------------------------------
/spell/english-words.10:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/spell/english-words.10


--------------------------------------------------------------------------------
/spell/english-words.20:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/spell/english-words.20


--------------------------------------------------------------------------------
/spell/english-words.35:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/spell/english-words.35


--------------------------------------------------------------------------------
/spell/english-words.40:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/spell/english-words.40


--------------------------------------------------------------------------------
/sqlite3/.gitignore:
--------------------------------------------------------------------------------
1 | version 3*
2 | 


--------------------------------------------------------------------------------
/sqlite3/readme.txt:
--------------------------------------------------------------------------------
 1 | LICENSE
 2 | -------
 3 | 
 4 | See:
 5 | 
 6 |   https://www.sqlite.org/copyright.html
 7 | 
 8 | All of the code and documentation in SQLite has been dedicated to the public domain by the authors.
 9 | ...
10 | Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code, 
11 | either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. 
12 | 
13 | 
14 | Note that the SQLite3 source is unchanged except as noted below.
15 | 
16 | 
17 | BUILDING A NEW VERSION
18 | ----------------------
19 | 
20 | 
21 | 
22 | Sqlite3 built as follows:
23 | 
24 | 1. Download new amalgamated source code from https://www.sqlite.org/download.html
25 | 
26 | 2. Unzip the file
27 | 
28 | 3. Copy the following files to the mushclient source "sqlite3" directory:
29 | 
30 | sqlite3.c
31 | sqlite3.h
32 | sqlite3ext.h
33 | 
34 | 
35 | 3. Edit: sqlite3.c and add the following lines to the start of it:
36 | 
37 | #define SQLITE_SOUNDEX 1
38 | #define SQLITE_ENABLE_FTS3 1
39 | #define SQLITE_ENABLE_FTS3_PARENTHESIS 1
40 | #define SQLITE_ENABLE_RTREE 1
41 | #define SQLITE_USE_URI 1
42 | 
43 | 4. If you get compile errors like C2059 'bad suffix on number' on older compilers, remove the LL suffix from constants.
44 | For example, change:
45 | 
46 |     && i >= -2251799813685248LL && i < 2251799813685248LL);
47 | 
48 | to:
49 | 
50 |     && i >= -2251799813685248 && i < 2251799813685248);
51 | 
52 | This currently happens on four lines in the source in sqlite3.c.
53 | (Visual Studio 6.0 uses a suffix of i64 or ui64 instead of LL or ULL).
54 | 
55 | 


--------------------------------------------------------------------------------
/stdafx.cpp:
--------------------------------------------------------------------------------
1 | // stdafx.cpp : source file that includes just the standard includes
2 | //	MUSHclient.pch will be the pre-compiled header
3 | //	stdafx.obj will contain the pre-compiled type information
4 | 
5 | #include "stdafx.h"
6 | 
7 | 


--------------------------------------------------------------------------------
/textchildfrm.h:
--------------------------------------------------------------------------------
 1 | // Textchildfrm.h : interface of the CTextChildFrame class
 2 | //
 3 | /////////////////////////////////////////////////////////////////////////////
 4 | 
 5 | class CTextChildFrame : public CMDIChildWnd
 6 | {
 7 | 	DECLARE_DYNCREATE(CTextChildFrame)
 8 | public:
 9 | 	CTextChildFrame();
10 | 
11 |   CTextDocument * m_pDoc;
12 | 
13 | // Attributes
14 | protected:
15 |   
16 | // Operations
17 | public:
18 | 
19 |   virtual void OnUpdateFrameMenu(BOOL bActivate, CWnd* pActivateWnd, HMENU hMenuAlt);
20 | 
21 | // Overrides
22 | 	// ClassWizard generated virtual function overrides
23 | 	//{{AFX_VIRTUAL(CTextChildFrame)
24 | 	protected:
25 | 	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
26 | 	virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext);
27 | 	//}}AFX_VIRTUAL
28 | 
29 | // Implementation
30 | public:
31 | 	virtual ~CTextChildFrame();
32 | #ifdef _DEBUG
33 | 	virtual void AssertValid() const;
34 | 	virtual void Dump(CDumpContext& dc) const;
35 | #endif
36 | 
37 | // Generated message map functions
38 | protected:
39 | 	//{{AFX_MSG(CTextChildFrame)
40 | 	//}}AFX_MSG
41 | 	DECLARE_MESSAGE_MAP()
42 | };
43 | 
44 | /////////////////////////////////////////////////////////////////////////////
45 | 


--------------------------------------------------------------------------------
/version.h:
--------------------------------------------------------------------------------
 1 | // Version number for this release. Used in various places.
 2 | 
 3 | // Used for detecting version changes
 4 | #define THISVERSION 507
 5 | // Used in the resource file
 6 | #define VERSION_16WORDS 5,0,7,0
 7 | // Used to display the version number
 8 | #define VERSION_STRING "5.07"
 9 | 
10 | // Note that the VERSION_STRING will have "-pre" appended by a pre-release build.
11 | 
12 | // remember to edit date and version in readme.txt file
13 | //                  ^^^^^^^^^^^^^^^^
14 | 


--------------------------------------------------------------------------------
/winplace.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nickgammon/mushclient/c66533561b380ba9f39f77a16ab3b9a75b809162/winplace.cpp


--------------------------------------------------------------------------------
/winplace.h:
--------------------------------------------------------------------------------
 1 | ////////////////////////////////////////////////////////////////
 2 | // CWindowPlacement 1996 Microsoft Systems Journal.
 3 | // If this code works, it was written by Paul DiLascia.
 4 | // If not, I don't know who wrote it.
 5 | 
 6 | ////////////////
 7 | // CWindowPlacement reads and writes WINDOWPLACEMENT 
 8 | // from/to application profile and CArchive.
 9 | //
10 | struct CWindowPlacement : public WINDOWPLACEMENT {
11 |    CWindowPlacement();
12 |    ~CWindowPlacement();
13 |    
14 |    // Read/write to app profile
15 |    void GetProfileWP(LPCSTR lpKeyName);
16 |    void WriteProfileWP(LPCSTR lpKeyName);
17 | 
18 |    // Save/restore window pos (from app profile)
19 |    void Save(LPCSTR lpKeyName, CWnd* pWnd);
20 |    BOOL Restore(LPCSTR lpKeyName, 
21 |                 CWnd* pWnd,
22 |                 const bool bDesktop);
23 | 
24 |    // Save/restore from archive
25 |    friend CArchive& operator<<(CArchive& ar, const CWindowPlacement& wp);
26 |    friend CArchive& operator>>(CArchive& ar, CWindowPlacement& wp);
27 | };
28 | 


--------------------------------------------------------------------------------
/worldsock.h:
--------------------------------------------------------------------------------
 1 | // worldsock.h : interface of the CWorldSocket class
 2 | //
 3 | // This is a part of the Microsoft Foundation Classes C++ library.
 4 | // Copyright (C) 1992-1994 Microsoft Corporation
 5 | // All rights reserved.
 6 | //
 7 | // This source code is only intended as a supplement to the
 8 | // Microsoft Foundation Classes Reference and Microsoft
 9 | // QuickHelp and/or WinHelp documentation provided with the library.
10 | // See these sources for detailed information regarding the
11 | // Microsoft Foundation Classes product.
12 | 
13 | #ifndef __WORLDSOCK_H__
14 | #define __WORLDSOCK_H__
15 | 
16 | class CMUSHclientDoc;
17 | 
18 | class CWorldSocket : public CAsyncSocket
19 | {
20 | 	DECLARE_DYNAMIC(CWorldSocket);
21 | 
22 | // Construction
23 | public:
24 | 	CWorldSocket(CMUSHclientDoc* pDoc);
25 | 
26 | // Operations
27 | public:
28 | 	CMUSHclientDoc* m_pDoc;
29 |   string m_outstanding_data;
30 | 
31 | // Implementation
32 | 
33 |   virtual void OnReceive(int nErrorCode);
34 | 	virtual void OnSend(int nErrorCode);
35 | 	virtual void OnClose(int nErrorCode);
36 | 	virtual void OnConnect(int nErrorCode);
37 | 
38 | };
39 | 
40 | #endif // __WORLDSOCK_H__
41 | 


--------------------------------------------------------------------------------
/zlib/.gitignore:
--------------------------------------------------------------------------------
1 | 
2 | version 1*
3 | 


--------------------------------------------------------------------------------
/zlib/LICENSE:
--------------------------------------------------------------------------------
 1 | Copyright notice:
 2 | 
 3 |  (C) 1995-2013 Jean-loup Gailly and Mark Adler
 4 | 
 5 |   This software is provided 'as-is', without any express or implied
 6 |   warranty.  In no event will the authors be held liable for any damages
 7 |   arising from the use of this software.
 8 | 
 9 |   Permission is granted to anyone to use this software for any purpose,
10 |   including commercial applications, and to alter it and redistribute it
11 |   freely, subject to the following restrictions:
12 | 
13 |   1. The origin of this software must not be misrepresented; you must not
14 |      claim that you wrote the original software. If you use this software
15 |      in a product, an acknowledgment in the product documentation would be
16 |      appreciated but is not required.
17 |   2. Altered source versions must be plainly marked as such, and must not be
18 |      misrepresented as being the original software.
19 |   3. This notice may not be removed or altered from any source distribution.
20 | 
21 |   Jean-loup Gailly        Mark Adler
22 |   jloup@gzip.org          madler@alumni.caltech.edu
23 | 


--------------------------------------------------------------------------------
/zlib/gzclose.c:
--------------------------------------------------------------------------------
 1 | /* gzclose.c -- zlib gzclose() function
 2 |  * Copyright (C) 2004, 2010 Mark Adler
 3 |  * For conditions of distribution and use, see copyright notice in zlib.h
 4 |  */
 5 | 
 6 | #include "gzguts.h"
 7 | 
 8 | /* gzclose() is in a separate file so that it is linked in only if it is used.
 9 |    That way the other gzclose functions can be used instead to avoid linking in
10 |    unneeded compression or decompression routines. */
11 | int ZEXPORT gzclose(file)
12 |     gzFile file;
13 | {
14 | #ifndef NO_GZCOMPRESS
15 |     gz_statep state;
16 | 
17 |     if (file == NULL)
18 |         return Z_STREAM_ERROR;
19 |     state = (gz_statep)file;
20 | 
21 |     return state->mode == GZ_READ ? gzclose_r(file) : gzclose_w(file);
22 | #else
23 |     return gzclose_r(file);
24 | #endif
25 | }
26 | 


--------------------------------------------------------------------------------
/zlib/inffast.h:
--------------------------------------------------------------------------------
 1 | /* inffast.h -- header to use inffast.c
 2 |  * Copyright (C) 1995-2003, 2010 Mark Adler
 3 |  * For conditions of distribution and use, see copyright notice in zlib.h
 4 |  */
 5 | 
 6 | /* WARNING: this file should *not* be used by applications. It is
 7 |    part of the implementation of the compression library and is
 8 |    subject to change. Applications should only use zlib.h.
 9 |  */
10 | 
11 | void ZLIB_INTERNAL inflate_fast OF((z_streamp strm, unsigned start));
12 | 


--------------------------------------------------------------------------------
/zlib/readme.txt:
--------------------------------------------------------------------------------
 1 | zlib built as follows:
 2 | 
 3 | 1. Download recent version from https://www.zlib.net/zlib1212.zip
 4 | 
 5 | 2. Unzip and untar the file
 6 | 
 7 | 3. Copy the following files to the mushclient source "zlib" directory:
 8 | 
 9 | adler32.c
10 | compress.c
11 | crc32.c
12 | crc32.h
13 | deflate.c
14 | deflate.h
15 | gzclose.c
16 | gzguts.h
17 | gzlib.c
18 | gzread.c
19 | gzwrite.c
20 | inffast.c
21 | inffast.h
22 | inffixed.h
23 | inflate.c
24 | inflate.h
25 | inftrees.c
26 | inftrees.h
27 | trees.c
28 | trees.h
29 | uncompr.c
30 | zconf.h
31 | zlib.h
32 | zutil.c
33 | zutil.h
34 | 
35 | 
36 | 3. Edit: zconf.h and after the lines:
37 | 
38 | #ifndef ZCONF_H
39 | #define ZCONF_H
40 | 
41 | add:
42 | 
43 | #undef ZLIB_DLL      // NJG
44 | 
45 | 
46 | 4. Edit: zlib.h and at the start add the lines:
47 | 
48 | // pragmas added by Nick Gammon
49 | #pragma warning( disable : 4127)  // conditional expression is constant
50 | #pragma warning( disable : 4131)  // uses old-style declarator
51 | #pragma warning( disable : 4244)  // conversion from 'int' to 'unsigned short', possible loss of data
52 | #pragma warning( disable : 4702)  // unreachable code
53 | 
54 | 
55 | 5. Edit gzguts.h and remove the #ifdef / #endif from these lines:
56 | 
57 | #ifdef WINAPI_FAMILY
58 | #  define open _open
59 | #  define read _read
60 | #  define write _write
61 | #  define close _close
62 | #endif
63 | 


--------------------------------------------------------------------------------