pywinauto/doc_src/HISTORY.TXT

180 lines
7.5 KiB
Plaintext
Raw Normal View History

2006-02-17 23:38:24 +01:00
0.2.1 Small Release number - big changes
2006-02-09 23:18:51 +01:00
------------------------------------------------
2006-02-17 23:38:24 +01:00
17-Feb-2006
2006-02-09 23:18:51 +01:00
2006-02-17 23:38:24 +01:00
* Quick release to get many changes out there - but this release has
been less tested then I would like for a .3 release.
* Allow access to non text controls using the closest Text control.
This closest text control will normally be the static/label associated
with the control. For example in Notepad, Format->Font dialog, the 1st
combobox can be refered to as "FontComboBox" rather than "ComboBox1"
* Added a new control wrapper - ``PopupMenuWrapper`` for context menu's
You can now work easily with context menu's
e.g. ::
app.Notepad.Edit.RightClick()
# need to use MenuClick rather then MenuSelect
app.PopupMenu.MenuClick("Select All")
app.Notepad.Edit.RightClick()
app.PopupMenu.MenuClick("Copy")
I could think of merging the ``RightClick()`` and ``MenuSelect()`` into one method
``ContextMenuSelect()`` if that makes sense to most people.
* Added Support for Up-Down controls
* Not all top level windows now have a FriendlyClassName of "Dialog".
2006-02-09 23:18:51 +01:00
I changed this because it made it hard to get windows of a particular
class. For example the main Notepad window has a class name of "Notepad".
This was primarily implemented due to work I did getting the System Tray.
2006-02-17 23:38:24 +01:00
* Renamed ``StatusBarWrapper.PartWidths()`` to ``PartRightEdges()`` as this
is more correct for what it returns.
* Changed HwndWrapper.Text() and SetText() to WindowText() and
SetWindowText() respectively to try and make it clearer that it is
the text returned by GetWindowText and not the text that is visible
on the control. This change also suggested that EditWrapper.SetText()
be changed to SetEditText() (though this is not a hard requirement
EditWrapper.SetText() still exists - but may be deprecated.
2006-02-17 23:38:24 +01:00
* Added ClickInput, DoubleClickInput, RightClickInput, PressMouseInput
ReleaseMouseInput to HwndWrapper - these use SendInput rather then
WM_LBUTTONDOWN, WM_RBUTTONUP, etc used by Click, DoubleClick etc.
2006-02-17 23:38:24 +01:00
I also added a MenuClick method that allows you to click on menu
items. This means you can now 'physically' drop menus down.
* Some further working with tooltips that need to be cleaned up.
* Fixed a bug where coordinates passed to any of the Click operations had
the X and Y coordinates swapped.
* Added new MenuItem and Menu classes that are to the most part hidden
but you can get a menu item by doing ::
app.Notepad.MenuItem("View")
app.Notepad.MenuItem("View->Status Bar")
MenuItems have various actions so for example you can use
``MenuItem.IsChecked()`` to check if the menu item is checked.
Among other methods there are ``Click()`` and ``Enabled()``.
* Modified the 'best match' algorithm for finding controls.
It now searches a couple of times, and tries to find the best
fit for the text passed to it. The idea here is to make it more
"Select what I want - not that other thing that looks a bit like
what I want!". It is possible this change could mean you need to
use new identifiers in scripts - but in general very little modification
should be necessary.
There was also a change to the algorithm that looked for the closest
text control. It missed some obvious controls in the previous
implementation. It also had a bug for controls above the control
rather than to the left.
* Added a new example scripts SaveFromInternetExplorer.py and
SaveFromFirefox.py which show automating downloading of a page
from either of these browsers.
* Added yet more unit tests, there are now a total of 134 tests.
2006-02-09 23:18:51 +01:00
2006-01-31 20:14:06 +01:00
0.2.0 Significant refactoring
------------------------------------------------
06-Feb-2006
2006-01-31 20:14:06 +01:00
* Changed how windows are searched for (from application)
This chage should not be a significant change for users
* Started adding unit tests (and the have already uncovered bugs
that been fixed). They also point to areas of missing functionality
that will be addded with future updates
* Changed from property access to Control attributes to function access
If your code was accessing properties of controls then this might be a
significant change! The main reasons for doing this were due to the
2006-02-07 15:13:39 +01:00
inheritability of properties (or lack there-of!) and the additional
scafolding that was required to define them all.
2006-01-31 20:14:06 +01:00
2006-02-07 15:13:39 +01:00
* Updated the ``DialogWrapper.MenuSelect()`` method to notify the parent
that it needs to initialize the menu's before it retrieves the items
2006-01-31 20:14:06 +01:00
2006-02-07 15:13:39 +01:00
* Added functionality to associate 'non-text' controls with the 'text'
control closest to them. This allows controls to be referenced by::
2006-01-31 20:14:06 +01:00
app.dlg.<Nearby_text><Window_class>
2006-01-31 20:14:06 +01:00
2006-02-07 15:13:39 +01:00
e.g. to reference the "Footer" edit control in the Page Setup dialog
you could use::
2006-01-31 20:14:06 +01:00
app.PageSetup.FooterEdit
* Added a MoveWindow method to HwndWrapper
* Did some more cleanup (fixing pylint warnings) but still not finished
* Added some better support for .NET controls (not to be considered final)
2006-01-31 20:14:06 +01:00
2006-01-21 00:16:29 +01:00
0.1.3 Many changes, few visible
2006-01-21 00:15:26 +01:00
------------------------------------------------
2006-01-21 00:31:17 +01:00
15-Jan-2006
2006-01-21 00:15:26 +01:00
* Wrote doc strings for all modules, classes and functions
2006-01-21 00:16:29 +01:00
* Ran pychecker and pylint and fixed some errors/warning
2006-01-21 00:31:17 +01:00
* changed ::
_connect, _start, _window, _control, _write
respectively to ::
connect_, start_, window_, connect_, write_
If you forget to change ``_window``, ``_connect`` and ``_start`` then you will probably get the following error. ::
2006-01-21 00:15:26 +01:00
TypeError: '_DynamicAttributes' object is not callable
* pywinauto is now a package name - you need to import it or its modules
* Changes to the code to deal with pywinauto package name
* Fixed searching for windows if a Parent is passed in
* Added Index to retrieved MenuItem dictionary
* Added a check to ensure that a windows Handle is a valid window
* Refactored some of the methods in common_controls
* Refactored how FriendlyClassName is discovered (and still not really happy!
2006-01-21 00:03:31 +01:00
2006-01-15 21:37:52 +01:00
0.1.2 Add Readme and rollup various changes
2006-01-21 00:15:26 +01:00
------------------------------------------------
2006-01-21 00:31:17 +01:00
15-Jan-2006
2006-01-21 00:15:26 +01:00
* Updated Readme (original readme was incorrect)
* Added clipboard module
* Fixed DrawOutline part of tests.__init__.print_bugs
* Added a NotifyParent to HwndWrapper
* Make sure that HwndWrapper.ref is initialized to None
* Refactored some methods of ComboBox and ListBox
* Updated Combo/ListBox selection methods
* Removed hardcoded paths from test_application.py
* Added section to save the document as UTF-8 in MinimalNotepadTest
* Fixed EscapeSpecials and UnEscapeSpecials in XMLHelpers
* Made sure that overly large bitmaps do not break XML writing
2006-01-15 21:37:52 +01:00
0.1.1 Minor bug fix release
2006-01-21 00:15:26 +01:00
------------------------------------------------
2006-01-15 21:37:52 +01:00
12-Jan-2006
2006-01-21 00:15:26 +01:00
* Fixed some minor bugs discovered after release
2006-01-15 21:37:52 +01:00
0.1.0 Initial Release
2006-01-21 00:15:26 +01:00
------------------------------------------------
2006-01-15 21:37:52 +01:00
6-Jan-2006