    rev 4839 : RT-2529: Locale specific runtime errors (Turkish)

       1 /*
       2  * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
       3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       4  *
       5  * This code is free software; you can redistribute it and/or modify it
       6  * under the terms of the GNU General Public License version 2 only, as
       7  * published by the Free Software Foundation.  Oracle designates this
       8  * particular file as subject to the "Classpath" exception as provided
       9  * by Oracle in the LICENSE file that accompanied this code.
      10  *
      11  * This code is distributed in the hope that it will be useful, but WITHOUT
      12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
      13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
      14  * version 2 for more details (a copy is included in the LICENSE file that
      15  * accompanied this code).
      16  *
      17  * You should have received a copy of the GNU General Public License version
      18  * 2 along with this work; if not, write to the Free Software Foundation,
      19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
      20  *
      21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
      22  * or visit www.oracle.com if you need additional information or have any
      23  * questions.
      24  */
      25 package com.sun.glass.ui;
      26
      27 import java.util.Locale;
      28
      29 import com.sun.glass.ui.accessible.AccessibleBaseProvider;
      30 import com.sun.glass.ui.accessible.AccessibleRoot;
      31 import com.sun.glass.ui.delegate.ClipboardDelegate;
      32 import com.sun.glass.ui.delegate.MenuBarDelegate;
      33 import com.sun.glass.ui.delegate.MenuDelegate;
      34 import com.sun.glass.ui.delegate.MenuItemDelegate;
      35 import com.sun.javafx.accessible.providers.AccessibleProvider;
      36
      37 public abstract class PlatformFactory {
      38     private static PlatformFactory instance;
      39     public static synchronized PlatformFactory getPlatformFactory() {
      40         if (instance == null) {
      41             try {
      42                 String platform = Platform.determinePlatform();
      43                 String factory = "com.sun.glass.ui." +  platform.toLowerCase(Locale.ROOT) + "."+ platform + "PlatformFactory";
      44                 // System.out.println("Loading Glass Factory " + factory);
      45                 Class c = Class.forName(factory);
      46                 instance = (PlatformFactory) c.newInstance();
      47             } catch (Exception e) {
      48                 e.printStackTrace();
      49                 System.out.println("Failed to load Glass factory class");
      50             }
      51         }
      52         return instance;
      53     }
      54
      55     public abstract Application createApplication();
      56     public abstract AccessibleRoot createAccessibleRoot(Object node, Window window);
      57     public abstract AccessibleBaseProvider createAccessibleProvider(Object node);
      58     public abstract MenuBarDelegate createMenuBarDelegate(MenuBar menubar);
      59     public abstract MenuDelegate createMenuDelegate(Menu menu);
      60     public abstract MenuItemDelegate createMenuItemDelegate(MenuItem menuItem);
      61     public abstract ClipboardDelegate createClipboardDelegate();
      62 }
    --- EOF ---