I am writing a plug-in to allow me to switch between plsql dev and my editor seamlessly. This means being able to synchronize cursor position information between the two. BTW, I am running 7.0.3 beta.
1. I ran into a snag when a package is opened as Spec&Body. The API (IDE_TabInfo() IDE_TabIndex()) reports no tabs for the window.
Is there way to query and select spec or body tabs so that I can get/set the cursor position for each tab and to select the active tab?
Since both are saved to the same file the cursor line information for the body needs to be offset by the number of lines in the spec.
2. I would also like my plug-in to disable the automatic file change detection (when disk file changes) and the corresponding nag message box. Is there an easier way to do this short of window message hooks and monitoring when the message box pops up so that it is dismissed from code?
The reason I want to disable it is because it does not work consistently except for program windows. SQL windows only detect change when they were not modified and (I am not sure about this but almost certain) when the query was not executed.
My plug-in will take care of this and also have automatic file reload when change is detected as an option so there is no nagging.
3. I noticed that the RegisterCallback() function is called with a few undocumented ID's, (these were there in 7.0.2 also):
RegisterCallback(9, 00AD9D24)
RegisterCallback(109, 00ADCAA4)
RegisterCallback(133, 00ADD794)
RegisterCallback(134, 00ADD7FC)
RegisterCallback(135, 00ADD898)
RegisterCallback(170, 00ADDE20)
RegisterCallback(171, 00ADDE28)
RegisterCallback(172, 00ADDE30)
RegisterCallback(176, 00ADE06C)
RegisterCallback(231, 00ADF89C)
Does anyone know what these functions are? The reason I ask is that some of these may solve my problem(s).
1. I ran into a snag when a package is opened as Spec&Body. The API (IDE_TabInfo() IDE_TabIndex()) reports no tabs for the window.
Is there way to query and select spec or body tabs so that I can get/set the cursor position for each tab and to select the active tab?
Since both are saved to the same file the cursor line information for the body needs to be offset by the number of lines in the spec.
2. I would also like my plug-in to disable the automatic file change detection (when disk file changes) and the corresponding nag message box. Is there an easier way to do this short of window message hooks and monitoring when the message box pops up so that it is dismissed from code?
The reason I want to disable it is because it does not work consistently except for program windows. SQL windows only detect change when they were not modified and (I am not sure about this but almost certain) when the query was not executed.
My plug-in will take care of this and also have automatic file reload when change is detected as an option so there is no nagging.
3. I noticed that the RegisterCallback() function is called with a few undocumented ID's, (these were there in 7.0.2 also):
RegisterCallback(9, 00AD9D24)
RegisterCallback(109, 00ADCAA4)
RegisterCallback(133, 00ADD794)
RegisterCallback(134, 00ADD7FC)
RegisterCallback(135, 00ADD898)
RegisterCallback(170, 00ADDE20)
RegisterCallback(171, 00ADDE28)
RegisterCallback(172, 00ADDE30)
RegisterCallback(176, 00ADE06C)
RegisterCallback(231, 00ADF89C)
Does anyone know what these functions are? The reason I ask is that some of these may solve my problem(s).