-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdialogs.lua
52 lines (35 loc) · 1.27 KB
/
dialogs.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
--[[
-- GENERATE QUERIES USING XDIALOG, ZENITY, QARMA, etc ***************************************************
]]--
function DialogApp(basename)
if basename=="xdialog"
then
settings.query=basename.." --inputbox '$title'"
elseif basename=="zenity"
then
settings.query=basename.." --entry --title '$title'"
settings.fileselect=basename.." --file-selection --multiple --title '$title'"
elseif basename=="qarma"
then
settings.query=basename.." --entry --title '$title'"
settings.fileselect=basename.." --file-selection --multiple --title '$title' --file-filter '$filter'"
else io.stderr:write("ERROR: Dialog system '"..basename.."' unknown.")
end
end
function QueryGenerate(app)
local str
local title=""
if strutil.strlen(app.query_title) > 0 then title=app.query_title end
str=string.gsub(settings.query, "%$title", title)
return "/bin/sh -c \"".. app.invoke .. " `" .. str .. "`\""
end
function FileSelectGenerate(app)
local str
local title=""
local filter="*"
if strutil.strlen(app.query_title) > 0 then title=app.query_title end
str=string.gsub(settings.fileselect, "%$title", title)
if strutil.strlen(app.query_filter) > 0 then filter=app.query_filter end
str=string.gsub(str, "%$filter", filter)
return "/bin/sh -c \"".. app.invoke .. " `" .. str .. "`\""
end