]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/docs/CHANGES.txt
Oops, CenteronScreen wasn't really removed, just moved to wxTopLevelWindow
[wxWidgets.git] / wxPython / docs / CHANGES.txt
index a550ce3a81b5fc5b1a0813faf0cb71c43633467c..05f9b1bb3a6f544dfc34055b90efa1fa0ed3b212 100644 (file)
 Recent Changes for wxPython
 =====================================================================
 
+2.7.0.0
+-------
+
+The following deprecated items have been removed:
+
+    * wx.Bitmap SetQuality and GetQuality methods
+
+    * The wx.GetNumberFromUser function
+
+    * wx.EVT_LIST_GET_INFO and wx.EVT_LIST_SET_INFO
+
+    * wx.BookCtrlSizer and wx.NotebookSizer
+
+    * The PostScript-specific methods of wx.PrintData
+
+    * wx.PrintDialogData SetSetupDialog and GetSetupDialog methods
+
+    * wx.FontMapper SetConfig method
+
+    * wx.html.HtmlSearchStatus.GetContentsItem method
+
+    * wx.html.HtmlHelpData.GetContents, GetContentsCnt, GetIndex, and
+      GetIndexCnt methods
+
+
+wx.EventLoop is now implemented for wxMac.
+
+Added wxPython wrappers for the new wx.Treebook and wx.Toolbook
+classes. 
+
+wx.DC.BeginDrawing and EndDrawing have been deprecated in the C++
+code, so since they never really did anything before they are now just
+empty stubs in wxPython.
+
+Solved a problem that has been around for a very long time in how C++
+methods are virtualized for overriding in derived Python classes.
+Previously we couldn't do it for methods that needed to exist in the
+base class wrappers such that they could be called normally.  (The
+reasons are long and complex, but suffice it to say that it was due to
+mixing C++'s dynamic dispatch, and Python's runtime lookup of the
+method attributes resulting in endless recursion of function calls.)
+Because of this problem I used a hack that I have always hated, and
+that is renaming the base class methods with a "base_" prefix, for
+example wx.Printout.base_OnBeginDocument.  Now that the problem has
+finally been solved I have replaced all the base_Whatever() methods
+with the real Whatever() method as well as a simple wrapper named
+base_Whatever that is marked as deprecated.  So now instead of writing
+your overridden methods like this:
+
+    def OnBeginDocument(self, start, end):
+       # do something here
+       return self.base_OnBeginDocument(start, end)
+
+You can do it the *right way* like this:
+
+    def OnBeginDocument(self, start, end):
+       # do something here
+       return super(MyPrintout, self).OnBeginDocument(start, end)
+
+Note that the old way still works, but you will get a
+DeprecationWarning from calling base_OnBeginDocument.  The classes
+affected by this are:
+
+    * wx.DropSource
+    * wx.DropTarget
+    * wx.TextDropTarget
+    * wx.FileDropTarget
+    * wx.PyLog   (also added the ability to override Flush)
+    * wx.PyApp   (also added the ability to override ExitMainLoop)
+    * wx.Printout
+    * wx.PyPrintPreview
+    * wx.PyPreviewFrame
+    * wx.PreviewControlBar
+    * wx.Process
+    * wx.PyControl
+    * wx.PyPanel
+    * wx.PyScrolledWindow
+    * wx.PyWindow
+    * wx.Timer
+    * wx.grid.PyGridCellRenderer
+    * wx.grid.PyGridCellEditor
+    * wx.grid.PyGridCellAttrProvider
+    * wx.grid.PyGridTableBase
+    * wx.html.HtmlWindow
+    * wx.wizard.PyWizardPage
+
+
+
+
+2.6.3.0
+-------
+
+Change the wx.ListCtrl InsertStringItem wrapper to use the form that
+takes an imageIndex, and set the default to -1.  This ensures that on
+wxMSW that if there is an image list but they don't specify an image,
+the native control doesn't use one anyway.
+
+wxMSW: wx.ListCtrl in report mode is now able to support images in
+other columns besides the first one.  Simply pass an image index to
+SetStringItem.  For virtual list controls you can specify the image to
+use on the extra columns by overriding OnGetItemColumnImage in your
+derived class.  It is passed the item number and the column number as
+parameters, and the default version simply calls OnGetItemImage for
+column zero, or returns -1 for other columns.
+
+
+
+
+2.6.2.1
+-------
+* 10-Jan-2006
+
+wxMSW: Fix for bug #1211907, popup menu indenting inconsistent with
+bitmaps.
+
+wxMac: Don't send an event for wx.RadioButton deselections, just the
+selections.  This was done to make it consistent with the other
+platforms.
+
+wxMSW: Always set flat toolbar style, even under XP with themes: this
+is necessary or separators aren't shown at all.
+
+Fixes for bug #1217872, pydocview.DocService not correctly initialized.
+
+Fix for bug #1217874, Error in parameter name in DocManager.CreateView.
+
+Added wrappers for the wx.RendererNative class.
+
+Added the wx.lib.splitter module, which contains the
+MultiSplitterWindow class.  This class is much like the standard
+wx.SplitterWindow class, except it allows more than one split, so it
+can manage more than two child windows.
+
+Docview and IDE patch from Morgan Hua with fix for bug #1217890
+"Closing view crashes Python" plus some new features::
+
+    New feature added to the IDE is 'Extensions'.  Under
+    Tools|Options|Extensions, you can add calls to external programs.
+    For example you can add a "Notepad" extension (under windows) that
+    will exec Notepad on the currently open file.  A new "Notepad"
+    menu item will appear under the Tools menu.
+
+Some fixes to XRCed to make encoding errors a bit more user friendly.
+
+XRCed changes from Roman Rolinsky:
+
+    * Added new controls (Choicebook, Listbook, StatusBar,
+      DatePicker), and completed style flags. Test window is opened
+      for an available parent control if no specific view
+      defined. Better handling of exceptions (highlighting does not
+      'stick' anymore).
+
+    * Use system clipboard for Copy/Paste.
+
+    * Improved some dialogs (window styles, growable cols). Changed
+      the range for wxSpinCtrl min/max to all integers (default 0/100
+      is not always good).
+
+Updates for wx.lib.foldpanelbar and wx.lib.hyperlink from Andrea
+Gavana.
+
+Fix for Bug #1283496: wxPython TheClipboard class causes problems for
+pychecker.  Ensure the app has been created before initializing
+wx.TheClipboard.
+
+Fix for Bug #1352602: FileBrowseButtonWithHistory can't type in Value.
+
+wxHTML: Added space after list item number.
+
+wx.lib.printout:  Applied patch #1384440.
+
+wxMSW:  Fix for Bug #1293225 Window_FromHWND crashes if parent is
+None.
+
+Fix for Bug #1261669, use a wx.TE_RICH2 style for the Process demo so
+it doesn't fill up too soon.
+
+Applied Patch #1354389: wxPython MenuItem SetBitmaps fix.
+
+Applied Patch #1239456: wxPython wx.DataObject.GetAllFormats fix.
+
+Applied Patch # #1230107 which allows image handlers to be written in
+Python by deriving from wx.PyImageHandler.
+
+Applied patch #1072210: generalize printout.py to allow text printing.
+
+Applied patch #1243907: Give Throbber much more flexibility by
+allowing the user to set the rest image, the direction, the current
+index, custom sequence.  Allows user to manually step through the
+sequence with Next(), Previous(), Increment(), Decrement() &
+SetCurrent(). Very handy if you have multiple throbbers that you want
+to synchronize with a single timer.
+
+Fix for bug #1336711: wx.lib.calendar.CalenDlg can yield incorrect
+result.
+
+Applied patch from Morgan Hua for updates to ActiveGrid code
+(pydocview, ActiveGrid IDE, etc.)
+
+Applied patch #1326241: Supporting "setup.py install --install-headers=path"
+
+Applied patch from Morgan Hua to fix bug #1219423: CommandManager
+should not repeat old commands after a branch.
+
+Applied patch #1238825 adding search backward capabilities to the
+demo.  Modified to use the up/down options in the wx.FindReplaceDialog
+instead of a separate menu item.
+
+Fix for bug #1266745 and #1387725 in the wx.FindReplaceDialog on MSW.
+Actually check we are using MSLU before doing the hack designed to
+workaround a bug in MSLU!
+
+wxMSW: wx.lib.iewin.IEHtmlWindow now properly handles tabbing, return
+and other special keys properly.
+
+Lots of PyCrust enhancments started by Franz Steinaeusler, Adi Sieker,
+and Sebastian Haase, and which in turn were further enhanced, fixed
+tweaked and finished up by me.  The changes include the following:
+
+    * The Autocomplete and Calltip windows can now be opened manually
+      with Ctrl-Space and Ctrl-Shift-Space.
+
+    * In the stand alone PyCrust app the various option settings,
+      window size and position, and etc. are saved and restored at the
+      next run.
+
+    * Added a help dialog bound to the F1 key that shows the key
+      bindings.
+
+    * Added a new text completion function that suggests words from
+      the history.  Bound to Shift-Return.
+
+    * F11 will toggle the maximized state of the frame.
+
+    * switched to Bind() from wx.EVT_*().
+
+    * Display of line numbers can be toggled.
+
+    * F12 toggles a "free edit" mode of the shell buffer.  This mode
+      is useful, for example, if you would like to remove some output
+      or errors or etc. from the buffer before doing a copy/paste.
+      The free edit mode is designated by the use of a red,
+      non-flashing caret.
+
+    * Ctrl-Shift-F will fold/unfold (hide/show) the selected lines.
+
+    * General code cleanup and fixes.
+
+    * Use wx.StandardPaths to determine the location of the config
+      files.
+
+    * Use wx.SP_LIVE_UPDATE on crust and filling windows.
+
+    * Extended the saving of the config info and other new features to
+      the PyShell app too.  Additionally, other apps that embed a
+      PyCrust or a PyShell can pass their own wx.Config object and
+      have the Py code save/restore its settings to/from there.
+
+    * All of the classes with config info get an opportunity to
+      save/load their own settings instead of putting all the
+      save/load code in one place that then has to reach all over the
+      place to do anything.
+
+    * Enable editing of the startup python code, which will either be
+      the file pointed to by PYTHONSTARTUP or a file in the config dir
+      if PYTHONSTARTUP is not set in the environment.
+
+    * Added an option to skip the running of the startup code when
+      PyShell or PyCrust starts.
+
+    * PyCrust adds a pp(item) function to the shell's namespace that
+      pretty prints the item in the Display tab of the notebook.
+      Added code to raise that tab when pp() is called.
+
+    * Added an option for whether to insert text for function
+      parameters when popping up the call tip.
+
+    * Added Find and Find-Next functions that use the
+      wx.FindReplaceDialog.
+
+
+Applied patches from Will Sadkin for wx.lib.masked modules:
+
+    * Now ignores kill focus events when being destroyed.
+
+    * Added missing call to set insertion point on changing fields.
+
+    * Modified SetKeyHandler() to accept None as means of removing
+      one.
+
+    * Fixed keyhandler processing for group and decimal character
+      changes.
+
+    * Fixed a problem that prevented input into the integer digit of a
+      integerwidth=1 numctrl, if the current value was 0.
+
+    * Fixed logic involving processing of "_signOk" flag, to remove
+      default sign key handlers if false, so that
+      SetAllowNegative(False) in the NumCtrl works properly.
+
+    * Fixed selection logic for numeric controls so that if
+      selectOnFieldEntry is true, and the integer portion of an
+      integer format control is selected and the sign position is
+      selected, the sign keys will always result in a negative value,
+      rather than toggling the previous sign.
+
+wx.FontMapper.SetConfig is deprecated.  You should instead just set an
+application-wide config object with wx.Config.Set, which wx.FontMapper
+will use by default.
+
+Added wx.GetMouseState which returns the current state of the mouse.
+It returns an instance of a wx.MouseState object that contains the
+current position of the mouse pointer in screen coordinants, as well
+as boolean values indicating the up/down status of the mouse buttons
+and the modifier keys.
+
+Added wx.SizerItem.SetUserData
+
+A variety of updates to wx.lib.floatcanvas, including Added
+DrawObjects, including a ScaledTextBox, with auto-wrapping, etc, and
+Scaled and Unscaled Bitmap Objects.
+
+       WARNING: Changed all DrawObjects to take an (x,y) pair rather
+       than individual x,y parameters. Also changed rectangles and
+       ellipses to take (w,h) pair. This is an API change, but should
+       be easy to accommodate, all you need to do is add a parenthesis
+       pair:  (...x, y, ...) --->  (...(x,y), ...) 
+
+
+
+
+2.6.1.0
+-------
+* 4-June-2005
+
+wx.ListCtrl: patch #1210352, fixes editing in generic wx.ListCtrl with
+wx.LC_EDIT_LABELS.
+
+Applied patch #208286, MediaCtrl DirectShow rewrite.
+
+DocView patches from Morgan Hua: bug fixes, and additional SVN
+commands, also added a default template that uses the text editor for
+any unknown file type.
+
+wxMSW: Use the system IDC_HAND cursor for wx.CURSOR_HAND and only fallback
+to the strange wxWidgets version if the system one is not available.
+
+wx.grid.Grid: Merge the cell size attribute the same way that other
+attributes are merged, e.g., if it is already set to a non-default
+value in the current GridCellAttr object then don't merge from the
+other.
+
+wx.lib.evtmgr: Fixed to use wx._core._wxPyDeadObject
+
+wx.lib.gridmovers: Don't scroll when the mouse is dragged outside of
+the grid, unless the mouse is kept in motion.
+
+wxMSW:  Applied patch #1213290 incorrect logic in
+wx.TopLevelWindow.ShowFullScreen.
+
+Applied patch #1213066 correct device names for Joystick in Linux.
+
+wxGTK: Applied patch #1207162 wx.TextCtrl.SetStyle fix for overlapping
+calls.
+
+wx.FileConfig: fixed DeleteEntry to set the dirty flag properly so the
+change will get written at the next flush.
+
+
+
+
 
 2.6.0.1
 -------
+* 30-May-2005
 
 Added wx.BrushFromBitmap to create a stippled brush in a single step.
 Also added missing brysh style flags: wx.STIPPLE_MASK
-wx.STIPPLE_MASK_OPAQUE. 
+wx.STIPPLE_MASK_OPAQUE.
 
-wxMSW: Fix for controls when the system text fg colour is not black.
+wxMSW: Fix for default control colours when the system text fg colour
+is not black.
 
 wxGTK: Patch #1171754, It is now possible to have a menu item that
 both has an icon and is a submenu.
 
 wxMSW: Patch #1197009, better refreshes when windows are moved and
-resized. 
+resized.
 
 wxMSW: Patch #1197468.  Keeps track of pending size/position changes
 in case there is more than one adjustment for a window in a single
@@ -48,6 +421,111 @@ locking or unlocking in wxPyBeginBlockThreads and wxPyEndBlockThreads
 as these can be triggered after Python has been finalized in embedding
 situations.
 
+Added alternate constructors for wx.Font: wx.FontFromPixelSize,
+wx.FFont, wx.FFontFromPixelSize.  See the docstrings or new api docs
+for details.
+
+Added wx.lib.hyperlink from Andrea Gavana.  It is a control like
+static text that acts like a hyper-link, launching the system's
+default browser in response to the clicks.
+
+Added an optional parameter to wxversion.select that allows you to
+specify that the extra components specified in the version string are
+required.  For example, if you ask for "2.6-unicode" but only the ansi
+version is installed then by default the ansi version will be selected
+as it considered close enough since the version numbers match.  If you
+want to force the options to be required then you can just add a True
+parameter, like this::
+
+        import wxversion
+        wxversion.select("2.6-unicode", True)
+        import wx
+
+Tweaked wx.lib.buttons such that flat buttons (e.g. have no bevel and
+a wx.BORDER_NONE style flag) paint themed backgrounds if there are
+transparent areas and the parent is displaying a theme.
+
+wxMSW:  Fix for wrong sash colour of wx.SplitterWindow in the silver
+theme on XP.
+
+Added a wx.xrc.XmlResourceHandler for the Ticker class.  See
+wx/lib/ticker_xrc.py
+
+wxSTC: Fixed CmdKeyAssign key bindings for Ctrl-Backspace.
+
+wxMSW: Fixed a bug in wx.TextCtrl where all the lines were being used
+to calculate the best size, instead of using a reasonable limit.
+
+XRCed: Use wx.GetDefaultPyEncoding/wx.SetDefaultPyEncoding for
+changing active encoding.  Fixed pasting siblings (Ctrl key pressed
+while pasting).
+
+wx.lib.filebrowsebutton: Bug fix from Chad Netzer for when
+self.history is None.
+
+wx.ogl: Patch from Davide Salomoni that adds an optional point
+parameter to LineShape.InsertLineControlPoint allowing one to
+optionally specify where the new control point has to be drawn.
+
+wxMSW: setting foreground colour for wx.CheckBox now works when using
+XP themes.
+
+More updates to the docview library modules and sample apps from the
+ActiveGrid folks.  Their sample IDE is now able to integrate with
+Subversion.
+
+wx.grid.Grid:  Ensure that the grid gets the focus when it is
+left-clicked.  Note that if you have custom widgets that handle the
+EVT_LEFT_DOWN event but do not call event.Skip() then you will
+probably want to add a call to self.SetFocus in the event handler.
+
+wxGTK:  Add wxSTAY_ON_TOP support [Patch 1206023]
+
+wx.TreeCtrl:  wx.EVT_TREE_ITEM_MENU event made consistent on all
+platforms.  The location of the click or the item is included in the
+event as well.
+
+wxGTK: Setting background colour of a window now only affects the
+window itself, not the borders, scrollbars, etc.  (Bug #1204069)
+
+Print framework:  Add more paper sizes and code to fallback to an
+explicit paper size if a known paper size is not found for the
+printer.
+
+wxMac: Applied patch for bug #1206181 Option-key decodes are wrong,
+also applied patch for bug #1205691 Modified Fn keys don't work.
+
+wx.Image: Fixed to preserve alpha channel in Rotate90 method.
+
+wxMSW: Fixed incorrect background colour on wx.CheckListBox.
+
+wxMSW: Fixed drawing of owner drawn buttons with multiline labels
+
+Removed a bunch of unnecessary files, and removed or replaced images
+that we're not sure of their origin or license.
+
+The default DoGetBestSize is updated to not always return the current
+size if the window has no sizer, children, or minsize set.  Instead
+the current size is set as the minsize.  This solves the occasional
+problem where a sizer may cause a childless panel to grow but never
+shrink.
+
+wxMSW: When converting a wx.Icon to a bitmap check if the icon has an
+alpha channel and set the bitmap to use it.
+
+Fixed the wrong class name used in wx.PyScrolledWindow's call to
+_setCallbackInfo.
+
+wxMSW: patch #1207202, Fixes GDI leak when using stock cursors.
+
+wx.calendar.CalendarCtrl: Patch #1207531, Keeps the CalendarCtrl wide
+enough even when the weekday names for the locale are shorter than
+usual.
+
+Made GridCellNumberEditor.StartingKey also insert the typed char when
+there is a range of allowed values (so a wx.SpinCtrl is used instead
+of a wx.TextCtrl.)
+
 
 
 
@@ -103,7 +581,7 @@ EVT_KEY_UP and EVT_TEXT events from its embedded text control.
 wxMac: Corrected refresh bugs in wxGrid.
 
 XRCed: Updated to version 0.1.5.
-    * Added wxWizard, wxWizardPageSimple (only from pull-down menu). 
+    * Added wxWizard, wxWizardPageSimple (only from pull-down menu).
     * Hide command for test window.
     * Replacing classes works better.
     * Added Locate tool.
@@ -111,7 +589,7 @@ XRCed: Updated to version 0.1.5.
 
 
 
-2.5.5.1    
+2.5.5.1
 -------
 * 8-Apr-2005