@@ -49,18 +49,26 @@ class PathControl(VanillaBaseControl):
49
49
+-----------+
50
50
| "mini" |
51
51
+-----------+
52
+
53
+ **isEditable* (optional) A boolean representing of the control is editable or not.
54
+
55
+ **fileTypes** (optional) A list of file supported file extensions.
52
56
"""
53
57
54
58
nsPathControlClass = NSPathControl
55
59
56
- def __init__ (self , posSize , url , callback = None , pathStyle = "standard" , sizeStyle = "regular" ):
60
+ def __init__ (self , posSize , url , callback = None , pathStyle = "standard" , sizeStyle = "regular" , fileTypes = None , isEditable = None ):
57
61
self ._setupView (self .nsPathControlClass , posSize , callback = callback )
58
62
self ._nsObject .setPathStyle_ (_pathStylesMap [pathStyle ])
59
63
self ._setSizeStyle (sizeStyle )
60
64
self ._nsObject .setBackgroundColor_ (NSColor .clearColor ())
61
65
self ._nsObject .setFocusRingType_ (NSFocusRingTypeNone )
62
66
self ._nsObject .cell ().setBordered_ (True )
63
67
self ._nsObject .cell ().setBezelStyle_ (NSRoundedBezelStyle )
68
+ if isEditable is not None :
69
+ self .setEditable (isEditable )
70
+ if fileTypes is not None :
71
+ self ._nsObject .setAllowedTypes_ (fileTypes )
64
72
self .set (url )
65
73
66
74
def set (self , url ):
@@ -82,3 +90,6 @@ def getSelected(self):
82
90
if cell == self ._nsObject .clickedPathComponentCell ():
83
91
break
84
92
return os .sep .join (path )
93
+
94
+ def setEditable (self , value ):
95
+ self ._nsObject .setEditable_ (value )
0 commit comments