本文整理汇总了C++中BMimeType::SetShortDescription方法的典型用法代码示例。如果您正苦于以下问题:C++ BMimeType::SetShortDescription方法的具体用法?C++ BMimeType::SetShortDescription怎么用?C++ BMimeType::SetShortDescription使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BMimeType
的用法示例。
在下文中一共展示了BMimeType::SetShortDescription方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: sizeof
void
InitFileTypes(void)
{
BMimeType mime;
BString string;
BMessage msg,ext;
BBitmap large_icon(BRect(0, 0, B_LARGE_ICON - 1, B_LARGE_ICON - 1), B_COLOR_8_BIT);
memcpy(large_icon.Bits(),kProjectLargeIconBits,1024);
BBitmap mini_icon(BRect(0, 0, B_MINI_ICON - 1, B_MINI_ICON - 1), B_COLOR_8_BIT);
memcpy(mini_icon.Bits(),kProjectSmallIconBits,256);
mime.SetType(PROJECT_MIME_TYPE);
mime.SetShortDescription(TR("Paladin Project"));
mime.SetLongDescription(TR("File to build a program with Paladin"));
mime.SetIcon(&large_icon, B_LARGE_ICON);
mime.SetIcon(&mini_icon, B_MINI_ICON);
#ifdef __HAIKU__
mime.SetIcon(kProjectVectorIconBits, sizeof(kProjectVectorIconBits));
#endif
mime.SetSnifferRule("0.50 [0:32]( -i \"NAME=\" | \"TARGETNAME=\" | "
"\"PLATFORM=\" | \"GROUP=\" | \"SOURCEFILE=\")");
mime.SetPreferredApp(APP_SIGNATURE);
mime.Install();
ext.AddString("extensions","pld");
mime.SetFileExtensions(&ext);
}
示例2: checkMimeTypes
void checkMimeTypes()
{
BMimeType mime;
mime.SetTo("application/x-vnd.BeServed-fileserver");
mime.Delete();
if (!mime.IsInstalled())
{
mime.Install();
mime.SetShortDescription("Network File Server");
mime.SetLongDescription("A network server running BeServed");
setMimeIcon(&mime, MYNET_ICON_HOST_LARGE, B_LARGE_ICON);
setMimeIcon(&mime, MYNET_ICON_HOST_SMALL, B_MINI_ICON);
}
mime.SetTo("application/x-vnd.BeServed-inetserver");
mime.Delete();
if (!mime.IsInstalled())
{
mime.Install();
mime.SetShortDescription("Public File Server");
mime.SetLongDescription("A remote network server running BeServed");
setMimeIcon(&mime, MYNET_ICON_INETHOST_LARGE, B_LARGE_ICON);
setMimeIcon(&mime, MYNET_ICON_INETHOST_SMALL, B_MINI_ICON);
}
mime.SetTo("application/x-vnd.BeServed-fileshare");
mime.Delete();
if (!mime.IsInstalled())
{
mime.Install();
mime.SetShortDescription("Shared Volume");
mime.SetLongDescription("A BeServed network shared volume");
setMimeIcon(&mime, MYNET_ICON_SHARE_LARGE, B_LARGE_ICON);
setMimeIcon(&mime, MYNET_ICON_SHARE_SMALL, B_MINI_ICON);
}
}
示例3: InitFileTypes
// This handles the filetypes being installed with all the extra attributes over the
// regular R5 types
void MrPeeps::InitFileTypes(void)
{
BEntry entry("/boot/home/config/settings/MrPeeps");
BFile file;
// Check for settings directory
if(!entry.Exists())
create_directory("/boot/home/config/settings/MrPeeps",0777);
entry.SetTo("/boot/home/config/settings/MrPeeps/MrPeeps");
if(!entry.Exists())
{
file.SetTo("/boot/home/config/settings/MrPeeps/MrPeeps",B_READ_WRITE|B_CREATE_FILE);
file.Unset();
}
entry.SetTo("/boot/home/config/settings/MrPeeps/filetypes_installed");
if(!entry.Exists())
{
BFile file("/boot/home/config/settings/MrPeeps/filetypes_installed",B_CREATE_FILE);
BMimeType mime;
BString string;
BMessage msg,info;
uint8 installtype=2;
int32 index=0;
BBitmap large_icon(BRect(0, 0, B_LARGE_ICON-1, B_LARGE_ICON-1), B_COLOR_8_BIT);
BBitmap mini_icon(BRect(0, 0, B_MINI_ICON-1, B_MINI_ICON-1), B_COLOR_8_BIT);
// install person mime type
mime.SetType(PERSON_FILE_TYPE);
if(mime.IsInstalled())
{
if (mime.GetAttrInfo(&info) == B_OK)
{
while (info.FindString("attr:name", index++, &string) == B_OK)
{
if (string.Compare(PERSON_EMAIL5)==0)
installtype=1;
if (string.Compare(PERSON_BIRTHDAY)==0)
{
installtype=0;
break;
}
}
if (installtype>0)
mime.Delete();
}
}
if(installtype>0)
{
mime.Install();
large_icon.SetBits(kLargePersonIcon, large_icon.BitsLength(), 0, B_COLOR_8_BIT);
mini_icon.SetBits(kSmallPersonIcon, mini_icon.BitsLength(), 0, B_COLOR_8_BIT);
mime.SetShortDescription("Person");
mime.SetLongDescription("Information about a person");
mime.SetIcon(&large_icon, B_LARGE_ICON);
mime.SetIcon(&mini_icon, B_MINI_ICON);
BAlert *alert=new BAlert("Mr. Peeps!", "Would you like to make Mr. Peeps! the "
"default application for People files? If not sure, choose 'No'.","Yes","No");
if(alert->Go()==0)
mime.SetPreferredApp(APP_SIGNATURE);
else
mime.SetPreferredApp("application/x-vnd.Be-PEPL");
// General Person data
msg.AddString("attr:public_name", "First Name");
msg.AddString("attr:name", PERSON_FIRSTNAME);
msg.AddInt32("attr:type", B_STRING_TYPE);
msg.AddBool("attr:viewable", true);
msg.AddBool("attr:editable", true);
msg.AddInt32("attr:width", 120);
msg.AddInt32("attr:alignment", B_ALIGN_LEFT);
msg.AddBool("attr:extra", false);
msg.AddString("attr:public_name", "Last Name");
msg.AddString("attr:name", PERSON_LASTNAME);
msg.AddInt32("attr:type", B_STRING_TYPE);
msg.AddBool("attr:viewable", true);
msg.AddBool("attr:editable", true);
msg.AddInt32("attr:width", 120);
msg.AddInt32("attr:alignment", B_ALIGN_LEFT);
msg.AddBool("attr:extra", false);
msg.AddString("attr:public_name", "Nickname");
msg.AddString("attr:name", PERSON_NICKNAME);
msg.AddInt32("attr:type", B_STRING_TYPE);
msg.AddBool("attr:viewable", true);
msg.AddBool("attr:editable", true);
msg.AddInt32("attr:width", 120);
msg.AddInt32("attr:alignment", B_ALIGN_LEFT);
msg.AddBool("attr:extra", false);
msg.AddString("attr:public_name", "Title");
msg.AddString("attr:name", PERSON_TITLE);
//.........这里部分代码省略.........
示例4: appInfo
status_t
CreateAppMetaMimeThread::DoMimeUpdate(const entry_ref* ref, bool* _entryIsDir)
{
if (ref == NULL)
return B_BAD_VALUE;
BNode typeNode;
BFile file;
status_t status = file.SetTo(ref, B_READ_ONLY);
if (status < B_OK)
return status;
bool isDir = file.IsDirectory();
if (_entryIsDir != NULL)
*_entryIsDir = isDir;
if (isDir)
return B_OK;
BAppFileInfo appInfo(&file);
status = appInfo.InitCheck();
if (status < B_OK)
return status;
// Read the app sig (which consequently keeps us from updating
// non-applications, since we get an error if the file has no
// app sig)
BString signature;
status = file.ReadAttrString("BEOS:APP_SIG", &signature);
if (status < B_OK)
return B_BAD_TYPE;
// Init our various objects
BMimeType mime;
status = mime.SetTo(signature.String());
if (status < B_OK)
return status;
InstallNotificationDeferrer _(fDatabase, signature.String());
if (!mime.IsInstalled())
mime.Install();
BString path = "/";
path.Append(signature);
path.ToLower();
// Signatures and MIME types are case insensitive, but we want to
// preserve the case wherever possible
path.Prepend(get_database_directory().c_str());
status = typeNode.SetTo(path.String());
if (status < B_OK)
return status;
// Preferred App
attr_info info;
if (status == B_OK && (fForce || typeNode.GetAttrInfo(kPreferredAppAttr, &info) != B_OK))
status = mime.SetPreferredApp(signature.String());
// Short Description (name of the application)
if (status == B_OK && (fForce || typeNode.GetAttrInfo(kShortDescriptionAttr, &info) != B_OK))
status = mime.SetShortDescription(ref->name);
// App Hint
if (status == B_OK && (fForce || typeNode.GetAttrInfo(kAppHintAttr, &info) != B_OK))
status = mime.SetAppHint(ref);
// Vector Icon
if (status == B_OK && (fForce || typeNode.GetAttrInfo(kIconAttr, &info) != B_OK)) {
uint8* data = NULL;
size_t size = 0;
if (appInfo.GetIcon(&data, &size) == B_OK) {
status = mime.SetIcon(data, size);
free(data);
}
}
// Mini Icon
BBitmap miniIcon(BRect(0, 0, 15, 15), B_BITMAP_NO_SERVER_LINK, B_CMAP8);
if (status == B_OK && (fForce || typeNode.GetAttrInfo(kMiniIconAttr, &info) != B_OK)) {
if (appInfo.GetIcon(&miniIcon, B_MINI_ICON) == B_OK)
status = mime.SetIcon(&miniIcon, B_MINI_ICON);
}
// Large Icon
BBitmap largeIcon(BRect(0, 0, 31, 31), B_BITMAP_NO_SERVER_LINK, B_CMAP8);
if (status == B_OK && (fForce || typeNode.GetAttrInfo(kLargeIconAttr, &info) != B_OK)) {
if (appInfo.GetIcon(&largeIcon, B_LARGE_ICON) == B_OK)
status = mime.SetIcon(&largeIcon, B_LARGE_ICON);
}
// Supported Types
bool setSupportedTypes = false;
BMessage supportedTypes;
if (status == B_OK && (fForce || typeNode.GetAttrInfo(kSupportedTypesAttr, &info) != B_OK)) {
if (appInfo.GetSupportedTypes(&supportedTypes) == B_OK)
setSupportedTypes = true;
}
// defer notifications for supported types
//.........这里部分代码省略.........