int32_t PTextViewGetInsets(void *pobject, void *in, void *out, void *extraData) { if (!pobject || !in || !out) return B_ERROR; PView *parent = static_cast<PView*>(pobject); if (!parent) return B_BAD_TYPE; BTextView *backend = (BTextView*)parent->GetView(); PArgs *outArgs = static_cast<PArgs*>(out); if (backend->Window()) backend->Window()->Lock(); float outValue1; float outValue2; float outValue3; float outValue4; backend->GetInsets(&outValue1, &outValue2, &outValue3, &outValue4); if (backend->Window()) backend->Window()->Unlock(); outArgs->MakeEmpty(); outArgs->AddFloat("left", outValue1); outArgs->AddFloat("top", outValue2); outArgs->AddFloat("right", outValue3); outArgs->AddFloat("bottom", outValue4); return B_OK; }