Ejemplo n.º 1
0
emPanel * emFpPluginList::CreateFilePanel(
	emPanel::ParentArg parent, const emString & name,
	const emString & path, int alternative
)
{
	emString absPath;
	struct em_stat st;
	int err;

	absPath=emGetAbsolutePath(path);
	err=em_stat(absPath.Get(),&st);
	if (err) err=errno;
	return CreateFilePanel(parent,name,absPath,err,st.st_mode,alternative);
}
Ejemplo n.º 2
0
Archivo: CDoc.cpp Proyecto: diversys/pe
void CDoc::SaveAs()
{
	if (!fSavePanel)
		CreateFilePanel();

	BWindow *w = fSavePanel->Window();
	FailNil(w);
	w->Lock();

	char s[256];
	sprintf(s, "Save %s as:", Name());

	w->SetTitle(s);
	fSavePanel->SetSaveText(Name());

	if (EntryRef())
	{
		BEntry e(EntryRef()), p;
		e.GetParent(&p);
		fSavePanel->SetPanelDirectory(&p);
	}
	else
		fSavePanel->SetPanelDirectory(&gCWD);

	fSavePanel->SetMessage(new BMessage(B_SAVE_REQUESTED));
	if (fDocIO)
		fSavePanel->SetTarget(fDocIO->Target());
	else
		fSavePanel->SetTarget(dynamic_cast<BLooper*>(this));

	w->Unlock();

	if (!fSavePanel->IsShowing())
		fSavePanel->Show();
	else
		fSavePanel->Window()->Activate();
}