1
- from tkinter import Tk , Label , Entry , Button , StringVar , W , E , filedialog , messagebox
1
+ from tkinter import Tk , Label , Entry , Button , StringVar , W , E , filedialog , messagebox , ttk
2
2
import imageManipulation
3
3
from PIL import Image
4
4
import imghdr
@@ -13,6 +13,7 @@ def __init__(self, master):
13
13
self .filename = "..."
14
14
self .xOrig = "X"
15
15
self .yOrig = "Y"
16
+ self .filter = "Nearest Neighbour"
16
17
17
18
self .filename_label_text = StringVar ()
18
19
self .filename_label_text .set (self .filename )
@@ -38,6 +39,11 @@ def __init__(self, master):
38
39
self .contentY = StringVar ()
39
40
self .entryY = Entry (master , text = "Height: " , validate = 'key' , validatecommand = vc , textvariable = self .contentY )
40
41
42
+ self .combobox_value = StringVar ()
43
+ self .combobox = ttk .Combobox (master , textvariable = self .combobox_value )
44
+ self .combobox ['values' ] = ('Nearest Neighbour' , 'Bilinear' , 'Bicubic' , 'Anti-Alias' )
45
+ self .combobox .current (0 )
46
+
41
47
self .browse_button = Button (master , text = "Browse..." , command = lambda : self .update ("browse" ))
42
48
self .generate_button = Button (master , text = "Generate" , command = lambda : self .update ("generate" ))
43
49
self .reset_button = Button (master , text = "Reset" , command = lambda : self .update ("reset" ))
@@ -54,8 +60,9 @@ def __init__(self, master):
54
60
self .label_y_orig .grid (row = 3 , column = 1 , sticky = W + E )
55
61
self .entryX .grid (row = 2 , column = 4 , sticky = W + E )
56
62
self .entryY .grid (row = 3 , column = 4 , sticky = W + E )
57
- self .generate_button .grid (row = 4 , column = 0 , columnspan = 4 , sticky = W + E )
58
- self .reset_button .grid (row = 4 , column = 4 , sticky = W + E )
63
+ self .combobox .grid (row = 4 , column = 0 , columnspan = 5 , sticky = W + E )
64
+ self .generate_button .grid (row = 5 , column = 0 , columnspan = 4 , sticky = W + E )
65
+ self .reset_button .grid (row = 5 , column = 4 , sticky = W + E )
59
66
60
67
self .im = Image
61
68
@@ -89,7 +96,8 @@ def update(self, method):
89
96
root .withdraw ()
90
97
elif method == "generate" :
91
98
if not (self .contentX .get () == "" ) or (self .contentY .get () == "" ):
92
- imageManipulation .resizeImage (self .im , int (self .contentX .get ()), int (self .contentY .get ()))
99
+ self .filter = self .combobox .get ()
100
+ imageManipulation .resizeImage (self .im , self .filter , int (self .contentX .get ()), int (self .contentY .get ()))
93
101
else : # reset
94
102
self .clear ()
95
103
@@ -102,6 +110,7 @@ def clear(self):
102
110
self .label_y_orig_text .set (self .yOrig )
103
111
self .contentX .set ("" )
104
112
self .contentY .set ("" )
113
+ self .combobox .current (0 )
105
114
106
115
def validate (self , action , index , value_if_allowed ,
107
116
prior_value , text , validation_type , trigger_type , widget_name ):
0 commit comments