本文整理汇总了C++中XAP_Frame::rebuildMenus方法的典型用法代码示例。如果您正苦于以下问题:C++ XAP_Frame::rebuildMenus方法的具体用法?C++ XAP_Frame::rebuildMenus怎么用?C++ XAP_Frame::rebuildMenus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XAP_Frame
的用法示例。
在下文中一共展示了XAP_Frame::rebuildMenus方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
static void
AbiGOffice_removeFromMenus ()
{
// First we need to get a pointer to the application itself.
XAP_App *pApp = XAP_App::getApp();
XAP_Menu_Factory * pFact = pApp->getMenuFactory();
// remove the edit method
EV_EditMethodContainer* pEMC = pApp->getEditMethodContainer() ;
EV_EditMethod * pEM = ev_EditMethod_lookup ( "AbiGOChart_Create" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
pFact->removeMenuItem("Main",NULL,InsertGOChartID);
if (g_slist_length (mime_types) > 0) {
pEM = ev_EditMethod_lookup ( "AbiGOComponent_FileInsert" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
pEM = ev_EditMethod_lookup ( "AbiGOComponent_Create" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
pFact->removeMenuItem("Main",NULL,InsertGOComponentFromFileID);
pFact->removeMenuItem("Main",NULL,CreateGOComponentID);
}
pFact->removeMenuItem("Main",NULL,newObjectID);
int frameCount = pApp->getFrameCount();
for(int i = 0;i < frameCount;++i)
{
// Get the current frame that we're iterating through.
XAP_Frame* pFrame = pApp->getFrame(i);
pFrame->rebuildMenus();
}
}
示例2: DELETEP
static void
AikSaurusABI_RemoveFromMenus ()
{
// First we need to get a pointer to the application itself.
XAP_App *pApp = XAP_App::getApp();
// remove the edit method
EV_EditMethodContainer* pEMC = pApp->getEditMethodContainer() ;
EV_EditMethod * pEM = ev_EditMethod_lookup ( "AiksaurusABI_invoke" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
// now remove crap from the menus
int frameCount = pApp->getFrameCount();
XAP_Menu_Factory * pFact = pApp->getMenuFactory();
pFact->removeMenuItem("Main",NULL,AiksaurusABI_MenuLabel);
pFact->removeMenuItem("contextText",NULL,AiksaurusABI_MenuLabel);
for(int i = 0;i < frameCount;++i)
{
// Get the current frame that we're iterating through.
XAP_Frame* pFrame = pApp->getFrame(i);
pFrame->rebuildMenus();
}
}
示例3: AbiGOffice_addToMenus
//.........这里部分代码省略.........
// Create the Action that will be called.
EV_Menu_Action* myFileAction = new EV_Menu_Action(
InsertGOComponentFromFileID, // id that the layout said we could use
0, // no, we don't have a sub menu.
1, // yes, we raise a dialog.
0, // no, we don't have a checkbox.
0, // no radio buttons for me, thank you
"AbiGOComponent_FileInsert", // name of callback function to call.
NULL, // don't know/care what this is for
NULL // don't know/care what this is for
);
// Now what we need to do is add this particular action to the ActionSet
// of the application. This forms the link between our new ID that we
// got for this particular frame with the EditMethod that knows how to
// call our callback function.
pActionSet->addAction(myFileAction);
CreateGOComponentID= pFact->addNewMenuAfter("Main",NULL,InsertGOComponentFromFileID,EV_MLF_Normal);
UT_DEBUGMSG(("CreateGOComponent ID %d \n",CreateGOComponentID));
pFact->addNewLabel(NULL, CreateGOComponentID,AbiGOComponent_MenuLabelCreate, AbiGOComponent_MenuTooltipCreate);
// Create the Action that will be called.
EV_Menu_Action* myCompAction = new EV_Menu_Action(
CreateGOComponentID, // id that the layout said we could use
0, // no, we don't have a sub menu.
1, // yes, we raise a dialog.
0, // no, we don't have a checkbox.
0, // no radio buttons for me, thank you
"AbiGOComponent_Create", // name of callback function to call.
NULL, // don't know/care what this is for
NULL // don't know/care what this is for
);
// Now what we need to do is add this particular action to the ActionSet
// of the application. This forms the link between our new ID that we
// got for this particular frame with the EditMethod that knows how to
// call our callback function.
pActionSet->addAction(myCompAction);
if(!bObjectExists)
{
XAP_Menu_Id endObjectID= pFact->addNewMenuAfter("Main",NULL,CreateGOComponentID,EV_MLF_EndSubMenu);
UT_DEBUGMSG(("End Object ID %d \n",endObjectID));
pFact->addNewLabel(NULL,endObjectID,NULL,NULL);
// Create the Action that will be called.
EV_Menu_Action* myEndObjectAction = new EV_Menu_Action(
endObjectID, // id that the layout said we could use
0, // no, we don't have a sub menu.
0, // no, we raise a dialog.
0, // no, we don't have a checkbox.
0, // no radio buttons for me, thank you
NULL, // name of callback function to call.
NULL, // don't know/care what this is for
NULL // don't know/care what this is for
);
pActionSet->addAction(myEndObjectAction);
}
}
else if(!bObjectExists)
{
XAP_Menu_Id endObjectID= pFact->addNewMenuAfter("Main",NULL,InsertGOChartID,EV_MLF_EndSubMenu);
UT_DEBUGMSG(("End Object ID %d \n",endObjectID));
pFact->addNewLabel(NULL,endObjectID,NULL,NULL);
// Create the Action that will be called.
EV_Menu_Action* myEndObjectAction = new EV_Menu_Action(
endObjectID, // id that the layout said we could use
0, // no, we don't have a sub menu.
0, // no, we raise a dialog.
0, // no, we don't have a checkbox.
0, // no radio buttons for me, thank you
NULL, // name of callback function to call.
NULL, // don't know/care what this is for
NULL // don't know/care what this is for
);
pActionSet->addAction(myEndObjectAction);
}
// We need to go through and add the menu element to each "frame"
// of the application. We can iterate through the frames by doing
// XAP_App::getFrameCount() to tell us how many frames there are,
// then calling XAP_App::getFrame(i) to get the i-th frame.
int frameCount = pApp->getFrameCount();
for(int i = 0;i < frameCount;++i)
{
// Get the current frame that we're iterating through.
XAP_Frame* pFrame = pApp->getFrame(i);
pFrame->rebuildMenus();
}
}
示例4:
//
// AiksaurusABI_addToMenus
// -----------------------
// Adds "Thesaurus" option to AbiWord's Tools Menu.
//
static void
AiksaurusABI_addToMenus()
{
// First we need to get a pointer to the application itself.
XAP_App *pApp = XAP_App::getApp();
// Create an EditMethod that will link our method's name with
// it's callback function. This is used to link the name to
// the callback.
EV_EditMethod *myEditMethod = new EV_EditMethod(
"AiksaurusABI_invoke", // name of callback function
AiksaurusABI_invoke, // callback function itself.
0, // no additional data required.
"" // description -- allegedly never used for anything
);
// Now we need to get the EditMethod container for the application.
// This holds a series of Edit Methods and links names to callbacks.
EV_EditMethodContainer* pEMC = pApp->getEditMethodContainer();
// We have to add our EditMethod to the application's EditMethodList
// so that the application will know what callback to call when a call
// to "AiksaurusABI_invoke" is received.
pEMC->addEditMethod(myEditMethod);
// Now we need to grab an ActionSet. This is going to be used later
// on in our for loop. Take a look near the bottom.
EV_Menu_ActionSet* pActionSet = pApp->getMenuActionSet();
// We need to go through and add the menu element to each "frame"
// of the application. We can iterate through the frames by doing
// XAP_App::getFrameCount() to tell us how many frames there are,
// then calling XAP_App::getFrame(i) to get the i-th frame.
int frameCount = pApp->getFrameCount();
XAP_Menu_Factory * pFact = pApp->getMenuFactory();
//
// Put it in the context menu.
//
XAP_Menu_Id newID = pFact->addNewMenuAfter("contextText",NULL,"Bullets and &Numbering",EV_MLF_Normal);
pFact->addNewLabel(NULL,newID,AiksaurusABI_MenuLabel, AiksaurusABI_MenuTooltip);
//
// Also put it under word Wount in the main menu,
//
pFact->addNewMenuAfter("Main",NULL,"&Word Count",EV_MLF_Normal,newID);
// Create the Action that will be called.
EV_Menu_Action* myAction = new EV_Menu_Action(
newID, // id that the layout said we could use
0, // no, we don't have a sub menu.
1, // yes, we raise a dialog.
0, // no, we don't have a checkbox.
0,
"AiksaurusABI_invoke", // name of callback function to call.
NULL, // don't know/care what this is for
NULL // don't know/care what this is for
);
// Now what we need to do is add this particular action to the ActionSet
// of the application. This forms the link between our new ID that we
// got for this particular frame with the EditMethod that knows how to
// call our callback function.
pActionSet->addAction(myAction);
for(int i = 0;i < frameCount;++i)
{
// Get the current frame that we're iterating through.
XAP_Frame* pFrame = pApp->getFrame(i);
pFrame->rebuildMenus();
}
}
示例5: s_abicollab_remove_menus
/*!
* Remove the menu items unpon unloading the plugin.
*/
void s_abicollab_remove_menus()
{
// First we need to get a pointer to the application itself.
XAP_App *pApp = XAP_App::getApp();
// remove the edit method
EV_EditMethodContainer* pEMC = pApp->getEditMethodContainer();
EV_EditMethod * pEM;
pEM = ev_EditMethod_lookup ( "s_abicollab_offer" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
pEM = ev_EditMethod_lookup ( "s_abicollab_join" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
pEM = ev_EditMethod_lookup ( "s_abicollab_accounts" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
pEM = ev_EditMethod_lookup ( "s_abicollab_authors" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
#if !defined(ABICOLLAB_RECORD_ALWAYS) && defined(DEBUG)
pEM = ev_EditMethod_lookup ( "s_abicollab_record" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
#endif
#if defined(DEBUG)
pEM = ev_EditMethod_lookup ( "s_abicollab_viewrecord" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
#endif
pEM = ev_EditMethod_lookup ( "com.abisource.abiword.abicollab.command" ) ;
pEMC->removeEditMethod ( pEM ) ;
DELETEP( pEM ) ;
// now remove crap from the menus
int frameCount = pApp->getFrameCount();
XAP_Menu_Factory * pFact = pApp->getMenuFactory();
pFact->removeMenuItem("Main", NULL, szCollaboration);
pFact->removeMenuItem("Main", NULL, szCollaborationOffer);
pFact->removeMenuItem("Main", NULL, szCollaborationJoin);
pFact->removeMenuItem("Main", NULL, szCollaborationAccounts);
pFact->removeMenuItem("Main", NULL, szCollaborationShowAuthors);
#if !defined(ABICOLLAB_RECORD_ALWAYS) && defined(DEBUG)
pFact->removeMenuItem("Main", NULL, szCollaborationRecord);
#endif
#if defined(DEBUG)
pFact->removeMenuItem("Main", NULL, szCollaborationViewRecord);
#endif
pFact->removeMenuItem("Main", NULL, szEndCollaboration);
for (int i = 0; i < frameCount; ++i)
{
// Get the current frame that we're iterating through.
XAP_Frame* pFrame = pApp->getFrame(i);
pFrame->rebuildMenus();
}
}
示例6: s_abicollab_add_menus
//.........这里部分代码省略.........
1, // yes, we have a checkbox.
0, // no radio buttons for me, thank you
"s_abicollab_authors", // name of callback function to call.
collab_GetState_ShowAuthors, // Function for whether not label is enabled/disabled checked/unchecked
NULL // Function to compute Menu Label "Dynamic Label"
);
pActionSet->addAction(myActionShowAuthors);
EV_EditMethod *myEditMethodShowAuthors = new EV_EditMethod (
"s_abicollab_authors", // name of callback function
s_abicollab_authors, // callback function itself.
0, // no additional data required.
"" // description -- allegedly never used for anything
);
pEMC->addEditMethod(myEditMethodShowAuthors);
// The Record session connect item
#if defined(DEBUG)
#if !defined(ABICOLLAB_RECORD_ALWAYS)
XAP_Menu_Id collabRecordId = pFact->addNewMenuAfter("Main", NULL,ShowAuthorId , EV_MLF_Normal);
pFact->addNewLabel(NULL, collabRecordId, szCollaborationRecord, szCollaborationRecordTip);
EV_Menu_Action* myActionRecord = new EV_Menu_Action (
collabRecordId, // id that the layout said we could use
0, // no, we don't have a sub menu.
0, // no, we don't raise a dialog.
1, // yes, we have a checkbox.
0, // no radio buttons for me, thank you
"s_abicollab_record", // name of callback function to call.
collab_GetState_Recording, // Function for whether not label is enabled/disabled checked/unchecked
NULL // Function to compute Menu Label "Dynamic Label"
);
pActionSet->addAction(myActionRecord);
EV_EditMethod *myEditMethodRecord = new EV_EditMethod (
"s_abicollab_record", // name of callback function
s_abicollab_record, // callback function itself.
0, // no additional data required.
"" // description -- allegedly never used for anything
);
pEMC->addEditMethod(myEditMethodRecord);
XAP_Menu_Id followupMenuId = collabRecordId;
#else
XAP_Menu_Id followupMenuId = ShowAuthorId;
#endif /* !defined(ABICOLLAB_RECORD_ALWAYS) */
XAP_Menu_Id collabViewRecordId = pFact->addNewMenuAfter("Main", NULL, followupMenuId, EV_MLF_Normal);
pFact->addNewLabel(NULL, collabViewRecordId, szCollaborationViewRecord, szCollaborationViewRecordTip);
EV_Menu_Action* myActionViewRecord = new EV_Menu_Action (
collabViewRecordId, // id that the layout said we could use
0, // no, we don't have a sub menu.
1, // yes, we don't raise a dialog.
0, // no, we have a checkbox.
0, // no radio buttons for me, thank you
"s_abicollab_viewrecord", // name of callback function to call.
NULL, // Function for whether not label is enabled/disabled checked/unchecked
NULL // Function to compute Menu Label "Dynamic Label"
);
pActionSet->addAction(myActionViewRecord);
EV_EditMethod *myEditMethodViewRecord = new EV_EditMethod (
"s_abicollab_viewrecord", // name of callback function
s_abicollab_viewrecord, // callback function itself.
0, // no additional data required.
"" // description -- allegedly never used for anything
);
pEMC->addEditMethod(myEditMethodViewRecord);
XAP_Menu_Id lastMenuId = collabViewRecordId;
#else
XAP_Menu_Id lastMenuId = ShowAuthorId;
#endif /* defined(DEBUG) */
// End of the Collaboration menu
XAP_Menu_Id endCollaborationId = pFact->addNewMenuAfter("Main", NULL, lastMenuId, EV_MLF_EndSubMenu);
pFact->addNewLabel(NULL, endCollaborationId, szEndCollaboration, NULL);
EV_Menu_Action* myEndCollaborationAction = new EV_Menu_Action (
endCollaborationId, // id that the layout said we could use
0, // no, we don't have a sub menu.
0, // no, we raise a dialog.
0, // no, we don't have a checkbox.
0, // no radio buttons for me, thank you
NULL, // name of callback function to call.
NULL, // Function for whether not label is enabled/disabled checked/unchecked
NULL // Function to compute Menu Label "Dynamic Label"
);
pActionSet->addAction(myEndCollaborationAction);
EV_EditMethod* myCommandEM = new EV_EditMethod ("com.abisource.abiword.abicollab.command", s_abicollab_command_invoke, 0, "" );
pEMC->addEditMethod (myCommandEM);
// We need to go through and add the menu element to each "frame"
// of the application. We can iterate through the frames by doing
// XAP_App::getFrameCount() to tell us how many frames there are,
// then calling XAP_App::getFrame(i) to get the i-th frame.
for(int i = 0; i < frameCount;++i)
{
// Get the current frame that we're iterating through.
XAP_Frame* pFrame = pApp->getFrame(i);
pFrame->rebuildMenus();
}
}