本文整理汇总了C++中FileSel::BaseDir方法的典型用法代码示例。如果您正苦于以下问题:C++ FileSel::BaseDir方法的具体用法?C++ FileSel::BaseDir怎么用?C++ FileSel::BaseDir使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FileSel
的用法示例。
在下文中一共展示了FileSel::BaseDir方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AddFile
void WorkspaceWork::AddFile(ADDFILE af)
{
String active = GetActivePackage();
if(active.IsEmpty()) return;
FileSel *fs = &OutputFs();
RealizeDirectory(GetLocalDir());
switch(af)
{
case PACKAGE_FILE: fs = &BasedSourceFs(); fs->BaseDir(GetFileFolder(PackagePathA(active))); break;
case ANY_FILE: fs = &AnySourceFs(); break;
case OUTPUT_FILE: fs->ActiveDir(GetOutputDir()); break;
case CONFIG_FILE: fs->ActiveDir(GetConfigDir()); break;
case HOME_FILE: fs->ActiveDir(GetHomeDirectory()); break;
case LOCAL_FILE: fs->ActiveDir(GetLocalDir()); break;
default: ; // GCC warns otherwise
}
if(!fs->ExecuteOpen("Add files to package..")) return;
int fci = filelist.GetCursor();
int cs = filelist.GetSbPos();
int ci = fci >= 0 && fci < fileindex.GetCount() ? fileindex[fci] : -1;
for(int i = 0; i < fs->GetCount(); i++) {
Package::File& f = ci >= 0 ? actual.file.Insert(ci++) : actual.file.Add();
f = (*fs)[i];
f.readonly = fs->GetReadOnly();
}
SaveLoadPackage(false);
filelist.SetSbPos(cs);
filelist.SetCursor(fci >= 0 ? fci : filelist.GetCount() - 1);
FileSelected();
}