コード例 #1
0
        void Button_Clicked(object sender, EventArgs e)
        {
            TouchButtonIcon          button = (TouchButtonIcon)sender;
            EntryBoxValidationButton entryBoxValidationButton = (button.Parent.Parent.Parent as EntryBoxValidationButton);

            try
            {
                FileFilter fileFilter = Utils.GetFileFilterImages();

                //Get Current FileList Index Position
                int currentFileListIndexPosition = -1;
                for (int i = 0; i < (button.Parent.Parent.Parent.Parent as VBox).Children.Length; i++)
                {
                    EntryBoxValidationButton curentrEntryBox = ((button.Parent.Parent.Parent.Parent as VBox).Children.GetValue(i) as EntryBoxValidationButton);
                    if (curentrEntryBox == entryBoxValidationButton)
                    {
                        currentFileListIndexPosition = i;
                        if (_debug)
                        {
                            _log.Debug(string.Format("Current file List Index [{0}]: [{1}]", currentFileListIndexPosition, _fileList[currentFileListIndexPosition]));
                        }
                    }
                }

                PosFilePickerDialog dialog   = new PosFilePickerDialog(_sourceWindow, DialogFlags.DestroyWithParent, fileFilter, FileChooserAction.Open);
                ResponseType        response = (ResponseType)dialog.Run();
                if (response == ResponseType.Ok)
                {
                    if (entryBoxValidationButton.EntryValidation.Text == dialog.FilePicker.Filename)
                    {
                        //Do Nothing
                    }
                    else if (_fileList.Contains(dialog.FilePicker.Filename))
                    {
                        Utils.ShowMessageTouch(null, DialogFlags.Modal, MessageType.Error, ButtonsType.Ok, resources.CustomResources.GetCustomResources(GlobalFramework.Settings["customCultureResourceDefinition"], "global_error"), resources.CustomResources.GetCustomResources(GlobalFramework.Settings["customCultureResourceDefinition"], "dialog_message_filepicker_existing_file_error"));
                    }
                    else
                    {
                        //Update fileList with Changed Value
                        _fileList[currentFileListIndexPosition] = dialog.FilePicker.Filename;
                        //Update and Validate Entry
                        entryBoxValidationButton.EntryValidation.Text = dialog.FilePicker.Filename;
                        entryBoxValidationButton.EntryValidation.Validate();

                        //Trigger Event
                        OnChange();

                        if (_debug)
                        {
                            ListValue();
                        }
                    }
                }
                dialog.Destroy();
            }
            catch (Exception ex)
            {
                _log.Error(ex.Message, ex);
            }
        }
コード例 #2
0
        //if AddFileNameToList true, add the File to the list, else skip add, usefull when we Initialize List from Constructor pInitialFileList
        private void AddFileEntry(string pFileName, bool pAddFileNameToList)
        {
            EntryBoxValidationButton entryBoxValidationButton = new EntryBoxValidationButton(_sourceWindow, string.Format(resources.CustomResources.GetCustomResources(GlobalFramework.Settings["customCultureResourceDefinition"], "global_file_image"), _fileList.Count + 1), KeyboardMode.None, SettingsApp.RegexAlfaNumericFilePath, true);

            entryBoxValidationButton.EntryValidation.Validate();
            entryBoxValidationButton.EntryValidation.Sensitive = false;

            //Add Aditional Button to EntryBoxValidationFilePickerDialog
            string          iconFileNameDelete = FrameworkUtils.OSSlash(string.Format("{0}{1}", GlobalFramework.Path["images"], @"Icons/Windows/icon_window_delete_record.png"));
            TouchButtonIcon buttonDelete       = new TouchButtonIcon("touchButtonIcon_Delete", Color.Transparent, iconFileNameDelete, new Size(20, 20), 30, 30);

            entryBoxValidationButton.Hbox.PackStart(buttonDelete, false, false, 0);

            //Events
            entryBoxValidationButton.Button.Clicked += Button_Clicked;
            buttonDelete.Clicked += buttonDelete_Clicked;

            //Assign Initial FileName
            entryBoxValidationButton.EntryValidation.Text = pFileName;

            //Pack
            _vbox.PackStart(entryBoxValidationButton, false, false, 0);
            entryBoxValidationButton.ShowAll();
            if (pAddFileNameToList)
            {
                _fileList.Add(_entryBoxAddFile.Value);
            }
        }
コード例 #3
0
        void Button_Clicked(object sender, EventArgs e)
        {
            TouchButtonIcon          button = (TouchButtonIcon)sender;
            EntryBoxValidationButton entryBoxValidationButton = (button.Parent.Parent.Parent as EntryBoxValidationButton);

            _vbox.Remove(entryBoxValidationButton);
            _datesList.Remove(Convert.ToDateTime(entryBoxValidationButton.EntryValidation.Text));

            //Trigger Event
            OnChange();

            if (_debug)
            {
                ListValue();
            }
        }
コード例 #4
0
        void buttonDelete_Clicked(object sender, EventArgs e)
        {
            TouchButtonIcon          button = (TouchButtonIcon)sender;
            EntryBoxValidationButton entryBoxValidationButton = (button.Parent.Parent.Parent as EntryBoxValidationButton);

            _vbox.Remove(entryBoxValidationButton);
            _fileList.Remove(entryBoxValidationButton.EntryValidation.Text);

            //Trigger Event
            OnChange();

            if (_debug)
            {
                ListValue();
            }
        }
コード例 #5
0
        private void AddDateTimeEntry(DateTime pDateTime, bool pAddDateTimeToList)
        {
            string iconFileName = FrameworkUtils.OSSlash(string.Format("{0}{1}", GlobalFramework.Path["images"], @"Icons/Windows/icon_window_delete_record.png"));
            EntryBoxValidationButton entryBoxValidation = new EntryBoxValidationButton(_sourceWindow, string.Format(Resx.global_date, _datesList.Count + 1), KeyboardMode.None, SettingsApp.RegexDate, true, iconFileName);

            entryBoxValidation.EntryValidation.Validate();
            entryBoxValidation.EntryValidation.Sensitive = false;
            //Remove Event
            entryBoxValidation.Button.Clicked      += Button_Clicked;
            entryBoxValidation.EntryValidation.Text = pDateTime.ToString(SettingsApp.DateFormat);
            _vbox.PackStart(entryBoxValidation, false, false, 0);
            _vbox.ShowAll();
            if (pAddDateTimeToList)
            {
                _datesList.Add(_entryBoxAddDate.Value);
            }
        }