User Manual
Print

Doing Actions When Connected Device is Changed

On device changed

				
					{"blocks":"<xml xmlns=\"https://developers.google.com/blockly/xml\"><block type=\"Camera_setOnDeviceChanged\"><value name=\"HANDLER_DRAG_PARAM_connectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">connectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyConnectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyConnectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyDisconnectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyDisconnectedCameras</field></shadow></value></block></xml>"}
				
			

It will do some action when the corresponding camera is disconnected. 

Parameters: 

          • connectedCammeras: The camera that is connected.
          • recentlyConnectedCameras: The camera that is using and connecting.
          • recentlyDiscounnectedCameras: The camera that is discounted.

Output: N/A
Sample code:

This is used to remove the disconnected camera.

				
					{"blocks":"<xml xmlns=\"https://developers.google.com/blockly/xml\"><block type=\"Camera_setOnCameraControlChanged\"><value name=\"HANDLER_DRAG_PARAM_selectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">selectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlySelectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlySelectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyUnselectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyUnselectedCameras</field></shadow></value><statement name=\"HANDLER\"><block type=\"pxt_controls_for_of\"><value name=\"VAR\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">value</field></shadow></value><value name=\"LIST\"><block type=\"variables_get\"><field name=\"VAR\">recentlyUnselectedCameras</field></block></value><statement name=\"DO\"><block type=\"ScreenItem_ScreenItem_remove\"><value name=\"this\"><block type=\"ScreenItem_ScreenItem_getParent\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">value</field></block></value></block></value></block></statement><next><block type=\"pxt_controls_for_of\"><value name=\"VAR\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">value2</field></shadow></value><value name=\"LIST\"><block type=\"variables_get\"><field name=\"VAR\">recentlySelectedCameras</field></block></value><statement name=\"DO\"><block type=\"variables_set\"><field name=\"VAR\">cameraResultLayout</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"ScreenItem_createLayout\"/></value><next><block type=\"ScreenItem_Layout_add\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">cameraResultLayout</field></block></value><value name=\"item\"><block type=\"variables_get\"><field name=\"VAR\">value2</field></block></value><next><block type=\"ScreenItem_Layout_add\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">cameraLayout</field></block></value><value name=\"item\"><block type=\"variables_get\"><field name=\"VAR\">cameraResultLayout</field></block></value><next><block type=\"Camera_setOnDeviceChanged\"><value name=\"HANDLER_DRAG_PARAM_connectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">connectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyConnectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyConnectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyDisconnectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyDisconnectedCameras</field></shadow></value><statement name=\"HANDLER\"><block type=\"pxt_controls_for_of\"><value name=\"VAR\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">value3</field></shadow></value><value name=\"LIST\"><block type=\"variables_get\"><field name=\"VAR\">recentlyDisconnectedCameras</field></block></value><statement name=\"DO\"><block type=\"ScreenItem_ScreenItem_remove\"><value name=\"this\"><block type=\"ScreenItem_ScreenItem_getParent\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">value3</field></block></value></block></value></block></statement></block></statement></block></next></block></next></block></next></block></statement></block></next></block></statement></block></xml>"}
				
			
				
					{"blocks":"<xml xmlns=\"https://developers.google.com/blockly/xml\"><variables><variable>mainLayout</variable><variable>mainScreen</variable><variable>cameraLayout</variable><variable>cameraControl</variable><variable>selectedCameras</variable><variable>recentlySelectedCameras</variable><variable>recentlyUnselectedCameras</variable><variable>value</variable><variable>value2</variable><variable>cameraResultLayout</variable><variable>connectedCameras</variable><variable>recentlyConnectedCameras</variable><variable>recentlyDisconnectedCameras</variable><variable>value3</variable></variables><block type=\"pxt-on-start\" x=\"0\" y=\"0\"><statement name=\"HANDLER\"><block type=\"variables_set\"><field name=\"VAR\">mainLayout</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"ScreenItem_createLayout\"/></value><next><block type=\"variables_set\"><field name=\"VAR\">mainScreen</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"Screen_create\"><value name=\"label\"><shadow type=\"text\"><field name=\"TEXT\">Main</field></shadow></value><value name=\"layout\"><block type=\"variables_get\"><field name=\"VAR\">mainLayout</field></block></value></block></value><next><block type=\"Camera_enableCameraFeature\"><value name=\"enable\"><shadow type=\"logic_boolean\"><field name=\"BOOL\">TRUE</field></shadow></value><next><block type=\"variables_set\"><field name=\"VAR\">cameraLayout</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"ScreenItem_createLayout\"/></value><next><block type=\"variables_set\"><field name=\"VAR\">cameraControl</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"Camera_getCameraControl\"/></value><next><block type=\"Control_OptionList_setMultiple\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">cameraControl</field></block></value><value name=\"isMultiple\"><shadow type=\"logic_boolean\"><field name=\"BOOL\">TRUE</field></shadow></value><next><block type=\"ScreenItem_Layout_add\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">cameraLayout</field></block></value><value name=\"item\"><block type=\"variables_get\"><field name=\"VAR\">cameraControl</field></block></value><next><block type=\"ScreenItem_Layout_add\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">mainLayout</field></block></value><value name=\"item\"><block type=\"variables_get\"><field name=\"VAR\">cameraLayout</field></block></value><next><block type=\"Camera_setOnCameraControlChanged\"><value name=\"HANDLER_DRAG_PARAM_selectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">selectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlySelectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlySelectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyUnselectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyUnselectedCameras</field></shadow></value><statement name=\"HANDLER\"><block type=\"pxt_controls_for_of\"><value name=\"VAR\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">value</field></shadow></value><value name=\"LIST\"><block type=\"variables_get\"><field name=\"VAR\">recentlyUnselectedCameras</field></block></value><statement name=\"DO\"><block type=\"ScreenItem_ScreenItem_remove\"><value name=\"this\"><block type=\"ScreenItem_ScreenItem_getParent\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">value</field></block></value></block></value></block></statement><next><block type=\"pxt_controls_for_of\"><value name=\"VAR\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">value2</field></shadow></value><value name=\"LIST\"><block type=\"variables_get\"><field name=\"VAR\">recentlySelectedCameras</field></block></value><statement name=\"DO\"><block type=\"variables_set\"><field name=\"VAR\">cameraResultLayout</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"ScreenItem_createLayout\"/></value><next><block type=\"ScreenItem_Layout_add\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">cameraResultLayout</field></block></value><value name=\"item\"><block type=\"variables_get\"><field name=\"VAR\">value2</field></block></value><next><block type=\"ScreenItem_Layout_add\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">cameraLayout</field></block></value><value name=\"item\"><block type=\"variables_get\"><field name=\"VAR\">cameraResultLayout</field></block></value><next><block type=\"Camera_setOnDeviceChanged\"><value name=\"HANDLER_DRAG_PARAM_connectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">connectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyConnectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyConnectedCameras</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_recentlyDisconnectedCameras\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">recentlyDisconnectedCameras</field></shadow></value><statement name=\"HANDLER\"><block type=\"pxt_controls_for_of\"><value name=\"VAR\"><shadow type=\"variables_get_reporter\"><field name=\"VAR\">value3</field></shadow></value><value name=\"LIST\"><block type=\"variables_get\"><field name=\"VAR\">recentlyDisconnectedCameras</field></block></value><statement name=\"DO\"><block type=\"ScreenItem_ScreenItem_remove\"><value name=\"this\"><block type=\"ScreenItem_ScreenItem_getParent\"><value name=\"this\"><block type=\"variables_get\"><field name=\"VAR\">value3</field></block></value></block></value></block></statement></block></statement></block></next></block></next></block></next></block></statement></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></xml>"}
				
			

When all cameras are worked, and user selects the first camera, the output:

When the first camera is disconnected, the output:

When user chooses another camera, the output: