├── plugins
├── PydiryPy
│ ├── PyDiry
│ │ └── __init__.py
│ └── pydiry.ico
├── weby
│ ├── weby.ico
│ ├── weby.png
│ ├── weby_full.ico
│ ├── IconCache.h
│ ├── globals.h
│ ├── precompiled.h
│ ├── gui.h
│ └── weby.pro
├── calcy
│ ├── calcy.ico
│ ├── calcy.png
│ ├── calcy_full.ico
│ ├── Calculator.h
│ ├── Converter.h
│ ├── precompiled.h
│ ├── gui.h
│ ├── Calculator.cpp
│ ├── Converter.cpp
│ └── calcy.pro
├── gcalc
│ ├── gcalc.ico
│ ├── gcalc.pro
│ └── precompiled.h
├── loader
│ ├── loader.ico
│ ├── loader.png
│ ├── loader_full.ico
│ ├── loader.pro
│ ├── globals.h
│ ├── gui.cpp
│ └── gui.h
├── runner
│ ├── runner.ico
│ ├── runner.png
│ ├── runner_full.ico
│ ├── globals.h
│ ├── precompiled.h
│ └── gui.h
├── tasky
│ ├── tasky.png
│ ├── tasky.pro
│ ├── readme.txt
│ ├── globals.h
│ └── Precompiled.h
├── verby
│ ├── verby.png
│ ├── verby_run.png
│ ├── verby_copy.png
│ ├── verby_properties.png
│ ├── verby_opencontainer.png
│ ├── dlg.ui
│ ├── gui.h
│ ├── gui.cpp
│ ├── precompiled.h
│ └── verby.pro
├── CalcyPy
│ └── calcpy.ico
├── controly
│ ├── controly.ico
│ ├── controly.png
│ ├── controly_full.ico
│ ├── launchy.exit.png
│ ├── launchy.options.png
│ ├── launchy.rebuild.png
│ ├── fhoenv.h
│ ├── fhores.h
│ ├── dlg.ui
│ ├── fhoenv.cpp
│ ├── globals.h
│ ├── fhoreg.h
│ ├── gui.h
│ ├── gui.cpp
│ ├── precompiled.h
│ ├── controly.pro
│ └── fhores.cpp
├── winshell
│ ├── winshell.ico
│ ├── winshell.pro
│ ├── globals.h
│ └── gui.h
└── WebSearchPy
│ └── WebSearch.ico
├── dist
├── win
│ ├── installer
│ │ ├── LaunchyPortable.ini
│ │ └── header.bmp
│ ├── Create Visual Studio projects.cmd
│ ├── buildTranslations.bat
│ ├── Utilities
│ │ ├── Special Folders
│ │ │ ├── C Drive.lnk
│ │ │ ├── My Music.lnk
│ │ │ ├── My Computer.lnk
│ │ │ ├── My Pictures.lnk
│ │ │ ├── Recycle Bin.lnk
│ │ │ ├── Control Panel.lnk
│ │ │ ├── My Documents.lnk
│ │ │ └── My Network Places.lnk
│ │ └── System Power
│ │ │ ├── System Logoff.lnk
│ │ │ ├── System Reboot.lnk
│ │ │ ├── System Hibernate.lnk
│ │ │ └── System Shutdown.lnk
│ └── Microsoft.VC80.CRT.manifest
├── mac
│ ├── support
│ │ └── AdiumApplescriptRunner
│ ├── mkdmg
│ ├── deploy
│ └── Info.plist
└── linux
│ ├── debian
│ ├── menu.ex
│ ├── copyright
│ └── control
│ ├── launchy.desktop
│ └── build_deb.sh
├── src_old
├── buildWinSln.bat
├── platforms
│ ├── gnome
│ │ ├── readme.txt
│ │ ├── platform_gnome_util.h
│ │ ├── gnome.pro
│ │ ├── platform_gnome.h
│ │ └── platform_gnome_util.cpp
│ └── mac
│ │ └── platform_mac.h
├── LineEditMenu.cpp
├── LineEditMenu.h
├── DropTableWidget.cpp
├── DropTableWidget.h
├── platform_util.h
├── platform_util.cpp
├── platform_base_hotkey.h
└── platform_base_hottrigger.h
├── misc
├── Launchy.ico
└── Launchy_Icon
│ ├── launchy_icon.png
│ ├── working
│ ├── 16_and.png
│ ├── 24_and.png
│ ├── 32_and.png
│ ├── 48_and.png
│ ├── 128_32-bit.png
│ ├── 16_32-bit.png
│ ├── 16_8-bit.png
│ ├── 24_32-bit.png
│ ├── 24_8-bit.png
│ ├── 32_32-bit.png
│ ├── 32_8-bit.png
│ ├── 48_32-bit.png
│ └── 48_8-bit.png
│ ├── launchy_icon_mac.icns
│ └── launchy_icon_win.ico
├── skins
├── Note
│ ├── frame.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── scrollUp.png
│ ├── author.txt
│ └── style.qss
├── Default
│ ├── author.txt
│ ├── frame.png
│ ├── mask_nc.png
│ ├── spinner.gif
│ ├── opsButton.png
│ ├── scrollUp.png
│ ├── closeButton.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── background_nc.png
│ ├── opsButtonPressed.png
│ └── closeButtonPressed.png
├── Mercury
│ ├── frame.png
│ ├── spinner.gif
│ ├── spinner.mng
│ ├── scrollUp.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ └── author.txt
├── Black_Glass
│ ├── frame.png
│ ├── scrollUp.png
│ ├── spinner.gif
│ ├── opsButton.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── opsButtonPressed.png
│ └── author.txt
├── Default(HiDPI)
│ ├── author.txt
│ ├── frame.png
│ ├── mask_nc.png
│ ├── spinner.gif
│ ├── opsButton.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── scrollUp.png
│ ├── background_nc.png
│ └── opsButtonPressed.png
├── Mercury_Wide
│ ├── frame.png
│ ├── spinner.gif
│ ├── spinner.mng
│ ├── opsButton.png
│ ├── scrollUp.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── opsButtonPressed.png
│ └── author.txt
├── QuickSilver2
│ ├── frame.png
│ ├── mask_nc.png
│ ├── author.txt
│ ├── background_nc.png
│ └── style.qss
├── Spotlight_Wide
│ ├── frame.png
│ ├── author.txt
│ ├── mask_nc.png
│ ├── spinner.gif
│ ├── spinner.mng
│ ├── opsButton.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── scrollUp.png
│ ├── closeButton.png
│ ├── background_nc.png
│ ├── opsButtonPressed.png
│ └── closeButtonPressed.png
├── Black_Glass_Wide
│ ├── frame.png
│ ├── scrollUp.png
│ ├── spinner.gif
│ ├── opsButton.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── opsButtonPressed.png
│ └── author.txt
├── Black_Glass(HiDPI)
│ ├── frame.png
│ ├── scrollUp.png
│ ├── spinner.gif
│ ├── opsButton.png
│ ├── scrollBack.png
│ ├── scrollDown.png
│ ├── opsButtonPressed.png
│ └── author.txt
└── Simple
│ └── style.qss
├── src
├── win
│ ├── Launchy.ico
│ ├── win.pro
│ ├── readme.txt
│ ├── IconProviderWin.h
│ ├── launchy.rc
│ ├── AppWin.h
│ ├── CrashDumper.h
│ └── UtilWin.h
├── resources
│ ├── launchy16.png
│ ├── builtWithQt.png
│ ├── launchy128.png
│ └── basicskin.qss
├── pluginpy
│ ├── PluginPy.cpp
│ ├── PluginPy.h
│ ├── Precompiled.h
│ ├── PluginPyLib.h
│ ├── ExportPyQString.h
│ ├── ExportPyQString.cpp
│ ├── ExportPyPlugin.cpp
│ ├── TestWidget.h
│ ├── ExportPy.h
│ ├── PluginWrapper.h
│ ├── pluginconf.py
│ ├── PluginLoader.h
│ ├── launchy_test.py
│ ├── PluginMgr.h
│ └── TestWidget.cpp
├── lib
│ ├── LaunchyLib.h
│ ├── lib.pro
│ ├── PluginInfo.h
│ └── PluginInfo.cpp
├── launchy.qrc
├── InputDataList.h
├── Directory.cpp
├── Logger.h
├── linux
│ ├── platform_unix_util.h
│ ├── unix.pro
│ └── platform_unix.h
├── FileSearch.h
├── Directory.h
├── AnimationLabel.h
├── UpdateChecker.h
├── CommandHistory.h
├── Fader.h
├── DropListWidget.h
├── InputDataList.cpp
├── DropListWidget.cpp
├── IconExtractor.h
├── GlobalVar.h
├── CatalogBuilder.h
├── CharLineEdit.h
├── FileBrowserDelegate.h
├── CharListWidget.h
├── SettingsManager.h
└── IconDelegate.h
├── docs
├── docs_old
│ ├── Readme.doc
│ ├── Readme.pdf
│ ├── Plugin API
│ │ ├── api.html
│ │ ├── myplugin.zip
│ │ ├── PluginPage.doc
│ │ ├── CreateDocs.bat
│ │ ├── myplugin
│ │ │ ├── myplugin.pro
│ │ │ ├── MyPlugin.sln
│ │ │ ├── globals.h
│ │ │ ├── gui.h
│ │ │ ├── readme.txt
│ │ │ ├── dlg.ui
│ │ │ ├── gui.cpp
│ │ │ ├── myplugin.h
│ │ │ └── plugin_interface.cpp
│ │ └── plugin_interface.cpp
│ └── readme.txt
├── THANKS.org
├── RELEASE_INSTRUCTIONS.org
├── CREDITS.org
└── HOW_TO_BUILD.org
├── deps
├── pybind11
│ ├── common.h
│ └── detail
│ │ └── typeid.h
├── SingleApplication
│ ├── singleapplication.pri
│ ├── LICENSE
│ └── Windows.md
└── QHotkey
│ ├── QHotkey.pri
│ ├── QHotkey.h
│ ├── QHotkey.cpp
│ └── QHotkeyP.h
├── Launchy.pro
├── .github
└── ISSUE_TEMPLATE
│ ├── feature_request.md
│ └── bug_report.md
└── .gitignore
/plugins/PydiryPy/PyDiry/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/dist/win/installer/LaunchyPortable.ini:
--------------------------------------------------------------------------------
1 | [General]
2 | version=200
3 |
--------------------------------------------------------------------------------
/src_old/buildWinSln.bat:
--------------------------------------------------------------------------------
1 | %QTDIR%\qmake\qmake -tp vc -r launchy.pro
2 |
--------------------------------------------------------------------------------
/misc/Launchy.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy.ico
--------------------------------------------------------------------------------
/skins/Note/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Note/frame.png
--------------------------------------------------------------------------------
/src/win/Launchy.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/src/win/Launchy.ico
--------------------------------------------------------------------------------
/dist/win/Create Visual Studio projects.cmd:
--------------------------------------------------------------------------------
1 | @echo off
2 | cd ..
3 | qmake -tp vc -r launchy.pro
4 |
--------------------------------------------------------------------------------
/plugins/weby/weby.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/weby/weby.ico
--------------------------------------------------------------------------------
/plugins/weby/weby.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/weby/weby.png
--------------------------------------------------------------------------------
/docs/docs_old/Readme.doc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/docs/docs_old/Readme.doc
--------------------------------------------------------------------------------
/docs/docs_old/Readme.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/docs/docs_old/Readme.pdf
--------------------------------------------------------------------------------
/plugins/calcy/calcy.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/calcy/calcy.ico
--------------------------------------------------------------------------------
/plugins/calcy/calcy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/calcy/calcy.png
--------------------------------------------------------------------------------
/plugins/gcalc/gcalc.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/gcalc/gcalc.ico
--------------------------------------------------------------------------------
/plugins/loader/loader.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/loader/loader.ico
--------------------------------------------------------------------------------
/plugins/loader/loader.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/loader/loader.png
--------------------------------------------------------------------------------
/plugins/runner/runner.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/runner/runner.ico
--------------------------------------------------------------------------------
/plugins/runner/runner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/runner/runner.png
--------------------------------------------------------------------------------
/plugins/tasky/tasky.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/tasky/tasky.png
--------------------------------------------------------------------------------
/plugins/verby/verby.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/verby/verby.png
--------------------------------------------------------------------------------
/skins/Default/author.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/author.txt
--------------------------------------------------------------------------------
/skins/Default/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/frame.png
--------------------------------------------------------------------------------
/skins/Default/mask_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/mask_nc.png
--------------------------------------------------------------------------------
/skins/Default/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/spinner.gif
--------------------------------------------------------------------------------
/skins/Mercury/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury/frame.png
--------------------------------------------------------------------------------
/skins/Mercury/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury/spinner.gif
--------------------------------------------------------------------------------
/skins/Mercury/spinner.mng:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury/spinner.mng
--------------------------------------------------------------------------------
/skins/Note/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Note/scrollBack.png
--------------------------------------------------------------------------------
/skins/Note/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Note/scrollDown.png
--------------------------------------------------------------------------------
/skins/Note/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Note/scrollUp.png
--------------------------------------------------------------------------------
/plugins/CalcyPy/calcpy.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/CalcyPy/calcpy.ico
--------------------------------------------------------------------------------
/plugins/PydiryPy/pydiry.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/PydiryPy/pydiry.ico
--------------------------------------------------------------------------------
/plugins/verby/verby_run.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/verby/verby_run.png
--------------------------------------------------------------------------------
/plugins/weby/weby_full.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/weby/weby_full.ico
--------------------------------------------------------------------------------
/skins/Black_Glass/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass/frame.png
--------------------------------------------------------------------------------
/skins/Default/opsButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/opsButton.png
--------------------------------------------------------------------------------
/skins/Default/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/scrollUp.png
--------------------------------------------------------------------------------
/skins/Mercury/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury/scrollUp.png
--------------------------------------------------------------------------------
/src/resources/launchy16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/src/resources/launchy16.png
--------------------------------------------------------------------------------
/dist/win/installer/header.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/installer/header.bmp
--------------------------------------------------------------------------------
/plugins/calcy/calcy_full.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/calcy/calcy_full.ico
--------------------------------------------------------------------------------
/plugins/controly/controly.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/controly/controly.ico
--------------------------------------------------------------------------------
/plugins/controly/controly.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/controly/controly.png
--------------------------------------------------------------------------------
/plugins/loader/loader_full.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/loader/loader_full.ico
--------------------------------------------------------------------------------
/plugins/runner/runner_full.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/runner/runner_full.ico
--------------------------------------------------------------------------------
/plugins/verby/verby_copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/verby/verby_copy.png
--------------------------------------------------------------------------------
/plugins/winshell/winshell.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/winshell/winshell.ico
--------------------------------------------------------------------------------
/skins/Black_Glass/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass/scrollUp.png
--------------------------------------------------------------------------------
/skins/Black_Glass/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass/spinner.gif
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/author.txt:
--------------------------------------------------------------------------------
1 | Spotlight high DPI
2 | By Samson Wang
3 |
4 | Latest Revision: 11/11/2018
5 |
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/frame.png
--------------------------------------------------------------------------------
/skins/Default/closeButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/closeButton.png
--------------------------------------------------------------------------------
/skins/Default/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/scrollBack.png
--------------------------------------------------------------------------------
/skins/Default/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/scrollDown.png
--------------------------------------------------------------------------------
/skins/Mercury/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury/scrollBack.png
--------------------------------------------------------------------------------
/skins/Mercury/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury/scrollDown.png
--------------------------------------------------------------------------------
/skins/Mercury_Wide/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/frame.png
--------------------------------------------------------------------------------
/skins/Mercury_Wide/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/spinner.gif
--------------------------------------------------------------------------------
/skins/Mercury_Wide/spinner.mng:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/spinner.mng
--------------------------------------------------------------------------------
/skins/QuickSilver2/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/QuickSilver2/frame.png
--------------------------------------------------------------------------------
/skins/QuickSilver2/mask_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/QuickSilver2/mask_nc.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/frame.png
--------------------------------------------------------------------------------
/src/resources/builtWithQt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/src/resources/builtWithQt.png
--------------------------------------------------------------------------------
/src/resources/launchy128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/src/resources/launchy128.png
--------------------------------------------------------------------------------
/dist/win/buildTranslations.bat:
--------------------------------------------------------------------------------
1 | cd ..\src
2 | %QTDIR%\bin\lupdate src.pro
3 | %QTDIR%\bin\lrelease src.pro
4 | pause
--------------------------------------------------------------------------------
/skins/Black_Glass/opsButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass/opsButton.png
--------------------------------------------------------------------------------
/skins/Black_Glass/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass/scrollBack.png
--------------------------------------------------------------------------------
/skins/Black_Glass/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass/scrollDown.png
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass_Wide/frame.png
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/mask_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/mask_nc.png
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/spinner.gif
--------------------------------------------------------------------------------
/skins/Default/background_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/background_nc.png
--------------------------------------------------------------------------------
/skins/Mercury_Wide/opsButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/opsButton.png
--------------------------------------------------------------------------------
/skins/Mercury_Wide/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/scrollUp.png
--------------------------------------------------------------------------------
/skins/QuickSilver2/author.txt:
--------------------------------------------------------------------------------
1 | Skin Title: Quicksilver 2
2 |
3 | Author: Juan Ignacio Serra
4 |
5 | Version: 1.0
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/author.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/author.txt
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/mask_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/mask_nc.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/spinner.gif
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/spinner.mng:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/spinner.mng
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/api.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/docs/docs_old/Plugin API/api.html
--------------------------------------------------------------------------------
/misc/Launchy_Icon/launchy_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/launchy_icon.png
--------------------------------------------------------------------------------
/plugins/WebSearchPy/WebSearch.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/WebSearchPy/WebSearch.ico
--------------------------------------------------------------------------------
/plugins/controly/controly_full.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/controly/controly_full.ico
--------------------------------------------------------------------------------
/plugins/controly/launchy.exit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/controly/launchy.exit.png
--------------------------------------------------------------------------------
/plugins/verby/verby_properties.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/verby/verby_properties.png
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass(HiDPI)/frame.png
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass_Wide/scrollUp.png
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass_Wide/spinner.gif
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/opsButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/opsButton.png
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/scrollBack.png
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/scrollDown.png
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/scrollUp.png
--------------------------------------------------------------------------------
/skins/Default/opsButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/opsButtonPressed.png
--------------------------------------------------------------------------------
/skins/Mercury_Wide/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/scrollBack.png
--------------------------------------------------------------------------------
/skins/Mercury_Wide/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/scrollDown.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/opsButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/opsButton.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/scrollBack.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/scrollDown.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/scrollUp.png
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/docs/docs_old/Plugin API/myplugin.zip
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/16_and.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/16_and.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/24_and.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/24_and.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/32_and.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/32_and.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/48_and.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/48_and.png
--------------------------------------------------------------------------------
/plugins/controly/launchy.options.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/controly/launchy.options.png
--------------------------------------------------------------------------------
/plugins/controly/launchy.rebuild.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/controly/launchy.rebuild.png
--------------------------------------------------------------------------------
/plugins/verby/verby_opencontainer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/plugins/verby/verby_opencontainer.png
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/scrollUp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass(HiDPI)/scrollUp.png
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/spinner.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass(HiDPI)/spinner.gif
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/opsButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass_Wide/opsButton.png
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass_Wide/scrollBack.png
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass_Wide/scrollDown.png
--------------------------------------------------------------------------------
/skins/Default/closeButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default/closeButtonPressed.png
--------------------------------------------------------------------------------
/skins/QuickSilver2/background_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/QuickSilver2/background_nc.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/closeButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/closeButton.png
--------------------------------------------------------------------------------
/dist/mac/support/AdiumApplescriptRunner:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/mac/support/AdiumApplescriptRunner
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/PluginPage.doc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/docs/docs_old/Plugin API/PluginPage.doc
--------------------------------------------------------------------------------
/misc/Launchy_Icon/launchy_icon_mac.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/launchy_icon_mac.icns
--------------------------------------------------------------------------------
/misc/Launchy_Icon/launchy_icon_win.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/launchy_icon_win.ico
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/128_32-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/128_32-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/16_32-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/16_32-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/16_8-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/16_8-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/24_32-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/24_32-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/24_8-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/24_8-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/32_32-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/32_32-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/32_8-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/32_8-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/48_32-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/48_32-bit.png
--------------------------------------------------------------------------------
/misc/Launchy_Icon/working/48_8-bit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/misc/Launchy_Icon/working/48_8-bit.png
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/opsButton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass(HiDPI)/opsButton.png
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/scrollBack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass(HiDPI)/scrollBack.png
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/scrollDown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass(HiDPI)/scrollDown.png
--------------------------------------------------------------------------------
/skins/Black_Glass/opsButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass/opsButtonPressed.png
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/background_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/background_nc.png
--------------------------------------------------------------------------------
/skins/Mercury_Wide/opsButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Mercury_Wide/opsButtonPressed.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/background_nc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/background_nc.png
--------------------------------------------------------------------------------
/skins/Default(HiDPI)/opsButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Default(HiDPI)/opsButtonPressed.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/opsButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/opsButtonPressed.png
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/opsButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass(HiDPI)/opsButtonPressed.png
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/opsButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Black_Glass_Wide/opsButtonPressed.png
--------------------------------------------------------------------------------
/skins/Spotlight_Wide/closeButtonPressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/skins/Spotlight_Wide/closeButtonPressed.png
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/C Drive.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/C Drive.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/My Music.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/My Music.lnk
--------------------------------------------------------------------------------
/deps/pybind11/common.h:
--------------------------------------------------------------------------------
1 | #include "detail/common.h"
2 | #warning "Including 'common.h' is deprecated. It will be removed in v3.0. Use 'pybind11.h'."
3 |
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/My Computer.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/My Computer.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/My Pictures.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/My Pictures.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/Recycle Bin.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/Recycle Bin.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/System Power/System Logoff.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/System Power/System Logoff.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/System Power/System Reboot.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/System Power/System Reboot.lnk
--------------------------------------------------------------------------------
/skins/Mercury/author.txt:
--------------------------------------------------------------------------------
1 | Skin Title: Mercury
2 |
3 | Author: Josh Karlin and Juan Ignacio Serra
4 |
5 | Version: 1.1
6 |
7 | Date: 12/18/2009
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/Control Panel.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/Control Panel.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/My Documents.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/My Documents.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/System Power/System Hibernate.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/System Power/System Hibernate.lnk
--------------------------------------------------------------------------------
/dist/win/Utilities/System Power/System Shutdown.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/System Power/System Shutdown.lnk
--------------------------------------------------------------------------------
/src/pluginpy/PluginPy.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include "PluginPy.h"
3 |
4 | namespace pluginpy {
5 |
6 | PluginPy::PluginPy() {
7 |
8 | }
9 |
10 | }
--------------------------------------------------------------------------------
/dist/linux/debian/menu.ex:
--------------------------------------------------------------------------------
1 | ?package(launchy):needs="X11|text|vc|wm" section="Applications/see-menu-manual"\
2 | title="launchy" command="/usr/bin/launchy"
3 |
--------------------------------------------------------------------------------
/dist/win/Utilities/Special Folders/My Network Places.lnk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/gytai/LaunchyQt/master/dist/win/Utilities/Special Folders/My Network Places.lnk
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/CreateDocs.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 | copy ..\src\plugin_interface.h .
3 | copy ..\src\catalog.h .
4 | "c:\bin\doxygen" default.doxygen
5 | rem pause
--------------------------------------------------------------------------------
/skins/Black_Glass_Wide/author.txt:
--------------------------------------------------------------------------------
1 | Black Glass Wide Skin 1.1 for Launchy 2
2 | by Simon Capewell 18/12/2009
3 |
4 | Adapted from Black Glass by Peter Wooley
5 |
--------------------------------------------------------------------------------
/skins/Mercury_Wide/author.txt:
--------------------------------------------------------------------------------
1 | Mercury Wide Skin 1.1 for Launchy 2
2 | by Simon Capewell 18/12/2009
3 |
4 | Adapted from Mercury by Josh Karlin and Juan Ignacio Serra
5 |
--------------------------------------------------------------------------------
/src_old/platforms/gnome/readme.txt:
--------------------------------------------------------------------------------
1 | Left off: Trying to prevent the alpha window from being selected. Once it's selected it covers up the main window and I can't select its text box.
2 |
--------------------------------------------------------------------------------
/skins/Black_Glass/author.txt:
--------------------------------------------------------------------------------
1 | Black Glass Skin (v.3.0) for Launchy (v.3.0.0)
2 | by Samson Wang - 2018-10-16
3 |
4 | based on Black Glass(v1.0) from Peter Wooley
5 |
6 | Enjoy the Skin!
7 |
--------------------------------------------------------------------------------
/skins/Black_Glass(HiDPI)/author.txt:
--------------------------------------------------------------------------------
1 | Black Glass Skin (v.3.0) for Launchy (v.3.0.0)
2 | by Samson Wang - 2018-10-16
3 |
4 | based on Black Glass(v1.0) from Peter Wooley
5 |
6 | Enjoy the Skin!
7 |
--------------------------------------------------------------------------------
/src/pluginpy/PluginPy.h:
--------------------------------------------------------------------------------
1 |
2 | #pragma once
3 |
4 | #include "PluginPyLib.h"
5 |
6 | namespace pluginpy {
7 |
8 | class PLUGINPY_EXPORT PluginPy {
9 | public:
10 | PluginPy();
11 |
12 | };
13 |
14 | }
--------------------------------------------------------------------------------
/docs/THANKS.org:
--------------------------------------------------------------------------------
1 |
2 | * THANKS
3 |
4 | ** [[https://github.com/ygao9999][ygao9999]]
5 | ygao999 helps a lot on python plugin development, he gives me very useful advices and makes good efforts on launchy python package management.
6 |
--------------------------------------------------------------------------------
/dist/linux/launchy.desktop:
--------------------------------------------------------------------------------
1 | [Desktop Entry]
2 | Categories=Utility;
3 | Comment=Keystroke Launcher
4 | Exec=launchy %u
5 | Icon=launchy_icon
6 | Name=Launchy
7 | Terminal=false
8 | Type=Application
9 | Version=1.0
10 | X-MultipleArgs=false
11 |
--------------------------------------------------------------------------------
/plugins/controly/fhoenv.h:
--------------------------------------------------------------------------------
1 | // Copyright 2009 Fabian Hofsaess
2 |
3 | #ifndef FHOENV_H
4 | #define FHOENV_H
5 |
6 |
7 | class FhoEnv {
8 | public:
9 |
10 | static QString expand(QString str);
11 | };
12 |
13 |
14 | #endif
--------------------------------------------------------------------------------
/skins/Note/author.txt:
--------------------------------------------------------------------------------
1 | Note (v. 1.0) for Launchy (v. 2.0)
2 | by Philipp Franck (34dF0x) - 05.20.2008
3 |
4 | Let me know of any problems in the skin by contacting me at:
5 | bad.fox@web.de
6 |
7 | Enjoy the Skin!
8 | More Art at www.34dF0x.deviantart.com
9 |
--------------------------------------------------------------------------------
/src/lib/LaunchyLib.h:
--------------------------------------------------------------------------------
1 |
2 | #pragma once
3 |
4 | #if defined(_MSC_VER)
5 | #pragma warning(disable : 4251)
6 | #endif
7 |
8 | #if defined LAUNCHY_LIB
9 | #define LAUNCHY_EXPORT Q_DECL_EXPORT
10 | #else
11 | #define LAUNCHY_EXPORT Q_DECL_IMPORT
12 | #endif
13 |
--------------------------------------------------------------------------------
/dist/mac/mkdmg:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | rm -rf files
4 | rm *.dmg
5 | mkdir files
6 | cp -r ../release/Launchy.app files/
7 | cp ../Readme.pdf files/
8 | ln -s /Applications files/Applications
9 | ./create-dmg --window-size 500 300 --volname "Launchy" Launchy$1.dmg files/
10 |
--------------------------------------------------------------------------------
/src/launchy.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 | resources/launchy128.png
4 | resources/launchy16.png
5 | resources/basicskin.qss
6 | resources/builtWithQt.png
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Launchy.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = subdirs
2 | SUBDIRS = plugins/calcy \
3 | plugins/gcalc \
4 | plugins/runner \
5 | plugins/weby \
6 | plugins/verby \
7 | src/lib \
8 | src
9 |
10 | win32 {
11 | SUBDIRS += plugins/controly
12 | }
13 |
14 |
--------------------------------------------------------------------------------
/src_old/LineEditMenu.cpp:
--------------------------------------------------------------------------------
1 | #include "LineEditMenu.h"
2 |
3 |
4 | LineEditMenu::LineEditMenu(QWidget* parent) :
5 | QLabel(parent)
6 | {
7 | setAttribute(Qt::WA_InputMethodEnabled);
8 | }
9 |
10 |
11 | void LineEditMenu::contextMenuEvent(QContextMenuEvent *evt)
12 | {
13 | emit menuEvent(evt);
14 | }
15 |
--------------------------------------------------------------------------------
/src/pluginpy/Precompiled.h:
--------------------------------------------------------------------------------
1 |
2 | #pragma once
3 |
4 | // python and python binding libraries
5 | #include
6 | #include
7 | #include
8 | #include
9 | #include
10 | #include
11 |
12 | #include
--------------------------------------------------------------------------------
/src/pluginpy/PluginPyLib.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include
4 |
5 | #ifndef BUILD_STATIC
6 | # if defined(PLUGINPY_LIB)
7 | # define PLUGINPY_EXPORT Q_DECL_EXPORT
8 | # else
9 | # define PLUGINPY_EXPORT Q_DECL_IMPORT
10 | # endif
11 | #else
12 | # define PLUGINPY_EXPORT
13 | #endif
14 |
--------------------------------------------------------------------------------
/src_old/LineEditMenu.h:
--------------------------------------------------------------------------------
1 | #ifndef LINEEDITMENU_H
2 | #define LINEEDITMENU_H
3 |
4 |
5 | #include
6 |
7 |
8 | class LineEditMenu : public QLabel
9 | {
10 | Q_OBJECT
11 |
12 | public:
13 | LineEditMenu(QWidget* parent = 0);
14 | void contextMenuEvent(QContextMenuEvent *event);
15 |
16 | signals:
17 | void menuEvent(QContextMenuEvent*);
18 | };
19 |
20 |
21 | #endif
22 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/myplugin.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | CONFIG += plugin \
3 | debug_and_release
4 | FORMS = dlg.ui
5 | HEADERS = plugin_interface.h \
6 | myplugin.h \
7 | gui.h
8 | SOURCES = plugin_interface.cpp \
9 | myplugin.cpp \
10 | gui.cpp
11 | TARGET = myplugin
12 | win32 {
13 | CONFIG -= embed_manifest_dll
14 | LIBS += shell32.lib
15 | }
16 |
--------------------------------------------------------------------------------
/src/InputDataList.h:
--------------------------------------------------------------------------------
1 |
2 | #pragma once
3 |
4 | #include
5 | #include
6 | #include "InputData.h"
7 | namespace launchy {
8 | class InputDataList : public QList {
9 | public:
10 | void parse(const QString& text);
11 | QString toString(bool omitLast = false) const;
12 |
13 | static void setSeparator(const QString& sepa);
14 |
15 | private:
16 | static QString s_separator;
17 | };
18 | }
--------------------------------------------------------------------------------
/plugins/controly/fhores.h:
--------------------------------------------------------------------------------
1 | // Copyright 2009 Fabian Hofsaess
2 |
3 | #ifndef FHORES_H
4 | #define FHORES_H
5 |
6 |
7 | class FhoRes {
8 |
9 | public:
10 |
11 | static QString getResourceString(QString &resourceIdentifier);
12 | static QString getResourceString(QString &resourceName, int resourceId);
13 | static QString getResourceString(HINSTANCE hLib, int resourceId);
14 |
15 | };
16 |
17 |
18 | #endif
19 |
--------------------------------------------------------------------------------
/plugins/tasky/tasky.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | CONFIG += plugin debug_and_release
3 | FORMS =
4 | HEADERS = tasky.h
5 | SOURCES = tasky.cpp
6 | TARGET = Tasky
7 | TARGET_EXT = .dll
8 | VERSION = 0.2
9 |
10 | win32 {
11 | CONFIG -= embed_manifest_dll
12 | LIBS += psapi.lib
13 | LIBS += shell32.lib
14 | LIBS += user32.lib
15 | LIBS += Gdi32.lib
16 | % LIBS += comctl32.lib
17 | }
18 |
--------------------------------------------------------------------------------
/dist/mac/deploy:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cp Info.plist ../release/Launchy.app/Contents
3 |
4 | macdeployqt ../release/Launchy.app
5 |
6 | cd ../release/Launchy.app/Contents/MacOS/plugins
7 |
8 |
9 | for bin in *.dylib
10 | do
11 | for lib in QtGui QtCore QtNetwork
12 | do
13 | install_name_tool -change $lib.framework/Versions/4/$lib @executable_path/../Frameworks/$lib.framework/Versions/4/$lib $bin
14 | done;
15 | done;
16 |
17 | cd ../../../../../mac
18 |
19 |
--------------------------------------------------------------------------------
/docs/RELEASE_INSTRUCTIONS.org:
--------------------------------------------------------------------------------
1 |
2 | here are the procedures to release a new version, in case of I forget something when doing release.
3 |
4 | 1. update version number in source code
5 | 2. update README and CHANGELOG
6 | 3. commit all changes in source code
7 | 4. build binary
8 | 5. test
9 | 6. clean temporary file
10 | 7. pack files(including binary, skin, qt library, utilities folder, vcredist library, python library) to zip and 7z
11 | 8. draft release on github
12 |
--------------------------------------------------------------------------------
/deps/SingleApplication/singleapplication.pri:
--------------------------------------------------------------------------------
1 | QT += core network
2 | CONFIG += c++11
3 |
4 | HEADERS += $$PWD/singleapplication.h \
5 | $$PWD/singleapplication_p.h
6 | SOURCES += $$PWD/singleapplication.cpp \
7 | $$PWD/singleapplication_p.cpp
8 |
9 | #INCLUDEPATH += $$PWD
10 |
11 | win32 {
12 | msvc:LIBS += Advapi32.lib
13 | gcc:LIBS += -ladvapi32
14 | }
15 |
16 | DISTFILES += \
17 | $$PWD/README.md \
18 | $$PWD/CHANGELOG.md \
19 | $$PWD/Windows.md
20 |
--------------------------------------------------------------------------------
/deps/QHotkey/QHotkey.pri:
--------------------------------------------------------------------------------
1 |
2 | QT += core gui widgets
3 | CONFIG += c++11
4 |
5 | HEADERS += $$PWD/QHotkey.h \
6 | $$PWD/QHotkeyP.h
7 | SOURCES += $$PWD/QHotkey.cpp \
8 | $$PWD/QHotkeyP.cpp
9 |
10 | #INCLUDEPATH += $$PWD
11 |
12 | win32 {
13 | SOURCES += $$PWD/QHotkeyWin.cpp
14 | #msvc:LIBS += Advapi32.lib
15 | #gcc:LIBS += -ladvapi32
16 | QT += winextras
17 | }
18 |
19 | unix:!macx {
20 | SOURCES += $$PWD/QHotkeyX11.cpp
21 | QT += x11extras
22 | LIBS += -lX11 -lxcb
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/plugins/controly/dlg.ui:
--------------------------------------------------------------------------------
1 |
2 |
3 | Dlg
4 |
5 |
6 |
7 | 0
8 | 0
9 | 411
10 | 271
11 |
12 |
13 |
14 | Controly - Index Control Panel applications
15 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/dist/linux/debian/copyright:
--------------------------------------------------------------------------------
1 | This package was downloaded from
2 |
3 | Upstream Author(s):
4 |
5 | Josh Karlin
6 |
7 | Copyright:
8 |
9 | Copyright (C) 2010 Josh Karlin
10 |
11 | License:
12 |
13 | GPL see: `/usr/share/common-licenses/GPL'
14 |
15 | The Debian packaging is (C) 2010, Josh Karlin and
16 | is licensed under the GPL, see `/usr/share/common-licenses/GPL'.
17 |
18 | # Please also look if there are files or directories which have a
19 | # different copyright/license attached and list them here.
20 |
--------------------------------------------------------------------------------
/src/Directory.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include "Directory.h"
3 |
4 | namespace launchy {
5 | Directory::Directory()
6 | : indexDirs(false),
7 | indexExe(false),
8 | depth(10) {
9 | }
10 |
11 | Directory::Directory(const QString& n)
12 | : indexDirs(false),
13 | indexExe(false),
14 | name(n),
15 | depth(10) {
16 | }
17 |
18 | Directory::Directory(const QString& n, const QStringList& t, bool d, bool e, int dep)
19 | : indexDirs(d),
20 | indexExe(e),
21 | name(n),
22 | types(t),
23 | depth(dep) {
24 | }
25 | }
--------------------------------------------------------------------------------
/src_old/platforms/gnome/platform_gnome_util.h:
--------------------------------------------------------------------------------
1 | #ifndef PLATFORM_GNOME_UTIL_H
2 | #define PLATFORM_GNOME_UTIL_H
3 | //#include
4 | //#include <
5 | #include
6 | #include
7 | #include
8 | #include
9 | #include
10 |
11 |
12 | #include
13 |
14 | #include
15 |
16 | class GnomeIconProvider : QFileIconProvider
17 | {
18 | public:
19 | GnomeIconProvider() {}
20 | ~GnomeIconProvider() {}
21 | QIcon icon(const QFileInfo& info) const;
22 | };
23 |
24 |
25 | #endif
26 |
--------------------------------------------------------------------------------
/deps/QHotkey/QHotkey.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include
4 |
5 | class QHotkeyPrivate;
6 |
7 | class QHotkey : public QObject {
8 | Q_OBJECT
9 | public:
10 | explicit QHotkey(QObject* parent = nullptr);
11 | virtual ~QHotkey();
12 |
13 | public:
14 | const QKeySequence& keySeq() const;
15 | void setKeySeq(const QKeySequence& keySeq);
16 | bool registered() const;
17 |
18 | Q_SIGNALS:
19 | void activated();
20 |
21 | private:
22 | QScopedPointer const d_ptr;
23 | Q_DECLARE_PRIVATE(QHotkey)
24 | Q_DISABLE_COPY(QHotkey)
25 | };
26 |
--------------------------------------------------------------------------------
/plugins/weby/IconCache.h:
--------------------------------------------------------------------------------
1 | #ifndef ICONCACHE_H
2 | #define ICONCACHE_H
3 | #include
4 | #include
5 | class IconCache : public QObject
6 | {
7 | Q_OBJECT
8 |
9 | public:
10 | IconCache(const QString& path);
11 |
12 | QString getIconPath(const QString& site);
13 |
14 | public slots:
15 | void finished(QNetworkReply*);
16 | void query(QUrl url);
17 |
18 | signals:
19 | void findIcon(QUrl url);
20 |
21 |
22 | private:
23 | QString cachePath;
24 | QNetworkAccessManager nam;
25 | // QEventLoop loop;
26 | };
27 |
28 |
29 | #endif // ICONCACHE_H
30 |
--------------------------------------------------------------------------------
/src/Logger.h:
--------------------------------------------------------------------------------
1 |
2 | #pragma once
3 | #include
4 | #include
5 | namespace launchy {
6 | class Logger {
7 | public:
8 | static void stopLogging();
9 | static void setLogLevel(int index);
10 | static void setLogLevel(QtMsgType type);
11 | static void messageHandler(QtMsgType type,
12 | const QMessageLogContext& context,
13 | const QString& msg);
14 | private:
15 | Logger();
16 | Q_DISABLE_COPY(Logger)
17 |
18 | private:
19 | static FILE* s_logFile;
20 | static QtMsgType s_logLevel;
21 | };
22 | }
23 |
--------------------------------------------------------------------------------
/deps/QHotkey/QHotkey.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include "QHotkey.h"
3 | #include "QHotkeyP.h"
4 |
5 | QHotkey::QHotkey(QObject* parent)
6 | : QObject(parent),
7 | d_ptr(new QHotkeyPrivate(this)) {
8 |
9 | }
10 |
11 | QHotkey::~QHotkey() {
12 |
13 | }
14 |
15 | const QKeySequence& QHotkey::keySeq() const {
16 | Q_D(const QHotkey);
17 | return d->keySeq();
18 | }
19 |
20 | void QHotkey::setKeySeq(const QKeySequence& keySeq) {
21 | Q_D(QHotkey);
22 | d->setKeySeq(keySeq);
23 | }
24 |
25 | bool QHotkey::registered() const
26 | {
27 | Q_D(const QHotkey);
28 | return d->registered();
29 | }
30 |
--------------------------------------------------------------------------------
/src/lib/lib.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 |
3 | unix:!macx:TARGET = launchy
4 | win32:TARGET = Launchy
5 | macx:TARGET = Launchy
6 |
7 | CONFIG += debug_and_release
8 |
9 | QT += core
10 |
11 | SOURCES += CatalogItem.cpp \
12 | InputData.cpp \
13 | PluginInterface.cpp \
14 | PluginInfo.cpp
15 |
16 | HEADERS += CatalogItem.h \
17 | InputData.h \
18 | LaunchyLib.h \
19 | PluginInterface.h \
20 | PluginMsg.h \
21 | PluginInfo.h
22 |
23 | DEFINES += LAUNCHY_LIB
24 |
25 | win32 {
26 | LIBS += user32.lib \
27 | shell32.lib
28 | }
29 |
--------------------------------------------------------------------------------
/src_old/DropTableWidget.cpp:
--------------------------------------------------------------------------------
1 | #include "DropTableWidget.h"
2 | #include
3 |
4 |
5 | DropTableWidget::DropTableWidget(QWidget* pParent) :
6 | QTableWidget(pParent)
7 | {
8 | setAcceptDrops(true);
9 | }
10 |
11 |
12 | DropTableWidget::~DropTableWidget()
13 | {
14 | }
15 |
16 |
17 | void DropTableWidget::dragEnterEvent(QDragEnterEvent *event)
18 | {
19 | emit dragEnter(event);
20 | }
21 |
22 |
23 | void DropTableWidget::dragMoveEvent(QDragMoveEvent *event)
24 | {
25 | emit dragMove(event);
26 | }
27 |
28 |
29 | void DropTableWidget::dropEvent(QDropEvent *event)
30 | {
31 | emit drop(event);
32 | }
33 |
--------------------------------------------------------------------------------
/plugins/controly/fhoenv.cpp:
--------------------------------------------------------------------------------
1 | // Copyright 2009 Fabian Hofsaess
2 |
3 | #include "precompiled.h"
4 | #include "fhoenv.h"
5 |
6 | // Launchy already implements expandEnvironmentVars but it's difficult to reuse in plugins
7 | QString FhoEnv::expand(QString txt) {
8 | QString result;
9 |
10 | DWORD size = ExpandEnvironmentStrings((LPCWSTR)txt.utf16(), NULL, 0);
11 | if (size > 0)
12 | {
13 | TCHAR* buffer = new TCHAR[size];
14 | ExpandEnvironmentStrings((LPCWSTR)txt.utf16(), buffer, size);
15 | result = QString::fromUtf16((const ushort*)buffer);
16 | delete[] buffer;
17 | }
18 |
19 | return result;
20 | }
21 |
--------------------------------------------------------------------------------
/src_old/DropTableWidget.h:
--------------------------------------------------------------------------------
1 | #ifndef DROPTABLEWIDGET_H
2 | #define DROPTABLEWIDGET_H
3 |
4 |
5 | #include
6 |
7 | class DropTableWidget : public QTableWidget
8 | {
9 | Q_OBJECT
10 | public:
11 | DropTableWidget(QWidget* pParent = NULL);
12 | virtual ~DropTableWidget();
13 |
14 | protected:
15 | void dragEnterEvent(QDragEnterEvent *event);
16 | void dragMoveEvent(QDragMoveEvent *event);
17 | void dropEvent(QDropEvent *event);
18 |
19 | signals:
20 | void dragEnter(QDragEnterEvent *event);
21 | void dragMove(QDragMoveEvent *event);
22 | void drop(QDropEvent *event);
23 | };
24 |
25 |
26 | #endif
27 |
--------------------------------------------------------------------------------
/src/linux/platform_unix_util.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include
3 |
4 |
5 | #include
6 |
7 | #include
8 |
9 |
10 | class UnixIconProvider : public QFileIconProvider
11 | {
12 | private:
13 | QHash file2mime;
14 | QHash mime2desktop;
15 | QHash desktop2icon;
16 | QHash icon2path;
17 | QStringList xdgDataDirs;
18 | public:
19 | UnixIconProvider();
20 | ~UnixIconProvider() {}
21 | virtual QIcon icon(const QFileInfo& info);
22 | QString getDesktopIcon(QString desktopFile, QString IconName = "");
23 | };
24 |
25 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | labels:
5 |
6 | ---
7 |
8 | **Is your feature request related to a problem? Please describe.**
9 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
10 |
11 | **Describe the solution you'd like**
12 | A clear and concise description of what you want to happen.
13 |
14 | **Describe alternatives you've considered**
15 | A clear and concise description of any alternative solutions or features you've considered.
16 |
17 | **Additional context**
18 | Add any other context or screenshots about the feature request here.
19 |
--------------------------------------------------------------------------------
/dist/linux/debian/control:
--------------------------------------------------------------------------------
1 | Source: launchy
2 | Section: unknown
3 | Priority: extra
4 | Maintainer: Josh Karlin
5 | Build-Depends: debhelper (>= 5)
6 | Standards-Version: 3.7.2
7 |
8 | Package: launchy
9 | Architecture: any
10 | Depends: ${shlibs:Depends}, ${misc:Depends}, xdg-utils
11 | Description: Open Source Keystroke Launcher
12 | Launchy is a free, cross-platform utility, designed
13 | to help you forget about your start menu, the icons
14 | on your desktop, and even your file manager. Launchy
15 | indexes the programs in your start menu and can launch
16 | your documents, project files, folders, and bookmarks
17 | with just a few keystrokes!
--------------------------------------------------------------------------------
/dist/mac/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleIconFile
6 | launchy_icon_mac.icns
7 | CFBundlePackageType
8 | APPL
9 | CFBundleGetInfoString
10 | Created by Qt/QMake
11 | CFBundleSignature
12 | ????
13 | CFBundleExecutable
14 | Launchy
15 | CFBundleIdentifier
16 | Code Jelly's Launchy
17 | NOTE
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/plugins/winshell/winshell.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | CONFIG += plugin release
3 | VPATH += ../../src/
4 | INCLUDEPATH += ../../src/
5 | UI_DIR = ../../plugins/winshell/
6 | FORMS = dlg.ui
7 | HEADERS = plugin_interface.h winshell.h gui.h globals.h
8 | SOURCES = plugin_interface.cpp winshell.cpp gui.cpp
9 | TARGET = winshell
10 |
11 | win32 {
12 | CONFIG -= embed_manifest_dll
13 | LIBS += shell32.lib
14 | % LIBS += user32.lib
15 | % LIBS += Gdi32.lib
16 | % LIBS += comctl32.lib
17 | }
18 |
19 | *:debug {
20 | DESTDIR = ../../debug/plugins/
21 | }
22 | *:release {
23 | DESTDIR = ../../release/plugins/
24 | %QMAKE_CXXFLAGS += /Ox /Ob2 /Oi /Oy /GT /GA /WX
25 | }
26 |
27 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Prerequisites
2 | *.d
3 |
4 | # Compiled Object files
5 | *.slo
6 | *.lo
7 | *.o
8 | *.obj
9 |
10 | # Precompiled Headers
11 | *.gch
12 | *.pch
13 |
14 | # Compiled Dynamic libraries
15 | *.so
16 | *.dylib
17 | *.dll
18 |
19 | # Fortran module files
20 | *.mod
21 | *.smod
22 |
23 | # Compiled Static libraries
24 | *.lai
25 | *.la
26 | *.a
27 | *.lib
28 |
29 | # Executables
30 | *.exe
31 | *.out
32 | *.app
33 |
34 |
35 | # GUN global
36 | GPATH
37 | GTAGS
38 | GRTAGS
39 |
40 | # Qt creator
41 | *.pro.user
42 | *.qm
43 |
44 | # Visual Studio
45 | *.vcxproj.user
46 | *.db
47 | *.opendb
48 | ipch
49 | x64
50 | [B|b]uild*
51 | [D|d]ebug*
52 | [R|r]elease*
53 | .vs
54 | GeneratedFiles
55 | [P|p]recompiled.h.cpp
56 |
57 |
58 | # Python
59 | __pycache__
60 | *.pyc
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 | labels:
5 |
6 | ---
7 |
8 | **Describe the bug**
9 | A clear and concise description of what the bug is.
10 |
11 | **To Reproduce**
12 | Steps to reproduce the behavior:
13 | 1. Go to '...'
14 | 2. Click on '....'
15 | 3. Scroll down to '....'
16 | 4. type '...'
17 | 5. See error
18 |
19 | **Expected behavior**
20 | A clear and concise description of what you expected to happen.
21 |
22 | **Screenshots**
23 | If applicable, add screenshots to help explain your problem.
24 |
25 | **Desktop (please complete the following information):**
26 | - Operation System: [e.g. windows 7 sp1]
27 | - Launchy Version: [e.g. 3.0.2]
28 |
29 | **Additional context**
30 | Add any other context about the problem here.
31 |
--------------------------------------------------------------------------------
/plugins/loader/loader.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | CONFIG += plugin debug_and_release
3 | VPATH += ../../src/
4 | INCLUDEPATH += ../../src/
5 | UI_DIR = ../../plugins/loader/
6 | FORMS = dlg.ui
7 | HEADERS = plugin_interface.h loader.h gui.h globals.h
8 | SOURCES = plugin_interface.cpp loader.cpp gui.cpp
9 | TARGET = loader
10 |
11 | win32 {
12 | CONFIG -= embed_manifest_dll
13 | LIBS += shell32.lib
14 | % LIBS += user32.lib
15 | % LIBS += Gdi32.lib
16 | % LIBS += comctl32.lib
17 | }
18 |
19 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
20 | DESTDIR = ../../debug/plugins
21 | }
22 |
23 | if(!debug_and_release|build_pass):CONFIG(release, debug|release) {
24 | DESTDIR = ../../release/plugins
25 | }
26 |
27 |
28 | unix {
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/dist/linux/build_deb.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | dir=`pwd`
4 |
5 | if [ $# -ne 1 ]
6 | then
7 | echo "1 arg needed to build deb, ./build.sh "
8 | exit
9 | fi
10 |
11 | ver=$1
12 |
13 | rm -rf launchy-$ver*
14 | rm launchy_$ver*
15 | svn export ../ launchy-$ver
16 | tar cfz launchy-$ver.tar.gz launchy-$ver/
17 | cd launchy-$ver
18 | dh_make -e karlinjf@sourceforge.net -f ../launchy-$ver.tar.gz -c gpl --single
19 | cp ../debian/* debian/
20 | qmake -r Launchy.pro
21 | INSTALL_ROOT=$DESTDIR dpkg-buildpackage -rfakeroot
22 |
23 | cd ..
24 |
25 | #mkdir repository
26 | #mkdir repository/binary
27 | #mkdir repository/source
28 | #cp *.deb repository/binary/
29 | #cp *.orig.* *.diff.gz *.dsc repository/source/
30 | #cd repository
31 | #dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
32 | #dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
--------------------------------------------------------------------------------
/src/pluginpy/ExportPyQString.h:
--------------------------------------------------------------------------------
1 | /*
2 | SmartLaunch: multi-function app launcher.
3 | Copyright (C) 2017 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 | #pragma once
19 | namespace exportpy {
20 | void ExportQString();
21 | }
--------------------------------------------------------------------------------
/skins/QuickSilver2/style.qss:
--------------------------------------------------------------------------------
1 | #launchy {
2 | }
3 |
4 | #input {
5 | font: 14px Sans, Verdana, Arial;
6 | border-width: 0px;
7 | background-color: rgb(255,255,255);
8 | border-style: solid;
9 | color: black;
10 | qproperty-alignment: AlignLeft;
11 | qproperty-geometry: rect(19 61 221 25);
12 | }
13 |
14 | #output {
15 | font: 12px Sans, Verdana, Arial;
16 | border-width: 0px;
17 | background-color: rgba(255,255,255,0%);
18 | border-style: solid;
19 | color: black;
20 | qproperty-alignment: AlignCenter;
21 | qproperty-geometry: rect(56 19 184 20);
22 | }
23 |
24 | #outputIcon {
25 | qproperty-geometry: rect(19 11 32 32);
26 | }
27 |
28 | #alternatives {
29 | font: 12px Sans, Verdana, Arial;
30 | border-width: 0px;
31 | background-color: rgb(255,255,255);
32 | border-style: solid;
33 | color: black;
34 | qproperty-geometry: rect(19 85 350 100);
35 | }
36 |
--------------------------------------------------------------------------------
/src/pluginpy/ExportPyQString.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | SmartLaunch: multi-function app launcher.
3 | Copyright (C) 2017 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | // © for utf-8
20 |
21 | namespace exportpy {
22 | void ExportQString() {
23 |
24 | }
25 | }
--------------------------------------------------------------------------------
/plugins/controly/globals.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GLOBALS_CONTROLY_H
21 | #define GLOBALS_CONTROLY_H
22 |
23 | #endif
24 |
--------------------------------------------------------------------------------
/plugins/loader/globals.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GLOBALS_H
21 | #define GLOBALS_H
22 | #include
23 |
24 |
25 | #endif
26 |
--------------------------------------------------------------------------------
/src/resources/basicskin.qss:
--------------------------------------------------------------------------------
1 | #launchy {
2 | border: 2px solid #8f8f91;
3 | border-radius: 6px;
4 | background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #f6f7fa, stop: 1 #dadbde);
5 | qproperty-geometry: rect(0 0 700 110);
6 | }
7 |
8 | #input {
9 | font: 16px "Tahoma";
10 | border-width: 0px;
11 | background-color: rgba(0,244,120,0%);
12 | border: 2px solid #8f8f91;
13 | border-radius: 3px;
14 | color: black;
15 | qproperty-alignment: AlignLeft;
16 | qproperty-geometry: rect(46 30 580 24)
17 | }
18 |
19 | #output {
20 | font: 12px "Tahoma";
21 | color: black;
22 | qproperty-alignment: AlignLeft;
23 | qproperty-geometry: rect(48 60 580 24);
24 | }
25 |
26 | #outputIcon {
27 | qproperty-geometry: rect(640 40 32 32);
28 | }
29 |
30 | #alternatives {
31 | font: 12px "Tahoma";
32 | qproperty-geometry: rect(5 104 690 200);
33 | }
34 |
35 | #alternatives::item {
36 | padding: 2px 0px;
37 | }
38 |
--------------------------------------------------------------------------------
/plugins/tasky/readme.txt:
--------------------------------------------------------------------------------
1 | ========================================================================
2 | tasky Project Overview
3 | ========================================================================
4 |
5 | Description:
6 | ------------
7 | This project provides a plug-in which allows Launchy to search window titles of currently open windows giving users a convenient way to switch between tasks. Supports Launchy 2.0 only.
8 |
9 | Changelog:
10 | ----------
11 | 0.2b
12 | - Added catalog item Tasky. Type Tasky and press TAB button to see all tasks.
13 | Type Tasky and press Enter button to redo the last task switch.
14 |
15 | Website:
16 | --------
17 | http://tasky-launchy.sourceforge.net/
18 |
19 | Installation:
20 | -------------
21 | Copy tasky.dll to \plugins, copy tasky.png to \plugins\icons and restart Launchy.
22 |
23 | /////////////////////////////////////////////////////////////////////////////
24 |
--------------------------------------------------------------------------------
/plugins/calcy/Calculator.h:
--------------------------------------------------------------------------------
1 | /*
2 | Calcy - plugin for LaunchyQt
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #pragma once
20 |
21 | #include
22 |
23 | class Calculator {
24 | public:
25 | static bool calculate(const std::string& expr, double& result);
26 | };
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/skins/Simple/style.qss:
--------------------------------------------------------------------------------
1 | #launchy {
2 | border: 2px solid #8f8f91;
3 | border-radius: 6px;
4 | background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #f6f7fa, stop: 1 #dadbde);
5 | qproperty-geometry: rect(0 0 700 110);
6 | }
7 |
8 | #input {
9 | font: 16px Sans, Tahoma, Arial;
10 | border-width: 0px;
11 | background-color: rgba(0,244,120,0%);
12 | border: 2px solid #8f8f91;
13 | border-radius: 3px;
14 | color: black;
15 | qproperty-alignment: AlignLeft;
16 | qproperty-geometry: rect(46 30 580 24)
17 | }
18 |
19 | #output {
20 | font: 12px Sans, Tahoma, Arial;
21 | color: black;
22 | qproperty-alignment: AlignLeft;
23 | qproperty-geometry: rect(48 60 580 24);
24 | }
25 |
26 | #outputIcon {
27 | qproperty-geometry: rect(640 40 32 32);
28 | }
29 |
30 | #alternatives {
31 | font: 12px Sans, Tahoma, Arial;
32 | qproperty-geometry: rect(5 104 690 200);
33 | }
34 |
35 | #alternatives::item {
36 | padding: 2px 0px;
37 | }
38 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/MyPlugin.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 9.00
3 | # Visual Studio 2005
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MyPlugin", "MyPlugin.vcproj", "{08B29CAE-8850-4669-9B02-E3A14FF5A07B}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|Win32 = Debug|Win32
9 | Release|Win32 = Release|Win32
10 | EndGlobalSection
11 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
12 | {08B29CAE-8850-4669-9B02-E3A14FF5A07B}.Debug|Win32.ActiveCfg = Debug|Win32
13 | {08B29CAE-8850-4669-9B02-E3A14FF5A07B}.Debug|Win32.Build.0 = Debug|Win32
14 | {08B29CAE-8850-4669-9B02-E3A14FF5A07B}.Release|Win32.ActiveCfg = Release|Win32
15 | {08B29CAE-8850-4669-9B02-E3A14FF5A07B}.Release|Win32.Build.0 = Release|Win32
16 | EndGlobalSection
17 | GlobalSection(SolutionProperties) = preSolution
18 | HideSolutionNode = FALSE
19 | EndGlobalSection
20 | EndGlobal
21 |
--------------------------------------------------------------------------------
/plugins/controly/fhoreg.h:
--------------------------------------------------------------------------------
1 | // Copyright 2009 Fabian Hofsaess
2 |
3 | #ifndef FHOREG_H
4 | #define FHOREG_H
5 |
6 |
7 | // implement a convenient class instead of an aggregation of static semi-convenient methods!
8 | class FhoReg {
9 | private:
10 | static const DWORD maxSize = 256;
11 |
12 | public:
13 | static HKEY OpenKey(HKEY baseKey, QString &subKeyName, DWORD options);
14 | static void CloseKey(HKEY key);
15 |
16 | static QString GetKeyValue(HKEY key, QString &valueName);
17 | static QString GetKeyValue(HKEY parentKey, QString &parentSubKeyName, QString &valueName);
18 | static QString GetKeyDefaultValue(HKEY key);
19 | static QString GetKeyDefaultValue(HKEY parentKey, QString &parentSubKeyName);
20 |
21 | static QStringList* EnumValues(HKEY parentKey, QString &parentSubKeyName);
22 | static QStringList* EnumSubKeys(HKEY key);
23 | static QStringList* EnumSubKeys(HKEY parentKey, QString &parentSubKeyName);
24 |
25 | };
26 |
27 |
28 | #endif
29 |
--------------------------------------------------------------------------------
/plugins/runner/globals.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GLOBALS_H
21 | #define GLOBALS_H
22 |
23 |
24 | struct runnerCmd {
25 | QString name;
26 | QString file;
27 | QString args;
28 | };
29 |
30 |
31 | #endif
32 |
--------------------------------------------------------------------------------
/plugins/verby/dlg.ui:
--------------------------------------------------------------------------------
1 |
2 |
3 | Dlg
4 |
5 |
6 |
7 | 0
8 | 0
9 | 354
10 | 273
11 |
12 |
13 |
14 | Verby - Adds verbs to commands
15 |
16 |
17 | -
18 |
19 |
-
20 |
21 |
22 | Qt::Vertical
23 |
24 |
25 |
26 | 20
27 | 40
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
--------------------------------------------------------------------------------
/plugins/winshell/globals.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GLOBALS_H
21 | #define GLOBALS_H
22 | #include
23 |
24 | struct winshellCmd {
25 | QString name;
26 | QString file;
27 | QString args;
28 | };
29 |
30 | #endif
--------------------------------------------------------------------------------
/src/linux/unix.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | TARGET = platform_unix
3 | CONFIG += plugin qt_warn debug_and_release
4 | VPATH += ../../src/
5 | INCLUDEPATH += ../../src/
6 | SOURCES = platform_x11_hotkey.cpp platform_base_hotkey.cpp platform_unix.cpp platform_unix_util.cpp
7 | HEADERS = platform_base.h platform_unix.h platform_base_hotkey.h platform_base_hottrigger.h platform_unix_util.h \
8 | platform_x11_hotkey.h
9 | CONFIG -= embed_manifest_dll
10 | LIBS += -lX11 -lXext -lXrender
11 |
12 |
13 | unix {
14 | PREFIX = /usr
15 | DEFINES += SKINS_PATH=\\\"$$PREFIX/share/launchy/skins/\\\" \
16 | PLUGINS_PATH=\\\"$$PREFIX/lib/launchy/plugins/\\\" \
17 | PLATFORMS_PATH=\\\"$$PREFIX/lib/launchy/\\\"
18 | target.path = $$PREFIX/lib/launchy/
19 | INSTALLS += target
20 | }
21 |
22 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
23 | DESTDIR = ../../debug/
24 | }
25 |
26 | if(!debug_and_release|build_pass):CONFIG(release, debug|release) {
27 | DESTDIR = ../../release/
28 | }
29 |
--------------------------------------------------------------------------------
/src/pluginpy/ExportPyPlugin.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include "ExportPyPlugin.h"
3 |
4 | namespace py = pybind11;
5 |
6 | namespace exportpy {
7 |
8 | void ExportPlugin(const pybind11::module& m) {
9 | py::class_(m, "Plugin")
10 | .def(py::init<>())
11 | .def("init", &exportpy::Plugin::init)
12 | .def("getID", &exportpy::Plugin::getID)
13 | .def("getName", &exportpy::Plugin::getName)
14 | .def("setPath", &exportpy::Plugin::setPath)
15 | .def("getLabels", &exportpy::Plugin::getLabels)
16 | .def("getResults", &exportpy::Plugin::getResults)
17 | .def("getCatalog", &exportpy::Plugin::getCatalog)
18 | .def("launchItem", &exportpy::Plugin::launchItem)
19 | .def("hasDialog", &exportpy::Plugin::hasDialog)
20 | .def("doDialog", &exportpy::Plugin::doDialog)
21 | .def("endDialog", &exportpy::Plugin::endDialog)
22 | .def("launchyShow", &exportpy::Plugin::launchyShow)
23 | .def("launchyHide", &exportpy::Plugin::launchyHide);
24 | }
25 |
26 | }
--------------------------------------------------------------------------------
/plugins/loader/gui.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #include "gui.h"
21 | #include "loader.h"
22 | #include
23 |
24 | #define ROW_PADDING 6
25 |
26 |
27 | Gui::Gui(QWidget* parent)
28 | : QWidget(parent)
29 | {
30 | setupUi(this);
31 | }
32 |
--------------------------------------------------------------------------------
/plugins/calcy/Converter.h:
--------------------------------------------------------------------------------
1 | /*
2 | Calcy - plugin for LaunchyQt
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | class Converter {
20 | public:
21 | static bool octStr(qlonglong num, QString& reslut);
22 | static bool decStr(qlonglong num, QString& reslut);
23 | static bool hexStr(qlonglong num, QString& reslut);
24 | static bool binStr(qlonglong num, QString& reslut);
25 | };
26 |
--------------------------------------------------------------------------------
/src_old/platform_util.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | /*
21 | #ifndef PLATFORM_UTIL_Z
22 | #define PLATFORM_UTIL_Z
23 |
24 | #include
25 | #include "platform_base.h"
26 |
27 |
28 | PlatformBase * loadPlatform();
29 |
30 |
31 | #endif
32 | */
33 |
--------------------------------------------------------------------------------
/plugins/verby/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Verby: Plugin for Launchy
3 | Copyright (C) 2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include "ui_dlg.h"
23 |
24 | class Gui : public QWidget, private Ui::Dlg {
25 | Q_OBJECT
26 | public:
27 | Gui(QWidget* parent);
28 | virtual ~Gui();
29 | void writeOptions();
30 | };
31 |
--------------------------------------------------------------------------------
/plugins/verby/gui.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Verby: Plugin for Launchy
3 | Copyright (C) 2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #include "gui.h"
21 | #include "Verby.h"
22 |
23 | Gui::Gui(QWidget* parent)
24 | : QWidget(parent) {
25 | setupUi(this);
26 | }
27 |
28 | Gui::~Gui() {
29 | this->hide();
30 | }
31 |
32 | void Gui::writeOptions() {
33 | }
--------------------------------------------------------------------------------
/src/win/win.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | TARGET = platform_win
3 | CONFIG += plugin \
4 | qt_warn \
5 | debug_and_release
6 | VPATH += ../../src/
7 | INCLUDEPATH += ../../src/
8 | INCLUDEPATH += ../../common/
9 | INCLUDEPATH += c:/boost/
10 | INCLUDEPATH += ../../win/
11 | VPATH += src/
12 | SOURCES = platform_win.cpp \
13 | platform_base_hotkey.cpp \
14 | platform_win_hotkey.cpp \
15 | platform_win_util.cpp \
16 | WinIconProvider.cpp
17 | HEADERS = platform_base.h \
18 | platform_win.h \
19 | platform_base_hotkey.h \
20 | platform_base_hottrigger.h \
21 | platform_win_util.h \
22 | WinIconProvider.h
23 | LIBS += shell32.lib \
24 | user32.lib \
25 | gdi32.lib \
26 | comctl32.lib \
27 | advapi32.lib \
28 | userenv.lib
29 | CONFIG -= embed_manifest_dll
30 | win32:debug:DESTDIR = ../../debug/
31 | win32:release:DESTDIR = ../../release/
32 | DEFINES = VC_EXTRALEAN \
33 | WIN32 \
34 | _UNICODE \
35 | UNICODE \
36 | WINVER=0x0510 \
37 | _WIN32_WINNT=0x0510 \
38 | _WIN32_WINDOWS=0x0510 \
39 | _WIN32_IE=0x0600
40 |
--------------------------------------------------------------------------------
/plugins/calcy/precompiled.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #ifdef _MSC_VER
23 | #pragma warning(push,1)
24 | #define _CRT_SECURE_NO_WARNINGS
25 | #endif
26 |
27 | #include
28 |
29 | #include
30 | #include
31 |
32 | #ifdef _MSC_VER
33 | #pragma warning(pop)
34 | #endif
35 |
36 |
37 |
--------------------------------------------------------------------------------
/src/win/readme.txt:
--------------------------------------------------------------------------------
1 | ========================================================================
2 | MAKEFILE PROJECT : win Project Overview
3 | ========================================================================
4 |
5 | AppWizard has created this win project for you.
6 |
7 | This file contains a summary of what you will find in each of the files that
8 | make up your win project.
9 |
10 |
11 | win.vcproj
12 | This is the main project file for VC++ projects generated using an Application Wizard.
13 | It contains information about the version of Visual C++ that generated the file, and
14 | information about the platforms, configurations, and project features selected with the
15 | Application Wizard.
16 |
17 | This project allows you to build/clean/rebuild from within Visual Studio by calling the commands you have input
18 | in the wizard. The build command can be nmake or any other tool you use.
19 |
20 | This project does not contain any files, so there are none displayed in Solution Explorer.
21 |
22 | /////////////////////////////////////////////////////////////////////////////
23 |
--------------------------------------------------------------------------------
/docs/CREDITS.org:
--------------------------------------------------------------------------------
1 |
2 | * Credits
3 | ** Launchy
4 | - original code forked from https://sourceforge.net/projects/launchy
5 | - original svn path https://svn.code.sf.net/p/launchy/code/trunk/Launchy_QT [R671]
6 |
7 | ** 3rd party
8 | - [[https://github.com/mitei/qglobalshortcut][qglobalshortcut (Qhotkey)]] - N/A
9 | - [[https://github.com/itay-grudev/SingleApplication][singleapplication]] - MIT
10 | - [[https://sourceforge.net/projects/tasky-launchy/][tasky]] - N/A
11 | - [[https://github.com/kshahar/pylaunchy][pylaunchy (develop plugin in python)]] - GPLv2
12 | - CalcyPy (from [[https://github.com/kshahar/pylaunchy][pylaunchy]]) - GPLv2
13 | - [[https://github.com/pybind/pybind11][pybind11]] - [[https://github.com/pybind/pybind11/blob/master/LICENSE][LICENSE]]
14 | - [[https://github.com/ArashPartow/exprtk][exprtk]] - MIT
15 | - WebSearchPy (from [[https://github.com/j5shi/Thruster][Thruster]]) - GPLv2
16 | - PyDiryPy (from [[https://github.com/kshahar/pylaunchy][pylaunchy]]) - GPLv2
17 |
--------------------------------------------------------------------------------
/plugins/tasky/globals.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GLOBALS_H
21 | #define GLOBALS_H
22 | #include
23 |
24 | struct taskySite {
25 | QString base;
26 | QString name;
27 | QString query;
28 | };
29 |
30 | struct Bookmark {
31 | QString url;
32 | QString shortcut;
33 | QString name;
34 | };
35 |
36 | #endif
--------------------------------------------------------------------------------
/plugins/calcy/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2010 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GUI_H
21 | #define GUI_H
22 |
23 | #include
24 | #include "ui_dlg.h"
25 |
26 | class Gui : public QWidget, private Ui::Dlg {
27 | Q_OBJECT
28 | public:
29 | Gui(QWidget* parent);
30 | virtual ~Gui();
31 | void writeOptions();
32 |
33 | public slots:
34 | };
35 |
36 | #endif
37 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/globals.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GLOBALS_H
21 | #define GLOBALS_H
22 | #include
23 |
24 | struct mypluginSite {
25 | QString base;
26 | QString name;
27 | QString query;
28 | };
29 |
30 | struct Bookmark {
31 | QString url;
32 | QString shortcut;
33 | QString name;
34 | };
35 |
36 | #endif
--------------------------------------------------------------------------------
/plugins/controly/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GUI_H
21 | #define GUI_H
22 |
23 | #include "ui_dlg.h"
24 | #include "globals.h"
25 |
26 | class Gui : public QWidget, private Ui::Dlg
27 | {
28 | Q_OBJECT
29 |
30 | public:
31 | Gui(QWidget* parent);
32 | ~Gui() { this->hide(); }
33 | void writeOptions();
34 | };
35 |
36 | #endif
37 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2010 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GUI_H
21 | #define GUI_H
22 |
23 | #include "ui_dlg.h"
24 | #include "globals.h"
25 |
26 |
27 | class Gui : public QWidget, private Ui::Dlg
28 | {
29 | Q_OBJECT
30 |
31 | public:
32 | Gui(QWidget* parent);
33 | ~Gui();
34 | void writeOptions();
35 |
36 | public slots:
37 | };
38 |
39 | #endif
40 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/readme.txt:
--------------------------------------------------------------------------------
1 | ========================================================================
2 | MAKEFILE PROJECT : MyPlugin Project Overview
3 | ========================================================================
4 |
5 | AppWizard has created this MyPlugin project for you.
6 |
7 | This file contains a summary of what you will find in each of the files that
8 | make up your MyPlugin project.
9 |
10 |
11 | MyPlugin.vcproj
12 | This is the main project file for VC++ projects generated using an Application Wizard.
13 | It contains information about the version of Visual C++ that generated the file, and
14 | information about the platforms, configurations, and project features selected with the
15 | Application Wizard.
16 |
17 | This project allows you to build/clean/rebuild from within Visual Studio by calling the commands you have input
18 | in the wizard. The build command can be nmake or any other tool you use.
19 |
20 | This project does not contain any files, so there are none displayed in Solution Explorer.
21 |
22 | /////////////////////////////////////////////////////////////////////////////
23 |
--------------------------------------------------------------------------------
/src/pluginpy/TestWidget.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #pragma once
20 |
21 | #include "PluginPyLib.h"
22 |
23 | namespace pluginpy {
24 |
25 | class PLUGINPY_EXPORT TestWidget {
26 | public:
27 | static TestWidget& instance();
28 |
29 | void initTestWidget();
30 |
31 | private:
32 | TestWidget();
33 | Q_DISABLE_COPY(TestWidget)
34 |
35 | private:
36 | QWidget* m_testWidget;
37 | };
38 |
39 |
40 | }
41 |
42 |
43 |
--------------------------------------------------------------------------------
/src/FileSearch.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 |
21 | #ifndef FILESEARCH_H
22 | #define FILESEARCH_H
23 |
24 | #include "CatalogItem.h"
25 | #include "InputDataList.h"
26 |
27 | namespace launchy {
28 | class FileSearch {
29 | public:
30 | static void search(const QString& searchText,
31 | QList& searchResults,
32 | InputDataList& inputData);
33 | };
34 | }
35 |
36 | #endif
37 |
--------------------------------------------------------------------------------
/plugins/loader/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GUI_H
21 | #define GUI_H
22 |
23 | #include "ui_dlg.h"
24 | #include "globals.h"
25 | //#include
26 |
27 |
28 | class Gui : public QWidget, private Ui::Dlg
29 | {
30 |
31 |
32 | Q_OBJECT
33 | private:
34 | public:
35 | Gui(QWidget* parent);
36 | ~Gui() { this->hide(); }
37 |
38 | public slots:
39 | };
40 |
41 | #endif
42 |
--------------------------------------------------------------------------------
/src_old/platforms/gnome/gnome.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | TARGET = platform_gnome
3 | CONFIG += plugin qt_warn debug_and_release
4 | VPATH += ../../src/ ../unix
5 | INCLUDEPATH += ../../src/ ../unix
6 | SOURCES = platform_x11_hotkey.cpp platform_base_hotkey.cpp \
7 | platform_gnome.cpp platform_gnome_util.cpp \
8 | platform_unix.cpp platform_unix_util.cpp
9 |
10 | HEADERS = platform_base.h platform_gnome.h \
11 | platform_base_hotkey.h platform_base_hottrigger.h \
12 | platform_gnome_util.h platform_unix.h \
13 | platform_unix_util.h
14 |
15 | CONFIG -= embed_manifest_dll
16 | CONFIG += link_pkgconfig
17 | PKGCONFIG += gtk+-2.0 libgnomeui-2.0 gnome-desktop-2.0
18 | LIBS += -lX11 -lXext -lXrender
19 |
20 | DEFINES += SKINS_PATH=$(SKINS_PATH) PLUGINS_PATH=$(PLUGINS_PATH)\
21 | PLATFORMS_PATH=$(PLATFORMS_PATH)
22 |
23 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
24 | DESTDIR = ../../debug/
25 | }
26 |
27 | if(!debug_and_release|build_pass):CONFIG(release, debug|release) {
28 | DESTDIR = ../../release/
29 | }
30 |
31 |
32 |
33 |
34 | unix {
35 | }
36 |
--------------------------------------------------------------------------------
/src/Directory.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 | #include
24 |
25 | namespace launchy {
26 | struct Directory {
27 | Directory();
28 | Directory(const QString& n);
29 | Directory(const QString& n, const QStringList& t, bool d, bool e, int dep);
30 |
31 | bool indexDirs;
32 | bool indexExe;
33 | QString name;
34 | QStringList types;
35 | int depth;
36 | };
37 | }
38 |
--------------------------------------------------------------------------------
/src/pluginpy/ExportPy.h:
--------------------------------------------------------------------------------
1 | /*
2 | PluginPy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #pragma once
20 |
21 | #include
22 | #include
23 |
24 | namespace py = pybind11;
25 |
26 | namespace exportpy {
27 |
28 | void registerPlugin(py::object pluginClass);
29 |
30 | unsigned int hash(const std::string& str);
31 |
32 | std::string getAppPath(bool toNative = true);
33 |
34 | void runProgram(const std::string& file, const std::string& args);
35 |
36 | // for debu and test use
37 | void objectReceiver(py::object obj);
38 | }
--------------------------------------------------------------------------------
/plugins/verby/precompiled.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #ifdef _MSC_VER
23 | #pragma warning(push,3)
24 | #endif
25 | #include
26 |
27 | #include
28 | #ifdef Q_OS_WIN
29 | #include
30 | #include
31 | #include
32 | #endif
33 |
34 | #include
35 | #include
36 | #include
37 |
38 | #ifdef _MSC_VER
39 | #pragma warning(pop)
40 | #endif
41 |
42 |
--------------------------------------------------------------------------------
/plugins/winshell/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GUI_H
21 | #define GUI_H
22 |
23 | #include "ui_dlg.h"
24 | #include "globals.h"
25 | //#include
26 |
27 |
28 | class Gui : public QWidget, private Ui::Dlg
29 | {
30 |
31 |
32 | Q_OBJECT
33 | private:
34 | public:
35 | Gui(QWidget* parent);
36 | ~Gui() { this->hide(); }
37 | void writeOptions();
38 |
39 | public slots:
40 | void newRow();
41 | void remRow();
42 | };
43 |
44 | #endif
--------------------------------------------------------------------------------
/deps/SingleApplication/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) Itay Grudev 2015 - 2016
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
23 | Note: Some of the examples include code not distributed under the terms of the
24 | MIT License.
25 |
--------------------------------------------------------------------------------
/plugins/controly/gui.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #include "precompiled.h"
21 | #include "gui.h"
22 | #include "controly.h"
23 |
24 | Gui::Gui(QWidget* parent)
25 | : QWidget(parent)
26 | {
27 | setupUi(this);
28 |
29 | QSettings* settings = *gControlyInstance->settings;
30 | if (settings == NULL)
31 | return;
32 | }
33 |
34 | void Gui::writeOptions()
35 | {
36 | QSettings* settings = *gControlyInstance->settings;
37 | if (settings == NULL)
38 | return;
39 | }
40 |
--------------------------------------------------------------------------------
/plugins/gcalc/gcalc.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | QT += network
3 | CONFIG += plugin debug_and_release
4 | VPATH += ../../src/
5 | INCLUDEPATH += ../../src/
6 | INCLUDEPATH += c:/boost/
7 | PRECOMPILED_HEADER = precompiled.h
8 | UI_DIR = ../../plugins/gcalc/
9 | HEADERS = plugin_interface.h gcalc.h precompiled.h
10 | SOURCES = plugin_interface.cpp gcalc.cpp
11 | TARGET = gcalc
12 | win32 {
13 | CONFIG -= embed_manifest_dll
14 | LIBS += user32.lib shell32.lib
15 | QMAKE_CXXFLAGS_RELEASE += /Zi
16 | QMAKE_LFLAGS_RELEASE += /DEBUG
17 | }
18 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/plugins
19 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/plugins
20 | unix:!macx {
21 | PREFIX = /usr
22 | target.path = $$PREFIX/lib/launchy/plugins/
23 |
24 | # icon.path = $$PREFIX/lib/launchy/plugins/icons/
25 | # icon.files = gcalc.png
26 | INSTALLS += target
27 | }
28 | macx {
29 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/Launchy.app/Contents/MacOS/plugins
30 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/Launchy.app/Contents/MacOS/plugins
31 |
32 |
33 | INCLUDEPATH += /opt/local/include/
34 | }
35 |
--------------------------------------------------------------------------------
/src_old/platform_util.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | #include
3 | #include
4 | #include "plugin_interface.h"
5 | #include "platform_util.h"
6 | #include "globals.h"
7 | #include "main.h"
8 |
9 |
10 | PlatformBase * loadPlatform()
11 | {
12 | QList files;
13 | QString file;
14 |
15 | #ifdef Q_WS_WIN
16 | // Look for the platform file in the same directory as the executable
17 | wchar_t module_name[MAX_PATH+1];
18 | GetModuleFileNameW(0, module_name, MAX_PATH);
19 | module_name[MAX_PATH] = 0;
20 | QFileInfo fileInfo = QString::fromUtf16((ushort*)module_name);
21 | QString filePath = fileInfo.path();
22 | SetCurrentDirectory(filePath.utf16());
23 | files += "platform_win.dll";
24 | #endif
25 | #ifdef Q_WS_X11
26 | files += "libplatform_unix.so";
27 | files += QString(PLATFORMS_PATH) + "/libplatform_unix.so";
28 | #endif
29 |
30 | QObject * plugin = NULL;
31 | foreach(QString file, files)
32 | {
33 | qDebug() << file;
34 | QPluginLoader loader(file);
35 | plugin = loader.instance();
36 | if (plugin)
37 | break;
38 | qDebug() << loader.errorString();
39 | }
40 |
41 | if (!plugin)
42 | {
43 | qDebug() << "Could not load platform file!";
44 | exit(1);
45 | }
46 |
47 | return qobject_cast(plugin);
48 | }
49 | */
--------------------------------------------------------------------------------
/plugins/runner/precompiled.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef PRECOMPILED_H
21 | #define PRECOMPILED_H
22 |
23 | #ifdef _MSC_VER
24 | #pragma warning(push,3)
25 | #endif
26 |
27 | #include
28 |
29 | #ifdef _MSC_VER
30 | #pragma warning(pop)
31 | #endif
32 |
33 | #include
34 | // #include
35 |
36 | // using namespace boost;
37 |
38 |
39 | #ifdef Q_OS_WIN
40 | #include
41 | #endif
42 |
43 |
44 | #endif // PRECOMPILED_H
45 |
--------------------------------------------------------------------------------
/src/AnimationLabel.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2010 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 | #include
24 |
25 | namespace launchy {
26 |
27 | class AnimationLabel : public QLabel
28 | {
29 | public:
30 | AnimationLabel(QWidget* parent);
31 | virtual ~AnimationLabel();
32 |
33 | public:
34 | void LoadAnimation(const QString& animationPath);
35 |
36 | public slots:
37 | void Start();
38 | void Stop();
39 |
40 | private:
41 | QPointer animation;
42 | };
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/src/lib/PluginInfo.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #include
20 | #include "LaunchyLib.h"
21 | namespace launchy {
22 | class PluginInterface;
23 |
24 | // This structure is used by plugins such as PyLaunchy, so it must not be extended
25 | // with virtual methods or additional data members
26 | struct LAUNCHY_EXPORT PluginInfo {
27 | uint id;
28 | QString name;
29 | QString path;
30 | PluginInterface* obj;
31 | bool loaded;
32 |
33 | PluginInfo();
34 | ~PluginInfo();
35 |
36 | bool isValid() const;
37 |
38 | int sendMsg(int msgId, void* wParam = NULL, void* lParam = NULL);
39 | };
40 | }
41 |
--------------------------------------------------------------------------------
/src/pluginpy/PluginWrapper.h:
--------------------------------------------------------------------------------
1 |
2 | #pragma once
3 |
4 | #include "PluginInterface.h"
5 | #include "ExportPyPlugin.h"
6 | #include "InputData.h"
7 | #include "CatalogItem.h"
8 |
9 | namespace pluginpy {
10 |
11 | class PluginWrapper : public launchy::PluginInterface {
12 |
13 | public:
14 | PluginWrapper(exportpy::Plugin* plugin);
15 | virtual ~PluginWrapper();
16 |
17 | virtual int msg(int msgId, void* wParam = NULL, void* lParam = NULL);
18 |
19 | private:
20 | void init();
21 | void setPath(const QString* path);
22 | void getLabels(QList* inputData);
23 | void getID(uint* id);
24 | void getName(QString* name);
25 | void getResults(QList* inputData, QList* result);
26 | void getCatalog(QList* catItem);
27 | void launchItem(QList* inputData, launchy::CatItem* catItem);
28 | bool hasDialog();
29 | void doDialog(QWidget* parent, QWidget** dialog);
30 | void endDialog(bool accept);
31 | void launchyShow();
32 | void launchyHide();
33 |
34 | //! Does the actual work of calling a Python function
35 | int dispatchFunction(int msgId, void* wParam, void* lParam);
36 |
37 |
38 | private:
39 | exportpy::Plugin* m_plugin;
40 | static QMutex s_inPythonLock;
41 | };
42 |
43 | }
44 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/dlg.ui:
--------------------------------------------------------------------------------
1 |
2 |
3 | Dlg
4 |
5 |
6 |
7 | 0
8 | 0
9 | 464
10 | 271
11 |
12 |
13 |
14 | MyPlugin - Example Launchy Plugin
15 |
16 |
17 | -
18 |
19 |
20 | Option 1
21 |
22 |
23 |
24 | -
25 |
26 |
27 | Option 2
28 |
29 |
30 |
31 | -
32 |
33 |
34 | Qt::Vertical
35 |
36 |
37 |
38 | 20
39 | 40
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
--------------------------------------------------------------------------------
/plugins/calcy/Calculator.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Calcy - plugin for Launchy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #include "Calculator.h"
20 | #include "exprtk.hpp"
21 |
22 | bool Calculator::calculate(const std::string& expr, double& result) {
23 | typedef exprtk::symbol_table symbol_table_t;
24 | typedef exprtk::expression expression_t;
25 | typedef exprtk::parser parser_t;
26 |
27 | expression_t expression;
28 | //expression.register_symbol_table(symbol_table);
29 |
30 | parser_t parser;
31 | bool ret = parser.compile(expr, expression);
32 | result = expression.value();
33 |
34 | return ret;
35 | }
36 |
37 |
--------------------------------------------------------------------------------
/src/win/IconProviderWin.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 |
24 | class IconProviderWin : public QFileIconProvider {
25 | public:
26 | IconProviderWin();
27 | virtual ~IconProviderWin();
28 |
29 | virtual QIcon icon(const QFileInfo& info) const;
30 | void setPreferredIconSize(int size);
31 |
32 | private:
33 | bool addIconFromImageList(int imageListIndex, int iconIndex, QIcon& icon) const;
34 | bool addIconFromShellFactory(const QString& filePath, QIcon& icon) const;
35 |
36 | int m_preferredSize;
37 | };
38 |
--------------------------------------------------------------------------------
/src/pluginpy/pluginconf.py:
--------------------------------------------------------------------------------
1 |
2 | import sys, os
3 |
4 | print("sys.prefix:", sys.prefix)
5 | xlib = os.path.join(sys.prefix, 'Lib')
6 | sys.path.insert(0, xlib)
7 | sys.path.insert(0, sys.prefix)
8 | sys.path.insert(0, ".")
9 |
10 | path = os.environ.get('PATH', '')
11 | #print ("env.path(origin):", path)
12 |
13 | os.environ['PATH'] = path + os.pathsep + sys.prefix + os.pathsep
14 |
15 | print ("sys.path1:", sys.path)
16 | print ("env.path1:", os.environ.get('PATH', ''))
17 |
18 | import site
19 | site.main()
20 |
21 | print ("sys.path2:", sys.path)
22 | print ("env.path2:", os.environ.get('PATH', ''))
23 |
24 | os.chdir(sys.prefix)
25 |
26 |
27 | from PyQt5.QtWidgets import (QWidget, QToolTip,
28 | QPushButton, QApplication)
29 | from PyQt5.QtGui import QFont
30 |
31 | class Example(QWidget):
32 | def __init__(self):
33 | super().__init__()
34 | self.initUI()
35 |
36 | def initUI(self):
37 | QToolTip.setFont(QFont('SansSerif', 10))
38 |
39 | self.setToolTip('This is a QWidget widget')
40 |
41 | btn = QPushButton('Button', self)
42 | btn.setToolTip('This is a QPushButton widget')
43 | btn.resize(btn.sizeHint())
44 | btn.move(50, 50)
45 |
46 | self.setGeometry(300, 300, 300, 200)
47 | self.setWindowTitle('Tooltips')
48 | self.show()
49 |
50 | #ex = Example()
51 |
--------------------------------------------------------------------------------
/plugins/calcy/Converter.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Calcy - plugin for LaunchyQt
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #include "Converter.h"
20 |
21 | bool Converter::octStr(qlonglong num, QString& reslut) {
22 | reslut = "0" + QString::number(num, 8);
23 | return true;
24 | }
25 |
26 | bool Converter::decStr(qlonglong num, QString& reslut) {
27 | reslut = QString::number(num, 10);
28 | return true;
29 | }
30 |
31 | bool Converter::hexStr(qlonglong num, QString& reslut) {
32 | reslut = "0x" + QString::number(num, 16);
33 | return true;
34 | }
35 |
36 | bool Converter::binStr(qlonglong num, QString& reslut) {
37 | reslut = QString::number(num, 2);
38 | return true;
39 | }
--------------------------------------------------------------------------------
/src/UpdateChecker.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #pragma once
20 |
21 | #include
22 |
23 | class QNetworkAccessManager;
24 | class QTimer;
25 |
26 | namespace launchy {
27 | class UpdateChecker : public QObject{
28 | Q_OBJECT
29 | public:
30 | static UpdateChecker& instance();
31 | void startup();
32 | void reloadConfig();
33 | void manualCheck();
34 |
35 | private:
36 | UpdateChecker();
37 | Q_DISABLE_COPY(UpdateChecker)
38 |
39 | private slots:
40 | void getVersionInfo();
41 | void replyFinished(QNetworkReply* reply);
42 |
43 | private:
44 | QNetworkAccessManager* m_mgr;
45 | QTimer* m_timerStartup;
46 | bool m_manualCheck;
47 | };
48 |
49 | }
--------------------------------------------------------------------------------
/plugins/controly/precompiled.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef PRECOMPILED_H
21 | #define PRECOMPILED_H
22 |
23 | #ifdef _MSC_VER
24 | #pragma warning(push,3)
25 | #endif
26 |
27 | #include
28 |
29 | #ifdef _MSC_VER
30 | #pragma warning(pop)
31 | #endif
32 |
33 | #include
34 |
35 | #ifdef Q_WS_WIN
36 | #define _WIN32_WINNT 0x0600
37 | #define _WIN32_IE 0x0700
38 | #include
39 | #include
40 | #include
41 | #include
42 | #include
43 | #endif
44 |
45 |
46 | #endif // PRECOMPILED_H
47 |
--------------------------------------------------------------------------------
/plugins/weby/globals.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GLOBALS_H
21 | #define GLOBALS_H
22 | #include
23 |
24 | struct WebySite {
25 | QString base;
26 | QString name;
27 | QString query;
28 | QString suggest;
29 | bool def;
30 |
31 | WebySite() { def = false; }
32 |
33 | WebySite(QString b, QString n, QString q, bool d = true, QString s = "") :
34 | base(b), name(n), query(q), suggest(s), def(d) {}
35 | };
36 |
37 | struct Bookmark {
38 | QString url;
39 | QString shortcut;
40 | QString name;
41 | };
42 |
43 | #endif
44 |
--------------------------------------------------------------------------------
/src/CommandHistory.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include "CatalogItem.h"
23 | #include "InputDataList.h"
24 | namespace launchy {
25 | class CommandHistory {
26 | public:
27 | CommandHistory();
28 |
29 | bool load(const QString& filename);
30 | void save(const QString& filename) const;
31 |
32 | void addItem(const InputDataList& item);
33 | void removeAt(int index);
34 | const InputDataList& getItem(int index);
35 | void search(const QString& searchText, QList& searchResults) const;
36 |
37 | private:
38 | QLinkedList m_history;
39 | };
40 | }
41 |
--------------------------------------------------------------------------------
/src/pluginpy/PluginLoader.h:
--------------------------------------------------------------------------------
1 | /*
2 | PluginPy
3 | Copyright (C) 2017 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #pragma once
20 |
21 | #include "PluginPyLib.h"
22 |
23 | namespace launchy { class PluginInterface; }
24 |
25 | namespace pluginpy {
26 |
27 | class PLUGINPY_EXPORT PluginLoader {
28 | public:
29 | PluginLoader(const QString& pluginName, const QString& pluginPath);
30 |
31 | launchy::PluginInterface* instance();
32 |
33 | bool unload();
34 |
35 | static void initSettings(QSettings* setting);
36 |
37 | private:
38 | void setFileName(const QString& fileName);
39 | bool load();
40 |
41 | private:
42 | QString m_pluginName;
43 | QString m_pluginPath;
44 | launchy::PluginInterface* m_interface;
45 | };
46 |
47 | }
48 |
--------------------------------------------------------------------------------
/src/win/launchy.rc:
--------------------------------------------------------------------------------
1 |
2 | #include
3 |
4 | /////////////////////////////////////////////////////////////////////////////
5 | //
6 | // Icon
7 | //
8 |
9 | // Icon with lowest ID value placed first to ensure application icon
10 | // remains consistent on all systems.
11 | IDI_ICON1 ICON DISCARDABLE "launchy.ico"
12 |
13 |
14 | /////////////////////////////////////////////////////////////////////////////
15 | //
16 | // Version
17 | //
18 |
19 | VS_VERSION_INFO VERSIONINFO
20 | FILEVERSION 3,0,4,0
21 | PRODUCTVERSION 3,0,4,0
22 | // FILEFLAGSMASK 0x3fL
23 | // #ifdef _DEBUG
24 | // FILEFLAGS 0x1L
25 | // #else
26 | // FILEFLAGS 0x0L
27 | // #endif
28 | // FILEOS 0x4L
29 | // FILETYPE 0x1L
30 | // FILESUBTYPE 0x0L
31 | BEGIN
32 | BLOCK "StringFileInfo"
33 | BEGIN
34 | BLOCK "040904E4"
35 | BEGIN
36 | VALUE "FileDescription", "LaunchyQt"
37 | VALUE "FileVersion", "3.0.4.0"
38 | VALUE "InternalName", "Launchy.exe"
39 | VALUE "LegalCopyright", "GPLv3"
40 | VALUE "OriginalFilename", "Launchy.exe"
41 | VALUE "ProductName", "Launchy"
42 | VALUE "ProductVersion", "3.0.4.0"
43 | END
44 | END
45 | BLOCK "VarFileInfo"
46 | BEGIN
47 | VALUE "Translation", 0x409, 1252
48 | END
49 | END
50 |
--------------------------------------------------------------------------------
/plugins/tasky/Precompiled.h:
--------------------------------------------------------------------------------
1 |
2 | #pragma once
3 |
4 | // Modify the following defines if you have to target a platform prior to the ones specified below.
5 | // Refer to MSDN for the latest info on corresponding values for different platforms.
6 | #ifndef WINVER // Allow use of features specific to Windows XP or later.
7 | #define WINVER 0x0501 // Change this to the appropriate value to target other versions of Windows.
8 | #endif
9 |
10 | #ifndef _WIN32_WINNT // Allow use of features specific to Windows XP or later.
11 | #define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows.
12 | #endif
13 |
14 | #ifndef _WIN32_WINDOWS // Allow use of features specific to Windows 98 or later.
15 | #define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
16 | #endif
17 |
18 | #ifndef _WIN32_IE // Allow use of features specific to IE 6.0 or later.
19 | #define _WIN32_IE 0x0600 // Change this to the appropriate value to target other versions of IE.
20 | #endif
21 |
22 | //#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
23 |
24 | // Windows Header Files:
25 | #include
26 | #include
27 | #include
28 | #include
29 | #include
30 |
31 | #include
32 | #include
33 | #include
34 | #include
35 | #include
36 | #include
37 |
38 |
--------------------------------------------------------------------------------
/src/pluginpy/launchy_test.py:
--------------------------------------------------------------------------------
1 |
2 | import sys, os
3 | import launchy
4 |
5 | print("launchy_test")
6 | print("sys.path4:", sys.path)
7 | print("env.path4:", os.environ.get('PATH', ''))
8 |
9 | def setTestWidgetObject():
10 | print("launchy_test, setTestWidgetObject called")
11 | # Set the launchy.settings object
12 | try:
13 | # Based on http://lists.kde.org/?l=pykde&m=108947844203156&w=2
14 | from PyQt5 import QtCore
15 | from sip import wrapinstance, unwrapinstance
16 | from PyQt5.QtWidgets import QApplication, QWidget
17 | print("QApplication:", QApplication)
18 | print("QWidget:", QWidget)
19 | print("QtCore:", QtCore)
20 | print("launchy:", dir(launchy))
21 | launchy.testWidget = wrapinstance(launchy.__testWidget, QWidget)
22 | print(launchy.testWidget)
23 | except ImportError as err:
24 | print("ImportError,", err)
25 | except NameError:
26 | print("launchy_test, NameError")
27 | except Exception as err:
28 | print("Exception,", err)
29 |
30 |
31 | def initTestWidget():
32 | from PyQt5 import QtWidgets
33 | print("launchy_test, initTestwidget called")
34 | testWidget = launchy.testWidget
35 | testWidget.label = QtWidgets.QLabel(testWidget)
36 | testWidget.label.setText("hello world")
37 | testWidget.show()
38 |
39 | try:
40 | setTestWidgetObject()
41 | initTestWidget()
42 | except Exception as err:
43 | print("launchy_test,", err)
44 |
--------------------------------------------------------------------------------
/plugins/gcalc/precompiled.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef PRECOMPILED_H
21 | #define PRECOMPILED_H
22 |
23 |
24 | #ifdef Q_OS_WIN
25 | #include
26 | #include
27 | #include
28 | #include
29 | #include
30 | #include
31 | #endif
32 |
33 | #ifdef _MSC_VER
34 | #pragma warning(push,3)
35 | #endif
36 |
37 | #include
38 | #include
39 | #include
40 | #include
41 |
42 | #ifdef _MSC_VER
43 | #pragma warning(pop)
44 | #endif
45 |
46 |
47 | // #include
48 | // using namespace boost;
49 |
50 | #endif // PRECOMPILED_H
51 |
--------------------------------------------------------------------------------
/src/Fader.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include "Precompiled.h"
23 |
24 | namespace launchy {
25 | class Fader : public QThread {
26 | Q_OBJECT
27 | public:
28 | Fader(QObject* parent = NULL);
29 | virtual ~Fader();
30 |
31 | void fadeIn(bool quick);
32 | void fadeOut(bool quick);
33 | void run();
34 |
35 | inline void stop() { m_keepRunning = false; }
36 | inline bool isFading() const { return m_delta < 0 && isRunning(); }
37 |
38 | signals:
39 | void fadeLevel(double level);
40 |
41 | private:
42 | QMutex m_mutex;
43 | bool m_keepRunning;
44 |
45 | double m_delta;
46 | int m_delay;
47 |
48 | double m_level;
49 | double m_targetLevel;
50 | };
51 | }
52 |
--------------------------------------------------------------------------------
/plugins/weby/precompiled.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef PRECOMPILED_H
21 | #define PRECOMPILED_H
22 |
23 | #ifdef _MSC_VER
24 | #pragma warning(push,3)
25 | #endif
26 |
27 | #include
28 | #include
29 | #include
30 |
31 | #ifdef _MSC_VER
32 | #pragma warning(pop)
33 | #endif
34 |
35 | #include
36 | // #include
37 |
38 | // using namespace boost;
39 |
40 |
41 | #ifdef Q_WS_WIN
42 | #include
43 | #include
44 | #include
45 | #include
46 | #include
47 | #include
48 | #endif
49 |
50 |
51 | #endif // PRECOMPILED_H
52 |
--------------------------------------------------------------------------------
/plugins/runner/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GUI_H
21 | #define GUI_H
22 |
23 |
24 | #include "FileBrowserDelegate.h"
25 | #include "ui_dlg.h"
26 | #include "globals.h"
27 | #include
28 |
29 | class Gui : public QWidget, private Ui::Dlg
30 | {
31 |
32 | Q_OBJECT
33 | public:
34 | Gui(QWidget* parent, QSettings* settings);
35 | ~Gui() { this->hide(); }
36 | void writeOptions();
37 |
38 | private slots:
39 | void newRow();
40 | void remRow();
41 | void dragEnter(QDragEnterEvent *event);
42 | void drop(QDropEvent *event);
43 |
44 | private:
45 | void appendRow(const QString& name, const QString& file, const QString& args);
46 |
47 | QSettings* settings;
48 | FileBrowserDelegate delegate;
49 | };
50 |
51 | #endif
52 |
--------------------------------------------------------------------------------
/src/DropListWidget.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef DROPLISTWIDGET_H
21 | #define DROPLISTWIDGET_H
22 |
23 |
24 | #include
25 |
26 | namespace launchy {
27 | class DropListWidget : public QListWidget {
28 | Q_OBJECT
29 | public:
30 | DropListWidget(QWidget* pParent = NULL);
31 | virtual ~DropListWidget();
32 |
33 | protected:
34 | virtual void dragEnterEvent(QDragEnterEvent *event);
35 | virtual void dragMoveEvent(QDragMoveEvent *event);
36 | virtual void dropEvent(QDropEvent *event);
37 |
38 | signals:
39 | void dragEnter(QDragEnterEvent *event);
40 | void dragMove(QDragMoveEvent *event);
41 | void drop(QDropEvent *event);
42 | };
43 | }
44 |
45 | #endif
46 |
--------------------------------------------------------------------------------
/plugins/weby/gui.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef GUI_H
21 | #define GUI_H
22 |
23 | #include "ui_dlg.h"
24 | #include "globals.h"
25 | #include
26 |
27 | class Gui : public QWidget, private Ui::Dlg
28 | {
29 | Q_OBJECT
30 | private:
31 | QList sites;
32 | public:
33 | Gui(QWidget* parent, QSettings* settings);
34 | ~Gui() { this->hide(); }
35 | void writeOptions();
36 | QString defaultName;
37 |
38 | public slots:
39 | void newRow();
40 | void remRow();
41 | void dragEnter(QDragEnterEvent *event);
42 | void drop(QDropEvent *event);
43 | void makeDefault();
44 | void clearDefault();
45 |
46 | private:
47 | void appendRow(const QString& name, const QString& path);
48 |
49 | QSettings* settings;
50 | };
51 |
52 | #endif
53 |
--------------------------------------------------------------------------------
/src/InputDataList.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include "InputDataList.h"
3 | #include "GlobalVar.h"
4 | namespace launchy {
5 |
6 | QString InputDataList::s_separator = QString(" ") + QChar(0x25ba) + QString(" ");
7 |
8 | void InputDataList::setSeparator(const QString& sepa) {
9 | s_separator = sepa;
10 | }
11 |
12 | void InputDataList::parse(const QString& text) {
13 | if (text.isEmpty()) {
14 | clear();
15 | }
16 | else {
17 | QStringList split = text.split(s_separator);
18 |
19 | // Truncate inputData to the same length as the new input text
20 | if (split.count() < count()) {
21 | erase(begin() + split.count(), end());
22 | }
23 |
24 | // Truncate to the first different entry
25 | for (int i = 0; i < count(); ++i) {
26 | (*this)[i].clearLabel();
27 | if (at(i).getText() != split[i]) {
28 | erase(begin() + i, end());
29 | break;
30 | }
31 | }
32 |
33 | // And add anything new
34 | for (int i = count(); i < split.count(); ++i) {
35 | InputData data(split[i]);
36 | push_back(data);
37 | }
38 | }
39 | }
40 |
41 | QString InputDataList::toString(bool omitLast) const {
42 | QString result = "";
43 | for (int i = 0; i < count(); ++i) {
44 | if (i > 0) {
45 | result += s_separator;
46 | }
47 | if (!omitLast || i < count()-1) {
48 | result += at(i).getText();
49 | }
50 | }
51 | return result;
52 | }
53 | }
--------------------------------------------------------------------------------
/src/DropListWidget.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #include "Precompiled.h"
21 | #include "DropListWidget.h"
22 |
23 | namespace launchy {
24 | DropListWidget::DropListWidget(QWidget* pParent)
25 | : QListWidget(pParent) {
26 | setAcceptDrops(true);
27 | }
28 |
29 | DropListWidget::~DropListWidget() {
30 | }
31 |
32 | void DropListWidget::dragEnterEvent(QDragEnterEvent *event) {
33 | emit dragEnter(event);
34 | event->acceptProposedAction();
35 | }
36 |
37 | void DropListWidget::dragMoveEvent(QDragMoveEvent *event) {
38 | emit dragMove(event);
39 | event->acceptProposedAction();
40 | }
41 |
42 | void DropListWidget::dropEvent(QDropEvent *event) {
43 | emit drop(event);
44 | event->acceptProposedAction();
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/plugins/controly/controly.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | CONFIG += plugin \
3 | release
4 | VPATH += ../../src/
5 | INCLUDEPATH += ../../src/
6 | PRECOMPILED_HEADER = precompiled.h
7 | DEFINES += WITH_GUI
8 |
9 | # UI_DIR = ../../plugins/controly/
10 | FORMS = dlg.ui
11 | HEADERS = plugin_interface.h \
12 | controly.h \
13 | gui.h \
14 | ControlPanelItemFinder.h \
15 | fhoicon.h \
16 | fhoenv.h \
17 | fhoreg.h \
18 | fhores.h \
19 | precompiled.h
20 | SOURCES = plugin_interface.cpp \
21 | controly.cpp \
22 | gui.cpp \
23 | ControlPanelItemFinder.cpp \
24 | fhoicon.cpp \
25 | fhoenv.cpp \
26 | fhoreg.cpp \
27 | fhores.cpp
28 | TARGET = controly
29 | win32 {
30 | CONFIG -= embed_manifest_dll
31 | LIBS += shell32.lib
32 | LIBS += user32.lib
33 | LIBS += Gdi32.lib
34 | LIBS += comctl32.lib
35 | LIBS += Advapi32.lib
36 | LIBS += ole32.lib
37 | LIBS += shlwapi.lib
38 | QMAKE_CXXFLAGS_RELEASE += /Zi
39 | QMAKE_LFLAGS_RELEASE += /DEBUG
40 | # disable optimizations to prevent crashes with certain third party control panel
41 | # applets when Controly is built using VC++ 2005.
42 | QMAKE_CXXFLAGS_RELEASE -= -O2
43 | }
44 |
45 | # *:debug {
46 | # DESTDIR = ../../debug/plugins/
47 | # }
48 | # *:release {
49 | # DESTDIR = ../../release/plugins/
50 | # %QMAKE_CXXFLAGS += /Ox /Ob2 /Oi /Oy /GT /GA /WX
51 | # }
52 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/plugins
53 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/plugins
54 |
--------------------------------------------------------------------------------
/src_old/platforms/gnome/platform_gnome.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include "platform_unix.h"
23 | #include "platform_unix_util.h"
24 | #include "platform_gnome_util.h"
25 | #include "platform_base.h"
26 | #include "platform_base_hotkey.h"
27 | #include "platform_base_hottrigger.h"
28 |
29 |
30 |
31 | class PlatformGnome : public PlatformUnix
32 | {
33 | private:
34 |
35 | Q_OBJECT
36 | Q_INTERFACES(PlatformBase)
37 | public:
38 | PlatformGnome();
39 | ~PlatformGnome();
40 |
41 | QApplication* init(int* argc, char** argv);
42 |
43 | void AddToNotificationArea() {};
44 | void RemoveFromNotificationArea() {};
45 |
46 | void alterItem(CatItem*);
47 | bool Execute(QString path, QString args);
48 | };
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/src/win/AppWin.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include "AppBase.h"
23 | class CrashDumper;
24 |
25 | namespace launchy {
26 | class AppWin : public AppBase {
27 | public:
28 | AppWin(int& argc, char** argv);
29 | virtual ~AppWin();
30 |
31 | virtual void setPreferredIconSize(int size);
32 | virtual QHash> getDirectories();
33 | virtual QList getDefaultCatalogDirectories();
34 | virtual QString expandEnvironmentVars(QString);
35 | virtual bool supportsAlphaBorder() const;
36 | virtual void sendInstanceCommand(int command);
37 | virtual bool getComputers(QStringList& computers) const;
38 |
39 | private:
40 | HANDLE localMutex;
41 | HANDLE globalMutex;
42 | CrashDumper* m_crashDumper;
43 | };
44 | }
45 |
--------------------------------------------------------------------------------
/src/IconExtractor.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2009 Simon Capewell, Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 | #include
24 | #include
25 | #include
26 | #include
27 | #include
28 | #include "CatalogItem.h"
29 |
30 | namespace launchy {
31 | class IconExtractor : public QThread {
32 | Q_OBJECT
33 | public:
34 | IconExtractor();
35 | void processIcon(const CatItem& item, bool highPriority = false);
36 | void processIcons(const QList& newItems, bool reset = true);
37 | void stop();
38 |
39 | protected:
40 | virtual void run();
41 |
42 | signals:
43 | void iconExtracted(int itemIndex, QString path, QIcon icon);
44 |
45 | private:
46 | QIcon getIcon(const CatItem& item);
47 |
48 | QMutex m_mutex;
49 | QQueue m_items;
50 | };
51 | }
52 |
--------------------------------------------------------------------------------
/deps/SingleApplication/Windows.md:
--------------------------------------------------------------------------------
1 | Windows Specific Implementations
2 | ================================
3 |
4 | Setting the foreground window
5 | -----------------------------
6 |
7 | In the `instanceStarted()` example in the `README` we demonstrated how an
8 | application can bring it's primary instance window whenever a second copy
9 | of the application is started.
10 |
11 | On Windows the ability to bring the application windows to the foreground is
12 | restricted, see [`AllowSetForegroundWindow()`][AllowSetForegroundWindow] for more
13 | details.
14 |
15 | The background process (the primary instance) can bring its windows to the
16 | foreground if it is allowed by the current foreground process (the secondary
17 | instance). To bypass this `SingleApplication` must be initialized with the
18 | `allowSecondary` parameter set to `true` and the `options` parameter must
19 | include `Mode::SecondaryNotification`, See `SingleApplication::Mode` for more
20 | details.
21 |
22 | Here is an example:
23 |
24 | ```cpp
25 | if( app.isSecondary() ) {
26 | // This API requires LIBS += User32.lib to be added to the project
27 | AllowSetForegroundWindow( DWORD( app.getPrimaryPid() ) );
28 | }
29 |
30 | if( app.isPrimary() ) {
31 | QObject::connect(
32 | &app,
33 | &SingleApplication::instanceStarted,
34 | this,
35 | &App::instanceStarted
36 | );
37 | }
38 | ```
39 |
40 | ```cpp
41 | void App::instanceStarted() {
42 | QApplication::setActiveWindow( [window/widget to set to the foreground] );
43 | }
44 | ```
45 |
46 | [AllowSetForegroundWindow]: https://msdn.microsoft.com/en-us/library/windows/desktop/ms632668.aspx
47 |
--------------------------------------------------------------------------------
/deps/pybind11/detail/typeid.h:
--------------------------------------------------------------------------------
1 | /*
2 | pybind11/detail/typeid.h: Compiler-independent access to type identifiers
3 |
4 | Copyright (c) 2016 Wenzel Jakob
5 |
6 | All rights reserved. Use of this source code is governed by a
7 | BSD-style license that can be found in the LICENSE file.
8 | */
9 |
10 | #pragma once
11 |
12 | #include
13 | #include
14 |
15 | #if defined(__GNUG__)
16 | #include
17 | #endif
18 |
19 | NAMESPACE_BEGIN(PYBIND11_NAMESPACE)
20 | NAMESPACE_BEGIN(detail)
21 | /// Erase all occurrences of a substring
22 | inline void erase_all(std::string &string, const std::string &search) {
23 | for (size_t pos = 0;;) {
24 | pos = string.find(search, pos);
25 | if (pos == std::string::npos) break;
26 | string.erase(pos, search.length());
27 | }
28 | }
29 |
30 | PYBIND11_NOINLINE inline void clean_type_id(std::string &name) {
31 | #if defined(__GNUG__)
32 | int status = 0;
33 | std::unique_ptr res {
34 | abi::__cxa_demangle(name.c_str(), nullptr, nullptr, &status), std::free };
35 | if (status == 0)
36 | name = res.get();
37 | #else
38 | detail::erase_all(name, "class ");
39 | detail::erase_all(name, "struct ");
40 | detail::erase_all(name, "enum ");
41 | #endif
42 | detail::erase_all(name, "pybind11::");
43 | }
44 | NAMESPACE_END(detail)
45 |
46 | /// Return a string representation of a C++ type
47 | template static std::string type_id() {
48 | std::string name(typeid(T).name());
49 | detail::clean_type_id(name);
50 | return name;
51 | }
52 |
53 | NAMESPACE_END(PYBIND11_NAMESPACE)
54 |
--------------------------------------------------------------------------------
/plugins/verby/verby.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | CONFIG += plugin \
3 | release
4 | VPATH += ../../src/
5 | INCLUDEPATH += ../../src/
6 | PRECOMPILED_HEADER = precompiled.h
7 | UI_DIR = ../../plugins/Verby/
8 | FORMS = dlg.ui
9 | HEADERS = plugin_interface.h \
10 | gui.h \
11 | Verby.h \
12 | precompiled.h
13 | SOURCES = plugin_interface.cpp \
14 | gui.cpp \
15 | Verby.cpp
16 | TARGET = verby
17 | win32 {
18 | CONFIG -= embed_manifest_dll
19 | LIBS += user32.lib shell32.lib
20 | QMAKE_CXXFLAGS_RELEASE += /Zi
21 | QMAKE_LFLAGS_RELEASE += /DEBUG
22 | }
23 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/plugins
24 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/plugins
25 | unix:!macx {
26 | PREFIX = /usr
27 | target.path = $$PREFIX/lib/launchy/plugins/
28 | icon.path = $$PREFIX/lib/launchy/plugins/icons/
29 | icon.files = verby.png copy.png opencontainer.png properties.png run.png
30 | INSTALLS += target \
31 | icon
32 | }
33 | macx {
34 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/Launchy.app/Contents/MacOS/plugins
35 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/Launchy.app/Contents/MacOS/plugins
36 | CONFIG(debug, debug|release):icons.path = ../../debug/Launchy.app/Contents/MacOS/plugins/icons/
37 | CONFIG(release, debug|release):icons.path = ../../release/Launchy.app/Contents/MacOS/plugins/icons/
38 | icons.files = verby.png copy.png opencontainer.png properties.png run.png
39 | INSTALLS += icons
40 | INCLUDEPATH += /opt/local/include/
41 | }
42 |
--------------------------------------------------------------------------------
/src/pluginpy/PluginMgr.h:
--------------------------------------------------------------------------------
1 | /*
2 | PluginPy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #pragma once
20 |
21 | #include
22 |
23 | namespace launchy { class PluginInterface; }
24 | namespace py = pybind11;
25 |
26 | namespace pluginpy {
27 |
28 | class PluginMgr {
29 | public:
30 | static PluginMgr& instance();
31 |
32 | launchy::PluginInterface* loadPlugin(const QString& pluginName, const QString& pluginPath);
33 | bool unloadPlugin(uint pluginId);
34 |
35 | void initSettings(QSettings* setting);
36 |
37 | void registerPlugin(py::object pluginClass);
38 |
39 | private:
40 | PluginMgr();
41 | ~PluginMgr();
42 | PluginMgr(const PluginMgr&) = delete;
43 | PluginMgr& operator=(const PluginMgr&) = delete;
44 |
45 | private:
46 | // type of python (embedable or installed)
47 | QVector m_pluginClass;
48 | QHash m_pluginObject;
49 | QHash m_pluginInterface;
50 | //QVector m_pluginObject;
51 | };
52 |
53 | }
54 |
--------------------------------------------------------------------------------
/plugins/calcy/calcy.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | CONFIG += plugin \
3 | debug_and_release
4 | VPATH += ../../src/
5 | INCLUDEPATH += ../../src/
6 | #INCLUDEPATH += c:/boost/
7 | PRECOMPILED_HEADER = precompiled.h
8 | UI_DIR = ../../plugins/calcy/
9 | HEADERS = plugin_interface.h \
10 | calcy.h \
11 | precompiled.h \
12 | gui.h
13 | SOURCES = plugin_interface.cpp \
14 | calcy.cpp \
15 | gui.cpp
16 | FORMS += dlg.ui
17 |
18 | TARGET = calcy
19 |
20 | win32 {
21 | CONFIG -= embed_manifest_dll
22 | LIBS += user32.lib shell32.lib
23 | QMAKE_CXXFLAGS_RELEASE += /Zi
24 | QMAKE_LFLAGS_RELEASE += /DEBUG
25 | }
26 |
27 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/plugins
28 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/plugins
29 |
30 | unix:!macx {
31 | PREFIX = /usr
32 | target.path = $$PREFIX/lib/launchy/plugins/
33 | icon.path = $$PREFIX/lib/launchy/plugins/icons/
34 | icon.files = calcy.png
35 | INSTALLS += target \
36 | icon
37 | }
38 |
39 |
40 | macx {
41 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/Launchy.app/Contents/MacOS/plugins
42 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/Launchy.app/Contents/MacOS/plugins
43 |
44 | CONFIG(debug, debug|release):icons.path = ../../debug/Launchy.app/Contents/MacOS/plugins/icons/
45 | CONFIG(release, debug|release):icons.path = ../../release/Launchy.app/Contents/MacOS/plugins/icons/
46 | icons.files = calcy.png
47 | INSTALLS += icons
48 |
49 | INCLUDEPATH += /opt/local/include/
50 | }
51 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/gui.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2010 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #include
21 | #include "gui.h"
22 | #include "myplugin.h"
23 |
24 |
25 | Gui::Gui(QWidget* parent)
26 | : QWidget(parent)
27 | {
28 | setupUi(this);
29 | QSettings* settings = *gmypluginInstance->settings;
30 | if (settings == NULL)
31 | return;
32 |
33 | chkOption1->setChecked(settings->value("myplugin/option1", true).toBool());
34 | chkOption2->setChecked(settings->value("myplugin/option2", true).toBool());
35 | }
36 |
37 |
38 | Gui::~Gui()
39 | {
40 | this->hide();
41 | }
42 |
43 |
44 | void Gui::writeOptions()
45 | {
46 | QSettings* settings = *gmypluginInstance->settings;
47 | if (settings == NULL)
48 | return;
49 |
50 | settings->setValue("myplugin/option1", chkOption1->isChecked());
51 | settings->setValue("myplugin/option2", chkOption2->isChecked());
52 | }
53 |
--------------------------------------------------------------------------------
/src/GlobalVar.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2010 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 | #include
24 | class QSettings;
25 |
26 | namespace launchy {
27 |
28 | extern const int LAUNCHY_VERSION;
29 | extern const char* LAUNCHY_VERSION_STRING;
30 | extern const char* LAUNCHY_BIT_STRING;
31 |
32 | extern const uint HASH_LAUNCHY;
33 | extern const uint HASH_HISTORY;
34 | extern const uint HASH_LAUNCHYFILE;
35 | extern const uint LABEL_FILE;
36 | extern const uint LABEL_AUTOSUGGEST;
37 | extern const uint LABEL_HISTORY;
38 |
39 | class AppBase;
40 | class LaunchyWidget;
41 | class Catalog;
42 | class CatalogBuilder;
43 |
44 | extern QScopedPointer g_app;
45 | extern QScopedPointer g_mainWidget;
46 | extern QScopedPointer g_settings;
47 | extern QScopedPointer g_catalog;
48 | extern QScopedPointer g_builder;
49 | extern QString g_searchText;
50 |
51 | }
52 |
--------------------------------------------------------------------------------
/src/CatalogBuilder.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2010 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 | #include "PluginHandler.h"
24 | class QThread;
25 | namespace launchy {
26 | class CatalogBuilder : public QObject, public INotifyProgressStep {
27 | Q_OBJECT
28 | public:
29 | CatalogBuilder();
30 | virtual ~CatalogBuilder();
31 |
32 | int getProgress() const;
33 | int isRunning() const;
34 | virtual bool progressStep(int newStep);
35 |
36 | public slots:
37 | void buildCatalog();
38 |
39 | signals:
40 | void catalogIncrement(int);
41 | void catalogFinished();
42 |
43 | private:
44 | void indexDirectory(const QString& dir, const QStringList& filters,
45 | bool fdirs, bool fbin, int depth);
46 | QThread* m_thread;
47 |
48 | QSet m_indexed;
49 | int m_progress;
50 | int m_currentItem;
51 | int m_totalItems;
52 | };
53 | }
54 |
--------------------------------------------------------------------------------
/src/CharLineEdit.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #ifndef CHARLINEEDIT_H
21 | #define CHARLINEEDIT_H
22 |
23 | #include
24 |
25 | namespace launchy {
26 | class CharLineEdit : public QLineEdit {
27 | Q_OBJECT
28 | public:
29 | CharLineEdit(QWidget* parent = 0);
30 |
31 | void processKey(QKeyEvent* event);
32 | bool focusNextPrevChild(bool next);
33 |
34 | QString separatorText() const;
35 |
36 | protected:
37 | virtual void keyPressEvent(QKeyEvent* event);
38 | virtual void focusInEvent(QFocusEvent* event);
39 | virtual void focusOutEvent(QFocusEvent* event);
40 | virtual void inputMethodEvent(QInputMethodEvent *event);
41 |
42 | signals:
43 | void keyPressed(QKeyEvent* event);
44 | void focusIn();
45 | void focusOut();
46 | void inputMethod(QInputMethodEvent *event);
47 |
48 | private:
49 | bool isAtStartOfSeparator() const;
50 | bool isAtEndOfSeparator() const;
51 | QChar separatorChar() const;
52 | };
53 | }
54 |
55 | #endif
56 |
--------------------------------------------------------------------------------
/plugins/weby/weby.pro:
--------------------------------------------------------------------------------
1 | TEMPLATE = lib
2 | QT += network
3 | CONFIG += plugin \
4 | debug_and_release
5 | VPATH += ../../src/
6 | PRECOMPILED_HEADER = precompiled.h
7 | INCLUDEPATH += ../../src/
8 | INCLUDEPATH += c:/boost/
9 | INCLUDEPATH += ../../common
10 | UI_DIR = ../../plugins/weby/
11 | FORMS = dlg.ui
12 | HEADERS = plugin_interface.h \
13 | weby.h \
14 | gui.h \
15 | globals.h \
16 | ../../common/DropTableWidget.h \
17 | precompiled.h \
18 | IconCache.h
19 | SOURCES = plugin_interface.cpp \
20 | weby.cpp \
21 | gui.cpp \
22 | ../../common/DropTableWidget.cpp \
23 | IconCache.cpp
24 | TARGET = weby
25 | win32 {
26 | CONFIG -= embed_manifest_dll
27 | LIBS += user32.lib shell32.lib
28 | }
29 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/plugins
30 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/plugins
31 | unix:!macx {
32 | PREFIX = /usr
33 | target.path = $$PREFIX/lib/launchy/plugins/
34 | icon.path = $$PREFIX/lib/launchy/plugins/icons/
35 | icon.files = weby.png
36 | INSTALLS += target \
37 | icon
38 | }
39 |
40 | macx {
41 | if(!debug_and_release|build_pass):CONFIG(debug, debug|release):DESTDIR = ../../debug/Launchy.app/Contents/MacOS/plugins
42 | if(!debug_and_release|build_pass):CONFIG(release, debug|release):DESTDIR = ../../release/Launchy.app/Contents/MacOS/plugins
43 | CONFIG(debug, debug|release):icons.path = ../../debug/Launchy.app/Contents/MacOS/plugins/icons/
44 | CONFIG(release, debug|release):icons.path = ../../release/Launchy.app/Contents/MacOS/plugins/icons/
45 | icons.files = weby.png
46 | INSTALLS += icons
47 | INCLUDEPATH += /opt/local/include/
48 | }
49 |
--------------------------------------------------------------------------------
/src_old/platform_base_hotkey.h:
--------------------------------------------------------------------------------
1 | /*
2 | * globalshortcutmanager.h - Class managing global shortcuts
3 | * Copyright (C) 2006 Maciej Niedzielski
4 | *
5 | * This program is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU General Public License
7 | * as published by the Free Software Foundation; either version 2
8 | * of the License, or (at your option) any later version.
9 | *
10 | * This program is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | * GNU General Public License for more details.
14 | *
15 | * You should have received a copy of the GNU General Public License
16 | * along with this library; if not, write to the Free Software
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 | *
19 | */
20 |
21 | #ifndef GLOBALSHORTCUTMANAGER_H
22 | #define GLOBALSHORTCUTMANAGER_H
23 |
24 | #include
25 | #include
26 | #include
27 |
28 |
29 | class QObject;
30 | //class KeyTrigger;
31 |
32 | class GlobalShortcutManager : public QObject
33 | {
34 | public:
35 | static GlobalShortcutManager* instance();
36 | static void connect(const QKeySequence& key, QObject* receiver, const char* slot);
37 | static void disconnect(const QKeySequence& key, QObject* receiver, const char* slot);
38 | static bool isConnected(const QKeySequence& key);
39 | static void clear();
40 |
41 | private:
42 | GlobalShortcutManager();
43 | virtual ~GlobalShortcutManager();
44 |
45 | private:
46 | static GlobalShortcutManager* instance_;
47 | class KeyTrigger;
48 | QMap triggers_;
49 | };
50 |
51 | #endif
52 |
--------------------------------------------------------------------------------
/src/FileBrowserDelegate.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2009 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 | #ifndef FILEBROWSERDELEGATE_H
20 | #define FILEBROWSERDELEGATE_H
21 |
22 | #include "FileBrowser.h"
23 | #include
24 | #include
25 | #include
26 | #include
27 |
28 | namespace launchy {
29 | class FileBrowserDelegate : public QStyledItemDelegate {
30 | Q_OBJECT
31 |
32 | public:
33 | FileBrowserDelegate(QObject* parent = 0, FileBrowser::BrowseType browseType = FileBrowser::File);
34 |
35 | QWidget *createEditor(QWidget* parent, const QStyleOptionViewItem& option, const QModelIndex& index) const;
36 |
37 | void setEditorData(QWidget* editor, const QModelIndex& index) const;
38 | void setModelData(QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const;
39 |
40 | void updateEditorGeometry(QWidget* editor, const QStyleOptionViewItem& option, const QModelIndex& index) const;
41 |
42 | private:
43 | FileBrowser::BrowseType m_browseType;
44 | };
45 | }
46 |
47 | #endif
48 |
--------------------------------------------------------------------------------
/src_old/platforms/mac/platform_mac.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2010 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 | #include "platform_base.h"
22 | #include "platform_base_hotkey.h"
23 | #include "platform_base_hottrigger.h"
24 |
25 | class PlatformMac : public PlatformBase
26 | {
27 | Q_OBJECT
28 |
29 | public:
30 | PlatformMac(int& argc, char** argv);
31 | ~PlatformMac();
32 |
33 | virtual void setPreferredIconSize(int size) { size = size; return; }
34 | virtual QKeySequence getHotkey() const { return oldKey; }
35 | virtual bool setHotkey(const QKeySequence& newHotkey, QObject* receiver, const char* slot);
36 | virtual QHash > getDirectories();
37 | virtual QList getDefaultCatalogDirectories();
38 | virtual QString expandEnvironmentVars(QString);
39 | virtual bool supportsAlphaBorder() const { return true; }
40 | virtual bool isAlreadyRunning() const;
41 | virtual void alterItem(CatItem* item);
42 | private:
43 | QKeySequence oldKey;
44 |
45 | };
46 |
47 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/myplugin.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 | #pragma once
20 |
21 | #define PLUGIN_NAME "MyPlugin"
22 |
23 | #include "plugin_interface.h"
24 |
25 | class Gui;
26 |
27 |
28 | class mypluginPlugin : public QObject, public PluginInterface
29 | {
30 | Q_OBJECT
31 | Q_INTERFACES(PluginInterface)
32 |
33 | public:
34 | uint HASH_myplugin;
35 |
36 | public:
37 | mypluginPlugin();
38 | ~mypluginPlugin();
39 | int msg(int msgId, void* wParam = NULL, void* lParam = NULL);
40 |
41 | void getLabels(QList*);
42 | void getID(uint*);
43 | void getName(QString*);
44 | void getResults(QList* id, QList* results);
45 | void getCatalog(QList* items);
46 | void launchItem(QList*, CatItem*);
47 | void doDialog(QWidget* parent, QWidget**);
48 | void endDialog(bool accept);
49 | void init();
50 | QString getIcon();
51 |
52 | private:
53 | Gui* gui;
54 | };
55 |
56 | extern mypluginPlugin* gmypluginInstance;
57 |
--------------------------------------------------------------------------------
/src/CharListWidget.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 |
24 | namespace launchy {
25 | class IconDelegate;
26 |
27 | class CharListWidget : public QListWidget {
28 | Q_OBJECT
29 | public:
30 | CharListWidget(QWidget* parent = 0);
31 |
32 | void updateGeometry(const QPoint& basePos, const QPoint& offset);
33 | void resetGeometry();
34 | void setListMode(int mode);
35 | void setIconSize(int size);
36 |
37 | protected:
38 | virtual void keyPressEvent(QKeyEvent* event);
39 | virtual void mouseDoubleClickEvent(QMouseEvent* event);
40 | virtual void focusInEvent(QFocusEvent* event);
41 | virtual void focusOutEvent(QFocusEvent* event);
42 |
43 | signals:
44 | void keyPressed(QKeyEvent* event);
45 | void focusIn();
46 | void focusOut();
47 |
48 | private:
49 | QRect m_baseGeometry;
50 | IconDelegate* m_iconListDelegate;
51 | QAbstractItemDelegate* m_defaultListDelegate;
52 | QLabel* m_alternativePath;
53 | };
54 | }
55 |
--------------------------------------------------------------------------------
/src/win/CrashDumper.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2010 Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 |
24 | // from dbghelp.h
25 | typedef BOOL(WINAPI *MINIDUMPWRITEDUMP)(HANDLE hProcess, DWORD dwPid, HANDLE hFile, MINIDUMP_TYPE DumpType,
26 | CONST PMINIDUMP_EXCEPTION_INFORMATION ExceptionParam,
27 | CONST PMINIDUMP_USER_STREAM_INFORMATION UserStreamParam,
28 | CONST PMINIDUMP_CALLBACK_INFORMATION CallbackParam);
29 |
30 | class CrashDumper {
31 | public:
32 | CrashDumper(const TCHAR* appName);
33 | private:
34 | static LONG WINAPI TopLevelFilter(struct _EXCEPTION_POINTERS *exceptionInfo);
35 | static MINIDUMPWRITEDUMP GetMiniDumpWriteFunction();
36 | static bool CreateMiniDump(const TCHAR* postfix, struct _EXCEPTION_POINTERS *exceptionInfo, MINIDUMP_TYPE dumpType);
37 | static BOOL DirectoryExists(LPCTSTR szPath);
38 |
39 | static MINIDUMPWRITEDUMP m_dumpFunction;
40 | static TCHAR* m_appName;
41 | };
42 |
43 |
--------------------------------------------------------------------------------
/src/SettingsManager.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2010 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 | #include
24 | #include
25 | #include "Directory.h"
26 |
27 | namespace launchy {
28 | class SettingsManager {
29 | public:
30 | static SettingsManager& instance();
31 |
32 | public:
33 | void load();
34 |
35 | bool isPortable() const;
36 | QList directory(QString name) const;
37 | QString catalogFilename() const;
38 | QString historyFilename() const;
39 | QString skinPath(const QString& skinName) const;
40 | void setPortable(bool makePortable);
41 | void removeAll();
42 | void setProfileName(const QString& name);
43 | QList readCatalogDirectories();
44 | void writeCatalogDirectories(QList& directories);
45 |
46 | private:
47 | SettingsManager();
48 | Q_DISABLE_COPY(SettingsManager)
49 |
50 | private:
51 | QString configDirectory(bool portable) const;
52 |
53 | private:
54 | bool m_portable;
55 | QString m_profileName;
56 | QHash> m_dirs;
57 | };
58 | }
59 |
--------------------------------------------------------------------------------
/src/lib/PluginInfo.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #include "PluginInfo.h"
20 | #include
21 | #include
22 | #include "PluginInterface.h"
23 |
24 | namespace launchy {
25 | PluginInfo::PluginInfo()
26 | : id(0),
27 | obj(nullptr),
28 | loaded(false) {
29 | }
30 |
31 | PluginInfo::~PluginInfo() {
32 | QPluginLoader loader(path);
33 | loader.unload();
34 | }
35 |
36 | bool PluginInfo::isValid() const {
37 | return obj && !name.isNull() && id > 0;
38 | }
39 |
40 | int PluginInfo::sendMsg(int msgId, void* wParam, void* lParam) {
41 | // This should have some kind of exception guard to prevent
42 | // Launchy from crashing when a plugin is misbehaving.
43 | // This would consist of a try/catch block to handle C++ exceptions
44 | // and on Windows would also include a structured exception handler
45 |
46 | int ret = 0;
47 | try {
48 | ret = obj->msg(msgId, wParam, lParam);
49 | }
50 | catch (const std::exception& e) {
51 | qWarning() << "PluginInfo::sendMsg, exception catched:" << e.what();
52 | }
53 | return ret;
54 | }
55 | }
--------------------------------------------------------------------------------
/dist/win/Microsoft.VC80.CRT.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | n9On8FItNsK/DmT8UQxu6jYDtWQ=
6 | 0KJ/VTwP4OUHx98HlIW2AdW1kuY=
7 | YJuB+9Os2oxW4mY+2oC/r8lICZE=
8 |
--------------------------------------------------------------------------------
/plugins/controly/fhores.cpp:
--------------------------------------------------------------------------------
1 | // Copyright 2009 Fabian Hofsaess
2 |
3 | #include "precompiled.h"
4 | #include "fhores.h"
5 | #include "fhoenv.h"
6 |
7 |
8 | const DWORD maxSize = 256;
9 |
10 | QString FhoRes::getResourceString(HINSTANCE hLib, int resourceId) {
11 | QString resourceString;
12 |
13 | if (hLib != NULL) {
14 | TCHAR buffer[maxSize];
15 |
16 | int res = LoadString(hLib, abs(resourceId), buffer, maxSize);
17 | if (res != 0) {
18 | resourceString = QString::fromUtf16(buffer);
19 | }
20 | }
21 |
22 | return resourceString;
23 | }
24 |
25 | QString FhoRes::getResourceString(QString &resourceName, int resourceId) {
26 | // e.g. '@%SystemRoot%\system32\SHELL32.dll' ,-32517
27 |
28 | QString resourceString;
29 |
30 | QString libraryName = FhoEnv::expand(resourceName);
31 | // remove leading @
32 | if (libraryName.startsWith('@')) {
33 | libraryName = libraryName.right(libraryName.length()-1);
34 | }
35 |
36 | // can we do this without loading the library (like for icons via ExtractIcon instead of LoadIcon/LoadImage)?
37 | HINSTANCE hLib = LoadLibrary((LPCTSTR) libraryName.utf16());
38 | if (hLib != NULL) {
39 | resourceString = getResourceString(hLib, resourceId);
40 |
41 | FreeLibrary(hLib);
42 | }
43 |
44 | return resourceString;
45 | }
46 |
47 | QString FhoRes::getResourceString(QString &resourceIdentifier) {
48 | // e.g. '@%SystemRoot%\system32\SHELL32.dll,-32517'
49 |
50 | QString resourceString;
51 |
52 | QStringList split = resourceIdentifier.split(",", QString::SkipEmptyParts);
53 | if (split.size() == 2) {
54 | QString resourceName = split.at(0);
55 | QString resourceIdStr = split.at(1);
56 | int resourceId = resourceIdStr.toInt();
57 |
58 | resourceString = getResourceString(resourceName, resourceId);
59 | }
60 |
61 | return resourceString;
62 | }
63 |
64 |
--------------------------------------------------------------------------------
/docs/HOW_TO_BUILD.org:
--------------------------------------------------------------------------------
1 |
2 |
3 | * How to build
4 |
5 | ** Windows with Visual Studio 2015
6 | *** Environments
7 | Here is what I am using for development and release build.
8 | - Visual Studio Community 2015 ([[https://my.visualstudio.com/Downloads?q=visual%2520studio%25202015&wt.mc_id=o~msft~vscom~older-downloads][download page]])
9 | - Qt5.11.1 ([[https://download.qt.io/archive/qt/5.11/5.11.1/][download page]])
10 | - Qt-VS-addin msvc2015 ([[https://download.qt.io/official_releases/vsaddin/][downlaod page]])
11 | - Python3.6.7 ([[https://www.python.org/downloads/release/python-367/][download page]])
12 |
13 | *** Configuration
14 | After you have all the above installed, you need to:
15 | 1. Configure qt-vs-addin to the qt path. I recommend to set name to =Qt5.11.1x64= in the Qt Version panel(and =Qt5.11.1x86= if you want to build a win32 version), because this name will be stored in "Launchy.sln". This [[http://doc.qt.io/archives/vs-addin/vs-addin-managing-projects.html][qt official manual]] maight help.
16 | 2. Change launchy solution's Qt version to what you have just configured in step 1.
17 | 3. Add =PYTHONPATH= in user environment variables (and =PYTHONPATH32= if you want to build a win32 version), the value should be the path that you installed python.
18 |
19 | *** Build and debug
20 | Now you can build and debug Launchy. There are the tips:
21 | 1. You should build in =Release= configuration.
22 | 2. Even when you are debugging, you should still use release configuration, because we have installed python in release, [[https://docs.microsoft.com/en-us/visualstudio/python/working-with-c-cpp-python-in-visual-studio?view=vs-2017][this page]] have more detailed information about VS working with python.
23 | 3. When debugging in release configuration, you may encounter "unwanted fast jumps" when stepping the code, this is because of compile optimization, and you can turn it off temporary in project property panel.
24 |
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/plugin_interface.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 | #include "plugin_interface.h"
20 |
21 | /*! \file
22 | \brief A Documented file.
23 |
24 | Details.
25 | */
26 |
27 | void runProgram(QString path, QString args) {
28 | #ifdef Q_WS_WIN
29 | SHELLEXECUTEINFO ShExecInfo;
30 |
31 | ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
32 | ShExecInfo.fMask = SEE_MASK_FLAG_NO_UI;
33 | ShExecInfo.hwnd = NULL;
34 | ShExecInfo.lpVerb = NULL;
35 | ShExecInfo.lpFile = (LPCTSTR) (path).utf16();
36 | if (args != "") {
37 | ShExecInfo.lpParameters = (LPCTSTR) args.utf16();
38 | } else {
39 | ShExecInfo.lpParameters = NULL;
40 | }
41 | QDir dir(path);
42 | QFileInfo info(path);
43 | if (!info.isDir() && info.isFile())
44 | dir.cdUp();
45 | ShExecInfo.lpDirectory = (LPCTSTR)QDir::toNativeSeparators(dir.absolutePath()).utf16();
46 | ShExecInfo.nShow = SW_NORMAL;
47 | ShExecInfo.hInstApp = NULL;
48 |
49 | ShellExecuteEx(&ShExecInfo);
50 | #endif
51 |
52 | #ifdef Q_WS_MAC
53 |
54 | #endif
55 |
56 | #ifdef Q_WS_X11
57 |
58 | #endif
59 |
60 | }
--------------------------------------------------------------------------------
/docs/docs_old/Plugin API/myplugin/plugin_interface.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 | #include "plugin_interface.h"
20 |
21 | /*! \file
22 | \brief A Documented file.
23 |
24 | Details.
25 | */
26 |
27 | void runProgram(QString path, QString args) {
28 | #ifdef Q_WS_WIN
29 | SHELLEXECUTEINFO ShExecInfo;
30 |
31 | ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
32 | ShExecInfo.fMask = SEE_MASK_FLAG_NO_UI;
33 | ShExecInfo.hwnd = NULL;
34 | ShExecInfo.lpVerb = NULL;
35 | ShExecInfo.lpFile = (LPCTSTR) (path).utf16();
36 | if (args != "") {
37 | ShExecInfo.lpParameters = (LPCTSTR) args.utf16();
38 | } else {
39 | ShExecInfo.lpParameters = NULL;
40 | }
41 | QDir dir(path);
42 | QFileInfo info(path);
43 | if (!info.isDir() && info.isFile())
44 | dir.cdUp();
45 | ShExecInfo.lpDirectory = (LPCTSTR)QDir::toNativeSeparators(dir.absolutePath()).utf16();
46 | ShExecInfo.nShow = SW_NORMAL;
47 | ShExecInfo.hInstApp = NULL;
48 |
49 | ShellExecuteEx(&ShExecInfo);
50 | #endif
51 |
52 | #ifdef Q_WS_MAC
53 |
54 | #endif
55 |
56 | #ifdef Q_WS_X11
57 |
58 | #endif
59 |
60 | }
--------------------------------------------------------------------------------
/skins/Note/style.qss:
--------------------------------------------------------------------------------
1 | #launchy {
2 | }
3 |
4 | #input {
5 | font: 14px "NoteScrawl";
6 | border-width: 0px;
7 | background-color: rgba(0,244,120,0%);
8 | border-style: solid;
9 | color: rgb(157,12,21);
10 | qproperty-alignment: AlignLeft;
11 | qproperty-geometry: rect(25 130 130 25);
12 | }
13 |
14 | #output {
15 | font: 14px "NoteScrawl";
16 | border-width: 0px;
17 | background-color: rgba(0,244,120,0%);
18 | border-style: solid;
19 | color: rgb(157,12,21);
20 | qproperty-alignment: AlignCenter;
21 | qproperty-geometry: rect(25 170 170 20);
22 | }
23 |
24 | #outputIcon {
25 | qproperty-geometry: rect(180 65 32 32);
26 | }
27 |
28 | #alternatives {
29 | font: 12px Sans, Verdana;
30 | background-color: rgb(255,243,149);
31 | alternate-background-color: rgb(255,245,120);
32 | color: rgb(157,12,21);
33 | border-style: solid;
34 | border-width: 2px;
35 | border-color: rgb(255,243,149);
36 | qproperty-geometry: rect(8 215 256 40);
37 | }
38 | QScrollBar#altScroll:vertical {
39 | image: url(scrollBack.png);
40 | width: 16px;
41 | margin: 16px 0px 16px 0px;
42 | }
43 |
44 |
45 | QScrollBar#altScroll::handle:vertical {
46 | background: qlineargradient(x1:0, y1:0.5, x2:1, y2:0.5, stop:0 rgb(255,245,120), stop:0.5 white, stop:1 rgb(255,245,120));
47 | }
48 |
49 | QScrollBar#altScroll::sub-line:vertical {
50 | width: 16px;
51 | height: 16px;
52 | subcontrol-position: top;
53 | subcontrol-origin: margin;
54 | image: url(scrollUp.png);
55 | }
56 |
57 | QScrollBar#altScroll::add-page:vertical {
58 | background: url(scrollBack.png);
59 | }
60 |
61 | QScrollBar#altScroll::sub-page:vertical {
62 | background: url(scrollBack.png);
63 | }
64 |
65 | QScrollBar#altScroll::add-line:vertical {
66 | width: 16px;
67 | height: 16px;
68 | subcontrol-position: bottom;
69 | subcontrol-origin: margin;
70 | image: url(scrollDown.png);
71 | }
72 |
--------------------------------------------------------------------------------
/src/IconDelegate.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include
23 | #include
24 |
25 | #define ROLE_SHORT Qt::DisplayRole
26 | #define ROLE_FULL Qt::ToolTipRole
27 | #define ROLE_ICON Qt::DecorationRole
28 |
29 | namespace launchy {
30 | class IconDelegate : public QStyledItemDelegate {
31 | Q_OBJECT
32 | public:
33 | IconDelegate(QObject *parent = 0);
34 |
35 | virtual void paint(QPainter *painter, const QStyleOptionViewItem &option,
36 | const QModelIndex &index) const;
37 |
38 | virtual QSize sizeHint(const QStyleOptionViewItem &option,
39 | const QModelIndex &index) const;
40 |
41 | void setColor(QString line, bool hi = false);
42 |
43 | void setFamily(QString fam);
44 | void setSize(int s);
45 | void setWeight(int w);
46 | void setItalics(int i);
47 | void setAlternativePathWidget(QLabel* label);
48 |
49 | private:
50 | QColor m_color;
51 | QColor m_hiColor;
52 | QString m_family;
53 | int m_size;
54 | int m_weight;
55 | int italics;
56 | QLabel* m_alternativesPath;
57 | };
58 | }
--------------------------------------------------------------------------------
/src/win/UtilWin.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2007-2009 Josh Karlin, Simon Capewell
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | void UpdateEnvironment();
23 |
24 | QString GetShellDirectory(int type);
25 |
26 | bool EnumerateNetworkServers(QStringList& items, DWORD serverType, const wchar_t* domain = NULL);
27 |
28 | void SetForegroundWindowEx(HWND hWnd);
29 |
30 | /*
31 | class LimitSingleInstance {
32 | public:
33 | LimitSingleInstance(const TCHAR *strMutexName)
34 | {
35 | //Make sure that you use a name that is unique for this application otherwise
36 | //two apps may think they are the same if they are using same name for
37 | //3rd parm to CreateMutex
38 | mutex = CreateMutex(NULL, FALSE, strMutexName); //do early
39 | lastError = GetLastError(); //save for use later...
40 | }
41 |
42 | ~LimitSingleInstance()
43 | {
44 | if (mutex) //Do not forget to close handles.
45 | {
46 | CloseHandle(mutex); //Do as late as possible.
47 | mutex = NULL; //Good habit to be in.
48 | }
49 | }
50 |
51 | bool IsAnotherInstanceRunning()
52 | {
53 | return (ERROR_ALREADY_EXISTS == lastError);
54 | }
55 |
56 | private:
57 | HANDLE mutex;
58 | DWORD lastError;
59 | };
60 | */
61 |
--------------------------------------------------------------------------------
/src_old/platforms/gnome/platform_gnome_util.cpp:
--------------------------------------------------------------------------------
1 |
2 | #include
3 | #include "platform_gnome_util.h"
4 | #include
5 |
6 |
7 | #include
8 | #include
9 | #include
10 | #include
11 |
12 | #include
13 |
14 | QIcon GnomeIconProvider::icon(const QFileInfo& info) const
15 | {
16 | if (info.fileName().endsWith(".png", Qt::CaseInsensitive))
17 | {
18 | return QIcon(info.absoluteFilePath());
19 | }
20 | if (info.fileName().endsWith(".ico", Qt::CaseInsensitive))
21 | return QIcon(info.absoluteFilePath());
22 |
23 | gdk_threads_enter();
24 | GnomeIconLookupResultFlags resultFlags;
25 | char* file = gnome_icon_lookup_sync(gtk_icon_theme_get_default(),
26 | NULL,
27 | info.absoluteFilePath().toLocal8Bit().data(),
28 | NULL,
29 | GNOME_ICON_LOOKUP_FLAGS_NONE,
30 | &resultFlags);
31 | GtkIconInfo* icinfo = gtk_icon_theme_lookup_icon(gtk_icon_theme_get_default(),
32 | file,
33 | 32,
34 | GTK_ICON_LOOKUP_NO_SVG);
35 |
36 | GdkPixbuf* buff = gtk_icon_info_load_icon(icinfo, NULL);
37 | gchar* pixmap;
38 | gsize buflen;
39 |
40 | gdk_pixbuf_save_to_buffer (buff,
41 | &pixmap,
42 | &buflen,
43 | "png",
44 | NULL, NULL);
45 | QPixmap qp;
46 | qp.loadFromData((const uchar*) pixmap, buflen, "png");
47 | QIcon qico(qp);
48 | free(pixmap);
49 | g_object_unref(buff);
50 | gdk_threads_leave();
51 |
52 | return qp;
53 | }
54 |
--------------------------------------------------------------------------------
/src/linux/platform_unix.h:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy: Application Launcher
3 | Copyright (C) 2008 Josh Karlin
4 |
5 | This program is free software; you can redistribute it and/or
6 | modify it under the terms of the GNU General Public License
7 | as published by the Free Software Foundation; either version 2
8 | of the License, or (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program; if not, write to the Free Software
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 | */
19 |
20 | #pragma once
21 |
22 | #include "AppBase.h"
23 | #include "platform_unix_util.h"
24 | #include "Directory.h"
25 |
26 | namespace launchy {
27 |
28 | class AppUnix : public AppBase {
29 | Q_OBJECT
30 | public:
31 | AppUnix(int& argc, char** argv);
32 | virtual ~AppUnix();
33 |
34 | void setPreferredIconSize(int size);
35 |
36 | QString GetSettingsDirectory() { return ""; }
37 | QList getDefaultCatalogDirectories();
38 |
39 |
40 | void AddToNotificationArea() {}
41 | void RemoveFromNotificationArea() {}
42 |
43 | virtual QHash> getDirectories();
44 | virtual QString expandEnvironmentVars(QString txt);
45 |
46 | bool supportsAlphaBorder() const;
47 | /*
48 | QIcon icon(const QFileInfo& info) {
49 | shared_ptr u(dynamic_pointer_cast(icons));
50 | return u->getIcon(info);
51 | // return ((UnixIconProvider*) icons.get())->getIcon(info);
52 | }
53 | */
54 |
55 | virtual void alterItem(CatItem*);
56 | };
57 |
58 | }
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/src_old/platform_base_hottrigger.h:
--------------------------------------------------------------------------------
1 | /*
2 | * globalshortcuttrigger.h - Helper class activating global shortcut
3 | * Copyright (C) 2006 Maciej Niedzielski
4 | *
5 | * This program is free software; you can redistribute it and/or
6 | * modify it under the terms of the GNU General Public License
7 | * as published by the Free Software Foundation; either version 2
8 | * of the License, or (at your option) any later version.
9 | *
10 | * This program is distributed in the hope that it will be useful,
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | * GNU General Public License for more details.
14 | *
15 | * You should have received a copy of the GNU General Public License
16 | * along with this library; if not, write to the Free Software
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 | *
19 | */
20 |
21 | #ifndef GLOBALSHORTCUTTRIGGER_H
22 | #define GLOBALSHORTCUTTRIGGER_H
23 |
24 | #include
25 | #include "platform_base_hotkey.h"
26 | // #include
27 | #include
28 |
29 | // using namespace boost;
30 |
31 | class GlobalShortcutManager::KeyTrigger : public QObject
32 | {
33 | Q_OBJECT
34 | public:
35 | /**
36 | * Is there any slot connected to this hotkey?
37 | */
38 | bool isUsed() const
39 | {
40 | return QObject::receivers(SIGNAL(activated())) > 0;
41 | }
42 |
43 | signals:
44 | void activated();
45 |
46 | private:
47 | friend class GlobalShortcutManager;
48 | /**
49 | * Registers the \a key.
50 | */
51 | KeyTrigger(const QKeySequence& key);
52 | /**
53 | * Unregisters the key.
54 | */
55 | virtual ~KeyTrigger();
56 |
57 | bool isConnected();
58 |
59 | /**
60 | * Platform-specific helper
61 | */
62 | class Impl;
63 | std::shared_ptr d;
64 | };
65 |
66 | #endif
67 |
--------------------------------------------------------------------------------
/deps/QHotkey/QHotkeyP.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include
4 | #include
5 | #include
6 | #include "QHotkey.h"
7 |
8 | class QHotkeyPrivate : public QObject {
9 | Q_OBJECT
10 | public:
11 | Q_DECLARE_PUBLIC(QHotkey)
12 |
13 | explicit QHotkeyPrivate(QHotkey* q);
14 | virtual ~QHotkeyPrivate();
15 |
16 | public:
17 | const QKeySequence& keySeq() const;
18 | void setKeySeq(const QKeySequence& keySeq);
19 | bool registered() const;
20 |
21 | private:
22 | void init();
23 | void unsetKey();
24 |
25 |
26 | private:
27 | static bool activateHotKey(int keyId);
28 | static int calcHotkeyId(const QKeySequence& keySeq);
29 | static int calcHotkeyId(quint32 key, quint32 mod);
30 | static inline Qt::Key getKey(const QKeySequence& keySeq);
31 | static inline Qt::KeyboardModifiers getModifiers(const QKeySequence& keySeq);
32 | static quint32 toNativeKeycode(Qt::Key key);
33 | static quint32 toNativeModifiers(Qt::KeyboardModifiers mod);
34 | static bool registerKey(quint32 key, quint32 mod, int keyId);
35 | static void unregisterKey(quint32 key, quint32 mod, int keyId);
36 |
37 | private:
38 | class EventFilter : public QAbstractNativeEventFilter {
39 | public:
40 | virtual bool nativeEventFilter(const QByteArray &eventType,
41 | void *message,
42 | long *result);
43 | };
44 |
45 | private:
46 | QHotkey* q_ptr;
47 | QKeySequence m_keySeq;
48 | bool m_bRegistered;
49 |
50 | static QScopedPointer s_eventFilter;
51 | static QMultiHash s_hotKeys;
52 |
53 | static struct NativeKeyMap {
54 | Qt::Key qtKey;
55 | quint32 nativeKey;
56 | } s_keyMap[];
57 |
58 | static struct NativeModMap {
59 | Qt::KeyboardModifier qtMod;
60 | quint32 nativeMod;
61 | } s_modMap[];
62 | };
63 |
--------------------------------------------------------------------------------
/src/pluginpy/TestWidget.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Launchy
3 | Copyright (C) 2018 Samson Wang
4 |
5 | This program is free software: you can redistribute it and/or modify
6 | it under the terms of the GNU General Public License as published by
7 | the Free Software Foundation, either version 3 of the License, or
8 | (at your option) any later version.
9 |
10 | This program is distributed in the hope that it will be useful,
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 | GNU General Public License for more details.
14 |
15 | You should have received a copy of the GNU General Public License
16 | along with this program. If not, see .
17 | */
18 |
19 | #include "TestWidget.h"
20 | #include
21 |
22 | namespace py = pybind11;
23 |
24 | namespace pluginpy {
25 |
26 | TestWidget& TestWidget::instance() {
27 | static TestWidget s_obj;
28 | return s_obj;
29 | }
30 |
31 | TestWidget::TestWidget()
32 | : m_testWidget(new QWidget) {
33 |
34 | }
35 |
36 | void pluginpy::TestWidget::initTestWidget() {
37 |
38 | try {
39 | // init qsetting
40 | py::object launchyModule = py::module::import("launchy");
41 | py::object launchyDict = launchyModule.attr("__dict__");
42 | PyObject* widgetPyObj = PyLong_FromVoidPtr(m_testWidget);
43 | launchyDict["__testWidget"] = py::handle(widgetPyObj);
44 |
45 | // run setQSetting from launchy_util
46 | py::object launchyUtilModule = py::module::import("launchy_test");
47 |
48 | m_testWidget->show();
49 | }
50 | catch (const py::error_already_set& e) {
51 | PyErr_Print();
52 | PyErr_Clear();
53 | const char* errInfo = e.what();
54 | qWarning() << "pluginpy::TestWidget::initTestWidget,"
55 | << "fail to init test widget," << errInfo;
56 | }
57 | }
58 |
59 |
60 | }
--------------------------------------------------------------------------------
/docs/docs_old/readme.txt:
--------------------------------------------------------------------------------
1 | For installation instructions, please refer to the INSTALL.txt file. This file is for the author's random notes to himself.
2 |
3 | 2.2 Issues in OS X:
4 | . need to be able to bring launchy up on any virtual desktop, not have to switch to launchy's desktop
5 |
6 | 2.2 Issues in Linux:
7 |
8 |
9 |
10 | Bugs for 2.2:
11 |
12 |
13 | To be done for 2.2 All:
14 | . why are there so many checks for updates on some networks? It seems like it should only happen once..
15 | . add a history of recent commands mapped to up arrow
16 | . fix text alignment problem for output box in skins (discussed in skins 2.0 forum)
17 |
18 | To be done for 2.2 Windows:
19 | . Rescue mode should kill running Launchy's
20 | . .png and .ico files should display correctly.
21 | . add a run as admin option
22 |
23 | To be done for 2.1.3:
24 | . Lost .png support in Windows. It just shows the default png app as opposed to the actual picture. This is due to my switch back in windows for 2.1.2 for .ico support.
25 |
26 |
27 | Done for 2.1.2:
28 | . Multiple tabs problem fixed.
29 | . Added support for plugins to load other plugins (now python plugins can be made)
30 | . Added back .ico support
31 |
32 | 2.0+:
33 | . Add memory for runny/launchy (rebuild/exit/etc..)
34 | . Add a plugin for open with etc..
35 | . Add BBorn's kanji shortcuts
36 |
37 |
38 | Done for 2.1:
39 | . Added default search
40 | . Better file browsing (/ and \ now tab complete)
41 | . Added rescue mode (new shortcut in start menu)
42 | . Fixed the database update timer
43 | . Limited the transparency to a minimum of 15%
44 | . Fixed the centering problem when multiple monitors in use
45 | . Fixed the encoding problem with urls, e.g. googling for "c#" now works
46 | . Searches are now even faster, and the catalog uses slightly less memory.
47 |
48 |
49 | To be fixed from 2.0:
50 | . encording of url characters in weby
51 | . Memory problem
52 |
53 |
54 |
--------------------------------------------------------------------------------