AIMP Forum
AIMP for PC => Дополнения / Addons => Разработка / Development => Topic started by: ildvild on February 19, 2012, 22:27:28
-
Подскажите как использовать константы из модуля AimpSdkAddons. К примеру мне нужно создать подменю в Утилитах
-
см. единственный пример из архива, строка: procedure TAIMPAddonDemoPlugin.MenuInitialize;
-
Подскажите еще пожалуйста, в чем может быть проблема. Создаю меню также как в демо, при этом меню создается но без иконки?
-
а иконку каким образом указываете?
-
также как и в демке AMenuInfo.Bitmap := LoadBitmap(HInstance, 'AIMP');
полный код
procedure TDemoPlugin1.MenuInitialize;
var
AMenuInfo: TAIMPMenuItemInfo;
AMenuManager: IAIMPAddonsMenuManager;
begin
if GetMenuManager(AMenuManager) then
try
ZeroMemory(@AMenuInfo, SizeOf(AMenuInfo));
AMenuInfo.StructSize := SizeOf(AMenuInfo);
AMenuInfo.Bitmap := LoadBitmap(HInstance, 'AIMP');
AMenuInfo.Caption := 'Demo Plugin1';
AMenuInfo.Flags := AIMP_MENUITEM_ENABLED;
AMenuInfo.Proc := @_MenuClick;
AMenuInfo.UserData := Self;
FMenuHandle := AMenuManager.MenuCreate(17, @AMenuInfo);
ZeroMemory(@AMenuInfo, SizeOf(AMenuInfo));
AMenuInfo.StructSize := SizeOf(AMenuInfo);
AMenuInfo.Bitmap := LoadIcon(0, IDI_EXCLAMATION);
AMenuInfo.Caption := 'Demo Plugin2';
AMenuInfo.Flags := AIMP_MENUITEM_ENABLED;
AMenuInfo.Proc := @_MenuClick;
AMenuInfo.UserData := Self;
FMenuHandle2 := AMenuManager.MenuCreate(AIMP_MENUID_MAIN_OPTIONS, @AMenuInfo);
finally
AMenuManager := nil;
end;
end;
и сразу ещё вопрос: функция FrameAdd добавляет окно в раздел плагины в окне настроек?
-
LoadIcon(0, IDI_EXCLAMATION); <> LoadBitmap
Эти функции возвращают разные значения: одна - иконку, вторая - битмап. Поэтому и не работает.
и сразу ещё вопрос: функция FrameAdd добавляет окно в раздел плагины в окне настроек?
Начиная с AIMP3 настройки всех плагинов находятся в секции "плагины"
-
Никак не могу разобраться с классами IAIMPAddonsOptionsDialogFrame и IAIMPAddonsOptionsDialog.
Приведите пример пожалуйста работы с ними.
Неужели никто не знает? Помогите разобраться как добавить меню настроек в раздел плагины(как на скрине)
(http://s018.radikal.ru/i502/1202/ce/2b3022443678t.jpg) (http://radikal.ru/F/s018.radikal.ru/i502/1202/ce/2b3022443678.jpg.html)
-
Вот так это делается
-
спасибо
-
для Remote использовать нужно только то, что описано в файле AIMPSDKRemote, константы из других юнитов использовать НЕЛЬЗЯ
-
Ладно... тогда чисто для общего развития - зачем нужны эти константы в AIMPSDKCore.h? Как их использовать из плагина?
-
Ладно... тогда чисто для общего развития - зачем нужны эти константы в AIMPSDKCore.h? Как их использовать из плагина?
Обратите внимание, что уже вышла новая версия SDK, мало того, что оно серьезно отличается от предыдущего, так к нему прилагается документация.