本文整理汇总了C++中XAP_Frame::getFrameImpl方法的典型用法代码示例。如果您正苦于以下问题:C++ XAP_Frame::getFrameImpl方法的具体用法?C++ XAP_Frame::getFrameImpl怎么用?C++ XAP_Frame::getFrameImpl使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XAP_Frame
的用法示例。
在下文中一共展示了XAP_Frame::getFrameImpl方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
//
// AbiGOComponent_Create
// -------------------
// This is the function that we actually call to insert a new intially empty component.
bool
AbiGOComponent_Create (G_GNUC_UNUSED AV_View* v, G_GNUC_UNUSED EV_EditMethodCallData *d)
{
XAP_Frame *pFrame = XAP_App::getApp()->getLastFocussedFrame();
XAP_UnixFrameImpl *pFrameImpl = static_cast<XAP_UnixFrameImpl*>(pFrame->getFrameImpl());
std::string cancel, ok;
const XAP_StringSet *pSS = XAP_App::getApp()->getStringSet();
pSS->getValueUTF8(XAP_STRING_ID_DLG_Cancel, cancel);
pSS->getValueUTF8(XAP_STRING_ID_DLG_OK, ok);
GtkDialog *dialog = GTK_DIALOG (gtk_dialog_new_with_buttons ("New Object",
GTK_WINDOW(pFrameImpl->getTopLevelWindow()),
(GtkDialogFlags) (GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT),
convertMnemonics(cancel).c_str(), GTK_RESPONSE_CANCEL,
convertMnemonics(ok).c_str(), GTK_RESPONSE_OK, NULL));
GtkListStore *list = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING);
GtkWidget *w = gtk_tree_view_new_with_model (GTK_TREE_MODEL (list));
g_signal_connect_swapped(w, "button-press-event", G_CALLBACK(button_press_cb), dialog);
GtkCellRenderer *renderer;
GtkTreeViewColumn *column;
renderer = gtk_cell_renderer_text_new ();
column = gtk_tree_view_column_new_with_attributes ("Object type:", renderer, "text", 0, NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (w), column);
GtkTreeSelection *sel = gtk_tree_view_get_selection(GTK_TREE_VIEW (w));
gtk_tree_selection_set_mode (sel, GTK_SELECTION_BROWSE);
GtkTreeIter iter;
GSList *l = mime_types;
gchar const *mime_type;
while (l) {
mime_type = (gchar const *) l->data;
if (strcmp(mime_type, "application/mathml+xml")
&& go_components_get_priority(mime_type) >= GO_MIME_PRIORITY_PARTIAL)
{
gtk_list_store_append (list, &iter);
gtk_list_store_set (list, &iter,
0, go_mime_type_get_description (mime_type),
1, mime_type,
-1);
}
l = l->next;
}
gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area(dialog)), w, false, false, 0);
gtk_widget_show_all (GTK_WIDGET(dialog));
gint result = gtk_dialog_run (dialog);
if (result == GTK_RESPONSE_OK &&
gtk_tree_selection_get_selected (sel, NULL, &iter)) {
gtk_tree_model_get (GTK_TREE_MODEL (list), &iter, 1, &mime_type, -1);
GOComponent *component = go_component_new_by_mime_type (mime_type);
go_component_set_inline (component, true);
go_component_set_use_font_from_app (component, true);
g_signal_connect (G_OBJECT (component), "changed",
G_CALLBACK (changed_cb), NULL);
GtkWindow *win = go_component_edit(component);
gtk_window_set_transient_for(win, GTK_WINDOW(pFrameImpl->getTopLevelWindow()));
}
gtk_widget_destroy (GTK_WIDGET (dialog));
return result == GTK_RESPONSE_OK;
}
示例2: findValidFrame
GR_Graphics * AP_Win32App::newDefaultScreenGraphics() const
{
XAP_Frame * pFrame = findValidFrame();
UT_return_val_if_fail( pFrame, NULL );
AP_Win32FrameImpl * pFI = (AP_Win32FrameImpl *) pFrame->getFrameImpl();
UT_return_val_if_fail( pFI, NULL );
return pFI->createDocWndGraphics();
}
示例3: ai
GR_Graphics * AP_UnixApp::newDefaultScreenGraphics() const
{
XAP_Frame * pFrame = findValidFrame();
UT_return_val_if_fail( pFrame, NULL );
UT_DEBUGMSG(("AP_UnixApp::newDefaultScreenGraphics() \n"));
AP_UnixFrameImpl * pFI = static_cast<AP_UnixFrameImpl *>(pFrame->getFrameImpl());
UT_return_val_if_fail( pFI, NULL );
GtkWidget * da = pFI->getDrawingArea();
UT_return_val_if_fail( da, NULL );
GR_UnixCairoAllocInfo ai(da);
return XAP_App::getApp()->newGraphics(ai);
}
示例4: GetShortPathName
//.........这里部分代码省略.........
}
/* Now that we have sBrowser from the registry, we need to parse it out.
* If the first character is a double-quote, everything up to and including
* the next double-quote is the sBrowser command. Everything after the
* double-quote is appended to the parameters.
* If the first character is NOT a double-quote, we assume
* everything up to the first whitespace is the command and anything after
* is appended to the parameters.
*/
int iDelimiter;
if (sBrowser.substr(0, 1) == "\"")
iDelimiter = UT_String_findCh(sBrowser.substr(1, sBrowser.length()-1), '"')+2;
else
iDelimiter = UT_String_findCh(sBrowser.substr(0, sBrowser.length()), ' ');
// Store params into a separate UT_String before we butcher sBrowser
UT_String sParams = sBrowser.substr(iDelimiter+1, sBrowser.length()-iDelimiter+1);
// Cut params off of sBrowser so all we're left with is the broweser path & executable
sBrowser = sBrowser.substr(0, iDelimiter);
// Check for a %1 passed in from the registry. If we find it,
// substitute our URL for %1. Otherwise, just append sURL to params.
const char *pdest = strstr(sParams.c_str(), "%1");
if (pdest != NULL)
{
int i = pdest - sParams.c_str() + 1;
sParams = sParams.substr(0, i-1) + sURL + sParams.substr(i+1, sParams.length()-i+1);
}
else
{
sParams = sParams + " " + sURL;
}
// Win95 doesn't like the Browser command to be quoted, so strip em off.
if (sBrowser.substr(0, 1) == "\"")
sBrowser = sBrowser.substr(1, sBrowser.length() - 1);
if (sBrowser.substr(sBrowser.length()-1, 1) == "\"")
sBrowser = sBrowser.substr(0, sBrowser.length() - 1);
XAP_Frame * pFrame = XAP_App::getApp()->getLastFocussedFrame();
UT_return_val_if_fail(pFrame, false);
XAP_Win32FrameImpl *pFImp = (XAP_Win32FrameImpl *) pFrame->getFrameImpl();
UT_return_val_if_fail(pFImp, false);
intptr_t res = (intptr_t) ShellExecuteA(pFImp->getTopLevelWindow() /*(HWND)*/,
"open", sBrowser.c_str(), sParams.c_str(), NULL, SW_SHOW );
// TODO: localized error messages
// added more specific error messages as documented in http://msdn.microsoft.com/library/default.asp?url=/library/en-us/debug/base/system_error_codes.asp
if (res <= 32)
{
UT_String errMsg;
switch (res)
{
case ERROR_FILE_NOT_FOUND:
{
errMsg = "Error (";
errMsg += UT_String_sprintf("%d", res);
errMsg += ") displaying URL: The system cannot find the file specified.\n";
errMsg += " [ "; errMsg += sURL; errMsg += " ] ";
MessageBoxA(pFImp->getTopLevelWindow(), errMsg.c_str(), "Error displaying URL", MB_OK|MB_ICONEXCLAMATION);
}
break;
case ERROR_PATH_NOT_FOUND:
{
errMsg = "Error (";
errMsg += UT_String_sprintf("%d", res);
errMsg += ") displaying URL: The system cannot find the path specified.\n";
errMsg += " [ "; errMsg += sURL; errMsg += " ] ";
MessageBoxA(pFImp->getTopLevelWindow(), errMsg.c_str(), "Error displaying URL", MB_OK|MB_ICONEXCLAMATION);
}
break;
case SE_ERR_ACCESSDENIED:
{
errMsg = "Error (";
errMsg += UT_String_sprintf("%d", res);
errMsg += ") displaying URL: Access is denied.\n";
errMsg += " [ "; errMsg += sURL; errMsg += " ] ";
MessageBoxA(pFImp->getTopLevelWindow(), errMsg.c_str(), "Error displaying URL", MB_OK|MB_ICONEXCLAMATION);
}
break;
default:
{
errMsg = "Error (";
errMsg += UT_String_sprintf("%d", res);
errMsg += ") displaying URL: \n";
errMsg += " [ "; errMsg += sURL; errMsg += " ] ";
MessageBoxA(pFImp->getTopLevelWindow(), errMsg.c_str(), "Error displaying URL", MB_OK|MB_ICONEXCLAMATION);
}
break;
} /* switch (res) */
} /* if (res <= 32) */
return (res>32);
}
示例5: mouseDrag
void FV_UnixFrameEdit::mouseDrag(UT_sint32 x, UT_sint32 y)
{
UT_DEBUGMSG(("Mouse drag x=%d y=%d \n",x,y));
bool bYOK = ( (y > 0) && (y < getView()->getWindowHeight()));
if(!bYOK || (x> 0 && x < getView()->getWindowWidth()))
{
m_bDragOut = false;
_mouseDrag(x,y);
return;
}
if(FV_DragWhole != getDragWhat())
{
m_bDragOut = false;
_mouseDrag(x,y);
return;
}
if(FV_FrameEdit_DRAG_EXISTING != getFrameEditMode())
{
m_bDragOut = false;
_mouseDrag(x,y);
return;
}
if(!isImageWrapper())
{
m_bDragOut = false;
_mouseDrag(x,y);
return;
}
if(!m_bDragOut)
{
const UT_ByteBuf * pBuf = NULL;
const char * pszData = getPNGImage(&pBuf);
UT_DEBUGMSG(("Got image buffer %p pszData %p \n",pBuf,pszData));
if(pBuf)
{
//
// write the image to a temperary file
//
XAP_UnixApp * pXApp = static_cast<XAP_UnixApp *>(XAP_App::getApp());
pXApp->removeTmpFile();
char ** pszTmpName = pXApp->getTmpFile();
UT_UTF8String sTmpF = g_get_tmp_dir();
sTmpF += "/";
sTmpF += pszData;
sTmpF += ".png";
//
// Now write the contents of the buffer to a temp file.
//
FILE * fd = fopen(sTmpF.utf8_str(),"w");
fwrite(pBuf->getPointer(0),sizeof(UT_Byte),pBuf->getLength(),fd);
fclose(fd);
//
// OK set up the gtk drag and drop code to andle this
//
XAP_Frame * pFrame = static_cast<XAP_Frame*>(getView()->getParentData());
XAP_UnixFrameImpl * pFrameImpl =static_cast<XAP_UnixFrameImpl *>( pFrame->getFrameImpl());
GtkWidget * pWindow = pFrameImpl->getTopLevelWindow();
GtkTargetList *target_list = gtk_target_list_new(targets, G_N_ELEMENTS(targets));
GdkDragContext *context = gtk_drag_begin(pWindow, target_list,
(GdkDragAction)(GDK_ACTION_COPY ), 1, NULL);
gdk_drag_status(context, GDK_ACTION_COPY, 0);
gtk_target_list_unref(target_list);
*pszTmpName = g_strdup(sTmpF.utf8_str());
UT_DEBUGMSG(("Created Tmp File %s XApp %s \n",sTmpF.utf8_str(),*pXApp->getTmpFile()));
}
//
// OK quit dragging the image and return to the previous state
//
m_bDragOut = true;
abortDrag();
}
m_bDragOut = true;
}