private bool hasSteamParams(ProductType_t type)
 {
     if ((int)type > 8 && (int)type < 18) // steam or milk
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
 /// <summary>
 /// Check if the product type needs latte macchiato parameters
 /// </summary>
 private bool hasLatteMacchParams(ProductType_t type)
 {
     if (type == ProductType_t.LatteMacchiato_e)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
 /// <summary>
 /// Check if the product type needs coffee parameters
 /// </summary>
 private bool hasCoffeeParams(ProductType_t type)
 {
     if (((byte)type >= 1 && (byte)type <= 7) || hasMilkParams(type) == true)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
 /// <summary>
 /// Check if the product type needs milk parameters
 /// </summary>
 private bool hasMilkParams(ProductType_t type)
 {
     if ((byte)type >= 12 && (byte)type <= 17)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
 /// <summary>
 /// Select the correct product process based on the product type
 /// </summary>
 private ProductProcess_t getProdProcess(ProductType_t type)
 {
     if (type == ProductType_t.HotWater_e)
     {
         return(ProductProcess_t.ProProcWater_e);
     }
     else if (hasCoffeeParams(type) == true)
     {
         return(ProductProcess_t.ProProcCoffee_e);
     }
     else if ((byte)type >= 9 && (byte)type <= 11)
     {
         return(ProductProcess_t.ProProcSteam_e);
     }
     else
     {
         return(ProductProcess_t.ProProcUndef_e);
     }
 }
        /// <summary>
        /// Hide all unnecessary controls for the selected product type
        /// </summary>
        private void changeActiveControls(ProductType_t type)
        {
            // Coffee
            if (hasCoffeeParams(type))
            {
                cbxBeanHopper.Enabled    = true;
                numCakeThickness.Enabled = true;
                cbxTamping.Enabled       = true;
                numSecTamping.Enabled    = true;
                numPreInfusion.Enabled   = true;
                numRelaxTime.Enabled     = true;
            }
            else
            {
                cbxBeanHopper.Enabled    = false;
                numCakeThickness.Enabled = false;
                cbxTamping.Enabled       = false;
                numSecTamping.Enabled    = false;
                numPreInfusion.Enabled   = false;
                numRelaxTime.Enabled     = false;
            }

            // Milk
            if (hasMilkParams(type))
            {
                cbxMilkSequence.Enabled    = true;
                numMilkQuantity.Enabled    = true;
                cbxMilkTemperature.Enabled = true;
                numMilkPercent.Enabled     = true;
                cbxFoamSequence.Enabled    = true;
            }
            else
            {
                cbxMilkSequence.Enabled    = false;
                numMilkQuantity.Enabled    = false;
                cbxMilkTemperature.Enabled = false;
                numMilkPercent.Enabled     = false;
                cbxFoamSequence.Enabled    = false;
            }

            // others
            if (hasLatteMacchParams(type))
            {
                numLatteMacchiatoTime.Enabled = true;
            }
            else
            {
                numLatteMacchiatoTime.Enabled = false;
            }

            // everfoam
            if (hasEverfoamParams(type))
            {
                numEverfoamTemp.Enabled     = true;
                numEverfoamTime.Enabled     = true;
                cbxEverfoamMode.Enabled     = true;
                cbxEverfoamTempUnit.Enabled = true;
            }
            else
            {
                numEverfoamTemp.Enabled     = false;
                numEverfoamTime.Enabled     = false;
                cbxEverfoamMode.Enabled     = false;
                cbxEverfoamTempUnit.Enabled = false;
            }

            // steam
            if (hasSteamParams(type))
            {
                numSteamTemp.Enabled     = true;
                numSteamTime.Enabled     = true;
                cbxSteamTempUnit.Enabled = true;
            }
            else
            {
                numSteamTemp.Enabled     = false;
                numSteamTime.Enabled     = false;
                cbxSteamTempUnit.Enabled = false;
            }
        }