本文整理汇总了C++中FontPtr::get方法的典型用法代码示例。如果您正苦于以下问题:C++ FontPtr::get方法的具体用法?C++ FontPtr::get怎么用?C++ FontPtr::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FontPtr
的用法示例。
在下文中一共展示了FontPtr::get方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: CalcCheckButton
WONButtonPtr WinSkin::CalcCheckButton(const char *theBitmapName, WONButton *orig)
{
WONButtonPtr aCheckbox = new WONButton;
aCheckbox->SetPushOffsets(0,0);
aCheckbox->SetHasCheck(true);
aCheckbox->SetScaleImage(false);
RawImagePtr aButtonMasterImage = GetRawImage("Buttons",theBitmapName);
int aNumPictures = GetIntParam("Buttons","EnhancedMode")?5:4;
if(aButtonMasterImage.get()==NULL)
return orig;
int aWidth = aButtonMasterImage->GetWidth()/aNumPictures;
aCheckbox->SetTextPadding(aWidth + 4,2,2,2);
int aColor = GetColor("Buttons","NormalColour");
FontPtr aFont = GetFont("Buttons","NormalFont");
if(aFont.get()==NULL)
aFont = mWindow->GetWindowManager()->GetNamedFont("MSButton");
if(aColor==-1)
aColor = 0;
CropImageFilterPtr aCrop = new CropImageFilter;
aCrop->SetSize(aWidth,aButtonMasterImage->GetHeight());
for(int i=0; i<4; i++)
{
aCrop->SetPos(i*aWidth,0);
RawImagePtr aRawImage = aCrop->Filter(aButtonMasterImage);
NativeImagePtr aNativeImage = aRawImage->GetNative(mWindow->GetDisplayContext());
bool checked = i&1?true:false;
int anIndex = i>=2?2:0;
aCheckbox->SetButtonState(anIndex,aNativeImage,aColor,aFont,checked);
if(anIndex==0)
{
RawImagePtr aRawImage2 = (RawImage*)aRawImage->Duplicate().get();
TintImageFilterPtr aTint = new TintImageFilter(100,100,150);
aTint->Filter(aRawImage);
aNativeImage = aRawImage->GetNative(mWindow->GetDisplayContext());
aCheckbox->SetButtonState(3,aNativeImage,aColor,aFont,checked);
aTint = new TintImageFilter(100,150,100);
aTint->Filter(aRawImage2);
aNativeImage = aRawImage2->GetNative(mWindow->GetDisplayContext());
aCheckbox->SetButtonState(1,aNativeImage,aColor,aFont,checked);
}
}
return aCheckbox;
}
示例2: new
void
DrawingContext::draw_text(FontPtr font, const std::string& text,
const Vector& position, FontAlignment alignment, int layer, Color color)
{
DrawingRequest* request = new(obst) DrawingRequest();
request->target = target;
request->type = TEXT;
request->pos = transform.apply(position);
request->layer = layer;
request->drawing_effect = transform.drawing_effect;
request->alpha = transform.alpha;
request->color = color;
TextRequest* textrequest = new(obst) TextRequest();
textrequest->font = font.get();
textrequest->text = text;
textrequest->alignment = alignment;
request->request_data = textrequest;
requests->push_back(request);
}
示例3: CalcButton
WONButtonPtr WinSkin::CalcButton(const char *theSection, const char *theBitmapName, WONButton *orig)
{
RawImagePtr aButtonMasterImage = GetRawImage(theSection,theBitmapName);
if(aButtonMasterImage.get()==NULL)
return orig;
bool isTab = false;
bool isHeader = false;
if(stricmp(theSection,"HeaderBar")==0)
{
isHeader = true;
mSkin->mListCtrl->SetHeaderHeight(aButtonMasterImage->GetHeight());
}
else if(stricmp(theSection,"Tabs")==0)
{
mSkin->mTabCtrl->SetTabBarHeight(aButtonMasterImage->GetHeight());
isTab = true;
}
WONButtonPtr aButton;
if(isHeader)
aButton = new WONHeaderButton;
else
aButton = new WONButton;
int leftWidth = GetIntParam(theSection,"LeftWidth");
int topHeight = GetIntParam(theSection,"TopHeight");
int rightWidth = GetIntParam(theSection,"RightWidth");
int bottomHeight = GetIntParam(theSection,"BottomHeight");
int tile = GetIntParam(theSection,"Tile");
bool mouseOver = GetIntParam(theSection,"MouseOver")?true:false;
aButton->SetButtonFlags(ButtonFlag_InvalidateOnMouseOver,mouseOver);
// aButton->SetTextPaddingAtLeast(leftWidth+2,topHeight+2,rightWidth+2,bottomHeight+2);
int aNumFrames = GetIntParam(theSection,"FrameCount");
if(aNumFrames<5)
aNumFrames = 5;
int aWidth = aButtonMasterImage->GetWidth()/aNumFrames;
const char *colornames[] = { "NormalColour", "PressedColour", "DisabledColour", "FocusColour", "DefaultColour" };
const char *fontnames[] = { "NormalFont", "PressedFont", "DisabledFont", "FocusFont", "DefaultFont" };
CropImageFilterPtr aCrop = new CropImageFilter;
aCrop->SetSize(aWidth,aButtonMasterImage->GetHeight());
for(int i=0; i<5; i++)
{
StretchImagePtr aStretchImage = NULL;
if(i<5)
{
aCrop->SetPos(i*aWidth,0);
RawImagePtr aRawImage = aCrop->Filter(aButtonMasterImage);
aStretchImage = new StretchImage(aRawImage,leftWidth,topHeight,rightWidth,bottomHeight);
switch(tile)
{
case 0: aStretchImage->SetTile(false,false); break;
case 1: aStretchImage->SetTile(true,true); break;
case 2: aStretchImage->SetTile(true,false); break;
case 3: aStretchImage->SetTile(false,true); break;
}
}
int aColor = GetColor(theSection,colornames[i]);
FontPtr aFont = GetFont(theSection,fontnames[i]);
if(i==0)
{
if(aFont.get()==NULL)
aFont = mWindow->GetWindowManager()->GetNamedFont("MSButton");
if(aColor==-1)
aColor = 0;
}
if(i==1 && isTab)
{
aButton->SetHasCheck(true);
aButton->SetButtonState(0,aStretchImage,aColor,aFont,true);
}
else
aButton->SetButtonState(i,aStretchImage,aColor,aFont);
}
aButton->SetTransparent(aButtonMasterImage->HasTransparency());
return aButton;
}