Exemplo n.º 1
0
        /// <summary>
        /// Saves a new preset at the given position
        /// </summary>
        /// <returns>the preset item for this position</returns>
        public UserPresetItem SavePreset()
        {
            int i = FindAvailableIndex();

            SetPreset((byte)i);
            presetIndexing[i - LowestPresetIndex] = new CameraIndexedPreset(i);
            PresetItems.Add(presetIndexing[i - LowestPresetIndex]);
            return(presetIndexing[i - LowestPresetIndex]);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Restores the camera to the given preset id
        /// </summary>
        /// <param name="id">id of the preset to restore</param>
        public void RestorePreset(Guid id)
        {
            CameraIndexedPreset i = PresetItems[id] as CameraIndexedPreset;

            if (i != null)
            {
                CallPreset((byte)i.Index);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Deletes the preset with the given identifier
        /// </summary>
        /// <param name="id">preset identifier to delete</param>
        /// <returns>true if the preset was deleted, false if it did not exist</returns>
        public bool DeletePreset(Guid id)
        {
            UserPresetItem      item = PresetItems[id];
            CameraIndexedPreset cip  = item as CameraIndexedPreset;

            if (cip != null)
            {
                ClearPreset((byte)cip.Index);
                presetIndexing[cip.Index - LowestPresetIndex] = null;
            }
            return(PresetItems.Remove(item));
        }
Exemplo n.º 4
0
 private void BuildIndexingArray()
 {
     presetIndexing = new CameraIndexedPreset[HighestPresetIndex - LowestPresetIndex + 1];
     foreach (UserPresetItem i in PresetItems)
     {
         CameraIndexedPreset cip = i as CameraIndexedPreset;
         if (cip != null)
         {
             presetIndexing[cip.Index - LowestPresetIndex] = cip;
         }
     }
 }