void ProxyView::DrawSadTab(const char *error) { BBitmap *sadTab = RetrieveBitmap(kSadTabBitmap, BRect(0, 0, 255, 255)); if (Window()->Lock()) { MovePenTo(Bounds().Width() / 2 - 127, Bounds().Height() / 2 - 177); DrawBitmap(sadTab); MovePenTo(Bounds().Width() / 2 - 45, Bounds().Height() / 2 + 55); BFont font; GetFont(&font); font.SetSize(18.0); font.SetFace(B_BOLD_FACE); SetFont(&font, B_FONT_SIZE | B_FONT_FACE); SetLowColor(0, 0, 0); SetHighColor(255, 255, 255); DrawString("Aw, Snap!"); MovePenTo(Bounds().Width() / 2 - 90, Bounds().Height() / 2 + 70); font.SetSize(12.0); font.SetFace(B_REGULAR_FACE); SetFont(&font, B_FONT_SIZE | B_FONT_FACE); DrawString(error); Window()->Unlock(); } }
STDMETHODIMP CToolBarButton::AttachImage (VARIANT vPicture, VARIANT vIndex, VARIANT vSizeX) { HRESULT hr = RetrieveBitmap (vPicture); if (FAILED(hr)) return hr; // Argumente konvertieren CComVariant vArg; long lIndex = -1; long lSizeX = 0; hr = vArg.ChangeType (VT_I4, &vIndex); if (SUCCEEDED(hr)) lIndex = V_I4(&vArg); hr = vArg.ChangeType (VT_I4, &vSizeX); if (SUCCEEDED(hr)) lSizeX = V_I4(&vArg); if (lIndex >= 0 && 0 == lSizeX) return E_INVALIDARG; // Größe muß gegeben sein // wenn kein Index gegeben ist, dann die Bitmap direkt verwenden if (lIndex < 0) return S_OK; // ansonsten generieren des gewünschten Ausschnittes // ... m_PictDisp.Assign(NULL); // wieder freigeben return E_NOTIMPL; }