Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
d038ca83
Commit
d038ca83
authored
Oct 23, 2000
by
Fred Drake
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make reindent.py happy (convert everything to 4-space indents!).
parent
16f6329e
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
246 additions
and
249 deletions
+246
-249
Lib/lib-tk/Canvas.py
Lib/lib-tk/Canvas.py
+158
-158
Lib/lib-tk/Dialog.py
Lib/lib-tk/Dialog.py
+34
-34
Lib/lib-tk/ScrolledText.py
Lib/lib-tk/ScrolledText.py
+22
-22
Lib/lib-tk/Tkdnd.py
Lib/lib-tk/Tkdnd.py
+15
-15
Lib/lib-tk/Tkinter.py
Lib/lib-tk/Tkinter.py
+0
-1
Lib/lib-tk/tkCommonDialog.py
Lib/lib-tk/tkCommonDialog.py
+0
-1
Lib/lib-tk/tkFont.py
Lib/lib-tk/tkFont.py
+9
-9
Lib/lib-tk/tkSimpleDialog.py
Lib/lib-tk/tkSimpleDialog.py
+6
-7
Lib/lib-tk/turtle.py
Lib/lib-tk/turtle.py
+2
-2
No files found.
Lib/lib-tk/Canvas.py
View file @
d038ca83
This diff is collapsed.
Click to expand it.
Lib/lib-tk/Dialog.py
View file @
d038ca83
...
...
@@ -4,46 +4,46 @@ from Tkinter import *
from
Tkinter
import
_cnfmerge
if
TkVersion
<=
3.6
:
DIALOG_ICON
=
'warning'
DIALOG_ICON
=
'warning'
else
:
DIALOG_ICON
=
'questhead'
DIALOG_ICON
=
'questhead'
class
Dialog
(
Widget
):
def
__init__
(
self
,
master
=
None
,
cnf
=
{},
**
kw
):
cnf
=
_cnfmerge
((
cnf
,
kw
))
self
.
widgetName
=
'__dialog__'
Widget
.
_setup
(
self
,
master
,
cnf
)
self
.
num
=
self
.
tk
.
getint
(
apply
(
self
.
tk
.
call
,
(
'tk_dialog'
,
self
.
_w
,
cnf
[
'title'
],
cnf
[
'text'
],
cnf
[
'bitmap'
],
cnf
[
'default'
])
+
cnf
[
'strings'
]))
try
:
Widget
.
destroy
(
self
)
except
TclError
:
pass
def
destroy
(
self
):
pass
def
__init__
(
self
,
master
=
None
,
cnf
=
{},
**
kw
):
cnf
=
_cnfmerge
((
cnf
,
kw
))
self
.
widgetName
=
'__dialog__'
Widget
.
_setup
(
self
,
master
,
cnf
)
self
.
num
=
self
.
tk
.
getint
(
apply
(
self
.
tk
.
call
,
(
'tk_dialog'
,
self
.
_w
,
cnf
[
'title'
],
cnf
[
'text'
],
cnf
[
'bitmap'
],
cnf
[
'default'
])
+
cnf
[
'strings'
]))
try
:
Widget
.
destroy
(
self
)
except
TclError
:
pass
def
destroy
(
self
):
pass
def
_test
():
d
=
Dialog
(
None
,
{
'title'
:
'File Modified'
,
'text'
:
'File "Python.h" has been modified'
' since the last time it was saved.'
' Do you want to save it before'
' exiting the application.'
,
'bitmap'
:
DIALOG_ICON
,
'default'
:
0
,
'strings'
:
(
'Save File'
,
'Discard Changes'
,
'Return to Editor'
)})
print
d
.
num
d
=
Dialog
(
None
,
{
'title'
:
'File Modified'
,
'text'
:
'File "Python.h" has been modified'
' since the last time it was saved.'
' Do you want to save it before'
' exiting the application.'
,
'bitmap'
:
DIALOG_ICON
,
'default'
:
0
,
'strings'
:
(
'Save File'
,
'Discard Changes'
,
'Return to Editor'
)})
print
d
.
num
if
__name__
==
'__main__'
:
t
=
Button
(
None
,
{
'text'
:
'Test'
,
'command'
:
_test
,
Pack
:
{}})
q
=
Button
(
None
,
{
'text'
:
'Quit'
,
'command'
:
t
.
quit
,
Pack
:
{}})
t
.
mainloop
()
t
=
Button
(
None
,
{
'text'
:
'Test'
,
'command'
:
_test
,
Pack
:
{}})
q
=
Button
(
None
,
{
'text'
:
'Quit'
,
'command'
:
t
.
quit
,
Pack
:
{}})
t
.
mainloop
()
Lib/lib-tk/ScrolledText.py
View file @
d038ca83
...
...
@@ -14,26 +14,26 @@ from Tkinter import *
from
Tkinter
import
_cnfmerge
class
ScrolledText
(
Text
):
def
__init__
(
self
,
master
=
None
,
cnf
=
None
,
**
kw
):
if
cnf
is
None
:
cnf
=
{}
if
kw
:
cnf
=
_cnfmerge
((
cnf
,
kw
))
fcnf
=
{}
for
k
in
cnf
.
keys
():
if
type
(
k
)
==
ClassType
or
k
==
'name'
:
fcnf
[
k
]
=
cnf
[
k
]
del
cnf
[
k
]
self
.
frame
=
apply
(
Frame
,
(
master
,),
fcnf
)
self
.
vbar
=
Scrollbar
(
self
.
frame
,
name
=
'vbar'
)
self
.
vbar
.
pack
(
side
=
RIGHT
,
fill
=
Y
)
cnf
[
'name'
]
=
'text'
apply
(
Text
.
__init__
,
(
self
,
self
.
frame
),
cnf
)
self
.
pack
(
side
=
LEFT
,
fill
=
BOTH
,
expand
=
1
)
self
[
'yscrollcommand'
]
=
self
.
vbar
.
set
self
.
vbar
[
'command'
]
=
self
.
yview
def
__init__
(
self
,
master
=
None
,
cnf
=
None
,
**
kw
):
if
cnf
is
None
:
cnf
=
{}
if
kw
:
cnf
=
_cnfmerge
((
cnf
,
kw
))
fcnf
=
{}
for
k
in
cnf
.
keys
():
if
type
(
k
)
==
ClassType
or
k
==
'name'
:
fcnf
[
k
]
=
cnf
[
k
]
del
cnf
[
k
]
self
.
frame
=
apply
(
Frame
,
(
master
,),
fcnf
)
self
.
vbar
=
Scrollbar
(
self
.
frame
,
name
=
'vbar'
)
self
.
vbar
.
pack
(
side
=
RIGHT
,
fill
=
Y
)
cnf
[
'name'
]
=
'text'
apply
(
Text
.
__init__
,
(
self
,
self
.
frame
),
cnf
)
self
.
pack
(
side
=
LEFT
,
fill
=
BOTH
,
expand
=
1
)
self
[
'yscrollcommand'
]
=
self
.
vbar
.
set
self
.
vbar
[
'command'
]
=
self
.
yview
# Copy Pack methods of self.frame -- hack!
for
m
in
Pack
.
__dict__
.
keys
():
if
m
[
0
]
!=
'_'
and
m
!=
'config'
and
m
!=
'configure'
:
setattr
(
self
,
m
,
getattr
(
self
.
frame
,
m
))
# Copy Pack methods of self.frame -- hack!
for
m
in
Pack
.
__dict__
.
keys
():
if
m
[
0
]
!=
'_'
and
m
!=
'config'
and
m
!=
'configure'
:
setattr
(
self
,
m
,
getattr
(
self
.
frame
,
m
))
Lib/lib-tk/Tkdnd.py
View file @
d038ca83
"""Drag-and-drop support for Tkinter.
"""Drag-and-drop support for Tkinter.
This is very preliminary. I currently only support dnd *within* one
application, between different windows (or within the same window).
I an trying to make this as generic as possible -- not dependent on
the use of a particular widget or icon type, etc. I also hope that
this will work with Pmw.
To enable an object to be dragged, you must create an event binding
for it that starts the drag-and-drop process. Typically, you should
bind <ButtonPress> to a callback function that you write. The function
...
...
@@ -20,11 +20,11 @@ When a drag-and-drop is already in process for the Tk interpreter, the
call is *ignored*; this normally averts starting multiple simultaneous
dnd processes, e.g. because different button callbacks all
dnd_start().
The object is *not* necessarily a widget -- it can be any
application-specific object that is meaningful to potential
drag-and-drop targets.
Potential drag-and-drop targets are discovered as follows. Whenever
the mouse moves, and at the start and end of a drag-and-drop move, the
Tk widget directly under the mouse is inspected. This is the target
...
...
@@ -43,34 +43,34 @@ target widget, and the search for a target object is repeated from
there. If necessary, the search is repeated all the way up to the
root widget. If none of the target widgets can produce a target
object, there is no target object (the target object is None).
The target object thus produced, if any, is called the new target
object. It is compared with the old target object (or None, if there
was no old target widget). There are several cases ('source' is the
source object, and 'event' is the most recent event object):
- Both the old and new target objects are None. Nothing happens.
- The old and new target objects are the same object. Its method
dnd_motion(source, event) is called.
- The old target object was None, and the new target object is not
None. The new target object's method dnd_enter(source, event) is
called.
- The new target object is None, and the old target object is not
None. The old target object's method dnd_leave(source, event) is
called.
- The old and new target objects differ and neither is None. The old
target object's method dnd_leave(source, event), and then the new
target object's method dnd_enter(source, event) is called.
Once this is done, the new target object replaces the old one, and the
Tk mainloop proceeds. The return value of the methods mentioned above
is ignored; if they raise an exception, the normal exception handling
mechanisms take over.
The drag-and-drop processes can end in two ways: a final target object
is selected, or no final target object is selected. When a final
target object is selected, it will always have been notified of the
...
...
@@ -79,7 +79,7 @@ above, and possibly one or more calls to its dnd_motion() method; its
dnd_leave() method has not been called since the last call to
dnd_enter(). The target is notified of the drop by a call to its
method dnd_commit(source, event).
If no final target object is selected, and there was an old target
object, its dnd_leave(source, event) method is called to complete the
dnd sequence.
...
...
Lib/lib-tk/Tkinter.py
View file @
d038ca83
...
...
@@ -3086,4 +3086,3 @@ def _test():
if
__name__
==
'__main__'
:
_test
()
Lib/lib-tk/tkCommonDialog.py
View file @
d038ca83
...
...
@@ -63,4 +63,3 @@ class Dialog:
pass
return
s
Lib/lib-tk/tkFont.py
View file @
d038ca83
...
...
@@ -8,7 +8,7 @@
#
# FIXME: should add 'displayof' option where relevant (actual, families,
# measure, and metrics)
#
#
# Copyright (c) Secret Labs AB 1998.
#
# info@pythonware.com
...
...
@@ -52,10 +52,10 @@ class Font:
return
tuple
(
options
)
def
_get
(
self
,
args
):
options
=
[]
for
k
in
args
:
options
.
append
(
"-"
+
k
)
return
tuple
(
options
)
options
=
[]
for
k
in
args
:
options
.
append
(
"-"
+
k
)
return
tuple
(
options
)
def
_mkdict
(
self
,
args
):
options
=
{}
...
...
@@ -117,7 +117,7 @@ class Font:
)
configure
=
config
def
measure
(
self
,
text
):
"Return text width"
return
string
.
atoi
(
self
.
_call
(
"font"
,
"measure"
,
self
.
name
,
text
))
...
...
@@ -143,7 +143,7 @@ def families(root=None):
"Get font families (as a tuple)"
if
not
root
:
root
=
Tkinter
.
_default_root
return
root
.
tk
.
splitlist
(
root
.
tk
.
call
(
"font"
,
"families"
))
return
root
.
tk
.
splitlist
(
root
.
tk
.
call
(
"font"
,
"families"
))
def
names
(
root
=
None
):
"Get names of defined fonts (as a tuple)"
...
...
@@ -153,7 +153,7 @@ def names(root=None):
# --------------------------------------------------------------------
# test stuff
if
__name__
==
"__main__"
:
root
=
Tkinter
.
Tk
()
...
...
@@ -186,7 +186,7 @@ if __name__ == "__main__":
fb
=
Font
(
font
=
w
[
"font"
]).
copy
()
fb
.
config
(
weight
=
BOLD
)
w
.
config
(
font
=
fb
)
Tkinter
.
mainloop
()
Lib/lib-tk/tkSimpleDialog.py
View file @
d038ca83
...
...
@@ -86,18 +86,18 @@ class Dialog(Toplevel):
def
body
(
self
,
master
):
'''create dialog body.
return widget that should have initial focus.
return widget that should have initial focus.
This method should be overridden, and is called
by the __init__ method.
'''
pass
def
buttonbox
(
self
):
'''add standard button box.
'''add standard button box.
override if you don't want the standard buttons
'''
box
=
Frame
(
self
)
w
=
Button
(
box
,
text
=
"OK"
,
width
=
10
,
command
=
self
.
ok
,
default
=
ACTIVE
)
...
...
@@ -138,7 +138,7 @@ class Dialog(Toplevel):
def
validate
(
self
):
'''validate the data
This method is called automatically to validate the data before the
This method is called automatically to validate the data before the
dialog is destroyed. By default, it always validates OK.
'''
...
...
@@ -227,7 +227,7 @@ class _QueryDialog(Dialog):
parent
=
self
)
return
0
self
.
result
=
result
return
1
...
...
@@ -289,7 +289,7 @@ def askstring(title, prompt, **kw):
d
=
apply
(
_QueryString
,
(
title
,
prompt
),
kw
)
return
d
.
result
if
__name__
==
"__main__"
:
if
__name__
==
"__main__"
:
root
=
Tk
()
root
.
update
()
...
...
@@ -297,4 +297,3 @@ if __name__ == "__main__":
print
askinteger
(
"Spam"
,
"Egg count"
,
initialvalue
=
12
*
12
)
print
askfloat
(
"Spam"
,
"Egg weight
\
n
(in tons)"
,
minvalue
=
1
,
maxvalue
=
100
)
print
askstring
(
"Spam"
,
"Egg label"
)
Lib/lib-tk/turtle.py
View file @
d038ca83
...
...
@@ -108,7 +108,7 @@ class RawPen:
def
write
(
self
,
arg
,
move
=
0
):
x
,
y
=
start
=
self
.
_position
x
=
x
-
1
# correction -- calibrated for Windows
item
=
self
.
_canvas
.
create_text
(
x
,
y
,
item
=
self
.
_canvas
.
create_text
(
x
,
y
,
text
=
str
(
arg
),
anchor
=
"sw"
,
fill
=
self
.
_color
)
self
.
_items
.
append
(
item
)
...
...
@@ -258,7 +258,7 @@ class Pen(RawPen):
_root
=
None
_canvas
=
None
root
.
destroy
()
def
_getpen
():
global
_pen
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment