Exemplo n.º 1
0
        public void ImageOperation(string tsmi)
        {
            ImageData  newData;
            IOperation OPERATION = PROGRAM.GiveOperation(tsmi);

            if (OPERATION == null)
            {
                return;
            }

            string decision = OPERATION.AskIfPopup();

            // ----------------------------------------------------------
            if (decision == null)
            {
                return;
            }
            else if (decision == "NONE")
            {
                try
                {
                    newData = OPERATION.GetResult(this);
                    if (newData == null)
                    {
                        return;
                    }
                    DataOperation(newData, tsmi);
                }
                catch
                {
                    imageWindow.ReloadImageData_All(data.LastData());
                    imageWindow.ReloadModificationsList(data.modifications);
                    imageWindow.CloseProgressBar();
                    return;
                }
            }
            else
            {
                IPopup popup = PROGRAM.Build_PopupWindow(decision);
                if (popup == null)
                {
                    return;
                }

                //string operationName = PROGRAM.GiveOperationName(tsmi);
                popupList.Add(popup);
                popup.Start(PROGRAM, this, OPERATION, tsmi);
            }

            imageWindow.CloseProgressBar();
        }