2 * Copyright 2000-2009 JetBrains s.r.o.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package com
.intellij
.ide
.actions
;
18 import com
.intellij
.ide
.ui
.LafManager
;
19 import com
.intellij
.openapi
.actionSystem
.AnAction
;
20 import com
.intellij
.openapi
.actionSystem
.AnActionEvent
;
21 import com
.intellij
.openapi
.actionSystem
.DataContext
;
22 import com
.intellij
.openapi
.actionSystem
.DefaultActionGroup
;
23 import com
.intellij
.openapi
.project
.Project
;
30 public class QuickChangeLookAndFeel
extends QuickSwitchSchemeAction
{
31 protected void fillActions(Project project
, DefaultActionGroup group
, DataContext dataContext
) {
32 final LafManager manager
= LafManager
.getInstance();
33 final UIManager
.LookAndFeelInfo
[] lfs
= manager
.getInstalledLookAndFeels();
34 final UIManager
.LookAndFeelInfo current
= manager
.getCurrentLookAndFeel();
35 for (int i
= 0; i
< lfs
.length
; i
++) {
36 final UIManager
.LookAndFeelInfo lf
= lfs
[i
];
37 group
.add(new AnAction(lf
.getName(), "", lf
== current ? ourCurrentAction
: ourNotCurrentAction
) {
38 public void actionPerformed(AnActionEvent e
) {
39 manager
.setCurrentLookAndFeel(lf
);
46 protected boolean isEnabled() {
47 return LafManager
.getInstance().getInstalledLookAndFeels().length
> 1;