Ejemplo n.º 1
0
        private void btnEditComputed_Click(object sender, EventArgs e)
        {
            ListViewItem item     = lstComputed.SelectedItems[0];
            string       alias    = item.SubItems[0].Text;
            string       exprText = "";

            using (var expr = OSGeo.FDO.Expression.Expression.Parse(item.SubItems[1].Text))
            {
                using (var comp = new OSGeo.FDO.Expression.ComputedIdentifier(alias, expr))
                {
                    exprText = comp.ToString();
                }
            }
            exprText = ExpressionEditor.EditExpression(_conn, _presenter.SelectedClass, null, exprText, ExpressionMode.Normal);
            if (exprText != null)
            {
                //Test to see if it is a computed identifier
                using (var expr = OSGeo.FDO.Expression.Expression.Parse(exprText))
                {
                    var comp = expr as OSGeo.FDO.Expression.ComputedIdentifier;
                    if (comp != null)
                    {
                        exprText = comp.Expression.ToString();
                        alias    = GetExpressionAlias(comp.Name);
                    }
                    else
                    {
                        alias = GetExpressionAlias("Expr0");
                    }
                }
                item.SubItems[0].Text = alias;
                item.SubItems[1].Text = exprText;
            }
        }
        private void CustomizeExpressionEditor()
        {
            richTextBox = ExpressionEditor.ChildrenOfType <RadRichTextBox>().FirstOrDefault();
            if (richTextBox != null)
            {
                richTextBox.KeyUp   += ExpressionEditor_KeyUp;
                richTextBox.FontSize = 18;
            }
            var treeviews = ExpressionEditor.ChildrenOfType <RadTreeView>();

            //////foreach (var treeview in treeviews)
            //////{
            //////    (treeview.Parent as FrameworkElement).Visibility = Visibility.Collapsed;
            //////    ((treeview.Parent as FrameworkElement).Parent as Grid).RowDefinitions[2].Height = new GridLength(0);
            //////    ((treeview.Parent as FrameworkElement).Parent as Grid).RowDefinitions[4].Height = new GridLength(80);
            //////    var aa = (((treeview.Parent as FrameworkElement).Parent as Grid).Children[4] as System.Windows.Controls.Border).Child;
            //////    ((aa as StackPanel).Children[1] as TextBlock).Width = 800;
            //////    ((aa as StackPanel).Children[1] as TextBlock).FlowDirection = FlowDirection.RightToLeft;
            //////    ((aa as StackPanel).Children[1] as TextBlock).TextWrapping = TextWrapping.Wrap;
            //////    treeview.Visibility = Visibility.Collapsed;
            //////}

            //lstProperties.MaxHeight = 200;
            //lstProperties.MinWidth = 100;
            //lstProperties.MouseDoubleClick += LstProperties_MouseDoubleClick;
            //lstProperties.KeyUp += LstProperties_KeyUp;
        }
Ejemplo n.º 3
0
        public void IsAction_WhenActionSymbol_ReturnTrue()
        {
            //Arrange
            var symbol = "+";
            //Action
            var result = ExpressionEditor.IsAction(symbol);

            //Assert
            Assert.AreEqual(true, result);
        }
Ejemplo n.º 4
0
        private void btnGroupFilter_Click(object sender, EventArgs e)
        {
            string expr = txtGroupFilter.Text;

            expr = ExpressionEditor.EditExpression(_conn, _presenter.SelectedClass, null, expr, ExpressionMode.Filter);
            if (expr != null)
            {
                txtGroupFilter.Text = expr;
            }
        }
Ejemplo n.º 5
0
        private void btnAddComputed_Click(object sender, EventArgs e)
        {
            string expr = ExpressionEditor.NewExpression(_conn, _presenter.SelectedClass, null, ExpressionMode.Normal);

            if (expr != null)
            {
                string name = "Expr" + lstComputed.Items.Count;
                lstComputed.Items.Add(new ListViewItem(new string[] { name, expr }));
            }
        }
Ejemplo n.º 6
0
        private void btnEditComputed_Click(object sender, EventArgs e)
        {
            ListViewItem item = lstComputed.SelectedItems[0];
            string       expr = item.SubItems[1].Text;

            expr = ExpressionEditor.EditExpression(_conn, _presenter.SelectedClass, null, expr, ExpressionMode.Normal);
            if (expr != null)
            {
                item.SubItems[1].Text = expr;
            }
        }
Ejemplo n.º 7
0
 private void txtFilter_Enter(object sender, EventArgs e)
 {
     if (!string.IsNullOrEmpty(this.Filter))
     {
         string filter = ExpressionEditor.EditExpression(_conn, _presenter.SelectedClass, null, this.Filter, ExpressionMode.Filter);
         if (filter != null)
         {
             this.Filter = filter;
         }
     }
     else
     {
         this.Filter = ExpressionEditor.NewExpression(_conn, _presenter.SelectedClass, null, ExpressionMode.Filter);
     }
 }
Ejemplo n.º 8
0
        private void InitContextMenus()
        {
            ctxDeleteTarget = new ContextMenuStrip();
            ctxSourceFilter = new ContextMenuStrip();
            ctxBatchSize    = new ContextMenuStrip();
            ctxFlatten      = new ContextMenuStrip();
            ctxForceWkb     = new ContextMenuStrip();

            //Delete Target
            ctxDeleteTarget.Items.Add("True", null, delegate { this.Delete = true; });
            ctxDeleteTarget.Items.Add("False", null, delegate { this.Delete = false; });

            //Source Filter
            ctxSourceFilter.Items.Add("Set Filter", null, delegate {
                string filter    = this.SourceFilter;
                string newFilter = ExpressionEditor.EditExpression(Parent.GetSourceConnection(), Parent.SourceClass, null, filter, ExpressionMode.Filter);
                if (filter != newFilter)
                {
                    this.SourceFilter = newFilter;
                }
            });
            ctxSourceFilter.Items.Add("Clear", null, delegate { this.SourceFilter = string.Empty; });

            //Flatten Geometries
            ctxFlatten.Items.Add("True", null, delegate { this.Flatten = true; });
            ctxFlatten.Items.Add("False", null, delegate { this.Flatten = false; });

            //Force wkb
            ctxForceWkb.Items.Add("True", null, delegate { this.ForceWkb = true; });
            ctxForceWkb.Items.Add("False", null, delegate { this.ForceWkb = false; });

            //Batch Size
            ctxBatchSize.Items.Add("Set Size", null, delegate {
                string result = MessageService.ShowInputBox("Batch Size", "Set batch size", this.BatchSize.ToString());
                int size;
                while (!int.TryParse(result, out size))
                {
                    result = MessageService.ShowInputBox("Batch Size", "Set batch size", result);
                    if (result == null) //cancelled
                    {
                        return;
                    }
                }
                this.BatchSize = size;
            });
        }
Ejemplo n.º 9
0
        private void PromptRightFilter()
        {
            var connMgr = ServiceManager.Instance.GetService <FdoConnectionManager>();
            var conn    = connMgr.GetConnection(this.SelectedRightConnection);

            using (var svc = conn.CreateFeatureService())
            {
                using (ClassDefinition cd = svc.GetClassByName(this.SelectedRightSchema, this.SelectedRightClass))
                {
                    var expr = ExpressionEditor.EditExpression(conn, cd, null, txtRightFilter.Text, ExpressionMode.Filter);
                    if (expr != null)
                    {
                        txtRightFilter.Text = expr;
                    }
                }
            }
        }
        private void OnEditExpression(object sender, EventArgs e)
        {
            TreeNode exprNode = _treeView.SelectedNode;

            Debug.Assert(exprNode.Tag != null);

            ExpressionMappingInfo expr = exprNode.Tag as ExpressionMappingInfo;

            if (expr != null)
            {
                string newExpr = ExpressionEditor.EditExpression(Parent.GetSourceConnection(), Parent.SourceClass, null, expr.Expression, ExpressionMode.Normal);
                if (newExpr != null) //null = cancel
                {
                    exprNode.ToolTipText = "Expression: " + newExpr;
                    expr.Expression      = newExpr;
                }
            }
        }
        private void OnAddExpression(object sender, EventArgs e)
        {
            string expr = ExpressionEditor.NewExpression(Parent.GetSourceConnection(), Parent.SourceClass, null, ExpressionMode.Normal);

            if (expr != null)
            {
                string alias = string.Empty;
                do
                {
                    alias = MessageService.ShowInputBox("Expression Alias", "Alias", "MyExpression");
                    if (alias == null) //cancelled
                    {
                        return;
                    }
                }while(_node.Nodes[alias] != null);
                this.AddExpression(alias, expr);
            }
        }
        protected override void SetProviderName(object instance, DesignerDataConnection connection)
        {
            SqlDataSource component = instance as SqlDataSource;

            if (component != null)
            {
                if (connection.IsConfigured)
                {
                    ExpressionEditor expressionEditor = ExpressionEditor.GetExpressionEditor(typeof(ConnectionStringsExpressionBuilder), component.Site);
                    if (expressionEditor != null)
                    {
                        string expressionPrefix = expressionEditor.ExpressionPrefix;
                        component.Expressions.Add(new ExpressionBinding("ProviderName", typeof(string), expressionPrefix, connection.Name + ".ProviderName"));
                    }
                }
                else
                {
                    TypeDescriptor.GetProperties(component)["ProviderName"].SetValue(component, connection.ProviderName);
                }
            }
        }
Ejemplo n.º 13
0
 private void txtUpdateFilter_Click(object sender, EventArgs e)
 {
     if (_classDef == null)
     {
         using (FdoFeatureService service = _conn.CreateFeatureService())
         {
             _classDef = service.GetClassByName(this.ClassName);
         }
     }
     if (!string.IsNullOrEmpty(this.Filter))
     {
         string filter = ExpressionEditor.EditExpression(_conn, _classDef, null, this.Filter, ExpressionMode.Filter);
         if (filter != null)
         {
             this.Filter = filter;
         }
     }
     else
     {
         this.Filter = ExpressionEditor.NewExpression(_conn, _classDef, null, ExpressionMode.Filter);
     }
 }
Ejemplo n.º 14
0
        private void btnFilter_Click(object sender, EventArgs e)
        {
            var cls = cmbClass.SelectedItem as ClassDefinition;

            if (cls != null)
            {
                var aliasedClasses = new Dictionary <string, ClassDefinition>();
                aliasedClasses.Add(txtJoinClassAlias.Text, cls);

                bool found = false;
                foreach (FeatureSchema fs in (FeatureSchemaCollection)cmbSchema.DataSource)
                {
                    if (fs.Name == _primarySchemaName)
                    {
                        foreach (ClassDefinition cd in fs.Classes)
                        {
                            if (cd.Name == _primaryClassName)
                            {
                                aliasedClasses.Add(_primaryClassAlias, cd);
                                found = true;
                                break;
                            }
                        }
                    }

                    if (found)
                    {
                        break;
                    }
                }

                string expr = ExpressionEditor.EditExpression(_conn, cls, aliasedClasses, txtJoinFilter.Text, ExpressionMode.Filter);
                if (expr != null)
                {
                    txtJoinFilter.Text = expr;
                }
            }
        }
Ejemplo n.º 15
0
        private void btnAddComputed_Click(object sender, EventArgs e)
        {
            string expr = ExpressionEditor.NewExpression(_conn, _presenter.SelectedClass, null, ExpressionMode.Normal);

            if (expr != null)
            {
                string name = "";
                //Test to see if it is a computed identiifer
                using (var exp = OSGeo.FDO.Expression.Expression.Parse(expr))
                {
                    var comp = exp as OSGeo.FDO.Expression.ComputedIdentifier;
                    if (comp != null)
                    {
                        name = GetExpressionAlias(comp.Name);
                        expr = comp.Expression.ToString();
                    }
                    else
                    {
                        name = GetExpressionAlias("Expr0");
                    }
                }
                lstComputed.Items.Add(new ListViewItem(new string[] { name, expr }));
            }
        }
        private void EditableCombo_SelectedIndexChanged(object sender, EventArgs e)
        {
            ComboBox combo = (ComboBox)sender;
            if (combo.SelectedIndex == 0 && this.launchEditor)
            {
                this.launchEditor = false;

                // if <Expression...> is selected in the combo box,
                // invoke the report builder expression editor
                ExpressionEditor editor = new ExpressionEditor();
                string newValue;
                newValue = (string)editor.EditValue(null, this.designerComponent.Site, new Rdl.ReportExpression(this.oldComboValue));
                combo.Items[0] = newValue;
            }
        }