Ejemplo n.º 1
0
        private void powerStatusChanged()
        {
            if (!configuration.Data.AutomaticOnACSwitch)
            {
                return;
            }

            var  currentPowerPlugStatus = pwrManager.CurrentPowerStatus;
            Guid schemaGuidToSwitch     = default(Guid);

            switch (currentPowerPlugStatus)
            {
            case PowerPlugStatus.Online:
                schemaGuidToSwitch = configuration.Data.AutomaticPlanGuidOnAC;
                break;

            case PowerPlugStatus.Offline:
                schemaGuidToSwitch = configuration.Data.AutomaticPlanGuidOffAC;
                break;

            default:
                break;
            }

            IPowerSchema schemaToSwitchTo = pwrManager.Schemas.FirstOrDefault(sch => sch.Guid == schemaGuidToSwitch);

            if (schemaToSwitchTo == null)
            {
                return;
            }

            pwrManager.SetPowerSchema(schemaToSwitchTo);
        }
Ejemplo n.º 2
0
        private void updateTrayMenuWithPowerSchema(IPowerSchema powerSchema)
        {
            var newItemMain = getNewPowerSchemaItem(
                powerSchema,
                (s, ea) => switchToPowerSchema(powerSchema),
                powerSchema.IsActive
                );

            trayIcon.ContextMenu.MenuItems.Add(0, newItemMain);

            var newItemSettingsOffAC = getNewPowerSchemaItem(
                powerSchema,
                (s, ea) => setPowerSchemaAsOffAC(powerSchema),
                (powerSchema.Guid == configuration.Data.AutomaticPlanGuidOffAC)
                );

            trayIcon.ContextMenu.MenuItems["settings"].MenuItems["settingsOffAC"].MenuItems.Add(0, newItemSettingsOffAC);

            var newItemSettingsOnAC = getNewPowerSchemaItem(
                powerSchema,
                (s, ea) => setPowerSchemaAsOnAC(powerSchema),
                (powerSchema.Guid == configuration.Data.AutomaticPlanGuidOnAC)
                );

            trayIcon.ContextMenu.MenuItems["settings"].MenuItems["settingsOnAC"].MenuItems.Add(0, newItemSettingsOnAC);
        }
Ejemplo n.º 3
0
        private void processesChanged(bool started)
        {
            Guid schemaGuidToSwitch = default(Guid);

            switch (started)
            {
            case true:
                schemaGuidToSwitch = configuration.Data.AutomaticPlanGuidOnApp;
                break;

            case false:
                schemaGuidToSwitch = configuration.Data.AutomaticPlanGuidOffApp;
                break;

            default:
                break;
            }
            IPowerSchema schemaToSwitchTo = pwrManager.Schemas.FirstOrDefault(sch => sch.Guid == schemaGuidToSwitch);

            if (schemaToSwitchTo == null)
            {
                return;
            }
            pwrManager.SetPowerSchema(schemaToSwitchTo);
        }
Ejemplo n.º 4
0
        private WF.MenuItem getNewPowerSchemaItem(IPowerSchema powerSchema, EventHandler clickedHandler, bool isChecked)
        {
            var newItemMain = new WF.MenuItem(powerSchema.Name);

            newItemMain.Name    = $"pwrScheme{powerSchema.Guid}";
            newItemMain.Checked = isChecked;
            newItemMain.Click  += clickedHandler;

            return(newItemMain);
        }
Ejemplo n.º 5
0
 private void handleCurrentSchema(PowerSchema newSchema, IPowerSchema originalSchema)
 {
     if (originalSchema == null)
     {
         updateSchema(newSchema, true);
     }
     else if (originalSchema.IsActive == false)
     {
         updateSchema(originalSchema, true);
     }
 }
Ejemplo n.º 6
0
        private void SetNewCurrSchema(IPowerSchema newActiveSchema)
        {
            var oldActiveSchema = Schemas.FirstOrDefault(sch => sch.IsActive);

            ((PowerSchema)newActiveSchema).IsActive = true;
            CurrentSchema = newActiveSchema;
            RaisePropertyChangedEvent(nameof(CurrentSchema));

            //can cause change change of curr power schema: http://stackoverflow.com/questions/42703092/remove-selection-when-selected-item-gets-deleted-from-listbox
            if (oldActiveSchema != null)
            {
                ((PowerSchema)oldActiveSchema).IsActive = false;
            }
        }
Ejemplo n.º 7
0
 private void switchToPowerSchema(IPowerSchema powerSchema)
 {
     pwrManager.SetPowerSchema(powerSchema);
 }
Ejemplo n.º 8
0
 private void setPowerSchemaAsOnAC(IPowerSchema powerSchema)
 {
     configuration.Data.AutomaticPlanGuidOnAC = powerSchema.Guid;
     configuration.Save();
 }
Ejemplo n.º 9
0
 public void SetPowerSchema(IPowerSchema schema)
 {
     SetPowerSchema(schema.Guid);
 }
Ejemplo n.º 10
0
 private void updateSchema(IPowerSchema schema, bool isActive)
 {
     ((PowerSchema)schema).IsActive = isActive; RaisePropertyChangedEvent(nameof(CurrentSchema));
 }