Qt & Photoshop @ Mac migration problem
-
Hello friends,
I'm writing a photoshop plugin on Mac, and want to create the UI with Qt. But when I just show a simple dialog, the photoshop menu was gone, and wasn't responsible even after close the dialog.
@void PhotoshopPlugin::ShowDialog( )
{
int argc = 0;
QApplication a(argc, 0);HelloDialog w(NULL, 0); w.show(); a.exec();
}@
I know the QmfcApp for windows, which will handle the Qt & MFC migration, and it works for me. But I can't find a Mac version of the qmfcApp.
Any suggestions will be greatly appreciated.
Thanks,
Daniel[EDIT: title adjusted to match the actual question, Volker]
-
Hi,
How is photoshop implemented?
You create a QApplication object, which will have influence to the event loop. and then spin the event loop inside your plugin (a.exec()) .... -
You must use Adobe's means to implement the user interface. You can not use Qt for this (or with only such big effort that it is not worth it).
-
You are not allowed to create photoshop plugin by Qt ...You have to use Photoshop API...
-
Of course, one can use Qt library functions (eg. the string and xml classes) to create a photoshop plugin (as well as eg. an InDesign plugin). One has to follow LGPL rules and provide the DLLs in an appropriate directory or use a commercial license and link statically. The GUI is a different beast, this is subject to Adobe's API as mentioned earlier.
-
One of the largest companies that develops Photoshop plug-ins, "AlienSkin":http://www.alienskin.com/, use Qt. I don't know if their GUI dialogs are made with Qt, but in Windows OS, their plug-in distribution contain QtGUI4.dll.
[EDIT: fixed link name, Volker]
-
Maybe they are just loading and using classes like QPixmap,QBitmap or something like that...but it requires to use Photoshop API to work (as plug-in) with Photoshop UI...
-
thanks guys, I was using the Adobe's way to do the UI (which is ADM suites), but sadly they don't support 64bit. Anyway, I find a post ("http://bugreports.qt.nokia.com/browse/QTBUG-8087":http://bugreports.qt.nokia.com/browse/QTBUG-8087), which works for me.
-
No, you're not obliged to use ADM (Adobe Dialog Manager) to develop Photoshop GUI plug-ins. I have developed several plug-ins for Photoshop, but I've used native Win32 API. Anyway, in the future I'll try to port them to Qt framework.
-
Could anyone give more info about using QT for creating the GUI for Photoshop GUI?
Thanks. -
Hi,
I assume you have some knowledge about "Adobe Photoshop SDK":http://www.adobe.com/devnet/photoshop.html So in
@
FilterRecord::filterSelectorStart
@at least on windows platform, you can init QApplication and next raise a modal dialog box with your UI. I emphasize to use modal dialog box because this enters a local event loop. Note that I did not tested this on Mac, see @frinker first comment.
-
Hi,
Make this the first line (before QApplication instance)
QApplication::setAttribute(Qt::AA_MacPluginApplication);