* Renamed "mio" to mallocIO.
* Don't define status in CopyToClipboard() before it's actually used. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37124 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2007-2008, Axel Dörfler, [email protected]. All rights reserved.
|
||||
* Copyright 2007-2010, Axel Dörfler, [email protected].
|
||||
* Distributed under the terms of the MIT License.
|
||||
*/
|
||||
|
||||
@@ -470,65 +470,64 @@ SudokuView::SaveTo(BDataIO& stream, uint32 exportAs)
|
||||
status_t
|
||||
SudokuView::CopyToClipboard()
|
||||
{
|
||||
status_t status = B_ERROR;
|
||||
if (!be_clipboard->Lock())
|
||||
return status;
|
||||
return B_ERROR;
|
||||
|
||||
be_clipboard->Clear();
|
||||
|
||||
BMessage* clip = be_clipboard->Data();
|
||||
if (clip == NULL) {
|
||||
be_clipboard->Unlock();
|
||||
return status;
|
||||
return B_ERROR;
|
||||
}
|
||||
|
||||
// As BBitmap
|
||||
BMallocIO mio;
|
||||
status = SaveTo(mio, kExportAsBitmap);
|
||||
BMallocIO mallocIO;
|
||||
status_t status = SaveTo(mallocIO, kExportAsBitmap);
|
||||
if (status >= B_OK) {
|
||||
mio.Seek(0LL, SEEK_SET);
|
||||
mallocIO.Seek(0LL, SEEK_SET);
|
||||
// ShowImage, ArtPaint & WonderBrush use that
|
||||
status = clip->AddData("image/bitmap", B_MESSAGE_TYPE,
|
||||
mio.Buffer(), mio.BufferLength());
|
||||
mallocIO.Buffer(), mallocIO.BufferLength());
|
||||
// Becasso uses that ?
|
||||
clip->AddData("image/x-be-bitmap", B_MESSAGE_TYPE, mio.Buffer(),
|
||||
mio.BufferLength());
|
||||
clip->AddData("image/x-be-bitmap", B_MESSAGE_TYPE, mallocIO.Buffer(),
|
||||
mallocIO.BufferLength());
|
||||
// Gobe Productive uses that...
|
||||
// QuickRes as well, with a rect field.
|
||||
clip->AddData("image/x-vnd.Be-bitmap", B_MESSAGE_TYPE, mio.Buffer(),
|
||||
mio.BufferLength());
|
||||
clip->AddData("image/x-vnd.Be-bitmap", B_MESSAGE_TYPE,
|
||||
mallocIO.Buffer(), mallocIO.BufferLength());
|
||||
}
|
||||
mio.Seek(0LL, SEEK_SET);
|
||||
mio.SetSize(0LL);
|
||||
mallocIO.Seek(0LL, SEEK_SET);
|
||||
mallocIO.SetSize(0LL);
|
||||
|
||||
// As HTML
|
||||
if (status >= B_OK)
|
||||
status = SaveTo(mio, kExportAsHTML);
|
||||
status = SaveTo(mallocIO, kExportAsHTML);
|
||||
if (status >= B_OK) {
|
||||
status = clip->AddData("text/html", B_MIME_TYPE, mio.Buffer(),
|
||||
mio.BufferLength());
|
||||
status = clip->AddData("text/html", B_MIME_TYPE, mallocIO.Buffer(),
|
||||
mallocIO.BufferLength());
|
||||
}
|
||||
mio.Seek(0LL, SEEK_SET);
|
||||
mio.SetSize(0LL);
|
||||
mallocIO.Seek(0LL, SEEK_SET);
|
||||
mallocIO.SetSize(0LL);
|
||||
|
||||
// As plain text
|
||||
if (status >= B_OK)
|
||||
SaveTo(mio, kExportAsText);
|
||||
SaveTo(mallocIO, kExportAsText);
|
||||
if (status >= B_OK) {
|
||||
status = clip->AddData("text/plain", B_MIME_TYPE, mio.Buffer(),
|
||||
mio.BufferLength());
|
||||
status = clip->AddData("text/plain", B_MIME_TYPE, mallocIO.Buffer(),
|
||||
mallocIO.BufferLength());
|
||||
}
|
||||
mio.Seek(0LL, SEEK_SET);
|
||||
mio.SetSize(0LL);
|
||||
mallocIO.Seek(0LL, SEEK_SET);
|
||||
mallocIO.SetSize(0LL);
|
||||
|
||||
// As flattened BPicture, anyone handles that ?
|
||||
// As flattened BPicture, anyone handles that?
|
||||
if (status >= B_OK)
|
||||
status = SaveTo(mio, kExportAsPicture);
|
||||
status = SaveTo(mallocIO, kExportAsPicture);
|
||||
if (status >= B_OK) {
|
||||
status = clip->AddData("image/x-vnd.Be-picture", B_MIME_TYPE,
|
||||
mio.Buffer(), mio.BufferLength());
|
||||
mallocIO.Buffer(), mallocIO.BufferLength());
|
||||
}
|
||||
mio.SetSize(0LL);
|
||||
mallocIO.SetSize(0LL);
|
||||
|
||||
be_clipboard->Commit();
|
||||
be_clipboard->Unlock();
|
||||
@@ -631,7 +630,7 @@ SudokuView::FrameResized(float /*width*/, float /*height*/)
|
||||
fHintFont.GetHeight(&fontHeight);
|
||||
fHintBaseline = ceilf(fontHeight.ascent) / 2
|
||||
+ (fHintHeight - ceilf(fontHeight.descent)) / 2;
|
||||
|
||||
|
||||
// fix the dragger's position
|
||||
BView *dragger = FindView("_dragger_");
|
||||
if (dragger)
|
||||
@@ -1216,7 +1215,7 @@ SudokuView::Draw(BRect /*updateRect*/)
|
||||
SetLowColor(fBackgroundColor);
|
||||
FillRect(_Frame(x, y), B_SOLID_LOW);
|
||||
}
|
||||
|
||||
|
||||
if (fShowKeyboardFocus && x == fKeyboardX && y == fKeyboardY)
|
||||
_DrawKeyboardFocus();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user