Todo/ideas: * ProgressDialog, Gauge or Throbber for HTTP connections (threading?) * GenToggleButton or CheckBox for deleting items from ListCtrl's * Private/public dropdown box for friend groups * Calendar widget for getdaycounts mode * AutoSortMixin for reports (or some kind of sortabilty) * Make some methods private for security Changelog: 0.7.1 (28-Jul-2010) * Checked with wxPython 2.8.11 on FC13/Python 2.6.4 * Now uses hashlib instead of the md5 module, so should work with Python 2.7 * Built using cx_Freeze 4.2 * Added http:// to the URL's as it was trying to open a file instead of a browser. 0.6.9 (09-Apr-2006) * Checked with wxPython 2.6.3.2 on FC4/Python 2.4.1 * Checked with wxPython 2.6.3.0 on FC3/Python 2.3.4 0.6.8 (07-Sep-2005) * New version now that I'm back in England! * Checked with FC3/Python 2.4.1/wxPython 2.6.1.0 * Now builds single file executable using py2exe 0.6.2 * Tested with pyInstaller 1.0 on FC3/Python 2.4.1 (added build script) 0.6.7 (16-Mar-2005) * Added PY_PATH variable to batch files, to make it easier to build using different Python installs * Checked with wxPython 2.5.4.1 on WinXP * Checked with Ubuntu Hoary Hedgehog/Python 2.4.1/wx2.5.3.2 * Checked with FC3/Python 2.4.1/wxPython 2.5.4.1, 2.5.5.1 and 2.6.0.0 0.6.6 (05-Jan-2005) * Upped version as it's new year - updated copyright too * Checked with movpy * Changed website links * Fixed AppReadmeFile in InnoSetup * Added changelog viewer to main program (so don't need link in start menu) * About dialog now shows README.txt * Extended internationalisation to top layer menus * Checked with Python 2.3.5 on WinXP 0.6.5 (19-Dec-2004) * Made paths to cx_Freeze and Installer variables and removed path to Python in the batch files, to make it easier to build with Python 2.4. Python will have to be in your PATH or Registry * Removed references to UPX in all batch files, it won't be used under Windows at least anymore * Added note about downloading msvc71.dll for Python 2.4 buids to README.txt * Removed version from py2exe script, reduces version location to config.py and innosetup.iss * Added my pj_unix.sh script to build environment (converts DOS-ified pyJournal source to UNIX) * Added LD_LIBRARY_PATH to shell scripts, for custom wx builds 0.6.4 (12-Nov-2004) * Tested with wxPython 2.5.3.1 on WinXP, FC2 and RH9 (GTK2 now works on RH9!) * Tested with Windows XP Media Center Edition 2004/Tablet PC 2005 * Tested with SUSE 9.2 Pro - 9.1 cxFreeze'd binary worked, not the Installer one though * Tested with Fedora Core 3 - FC2 cx_Freeze'd binary works fine, builds fine too * Tested with py2exe 0.5.4 on WinXP * Tested with cx_Freeze 3.0.1 with WinXP, SUSE 9.2 Pro, FC1, FC2 and FC3 * Tested with Python 2.4 under FC2 and WinXP 0.6.3 (7-Sep-2004) * Fixed GUI polling problem while looping through received data - wx.Yield() * Tidied up some lines so that they don't require 1600 pixel displays! * Not using UPX for py2exe, as I found that it uses 2.5Mb more RAM, and InnoSetup/7Zip compresses better anyway * Tested with SUSE Linux Enterprise Server 9 and Fedora Core 2 - Installer segfaults, cx_Freeze works fine, will probably stick to cx_Freeze from now on * Now passes --init-script=ConsoleSetLibPath to cx_Freeze, so that the binary is forced to look in it's own directory for .so files, instead of /usr/lib/wxPython * Tested cx_Freeze 3.0 final with WinXP, FC1 and FC2 * Tested with Windows 2003 Server Enterprise 0.6.2 (24-Aug-2004) * Added languages preference menu entry/dialog box - can now read/write language preference * Moved language files to their own directory * Added README.txt file * Moved server/path of Livejournal to config.py - would make switching server/protocol easier * Added GPL license as DocString to sources, also included GPL.txt * Updated build scripts to copy languages directory, GPL.txt and README.txt * Tidied up some comments and changelog * Renamed ChangeLog.txt to more standard HISTORY.txt * Removed importing of string module as it wasn't being used and will be deprecated * Checked with wxPython 2.5.2.8 on RedHat9/RedHat EL3 ES/Win2k Pro/WinXP Pro 0.6.1 (23-Aug-2004) * Added method for passing configured language around * Config file is just back to holding constants, language stuff moved to lang_en.ini (parsed by ConfigParser) * choices.txt has been replaced by ConfigParser-style prefs.ini * Updated build scripts to copy/dos2unix .ini files * Checked with wxPython 2.5.2.7 on RedHat9 0.6.0 (20-Aug-2004) * Internationalisation! Externalised all messages to config.py, just replace that file to go i8n. Can't do much about Livejournal messages of course. * Added demo fr_config.py - excuse the Babelfish translations and lack of accents! * Fixed initial height of communities list - was slightly off pane under Windows at least 0.5.9 (19-Aug-2004) * Made communities list clickable (goes to community page) * Added config.communities{} dictionary * Removed UPX from cx_freeze.sh, as it doesn't seem to work well * Added website link to About menu * Added "wx-" to clientversion so now it complies with Platform-ProductName/ClientVersionMajor.Minor.Rev * Put username in window title 0.5.8 (18-Aug-2004) * Removed use of strptime() as it's not 100% cross-platform * Added VersionInfo to the .exe when using py2exe - version has to be set in setup.py, config.py and innosetup.iss * Removed setting of some parameters which were being set to their default (optional) value of 0 anyway * Tested with UPX 1.25 and evaluated --best vs -9 compression, --best is a lot slower, and only saves about 500bytes/3.4Mb! 0.5.7 (17-Aug-2004) * Checked with wxPython 2.5.2.7 on Win2K/XP * Moved to self.Bind instead of wx.EVT (2.5 migration) * Moved to ChallengeResponse instead of hpassword LJ protocol * Changed some comments/error messages * Added a "Fetching data from Livejournal..." message to statusbar when sending a request * Stopped tab switching until you have valid data 0.5.6 (12-Aug-2004) * InnoSetup now works with whatever builder you choose, not just py2exe * Tested with InnoSetup 4.2.7 * Made complete batch files for building with py2exe/cx_Freeze/Installer on Windows (copy/delete files etc.) * Made complete shell scripts for building with cx_Freeze/Installer on UNIX (dos2unix, chmod, tar etc.) * Tested Installer/cx_Freeze on Linux - building/running works on SUSE 9.1 Pro/RedHat 9 * Removed InstallShield file * Added a path lookup, so we can always find the changelog/icon/logo * Checked with WinXP SP2 0.5.5 (27-Jul-2004) * Renumbered config ID's to remove overlapping * Checked with py2exe 0.5.3 * Added some more comments 0.5.4 (21-Jul-2004) * Fixed problem with holes in GetFriendGroups array * Checked with py2exe 0.5.2 0.5.3 (01-Jul-2004) * Grouped mode menu, with separators * Checked with NT4 (including InnoSetup/py2exe) * Converted ChangeLog to Windows format * Changed py2exe/setup.bat to only UPX files in dist/ 0.5.2 (25-Jun-2004) * Tested with InnoSetup 4.2.6 * Bundled cx_Freeze.bat in Installer directory, although don't think I'll use either * Tidied up some DocStrings and this ChangeLog 0.5.1 (18-Jun-2004) * Made a decent .ico file * Converted to InnoSetup 4.2.5 * Evaluated InstallShield XP - worse than MP5! * Evaluated cx_Freeze3 - seems to have .so1 issues on Fedora C1 0.5.0 (16-Jun-2004) * Tested with Python 2.3.4 on Win2K 0.4.9 (14-Jun-2004) * InnoSetup now uses relative paths, so can compile at work too * InstallShield now only installs source on non-Windows platforms 0.4.8 (02-Jun-2004) * Evaluated InstallShield MP5 - I'm sticking with InnoSetup! * Finally removed v0.2.7 from the distro 0.4.7 (26-May-2004) * Tested with Installer 6a2 * Tested with Psyco (wx.lib.dialogs has issues, and only wx benefits) * Removed need for seperate work/home batch files * Made this ChangeLog more compact 0.4.6 (21-May-2004) * Changed title of login window so that mainWindow wouldn't say "pyJournal <2>" under Linux * Tested on SUSE 9.1/KDE 3.2.1 0.4.5 (07-May-2004) * Added support for enter keypress to submit login form 0.4.4 (06-May-2004) * Added birthday support to getfriends mode 0.4.3 (30-Apr-2004) * Replaced use of (1) with (True) from wx2.5 0.4.2 (22-Apr-2004) * Replaced all use of 'from module import *' with just 'import module', so now we can use things like reload(module) * Removed some more globals * Tested InnoSetup/py2exe installer on Windows 98 0.4.1 (15-Apr-2004) * Now uses UPX via py2exe, Installer will probably just be used for Linux now (although seems to have TK issues) * Created InnoSetup installer, compresses using 7-zip * Checks for existance/readability of icon and logo files and errors silently (just won't show icon or logo). * Added getdaycounts mode with date formatting * Removed redundant insert then setitem for first column of reports * Tested on LindowsOS (made entries header/column shorter in getdaycounts) 0.4.0 (14-Apr-2004) * Now uses icon for window and taskbar (even works under Linux!) * Fixed Installer to use pywin32 (win32all) for .exe icon * Setup py2exe to include the icon, changelog and logo in the distribution, and also to install the icon and manifest into the .exe 0.3.9 (13-Apr-2004) * Now tests for fastserver permission, and sets cookie accordingly 0.3.8 (12-Apr-2004) * Made logo wider to fit login dialog width (optimised with intergif) * Used wx.BITMAP_TYPE_GIF instead of ANY 0.3.7 (11-Apr-2004) * Login dialog now shows logo 0.3.6 (09-Apr-2004) * Added scrolling changelog dialog instead of simple about box * Removed some more global variables * Tested on Lindows (so fixed linefeeds in changelog and width of colour columns) 0.3.5 (08-April-2004) * Fixed hand cursor under Linux (bind to listctrl not panel) 0.3.4 (08-Apr-2004) * Changed wx.SystemSettings_GetSystemMetric to wx.SystemSettings_GetMetric as the former doesn't seem to work on Windows - think it's a typo anyway * Set Communities listbox size back to (self.x, self.y) as on Windows it doesn't stretch past the fixed 600 width for the login message label * Set cursor to hyperlink hand for listctrl's with web links * Added status_text to each mode's config, which sets the statusbar text when the notebook tab is selected 0.3.3 (07-Apr-2004) * Now uses wxPython-specific wx.SystemSettings_GetSystemMetric to find scrollbar size across platforms, instead of wx.SystemSettings.GetMetric * Communities welcome message now set to a fixed 600 wide as on Linux, the client size seems to be the tab width! 0.3.2 (06-Apr-2004) * All list_ctrl's now expand to fit the window width, including scrollbar detection (need to check if Linux needs this) * All lists now have the correct initial height 0.3.1 (05-Apr-2004) * All lists expand vertically too now due to the second bit set to 1: self.sizer.Add(self.community_listbox, 1, wx.ALL|wx.EXPAND, 5) * Beta-testing wx.EVT_SIZE and wx.EVT_MAXIMIZE on getfriends_listctrl 0.3.0 (05-Apr-2004) * Each mode now has it's own file, except login and checkfriends which are part of the main pyjournal.py * Removed some use of global vars (notebook) 0.2.7 (04-Apr-2004) * Added getfriendgroups mode * Implemented wxPython 2.5.1.5 (wx namespace) * Now compiles with python -OO to remove DocStrings * Now clears panel and shows a dialog box if you receive 0 results (i.e. no friends, no friendofs, no friendgroups....) like checkfriends * Removed use of global _done variable to check if we need to destroy panel (now we always -try- to destroy, and ignore exceptions)