unit TagEditorLibAddinConsts;

interface

//////////////////////////////////////////
//
// freeDBTagger Addin Constants
// Copyright(C) 2007 by Noradaiko
// http://nw.odoruinu.net/
//
//////////////////////////////////////////


uses
  Windows, SysUtils, Classes, TagEditorLibConsts;

const

// メニューの追加場所
FDBT_ADDIN_PLACE_EXPORT   = 0;     // エクスポート
FDBT_ADDIN_PLACE_IMPORT   = 1;     // インポート
FDBT_ADDIN_PLACE_COMMAND  = 2;     // 機能
FDBT_ADDIN_PLACE_EDITING  = 3;     // 編集
FDBT_ADDIN_PLACE_SETTING  = 4;     // 設定
FDBT_ADDIN_PLACE_TOOLBAR  = 5;     // ツールバー

FDBT_IMAGE_NONE    = -1;
FDBT_IMAGE_DEFAULT = 0;
FDBT_IMAGE_ICON    = 1;
FDBT_IMAGE_BITMAP  = 2;

type

// アドイン実行手続き
TAddinProc = procedure; stdcall;
// アドイン追加関数
TAddinMenu = function(place: integer; Identify: PChar; DisplayName: PChar; ProcExe: TAddinProc; ImageType: integer; Image: cardinal): integer; stdcall;


// トラックデータ操作関数
TTDGetCount = function: integer; stdcall;
TTDGetFieldInfo = function(Index: integer; Info: PTagFieldList; Size: integer): integer; stdcall;
TTDGetFieldData = function(Index: integer; FieldName: PChar; Value: PTagValue): integer; stdcall;
TTDSetFieldData = function(Index: integer; Value: TTagValue): integer; stdcall;
TTDGetSelected = function(Index: integer): bool; stdcall;
TTDGetEditingItem = function(Index: PInteger; FieldName: PChar; Size: integer): integer; stdcall;
TTDGetFilePath = function(Index: integer; fn: PCHar; size: integer): integer; stdcall; 
TTDDeleteItem = function(Index: integer): integer; stdcall;
TTDAddFile = function(fn: PCHar): integer; stdcall; 
TTDLoadFiles = function: integer; stdcall; 


// トラックデータ情報
TTrackDataInfo = record
  GetCount: TTDGetCount;
  GetFieldInfo: TTDGetFieldInfo;
  GetFieldData: TTDGetFieldData;
  SetFieldData: TTDSetFieldData;
  GetSelected: TTDGetSelected;
  GetEditingItem: TTDGetEditingItem;
  GetFilePath: TTDGetFilePath;
  DeleteItem: TTDDeleteItem;
  AddFile: TTDAddFile;
  LoadFiles: TTDLoadFiles;
end;
PTrackDataInfo = ^TTrackDataInfo;

// トラックデータの情報を取得する
TGetTrackDataInfo = function: TTrackDataInfo; stdcall;


implementation

end.
