syntax = "proto2"; option java_package = "org.webswing.model.appframe.proto"; package appFrameProtoOut; // javascript namespace /* =================== APP -> BROWSER ====================*/ message AppFrameMsgOutProto { optional StartApplicationMsgOutProto startApplication = 1; optional LinkActionMsgOutProto linkAction = 2; optional WindowMoveActionMsgOutProto moveAction = 3; optional CopyEventMsgOutProto copyEvent = 4; optional PasteRequestMsgOutProto pasteRequest = 5; optional FileDialogEventMsgOutProto fileDialogEvent = 6; repeated WindowMsgOutProto windows = 7; optional WindowMsgOutProto closedWindow = 8; optional SimpleEventMsgOutProto event = 9; optional JsEvalRequestMsgOutProto jsRequest = 10; optional JsResultMsgOutProto javaResponse = 11; optional PixelsAreaRequestMsgOutProto pixelsRequest = 12; optional PlaybackInfoMsgOutProto playback = 13; optional string instanceId = 14; optional string startTimestamp = 15; optional string sendTimestamp = 16; optional FocusEventMsgOutProto focusEvent = 17; repeated ComponentTreeMsgOutProto componentTree = 18; optional bool directDraw = 19; optional ActionEventMsgOutProto actionEvent = 20; optional bool compositingWM = 21; optional AudioEventMsgOutProto audioEvent = 22; optional AccessibilityMsgOutProto accessible = 23; repeated WindowSwitchMsgOutProto windowSwitchList = 24; optional CursorChangeEventMsgOutProto cursorChangeEvent = 25; } message AccessibilityMsgOutProto { optional string id = 1; optional string role = 2; optional string text = 3; optional string tooltip = 4; optional string value = 5; optional string description = 6; optional string columnheader = 7; optional bool password = 8; optional bool toggle = 9; optional sint32 selstart = 10; optional sint32 selend = 11; optional sint32 rowheight = 12; optional sint32 rows = 13; optional sint32 size = 14; optional sint32 position = 15; optional sint32 level = 16; optional sint32 colindex = 17; optional sint32 rowindex = 18; optional sint32 colcount = 19; optional sint32 rowcount = 20; repeated string states = 21; optional sint32 min = 22; optional sint32 max = 23; optional sint32 val = 24; optional sint32 screenX = 25; optional sint32 screenY = 26; optional sint32 width = 27; optional sint32 height = 28; repeated AccessibilityHierarchyMsgOutProto hierarchy = 29; } message AccessibilityHierarchyMsgOutProto { optional string id = 1; optional string role = 2; optional string text = 3; optional sint32 position = 4; optional sint32 size = 5; } message FocusEventMsgOutProto { required FocusEventTypeProto type = 1; optional sint32 x = 2; optional sint32 y = 3; optional uint32 w = 4; optional uint32 h = 5; optional sint32 caretX = 6; optional sint32 caretY = 7; optional sint32 caretH = 8; optional bool editable = 9; enum FocusEventTypeProto { focusLost = 1; focusGained = 2; focusWithCarretGained = 3; focusPasswordGained = 4; } } message StartApplicationMsgOutProto { } message LinkActionMsgOutProto { required LinkActionTypeProto action = 1; required string src = 2; enum LinkActionTypeProto { file = 0; url = 1; print = 2; redirect = 3; } } message WindowMoveActionMsgOutProto { optional sint32 sx = 1; optional sint32 sy = 2; optional sint32 dx = 3; optional sint32 dy = 4; optional uint32 width = 5; optional uint32 height = 6; } message CopyEventMsgOutProto { optional string text = 1; optional string html = 2; optional bytes img = 3; repeated string files = 4; optional bool other = 5; } message PasteRequestMsgOutProto { optional string title = 1; optional string message = 2; } message FileDialogEventMsgOutProto { required FileDialogEventTypeProto eventType = 1; optional bool allowDownload = 2; optional bool allowUpload = 3; optional bool allowDelete = 4; optional string filter = 5; optional bool isMultiSelection = 6; optional string selection = 7; optional bool customDialog = 8; enum FileDialogEventTypeProto { Open = 0; Close = 1; AutoUpload = 2; AutoSave = 3; } } message WindowSwitchMsg { required string id = 1; optional string title = 2; optional bool modalBlocked = 3; } message WindowMsgOutProto { required string id = 1; repeated WindowPartialContentMsgOutProto content = 2; optional bytes directDraw = 3; optional string title = 4; optional sint32 posX = 5; optional sint32 posY = 6; optional uint32 width = 7; optional uint32 height = 8; optional string name = 9; optional WindowTypeProto type = 10; optional bool modalBlocked = 11; optional string ownerId = 12; optional uint32 state = 13; repeated WindowMsgOutProto internalWindows = 14; optional DockModeProto dockMode = 15; optional DockStateProto dockState = 16; optional WindowClassTypeProto classType = 17; enum WindowTypeProto { basic = 1; html = 2; internal = 3; internalHtml = 4; internalWrapper = 5; } enum WindowClassTypeProto { other = 1; Window = 2; JWindow = 3; Dialog = 4; JDialog = 5; Frame = 6; JFrame = 7; } enum DockModeProto { none = 1; dockable = 2; autoUndock = 3; } enum DockStateProto { docked = 1; undocked = 2; } } message WindowSwitchMsgOutProto { required string id = 1; optional string title = 2; optional bool modalBlocked = 3; } message WindowPartialContentMsgOutProto { optional sint32 positionX = 1; optional sint32 positionY = 2; optional uint32 width = 3; optional uint32 height = 4; optional bytes base64Content = 5; } enum SimpleEventMsgOutProto { applicationAlreadyRunning = 0; shutDownNotification = 1; tooManyClientsNotification = 2; continueOldSession = 3; configurationError = 4; sessionStolenNotification = 5; unauthorizedAccess = 6; shutDownAutoLogoutNotification = 7; sessionTimeoutWarning = 8; sessionTimedOutNotification = 9; applicationBusy = 10; reconnectInstanceNotFound = 11; } message JsEvalRequestMsgOutProto { optional string correlationId = 1; optional string thisObjectId = 2; optional JsEvalRequestTypeProto type = 3; optional string evalString = 4; repeated JsParamMsgOutProto params = 5; repeated string garbageIds = 6; enum JsEvalRequestTypeProto { eval = 0; call = 1; setMember = 2; getMember = 3; deleteMember = 4; setSlot = 5; getSlot = 6; } } message JsParamMsgOutProto { optional string primitive = 1; optional JSObjectMsgOutProto jsObject = 2; optional JavaObjectRefMsgOutProto javaObject = 3; repeated JsParamMsgOutProto array = 4; } message JSObjectMsgOutProto { optional string id = 1; } message JavaObjectRefMsgOutProto { optional string id = 1; repeated string methods = 2; } message JsResultMsgOutProto { optional string correlationId = 1; optional string error = 2; optional JsParamMsgOutProto value = 3; } message PlaybackInfoMsgOutProto { optional uint32 current = 1; optional uint32 total = 2; } message PixelsAreaRequestMsgOutProto { optional string correlationId = 1; optional uint32 x = 2; optional uint32 y = 3; optional uint32 w = 4; optional uint32 h = 5; } message ComponentTreeMsgOutProto { optional string componentType = 1; optional string name = 2; optional string value = 3; optional sint32 screenX = 4; optional sint32 screenY = 5; optional sint32 width = 6; optional sint32 height = 7; optional bool enabled = 8; optional bool visible = 9; repeated ComponentTreeMsgOutProto components = 10; optional bool hidden = 11; optional bool selected = 12; } message ActionEventMsgOutProto { optional string actionName = 1; optional string data = 2; optional bytes binaryData = 3; optional string windowId = 4; } message AudioEventMsgOutProto { optional string id = 1; optional AudioEventTypeProto eventType = 2; optional bytes data = 3; optional float time = 4; optional sint32 loop = 5; enum AudioEventTypeProto { play = 0; stop = 1; update = 2; dispose = 3; } } message CursorChangeEventMsgOutProto { optional string cursor = 1; optional bytes b64img = 2; optional string curFile = 3; optional sint32 x = 4; optional sint32 y = 5; optional string winId = 6; }