AIMP Forum

AIMP for PC => Дополнения / Addons => Разработка / Development => Topic started by: ildvild on February 19, 2012, 22:27:28

Title: Константы из модуля AimpSdkAddons
Post by: ildvild on February 19, 2012, 22:27:28
Подскажите как использовать константы из модуля AimpSdkAddons. К примеру мне нужно создать подменю в Утилитах
Title: Re: Константы из модуля AimpSdkAddons
Post by: Artem on February 20, 2012, 08:48:16
см. единственный пример из архива, строка: procedure TAIMPAddonDemoPlugin.MenuInitialize;
Title: Re: Константы из модуля AimpSdkAddons
Post by: ildvild on February 22, 2012, 20:04:09
Подскажите еще пожалуйста, в чем может быть проблема. Создаю меню также как в демо, при этом меню создается но без иконки?
Title: Re: Константы из модуля AimpSdkAddons
Post by: Artem on February 22, 2012, 20:40:51
а иконку каким образом указываете?
Title: Re: Константы из модуля AimpSdkAddons
Post by: ildvild on February 22, 2012, 22:24:29
  также как и в демке  AMenuInfo.Bitmap := LoadBitmap(HInstance, 'AIMP');


полный код
Code: [Select]
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 добавляет окно в раздел плагины в окне настроек?
Title: Re: Константы из модуля AimpSdkAddons
Post by: Artem on February 22, 2012, 23:09:23
Code: [Select]
LoadIcon(0, IDI_EXCLAMATION); <> LoadBitmap
Эти функции возвращают разные значения: одна - иконку, вторая - битмап. Поэтому и не работает.

и сразу ещё вопрос: функция FrameAdd добавляет окно в раздел плагины в окне настроек?

Начиная с AIMP3 настройки всех плагинов находятся в секции "плагины"
Title: Re: Константы из модуля AimpSdkAddons
Post by: ildvild on February 25, 2012, 07:53:24
Никак не могу разобраться с классами IAIMPAddonsOptionsDialogFrame и IAIMPAddonsOptionsDialog.
Приведите пример пожалуйста работы с ними.

Неужели никто не знает? Помогите разобраться как добавить меню настроек в раздел плагины(как на скрине)
(http://s018.radikal.ru/i502/1202/ce/2b3022443678t.jpg) (http://radikal.ru/F/s018.radikal.ru/i502/1202/ce/2b3022443678.jpg.html)
Title: Re: Константы из модуля AimpSdkAddons
Post by: Artem on February 27, 2012, 12:01:20
Вот так это делается
Title: Re: Константы из модуля AimpSdkAddons
Post by: ildvild on February 27, 2012, 15:18:17
спасибо
Title: Константы из модуля AimpSdkAddons
Post by: Djonybops on January 26, 2015, 09:10:26
для Remote использовать нужно только то, что описано в файле AIMPSDKRemote, константы из других юнитов использовать НЕЛЬЗЯ
Title: Константы из модуля AimpSdkAddons
Post by: Djonybops on February 01, 2015, 03:08:43
Ладно... тогда чисто для общего развития - зачем нужны эти константы в AIMPSDKCore.h? Как их использовать из плагина?
Title: Re: Константы из модуля AimpSdkAddons
Post by: Artem on February 01, 2015, 11:47:51
Ладно... тогда чисто для общего развития - зачем нужны эти константы в AIMPSDKCore.h? Как их использовать из плагина?

Обратите внимание, что уже вышла новая версия SDK, мало того, что оно серьезно отличается от предыдущего, так к нему прилагается документация.