README FOR MacHostinfo ---------------------------- Send bug reports to grlee@mit.edu and sarac@mit.edu MacHostinfo is an application which asks an internet server for host information for a machine when the user specifies the machine's IP address or hostname. I spent the past semester (Spring 1999) working on a *new* 2.0 version of MacHostinfo. Release 2.0d1 is, unfortunately, my first and last release of version 2.0. (I graduate in 18 days... WOO-HOO!) This is a development version of the project released internally for testing. This release has the *bare-minimum* functionality (and, no, command-. hasn't been supported yet... something better has - see below), and is *very* buggy. I am releasing this version to show that this code actually compiles without errors. ;) Seriously, this release is to show what functionality has been implemented and for others to kick around and shake bugs out, which shouldn't be hard to do. Requirements ------------ System 7.x or higher, MacTCP/Open Transport, and Thread Manager. (MacOS 8 compatible) Using MacHostinfo ----------------- The user makes a hostinfo query by typing the name or IP address of the desired machine in the input field and either pressing return/enter or clicking the query button. If the query fails, a dialog box will be displayed explaining what when wrong. Otherwise, the results of the query will be appended to the end of the output field. The user can also paste hostnames into the input field or use the history pop-up menu (between the input field and the Query button) to requery about a specific host. MacHostinfo also has balloon help to give the user a quick, on-screen reference for the program. Known Bugs/Deficiencies ------------------------ * The option to ask for a specific name server is unavailable at the moment. Both mit-sock and resolv libraries have been removed from the project and replaced my Open Transport, so it should be possible to ask for specific servers. I just haven't gotten to it yet. * Following menus and menu items don't work (as in the functionality is buggy and causes the computer to crash) : Save, Save As..., Close, Quit, Apple Menu. I suspect the threads in my MHMainWindow class is to blame for the problems with close and quit, and the "dirty text field" class for the output fields is to blame for the failure of save. * The popup menu button doesn't work. (I've disabled it for the time being.) I am unable to get my MHPopup class or Metrowerks' CPopup class to add items to the popup menu. * Can't close windows or quit with crashing (see item about menus above.) * Minor parsing errors of query results in output field * Return behavior (starting and stopping queries) does nothing to stop queries. Change History -------------- 2.0d1 - 5/17/99 New development version of MacHostinfo - All MIT libraries have been removed from MacHostinfo - All brand new code written in C++ using Power Plant and Open Transport. - Multi-threaded queries are supported using OT callback functions. Users can now cancel queries and run queries on multiple windows. Windows now catch update events. In fact, the user can continue to do things in MacHostinfo as queries run. - The results of the result windows can be saved to a text file. 1.0a21 - 6/12/98 Two Bug Fixes - "Select All" menu item has a help button. - The popup menu now re-ables itself during resume events if there exists items in the menu. 1.0a20 - 5/27/98 Two Bug Fixes - MacHostinfo now "greys out" the scroll bar instead of deleting it when MacHostinfo is in the background - Fixed bug with Home and End keys than caused characters to be written to the output field. 1.0a19 - 5/26/98 Reversion - Got rid of grey background. (Meeroh suggested it would be bad to hard-code it instead of using the Appeareance Manager API.) 1.0a18 - 5/24/98 One Bug Fix - MacHostinfo now has a grey background when the appearence manager is present. 1.0a17 - 5/18/98 One Bug Fix - Window controls now properly grey out when the MacHostinfo is in the background. 1.0a16 - 4/13/98 Several Bug Fixes - Better message when user cancels the TestTrack dialog. - Now when you click the mouse in the scroll bar (to scroll text), the text in the output window isn't redrawn twice. - The window will not resize itself to be larger than more than one screen. - The main window is now drawn when MacHostinfo runs on 68K machines or machines not running MacOS 8. 1.0a14 - 3/14/98 Several Bug Fixes - Appearence Manager library is now weakly-linked to MacHostinfo, allowing users to use MacHostinfo without it. (Honest!) - *NOW* Multiple monitor code works correctly (using GetGreyRgn to find where the screen can go, instead of GetDevice) (Another stupid bug) - Relinked MacHostinfo with up-to-date Testtrack library. 1.0a13 - 3/1/98 Several Bug Fixes - 68K version doesn't have Appearence like window when Appearence manager is off. - FAT version of MacHostinfo is correctly built. (Honest!) - Multiple monitor code now works correctly (using GetGreyRgn to find where the screen can go, instead of GetDevice) - Appearence Manager library is now weakly-linked to MacHostinfo, allowing users to use MacHostinfo without it. 1.0a12 - 2/16/98 Several Bug Fixes - Fixed Appearence Mananger code to handle MacHostinfo running under System 7. (This was a stupid bug.) - Modified code for multiple monitor support so that windows that are quitted while inbetween monitors will still be between the monitors at startup. - FAT versions of MacHostinfo are now built correctly - NOTE: Testtrack library hasn't been updated yet. 1.0a11 - 1/30/98 Several Bug Fixes - Added support for multiple monitors. MacHostinfo will now adjust the window at start-up relative to the monitor it is on, not to the main monitor - Added Appearence Manager support. 1.0a10 - 1/30/98 Several Bug Fixes - TestTrack askes for information now. (Messed this up in a previous alpha.) Still using old version of library, but it's the version in MacCVS, so I'm not taking any blame here. ;) - Stopped releasing the RECT resource used to keep track of the window's position between application uses, hence elimitating a QC error "Heap does not contain Handle XXXXXX" during the CreateWindow() procedure. - Changed error message during cancelled lookups to "Unexpected and unknown error or User cancelled operation while looking up hostinfo." - Menu item "About Mac Hostinfo..." is not "About MacHostinfo..." - Help ballon for Query button now explains why the button would be deactivated. - Place a line between "Clear" and "Select All" in the Edit Menu - Removed the colon after "written by" in the "About" box - Changed the pop-up menu so if the item in the input field matches the first item in the pop-up menu, another copy of the item *won't* be added to the pop-up. (looks nicer) - When the user doesn't select an item from the pop-up (i.e. the return value of TrackControl is 1), the input field isn't changed or highlighted. - The output field is now spaced equally from the left and right sides of the main window (20 pixels). - Sara's name in the About box has now only one space between "Sara" and "C." - The about box is auto-centered in the screen now. 1.0a9 - 1/23/98 Several Bug Fixes - Fixed source of crashes in QC when starting up. - The border of the Query button now dims when there is no text in the input field. - I changed the algorthim used to size the output field in relation to the font it uses. The output field is sized proportional to the whole window. - Corrected window positioning when a preference file is not present. - Preference files now keep track of window positions correctly. 1.0a8 - 1/9/98 Several Bug Fixes & a New Feature: - The window title bar uses the system font for its text correctly now. - The vertical spacing of the output field is now correctly set for large fonts. - The extra vertical black line next to the scroll bar is gone. - A QC error during the quiting of the app has been fixed. - Preference files have been pretty much implementated, with only minor things to be added. - The query button is deactivated if there is no text in the input field. 1.0a7 - 12/31/97 To end the year, I've added code that calculates the size of the window at the begining of MacHostinfo's execution to make sure the input and output boxes are properly sized for their fonts. HAPPY NEW YEAR!!!! 1.0a6 - 11/22/97 Code for history menu changed. History menu now adds the current text in the input field to itself to correct a bug in the TrackControl code. 1.0a5 - 11/1/97 Internet Config support added to MacHostinfo. Now if Internet Config is present on a system, the text in the text fields of MacHostinfo will use the font style and size selected for applications. The user can now use Internet Config to specify fonts in MacHostinfo. 1.0a4 - 10/17/97 Icons added to MacHostinfo 9/28/97 Several Bugs fixed: - Odd behaviors of MacHostinfo involving scroll bars and text fields were fixed. (Text fields had wrong Edit field items highlighted, etc.) 9/21/97 TestTracker/Version Server code added 9/15/97 Several Bugs fixed: - Several Random memory errors were fixed - The pop-up history menu now correctly changes the input field when an item is selected from the menu that is different from the item in the input field. - Clicking on the input and output fields now result in more correct behavior - Some code was streamlined and cleaned up of useless variables. 1.0a3 - 9/2/97 New Feature: - MacHostinfo now uses a resource to store the last window position before quiting so it can remember it when the user starts the program again. Also, if the window is positioned outside of the main screen at the start of the program, then it is redrawn inside the main screen. 1.0a2 - 8/29/97 Several Bugs fixed: - Program no longer beeps when it beeps. - The application window no longer completely updates after an items from the pop-up menu is choosen. - The program no longer responses to return key presses when the cursor is in the output field. - The dialog boxes now have a better look to them - A long entry (~200 characters) in the hostname field will not be corupted by the application. - The "Query" button now briefly highlights when the return key is pressed. - The application responds to "Page Up" and "Page Down" key presses in either field by scrolling the output field. - Memory problems (i.e. crashes) related to the above bugs seem to have disappeared. 1.0a1 - 8/20/97 Version 1.0 is christened. List of possible features to add -------------------------------- - dynamically resizeable windows(?) Last modified: 5/17/99 by grlee