Cara Membuat Context Menu dengan Strokesplus

Cara Membuat Context Menu dengan Strokesplus


Selain berguna untuk mengaktifkan shortcut atau menjalankan aplikasi, Strokesplus juga menyediakan fitur untuk membuat context menu. Context menu adalah menu yang biasanya muncul ketika Anda mengklik-kanan tombol mouse Anda, contohnya context menu Windows Explorer ini:
Context Menu 

Nah, dengan menggunakan Strokesplus Anda juga bisa membuat sendiri context menu yang bisa Anda isi dengan berbagai macam menu. Tiap menu bisa Anda manfaatkan untuk berbagai hal seperti mengaktifkan shortcut, menjalankan aplikasi, memanipulasi text dan berbagai fungsi lainnya sesuai keinginan Anda.

Jumlah context menu tidak dibatasi. Anda bisa membuat satu context menu untuk tiap gesture.

Dalam tutorial ini Ranahvirtual akan membuat context menu seperti yang tampak pada gambar dibawah:
Contoh Contect Menu
Fungsi tiap menu dalam context menu di atas:

1. Google: Cari kata yang sedang dipilih (diblok) di Google
2. Google Image: Cari kata yang sedang dipilih (diblok) di Google Image
3. Google Translate: Cari kata yang sedang dipilih (diblok) di Google Translate

4.Youtube: Cari kata yang sedang dipilih (diblok) di Youtube
5. UrbanDictionary: Cari kata yang sedang dipilih (diblok) di Urbandictionary
6. Wikipedia: Cari kata yang sedang dipilih (diblok) di Wikipedia
7. Google in Kaskus: Cari kata yang sedang dipilih (diblok) di Kaskus

8. Twitter: Buka nama pengguna Twitter di tab baru

9. New Tab: Shortcut untuk membuka tab baru di Chrome/Comodo
10. Close Tab: Shortcut untuk menutup tab yang sedang aktif

11. Open Incognito Window: Shortcut untuk membuka jendela Incognito
12. Reopen Closed Tab: Shortcut untuk membuka tab yang terakhir ditutup
13. Close Menu: Menu untuk menutup contect menu ini.

Langkah-langkah untuk membuat context menu seperti di atas adalah sebagai berikut:

1. Klik tombol Add Action, lalu berikan nama, misal: Popupmenu
2. Tambah kan gesture, misal seperti gesture di bawah ini :
Contoh Gesture
3. Pada bagian Lua Script masukan kode berikut:

local swnd = acFindWindow("STROKESPLUS",nil)
acSendKeys("{DELAY=30}^c")
local str = acGetClipboardText()
local sl = string.len(str)
local nama = acGetExecutableName(nil,gsx,gsy)

if sl > 18 then

ss = string.sub (str, 1, 18)
ss = ss ..".."
else
ss = str
end

local foregroundWindow = acGetForegroundWindow()

acActivateWindow(swnd)
acDelay(100)
acPostMessage(swnd, 0x0000, 0, 0) 
acDelay(100)

if nama == "chrome.exe" then

acCreatePopupMenu(gex, gey, "Google: \t"..ss..",Google Image: \t"..ss..",Google Translate: \t"..ss..",-,Youtube: \t"..ss..",UrbanDictionary: \t"..ss..",Wikipedia: \t"..ss..",Google in Kaskus: \t"..ss..",-,Twitter: \t@"..ss..",-,New Tab,Close Tab,-,Open Incognito Window,-,Reopen Closed Tab,-,Close Menu", ",", "popupMenuBrowser")
end

function popupMenuBrowser(id)
acActivateWindow(foregroundWindow) --Reset focus back to the original foreground app
foregroundWindow = 0
if id == 1 then
local s = 'http://www.google.com/search?q='..str
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 2 then
local s = 'http://www.google.com/images?q='..str
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 3 then
local s = 'http://translate.google.com/#auto/id/'..str
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 4 then
local s = 'http://www.youtube.com/results?search_query='..str
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 5 then
local s = 'http://www.urbandictionary.com/define.php?term='..str
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 6 then
local s = 'http://en.wikipedia.org/wiki/Special:Search?search='..str..'&go=Go'
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 7 then
local s = 'http://www.google.com/search?q='..str..' site:kaskus.co.id'
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 8 then
local s = 'https://twitter.com/'..str
acShellExecute("open","rundll32.exe", 
  "url.dll,FileProtocolHandler "..s, nil, 1)
elseif id == 9 then
acSendKeys("^t")
elseif id == 10 then
acSendKeys("^w")
elseif id == 11 then
acSendKeys("^+n")
elseif id == 12 then
acSendKeys("^+t")
else
--Close menu
end
end

4. Klik tombol Apply

Sedikit penjelasan dari kode di atas:

- Menu-menu yang ada dalam context menu berada dalam kode berwarna merah. Anda dapat menambahkan menu pada bagian ini. Pisahkan tiap menu dengan tanda koma (',').

- Tanda minus ('-') berguna sebagai garis pemisah harizontal.

- Fungsi tiap menu ada dalam kode berwarna hijau. Nomor pada bagian id (misal: id=1) adalah nomor urut dari menu-menu.

Setelah semua langkah di atas selesai dikerjakan, sekarang buka peramban Chrome. Untuk memunculkan context menu buatlah gesture di atas Chrome sesuai dengan gesture di langkah no 2. Berikut screenshot context menu yang baru saja dibuat:
Contect Menu
Hasil Context Menu 

Baca juga:

No comments:

Post a Comment