本文整理汇总了C++中XAP_Frame::getFilename方法的典型用法代码示例。如果您正苦于以下问题:C++ XAP_Frame::getFilename方法的具体用法?C++ XAP_Frame::getFilename怎么用?C++ XAP_Frame::getFilename使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XAP_Frame
的用法示例。
在下文中一共展示了XAP_Frame::getFilename方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: findFrame
UT_sint32 XAP_App::findFrame(const char * szFilename)
{
if (!szFilename || !*szFilename)
return -1;
for (UT_sint32 i=0; i<getFrameCount(); i++)
{
XAP_Frame * f = getFrame(i);
UT_continue_if_fail(f);
const char * s = f->getFilename();
if (s && *s && (0 == g_ascii_strcasecmp(szFilename, s)))
{
return i;
}
}
return -1;
}
示例2: retrieveState
bool XAP_App::retrieveState()
{
XAP_StateData sd;
bool bRet = true;
if(!_retrieveState(sd))
return false;
UT_return_val_if_fail(sd.iFileCount <= XAP_SD_MAX_FILES, false);
// now do our thing with it:
// * open the files stored in the data
// * move carets and scrollbars to the saved positions
// * make the first saved frame to be the current frame
// we should only be restoring state with no docs already
// opened
UT_return_val_if_fail(m_vecFrames.getItemCount() <= 1, false);
XAP_Frame * pFrame = NULL;
if(m_vecFrames.getItemCount())
pFrame = m_vecFrames.getNthItem(0);
// if there is a frame, it should be one with unmodified untitled document
UT_return_val_if_fail( !pFrame || (!pFrame->getFilename() && !pFrame->isDirty()), false );
UT_Error errorCode = UT_IE_IMPORTERROR;
for(UT_uint32 i = 0; i < sd.iFileCount; ++i)
{
if(!pFrame)
pFrame = newFrame();
if (!pFrame)
return false;
// Open a complete but blank frame, then load the document into it
errorCode = pFrame->loadDocument((const char *)NULL, 0 /*IEFT_Unknown*/);
bRet &= (errorCode == UT_OK);
if (errorCode == UT_OK)
pFrame->show();
else
continue;
errorCode = pFrame->loadDocument(sd.filenames[i], 0 /*IEFT_Unknown*/);
bRet &= (errorCode == UT_OK);
if (errorCode != UT_OK)
continue;
pFrame->show();
AV_View* pView = pFrame->getCurrentView();
if(!pView)
{
UT_ASSERT_HARMLESS( UT_SHOULD_NOT_HAPPEN );
bRet = false;
continue;
}
pView->setPoint(sd.iDocPos[i]);
pView->setXScrollOffset(sd.iXScroll[i]);
pView->setYScrollOffset(sd.iYScroll[i]);
// now we check if this doc was autosaved Untitled* doc at hibernation
char * p = strstr(sd.filenames[i], HIBERNATED_EXT);
if(p)
{
// remove extension
p = 0;
AD_Document * pDoc = pFrame->getCurrentDoc();
if(pDoc)
{
pDoc->clearFilename();
pDoc->forceDirty();
pFrame->updateTitle();
}
}
// frame used -- next doc needs a new one
pFrame = NULL;
}
// set focus to the first frame
pFrame = m_vecFrames.getNthItem(0);
UT_return_val_if_fail( pFrame, false );
AV_View* pView = pFrame->getCurrentView();
UT_return_val_if_fail( pView, false );
pView->focusChange(AV_FOCUS_HERE);
return bRet;
}
示例3: DECLARE_ABI_PLUGIN_METHOD
//
// AbiPaint saveAsBmp
// ------------------
// This is the function exports selected image as a Windows BMP file.
//
// parameters are:
// AV_View* v
// EV_EditMethodCallData *d)
//
static DECLARE_ABI_PLUGIN_METHOD(saveAsBmp)
{
// Get a frame (for error messages) and (to) get the current view that the user is in.
XAP_Frame *pFrame = XAP_App::getApp()->getLastFocussedFrame();
FV_View* pView = static_cast<FV_View*>(pFrame->getCurrentView());
char *szTempFileName = NULL;
GError *err = NULL;
gint fp = g_file_open_tmp ("XXXXXX", &szTempFileName, &err);
if (err) {
g_warning (err->message);
g_error_free (err); err = NULL;
return FALSE;
}
close(fp);
UT_String szTmpPng = szTempFileName;
szTmpPng += ".png";
remove(szTempFileName);
g_free (szTempFileName); szTempFileName = NULL;
PT_DocPosition pos = pView->saveSelectedImage((const char *)szTmpPng.c_str());
if(pos == 0)
{
pFrame->showMessageBox("You must select an Image before trying to save it as a BMP file!", XAP_Dialog_MessageBox::b_O,XAP_Dialog_MessageBox::a_OK);
return false;
}
//
// Convert png into bmp
// NOTE: probably looses detail/information though!!!
//
UT_String szBMPFile = pFrame->getFilename(); // perhaps a different default directory should be used???
{
const char * szDescList[2];
const char * szSuffixList[2];
IEGraphicFileType ft[2];
{
// IE_ImpGraphicBMP_Sniffer tmp;
// tmp.getDlgLabels(szDescList, szSuffixList, ft);
szDescList[0] = "Windows Bitmap (*.bmp)";
szSuffixList[0] = "*.bmp";
ft[0] = IEGFT_BMP;
}
szDescList[1] = szSuffixList[1] = NULL;
ft[1] = IEGFT_Unknown;
if (getFileName(szBMPFile, pFrame, XAP_DIALOG_ID_FILE_SAVEAS, szDescList, szSuffixList, ft))
{
// user canceled
remove(szTmpPng.c_str());
return true;
}
}
if (convertPNG2BMP(szTmpPng.c_str(), szBMPFile.c_str()))
{
pFrame->showMessageBox("Unable to convert PNG image data to BMP.", XAP_Dialog_MessageBox::b_O,XAP_Dialog_MessageBox::a_OK);
UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
remove(szTmpPng.c_str());
return false;
}
remove(szTmpPng.c_str());
return true;
}