Esempio n. 1
0
        public ArrayList GetResoursesPaths()
        {
            if (m_resPaths == null)
            {
                // пройтись по истории и найти изначальное им¤ %)
                HistoryProcessor hproc = HistoryProcessor.GetHProcessor();

                byte   libFlag;
                String objectParent = hproc.FindObjectParent(m_objectName, out libFlag);

                String queryStr = "";
                if (libFlag == 0)
                {
                    queryStr = "SELECT `res` FROM `objects_map` WHERE `name`='" + objectParent + "'";
                }
                else
                {
                    queryStr = "SELECT `res` FROM `objects_lib` WHERE `id`='" + objectParent + "'";
                }

                ArrayList queryResult = m_mySql.QueryA(queryStr);
                if (queryResult == null)
                {
                    m_resPaths = new ArrayList();
                    m_resPaths.Add(GetGeometryPath() + "common");
                }
                else
                {
                    if (((Hashtable)(queryResult[0]))["res"] != null)
                    {
                        String objectRes = (String)((Hashtable)(queryResult[0]))["res"];

                        // пути к ресурсам
                        m_resPaths = new ArrayList();
                        String[] splittedRes = objectRes.Split(';');

                        for (int splitItemIndex = 0; splitItemIndex < splittedRes.Length; splitItemIndex++)
                        {
                            if (splitItemIndex % 3 == 0)
                            {
                                if (splittedRes[splitItemIndex] == "")
                                {
                                    break;
                                }

                                m_resPaths.Add(GetGeometryPath() + splittedRes[splitItemIndex].Substring(0, splittedRes[splitItemIndex].IndexOf("\\mesh.bmf.zip")));
                            }
                        }
                    }
                }
            }

            return(m_resPaths);
        }
Esempio n. 2
0
        private void OK_Click(object sender, EventArgs e)
        {
            String    queryStr = null;
            ArrayList aResult  = new ArrayList();

            if (GetGroupName() != "")
            {
                //если мы создаем новую группу
                if (groupId == -1)
                {
                    queryStr = "SELECT * FROM `objects_map` WHERE `name`='" + GetGroupName() + "'";
                    aResult  = m_mySql.QueryA(queryStr);

                    //если такой группы еще нет
                    if (aResult == null)
                    {
                        queryStr = "SELECT * FROM `object_groups` WHERE `id_object`='" + objectId + "'";
                        aResult  = m_mySql.QueryA(queryStr);

                        //если объект не имеет группы
                        if (aResult == null)
                        {
                            CreateGroupSql(GetGroupType());

                            queryStr = "INSERT INTO `object_groups` (`id_group`,`id_object`) VALUES ('" + groupId + "','" + GetObjectId() + "')";
                            m_mySql.NonQuery(queryStr);

                            SendGroupCommand();
                        }
                        else//у объекта была другая группа
                        {
                            if (MessageBox.Show("Вы действительно хотите изменить группу объекта?", "Подтверждение изменения группы объекта", MessageBoxButtons.OKCancel) == DialogResult.OK)
                            {
                                CreateGroupSql(GetGroupType());

                                queryStr = "UPDATE `object_groups` SET `id_group`='" + groupId + "' WHERE `id_object`='" + objectId + "' ";
                                m_mySql.NonQuery(queryStr);

                                SendGroupCommand();
                            }
                        }
                        this.Close();
                    }
                    else
                    {
                        MessageBox.Show("Такая группа уже существует", "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else//редактируем группу
                {
                    queryStr = "SELECT * FROM `objects_map`  WHERE `name`='" + GetGroupName() + "' AND `id`<> " + GetGroupId() + " ";
                    aResult  = m_mySql.QueryA(queryStr);

                    if (aResult == null)
                    {
                        queryStr = "UPDATE `objects_map` SET `type`='" + GetGroupType() + "', `name`='" + GetGroupName() + "' WHERE `id`='" + groupId + "' ";
                        m_mySql.NonQuery(queryStr);

                        SendGroupCommand();

                        this.Close();
                    }
                    else
                    {
                        MessageBox.Show("Такая группа уже существует", "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
            else
            {
                MessageBox.Show("Заполните все поля", "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }