Как попроще реализовать D&D для QSystemTrayIcon?
Он наследуется от QObject, поэтому стандартными методами не получается.
Может кто делал подобное?
QSystemTrayIcon & DragAndDrop
Модератор: Модераторы разделов
-
proDOOMman
- Сообщения: 284
QSystemTrayIcon & DragAndDrop
Ubuntu LL x86 on Acer Extensa 5635G
-
RasenHerz
- Сообщения: 1341
- ОС: Arch Linux amd64
Re: QSystemTrayIcon & DragAndDrop
omg, зачем вам это? И да, думаю прикрутить D&D туда невозможно.
-
proDOOMman
- Сообщения: 284
Re: QSystemTrayIcon & DragAndDrop
Блин, я четко помню что в первом амароке, запущенном в третьих кедах была такая фишка. Перетаскиваешь на иконку в трее файл и выпадает менюшка "Добавить/Воспроизвести/В очередь". Сейчас попробовал запустить амарок:1 в 4-кедах и обломался. Не получилось такого.
Но помню же что было!
Но помню же что было!
Ubuntu LL x86 on Acer Extensa 5635G
-
RasenHerz
- Сообщения: 1341
- ОС: Arch Linux amd64
Re: QSystemTrayIcon & DragAndDrop
proDOOMman писал(а): ↑14.01.2010 11:02Блин, я четко помню что в первом амароке, запущенном в третьих кедах была такая фишка. Перетаскиваешь на иконку в трее файл и выпадает менюшка "Добавить/Воспроизвести/В очередь". Сейчас попробовал запустить амарок:1 в 4-кедах и обломался. Не получилось такого.
Но помню же что было!
А разве это не DE-специфичная возможность? Как вариант предлагаю вам взглянуть в сорцы амарока.
UPD.
кусок сорцев из амарока:
Код: Выделить всё
class App;
namespace Amarok {
class TrayIcon : public KSystemTray, public EngineObserver
{
...
}Как говориться, что и требовалось доказать.
Код: Выделить всё
bool
Amarok::TrayIcon::event( QEvent *e )
{
switch( e->type() )
{
case QEvent::Drop:
case QEvent::Wheel:
case QEvent::DragEnter:
return Amarok::genericEventHandler( this, e );-
proDOOMman
- Сообщения: 284
Re: QSystemTrayIcon & DragAndDrop
Спасибо, буду смотреть исходники амарока.
Ubuntu LL x86 on Acer Extensa 5635G