public bool IsWebClientValue() { if (_valuePointer == null) { return(false); } return(DesignUtil.IsWebClientObject(_valuePointer)); }
public void AddProperty(IProperty p) { if (_dataTransfers == null) { _dataTransfers = new Dictionary <IProperty, ParameterValue>(); } foreach (IProperty p0 in _dataTransfers.Keys) { if (p0.IsSameObjectRef(p)) { return; } } if (_rootClass.IsWebPage) { EnumWebActionType at = EnumWebActionType.Unknown; Dictionary <IProperty, ParameterValue> .KeyCollection.Enumerator en = _dataTransfers.Keys.GetEnumerator(); while (en.MoveNext()) { bool isClient = DesignUtil.IsWebClientObject(en.Current); bool isServer = DesignUtil.IsWebServerObject(en.Current); if (isClient && !isServer) { at = EnumWebActionType.Client; break; } else if (!isClient && isServer) { at = EnumWebActionType.Server; break; } } if (at == EnumWebActionType.Server) { if (DesignUtil.IsWebClientObject(p)) { MessageBox.Show(string.Format(CultureInfo.InvariantCulture, "Cannot add a client property [{0}] because there are server properties in the list", p.ExpressionDisplay), "Data transfer", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } else if (at == EnumWebActionType.Client) { if (DesignUtil.IsWebServerObject(p)) { MessageBox.Show(string.Format(CultureInfo.InvariantCulture, "Cannot add a server property [{0}] because there are client properties in the list", p.ExpressionDisplay), "Data transfer", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } } _dataTransfers.Add(p, CreateDefaultParameter(p)); }
protected override void OnMouseDown(MouseEventArgs e) { base.OnMouseDown(e); bool isWebComponent = DesignUtil.IsWebClientObject(_event.Owner); EventPath ep = this.Parent as EventPath; if (ep != null) { ep.SelectEventIcon(this); } if (e.Button == MouseButtons.Right) { ContextMenu menu = new ContextMenu(); MenuItemWithBitmap mi; mi = new MenuItemWithBitmap("Assign actions", mi_assignActions, Resources._eventHandlers.ToBitmap()); menu.MenuItems.Add(mi); if (isWebComponent) { mi = new MenuItemWithBitmap("Add client handler actions", mi_addWebClientHandlerClientActs, Resources._handlerMethod.ToBitmap()); menu.MenuItems.Add(mi); mi = new MenuItemWithBitmap("Add server handler actions", mi_addWebClientHandlerServerActs, Resources._webServerHandler.ToBitmap()); menu.MenuItems.Add(mi); mi = new MenuItemWithBitmap("Add client and download handler actions", mi_addWebClientHandlerDownloadActs, Resources._webHandler2.ToBitmap()); } else { mi = new MenuItemWithBitmap("Add handler method", mi_addHandler, Resources._handlerMethod.ToBitmap()); } menu.MenuItems.Add(mi); menu.MenuItems.Add("-"); if (IsCustomEventForRoot) { mi = new MenuItemWithBitmap("Create event-firing action", mi_createEventFireMethod, Resources._createEventFireAction.ToBitmap()); menu.MenuItems.Add(mi); menu.MenuItems.Add("-"); mi = new MenuItemWithBitmap("Delete event", mi_removeEvent, Resources._delEvent.ToBitmap()); menu.MenuItems.Add(mi); } else { mi = new MenuItemWithBitmap("Remove event handling", mi_remove, Resources._cancel.ToBitmap()); menu.MenuItems.Add(mi); } menu.Show(this, e.Location); } }
public EnumWebActionType CheckWebActionType() { if (_dataTransfers != null) { EnumWebRunAt methodRunAt = EnumWebRunAt.Unknown; EnumWebValueSources sources = EnumWebValueSources.Unknown; foreach (KeyValuePair <IProperty, ParameterValue> kv in _dataTransfers) { if (kv.Value != null && kv.Key != null) { if (methodRunAt == EnumWebRunAt.Unknown) { if (kv.Key.RunAt == EnumWebRunAt.Client) { methodRunAt = EnumWebRunAt.Client; } else if (kv.Key.RunAt == EnumWebRunAt.Server) { methodRunAt = EnumWebRunAt.Server; } } IList <ISourceValuePointer> list = kv.Value.GetValueSources(); if (list != null && list.Count > 0) { sources = WebBuilderUtil.GetActionTypeFromSources(list, sources); } } } if (methodRunAt == EnumWebRunAt.Unknown) { if (DesignUtil.IsWebClientObject(this.Owner)) { methodRunAt = EnumWebRunAt.Client; } else { methodRunAt = EnumWebRunAt.Server; } } return(WebBuilderUtil.GetWebActionType(methodRunAt, sources)); } return(EnumWebActionType.Unknown); }
public bool IsWebClientValue() { if (RunAt == EnumWebRunAt.Client) { return(true); } if (RunAt == EnumWebRunAt.Server) { return(false); } if (_property != null) { if (DesignUtil.IsWebClientObject(_property.Declarer)) { return(true); } } return(false); }
public bool IsWebClientValue() { if (_methodPointer != null) { MethodClass mc = _methodPointer.MethodPointed as MethodClass; if (mc != null) { if (mc.RunAt == EnumWebRunAt.Client) { return(true); } } else { if (_methodPointer.MethodPointed != null) { MethodInfoPointer mifp = _methodPointer.MethodPointed as MethodInfoPointer; if (mifp != null && mifp.MethodInfo != null) { object[] vs = mifp.MethodInfo.GetCustomAttributes(typeof(WebClientMemberAttribute), true); if (vs != null && vs.Length > 0) { return(true); } vs = mifp.MethodInfo.GetCustomAttributes(typeof(WebServerMemberAttribute), true); if (vs != null && vs.Length > 0) { return(false); } return(DesignUtil.IsWebClientObject(mifp)); } } } } return(false); }
public void CheckWebActionType() { _webActType = EnumWebActionType.Unknown; EnumWebValueSources sources = EnumWebValueSources.Unknown; IList <ISourceValuePointer> conditionSource = null; if (_condition != null) { conditionSource = _condition.MathExp.GetValueSources(); if (conditionSource != null) { sources = WebBuilderUtil.GetActionTypeFromSources(conditionSource); } } if (_mathExp != null) { if (_mathExp.MathExpression != null) { IList <ISourceValuePointer> lst = _mathExp.MathExpression.GetValueSources(); if (lst != null && lst.Count > 0) { sources = WebBuilderUtil.GetActionTypeFromSources(lst, sources); } } } bool executerIsClient = false; MethodClass mc = ScopeMethod as MethodClass; if (mc != null) { if (mc.WebUsage == EnumMethodWebUsage.Client) { executerIsClient = true; } } else { if (_mathExp != null && _mathExp.Owner != null) { if (DesignUtil.IsWebClientObject(_mathExp.Owner)) { executerIsClient = true; } } else { if (_reader != null) { if (DesignUtil.IsWebClientObject(_reader.ObjectList.RootPointer as IClass)) { executerIsClient = true; } } } } switch (sources) { case EnumWebValueSources.HasBothValues: if (executerIsClient) { _webActType = EnumWebActionType.Download; } else { _webActType = EnumWebActionType.Upload; } break; case EnumWebValueSources.HasClientValues: _webActType = EnumWebActionType.Client; break; case EnumWebValueSources.HasServerValues: _webActType = EnumWebActionType.Server; break; } }