Issue1601
Created on 2007-12-12 09:09 by mark, last changed 2008-01-06 22:29 by admin.
|
msg58486 - (view) |
Author: Mark Summerfield (mark) |
Date: 2007-12-12 09:09 |
|
(1) IDLE starts up on Windows OK, but if I press Alt+F the file menu
comes up giant sized (i.e., each menu entry is almost as tall as the
screen).
(2) If I open a file using Ctrl+O, the Open dialog pops up fine, but
when I select a file and click Open, IDLE crashes.
Oh, and (no version of) IDLE respects the cursor blink setting on Windows.
|
|
msg58512 - (view) |
Author: Christian Heimes (christian.heimes) |
Date: 2007-12-13 01:42 |
|
We are aware of several Windows related bugs with IDLE. I assume they
are related to our Tcl/Tk build.
|
|
msg58519 - (view) |
Author: Joseph Armbruster (JosephArmbruster) |
Date: 2007-12-13 02:32 |
|
Tiran, agreed. You can reproduce this issue quickly outside of IDLE
with this snippet:
from Tkinter import *
import tkMessageBox
class App(Frame):
def __init__(self, master):
Frame.__init__(self,master)
self.master.title("Wierd Menu")
self.configure(height=200,width=200)
self.grid(padx=15, pady=15,sticky=N+S+E+W)
self.menu = Menu(self)
self.master.config(menu=self.menu)
self.tkMenu = Menu(self.menu)
self.menu.add_cascade(label="MenuItem", menu=self.tkMenu)
self.tkMenu.add_command(label="Test", command=self.Test)
def Test(self):
tkMessageBox.showinfo("Test", "Test")
if __name__ == "__main__":
root = Tk()
app = App(root)
root.mainloop()
|
|
msg58715 - (view) |
Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) |
Date: 2007-12-18 01:34 |
|
I found that the huge font in menus is due to an error in the call to
SystemParametersInfo.
Digging more, vc2008 defines WINVER=0x0600, which corresponds to Windows
Vista, and is too high for Windows XP: this value activates the
definition of extra fields in the NONCLIENTMETRICS structure, and
SystemParametersInfo on Windows XP will not accept a sizeof() greater
than expected.
I recompiled tk, adding WINVER=0x500 to the command line:
nmake /f makefile.vc COMPILERFLAGS=-DWINVER=0x0500
And the menu is correctly displayed.
I suggest to add this to the build_tkinter script.
|
|
msg58717 - (view) |
Author: Christian Heimes (christian.heimes) |
Date: 2007-12-18 01:53 |
|
Amaury Forgeot d'Arc wrote:
> I found that the huge font in menus is due to an error in the call to
> SystemParametersInfo.
> Digging more, vc2008 defines WINVER=0x0600, which corresponds to Windows
> Vista, and is too high for Windows XP: this value activates the
> definition of extra fields in the NONCLIENTMETRICS structure, and
> SystemParametersInfo on Windows XP will not accept a sizeof() greater
> than expected.
Wow, you are a genius! :)
> I recompiled tk, adding WINVER=0x500 to the command line:
> nmake /f makefile.vc COMPILERFLAGS=-DWINVER=0x0500
> And the menu is correctly displayed.
> I suggest to add this to the build_tkinter script.
Is 0x0500 fine for Windows 2000? Should we add WINVER=0x0500 to the
Python project files, too?
Christian
|
|
msg58718 - (view) |
Author: Christian Heimes (christian.heimes) |
Date: 2007-12-18 02:03 |
|
Christian Heimes wrote:
> Is 0x0500 fine for Windows 2000? Should we add WINVER=0x0500 to the
> Python project files, too?
http://msdn2.microsoft.com/en-us/library/aa383745.aspx
Minimum system required Minimum value for _WIN32_WINNT and WINVER
Windows Server 2008 0x0600
Windows Vista 0x0600
Windows Server 2003 SP1, Windows XP SP2 0x0502
Windows Server 2003, Windows XP 0x0501
Windows 2000 0x0500
0x0500 is fine for Windows 2000.
Should we add something like this to PC/pyconfig.h to ensure that our
build uses only Win2k compatible features and that the user is using at
least 2k to compile Python?
#ifdef WINVER
# if WINVER < 0x0400
# error "Windows 2000 or newer is required"
# endif
# define WINVER 0x0500
# define _WIN32_WINNT 0x0500
#endif
Christian
|
|
msg58737 - (view) |
Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) |
Date: 2007-12-18 10:26 |
|
I don't think this check is necessary.
Some users may want to target specific windows versions, and compile
their own modules with a higher WINVER.
OTOH, python.org should compile with WINVER=0x0500, so that distributed
binaries can run on most win32 platforms.
|
|
msg59019 - (view) |
Author: Kurt B. Kaiser (kbk) |
Date: 2007-12-28 05:13 |
|
Assigning to tiran since I'm not building Python on XP.
Changing to Tkinter, also. Is the file open bug fixed
also by the suggested change?
|
|
| Date |
User |
Action |
Args |
| 2008-01-06 22:29:44 | admin | set | keywords:
- py3k versions:
Python 3.0 |
| 2008-01-05 21:36:08 | christian.heimes | set | status: open -> closed resolution: fixed |
| 2007-12-28 05:13:31 | kbk | set | assignee: kbk -> christian.heimes messages:
+ msg59019 components:
+ Tkinter, - IDLE |
| 2007-12-18 10:26:44 | amaury.forgeotdarc | set | status: pending -> open resolution: fixed -> (no value) messages:
+ msg58737 priority: high -> |
| 2007-12-18 09:30:48 | christian.heimes | set | status: open -> pending priority: high resolution: fixed |
| 2007-12-18 02:03:33 | christian.heimes | set | messages:
+ msg58718 |
| 2007-12-18 01:53:37 | christian.heimes | set | messages:
+ msg58717 |
| 2007-12-18 01:34:57 | amaury.forgeotdarc | set | nosy:
+ amaury.forgeotdarc messages:
+ msg58715 |
| 2007-12-13 02:32:53 | JosephArmbruster | set | nosy:
+ JosephArmbruster messages:
+ msg58519 |
| 2007-12-13 01:42:41 | christian.heimes | set | nosy:
+ christian.heimes messages:
+ msg58512 |
| 2007-12-12 16:51:51 | kbk | set | keywords:
+ py3k |
| 2007-12-12 15:11:28 | gvanrossum | set | assignee: kbk nosy:
+ kbk |
| 2007-12-12 09:09:59 | mark | create | |
|