//---------------------- Private ---------------------------------// status_t JoyWin::_AddToList(BListView *list, uint32 command, const char* rootPath, BEntry *rootEntry) { BDirectory root; if ( rootEntry != NULL ) root.SetTo( rootEntry ); else if ( rootPath != NULL ) root.SetTo( rootPath ); else return B_ERROR; BEntry entry; while ((root.GetNextEntry(&entry)) > B_ERROR ) { if (entry.IsDirectory()) { _AddToList(list, command, rootPath, &entry); } else { BPath path; entry.GetPath(&path); BString str(path.Path()); str.RemoveFirst(rootPath); list->AddItem(new PortItem(str.String())); } } return B_OK; }
void VJSSharedWorkerClass::_Construct (VJSParms_construct &ioParms) { if (!ioParms.CountParams() || !ioParms.IsStringParam(1) || (ioParms.CountParams() >= 2 && !ioParms.IsStringParam(2))) { XBOX::vThrowError(XBOX::VE_INVALID_PARAMETER); return; } XBOX::VJSContext context(ioParms.GetContext()); XBOX::VString url, name; bool reUseContext; VJSWorker *outsideWorker; VJSWebWorkerObject *workerProxy; #if USE_V8_ENGINE XBOX::VJSObject constructedObject = ioParms.fConstructedObject; #else XBOX::VJSObject constructedObject(context); #endif ioParms.GetStringParam(1, url); if (ioParms.CountParams() == 2) ioParms.GetStringParam(2, name); outsideWorker = VJSWorker::RetainWorker(context); if (ioParms.CountParams() < 3 || !ioParms.IsBooleanParam(3) || !ioParms.GetBoolParam(3, &reUseContext)) reUseContext = false; if ((workerProxy = VJSWebWorkerObject::_CreateWorker(context, outsideWorker, reUseContext, NULL, url, false, name)) != NULL) { constructedObject = VJSSharedWorkerClass::ConstructInstance(ioParms, workerProxy); workerProxy->fOnErrorPort->SetObject(outsideWorker, constructedObject); XBOX::VJSObject messagePortObject(context); messagePortObject = VJSMessagePortClass::CreateInstance(context, workerProxy->fOnMessagePort); workerProxy->fOnMessagePort->SetObject(outsideWorker, messagePortObject); constructedObject.SetProperty("port", messagePortObject); _AddToList(context, "SharedWorker", constructedObject); } ioParms.ReturnConstructedObject(constructedObject); XBOX::ReleaseRefCountable<VJSWorker>(&outsideWorker); }
void BDragger::AttachedToWindow() { if (fIsZombie) { SetLowColor(kZombieColor); SetViewColor(kZombieColor); } else { SetLowColor(B_TRANSPARENT_COLOR); SetViewColor(B_TRANSPARENT_COLOR); } _DetermineRelationship(); _AddToList(); AddFilter(new DragTrackingFilter(this, kMsgDragStarted)); }
JoyWin::JoyWin(BRect frame, const char *title) : BWindow(frame, title, B_DOCUMENT_WINDOW_LOOK, B_NORMAL_WINDOW_FEEL, B_NOT_ZOOMABLE), fSystemUsedSelect(false), fJoystick(new BJoystick) { fProbeButton = new BButton(BRect(15.00, 260.00, 115.00, 285.00), "ProbeButton", "Probe", new BMessage(PROBE)); fCalibrateButton = new BButton(BRect(270.00, 260.00, 370.00, 285.00), "CalibrateButton", "Calibrate", new BMessage(CALIBRATE)); fGamePortL = new BListView(BRect(15.00, 30.00, 145.00, 250.00), "gamePort"); fGamePortL->SetSelectionMessage(new BMessage(PORT_SELECTED)); fGamePortL->SetInvocationMessage(new BMessage(PORT_INVOKE)); fConControllerL = new BListView(BRect(175.00,30.00,370.00,250.00), "conController"); fConControllerL->SetSelectionMessage(new BMessage(JOY_SELECTED)); fConControllerL->SetInvocationMessage(new BMessage(JOY_INVOKE)); fGamePortS = new BStringView(BRect(15, 5, 160, 25), "gpString", "Game port"); fGamePortS->SetFont(be_bold_font); fConControllerS = new BStringView(BRect(170, 5, 330, 25), "ccString", "Connected controller"); fConControllerS->SetFont(be_bold_font); fCheckbox = new BCheckBox(BRect(131.00, 260.00, 227.00, 280.00), "Disabled", "Disabled", new BMessage(DISABLEPORT)); BBox *box = new BBox( Bounds(),"box", B_FOLLOW_ALL, B_WILL_DRAW | B_FRAME_EVENTS | B_FULL_UPDATE_ON_RESIZE, B_PLAIN_BORDER); box->SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR)); // Add listViews with their scrolls box->AddChild(new BScrollView("PortScroll", fGamePortL, B_FOLLOW_LEFT | B_FOLLOW_TOP_BOTTOM, B_WILL_DRAW, false, true)); box->AddChild(new BScrollView("ConScroll", fConControllerL, B_FOLLOW_ALL, B_WILL_DRAW, false, true)); // Adding object box->AddChild(fCheckbox); box->AddChild(fGamePortS); box->AddChild(fConControllerS); box->AddChild(fProbeButton); box->AddChild(fCalibrateButton); AddChild(box); SetSizeLimits(400, 600, Bounds().Height(), Bounds().Height()); /* Add all the devices */ int32 nr = fJoystick->CountDevices(); for (int32 i = 0; i < nr;i++) { //BString str(path.Path()); char buf[B_OS_NAME_LENGTH]; fJoystick->GetDeviceName(i, buf, B_OS_NAME_LENGTH); fGamePortL->AddItem(new PortItem(buf)); } fGamePortL->Select(0); /* Add the joysticks specifications */ _AddToList(fConControllerL, JOY_SELECTED, JOYSTICKFILEPATH); _GetSettings(); }
void VJSDedicatedWorkerClass::_Construct (VJSParms_construct &ioParms) { XBOX::VString url; bool reUseContext; XBOX::VJSObject webSocket(ioParms.GetContext()); bool isOk; if (!ioParms.CountParams() || !ioParms.IsStringParam(1) || !ioParms.GetStringParam(1, url)) { XBOX::vThrowError(XBOX::VE_JVSC_WRONG_PARAMETER_TYPE_STRING, "1"); isOk = false; } else { reUseContext = false; isOk = true; } if (isOk && ioParms.CountParams() >= 2) { if (ioParms.IsBooleanParam(2)) { if (!ioParms.GetBoolParam(2, &reUseContext)) { XBOX::vThrowError(XBOX::VE_JVSC_WRONG_PARAMETER_TYPE_BOOLEAN, "2"); isOk = false; } } else if (!ioParms.GetParamObject(2, webSocket) || !webSocket.IsOfClass(VJSWebSocketClass::Class())) { XBOX::vThrowError(XBOX::VE_JVSC_WRONG_PARAMETER, "2"); isOk = false; } else if (ioParms.CountParams() >= 3 && !(ioParms.IsBooleanParam(3) && ioParms.GetBoolParam(3, &reUseContext))) { XBOX::vThrowError(XBOX::VE_JVSC_WRONG_PARAMETER_TYPE_BOOLEAN, "3"); isOk = false; } } if (isOk) { VJSWorker *outsideWorker; VJSWebWorkerObject *workerProxy; XBOX::VJSContext context(ioParms.GetContext()); #if USE_V8_ENGINE XBOX::VJSObject constructedObject = ioParms.fConstructedObject; #else XBOX::VJSObject constructedObject(context); #endif VJSWebSocketObject *webSocketObject; outsideWorker = VJSWorker::RetainWorker(context); xbox_assert(outsideWorker != NULL); if (!webSocket.HasRef()) webSocketObject = NULL; else { webSocketObject = webSocket.GetPrivateData<VJSWebSocketClass>(); xbox_assert(webSocketObject != NULL); } if ((workerProxy = VJSWebWorkerObject::_CreateWorker(context, outsideWorker, reUseContext, webSocketObject, url, true)) != NULL) { constructedObject = VJSDedicatedWorkerClass::ConstructInstance(ioParms, workerProxy); if (!webSocket.IsOfClass(VJSWebSocketClass::Class())) { workerProxy->fOnMessagePort->SetObject(outsideWorker, constructedObject); workerProxy->fOnErrorPort->SetObject(outsideWorker, constructedObject); } _AddToList(context, "Worker", constructedObject); } ioParms.ReturnConstructedObject(constructedObject); XBOX::ReleaseRefCountable<VJSWorker>(&outsideWorker); } }