diff --git a/aegisub/src/ass_dialogue.cpp b/aegisub/src/ass_dialogue.cpp index df22c786c..8cc5fd9f5 100644 --- a/aegisub/src/ass_dialogue.cpp +++ b/aegisub/src/ass_dialogue.cpp @@ -774,14 +774,7 @@ wxString AssDialogue::GetMarginString(int which,bool pad) { -/// @brief Process parameters via callback -/// @param tagName -/// @param par_n -/// @param param -/// @param userData) -/// @param userData -/// -void AssDialogue::ProcessParameters(void (*callback)(wxString tagName,int par_n,AssOverrideParameter *param,void *userData),void *userData) { +void AssDialogue::ProcessParameters(AssDialogueBlockOverride::ProcessParametersCallback callback,void *userData) { // Apply for all override blocks AssDialogueBlockOverride *curBlock; //ParseASSTags(); diff --git a/aegisub/src/ass_dialogue.h b/aegisub/src/ass_dialogue.h index 4f0c6168a..9595c2635 100644 --- a/aegisub/src/ass_dialogue.h +++ b/aegisub/src/ass_dialogue.h @@ -179,7 +179,13 @@ public: ASS_BlockType GetType() { return BLOCK_OVERRIDE; } wxString GetText(); void ParseTags(); // Parses tags - void ProcessParameters(void (*callback)(wxString,int,AssOverrideParameter*,void *),void *userData); + + /// Type of callback function passed to ProcessParameters + typedef void (*ProcessParametersCallback)(wxString,int,AssOverrideParameter*,void *); + /// @brief Process parameters via callback + /// @param callback The callback function to call per tag paramer + /// @param userData User data to pass to callback function + void ProcessParameters(ProcessParametersCallback callback,void *userData); }; @@ -237,7 +243,10 @@ public: void ParseSRTTags(); // Converts tags to ass format and calls ParseASSTags+UpdateData void ClearBlocks(); // Clear all blocks, ALWAYS call this after you're done processing tags - void ProcessParameters(void (*callback)(wxString,int,AssOverrideParameter*,void *userData),void *userData=NULL); // Callback to process parameters + /// @brief Process parameters via callback + /// @param callback The callback function to call per tag paramer + /// @param userData User data to pass to callback function + void ProcessParameters(AssDialogueBlockOverride::ProcessParametersCallback callback,void *userData=NULL); // Callback to process parameters void ConvertTagsToSRT(); // Converts tags to SRT format void StripTags(); // Strips all tags from the text void StripTag(wxString tagName);// Strips a specific tag from the text diff --git a/aegisub/src/ass_override.cpp b/aegisub/src/ass_override.cpp index 3449c5c09..43ec94d3f 100644 --- a/aegisub/src/ass_override.cpp +++ b/aegisub/src/ass_override.cpp @@ -163,12 +163,7 @@ wxString AssDialogueBlockOverride::GetText () { } - -/// @brief Process parameters via callback -/// @param callback -/// @param userData -/// -void AssDialogueBlockOverride::ProcessParameters(void (*callback)(wxString,int,AssOverrideParameter *,void *),void *userData) { +void AssDialogueBlockOverride::ProcessParameters(AssDialogueBlockOverride::ProcessParametersCallback callback,void *userData) { AssOverrideTag *curTag; AssOverrideParameter *curPar;