1 157 yongsun /* 2 157 yongsun * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. 3 157 yongsun * 4 177 yongsun * Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved. 5 157 yongsun * 6 157 yongsun * The contents of this file are subject to the terms of either the GNU Lesser 7 157 yongsun * General Public License Version 2.1 only ("LGPL") or the Common Development and 8 157 yongsun * Distribution License ("CDDL")(collectively, the "License"). You may not use this 9 157 yongsun * file except in compliance with the License. You can obtain a copy of the CDDL at 10 157 yongsun * http://www.opensource.org/licenses/cddl1.php and a copy of the LGPLv2.1 at 11 157 yongsun * http://www.opensource.org/licenses/lgpl-license.php. See the License for the 12 157 yongsun * specific language governing permissions and limitations under the License. When 13 157 yongsun * distributing the software, include this License Header Notice in each file and 14 157 yongsun * include the full text of the License in the License file as well as the 15 157 yongsun * following notice: 16 157 yongsun * 17 157 yongsun * NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND DISTRIBUTION LICENSE 18 157 yongsun * (CDDL) 19 157 yongsun * For Covered Software in this distribution, this License shall be governed by the 20 157 yongsun * laws of the State of California (excluding conflict-of-law provisions). 21 157 yongsun * Any litigation relating to this License shall be subject to the jurisdiction of 22 157 yongsun * the Federal Courts of the Northern District of California and the state courts 23 157 yongsun * of the State of California, with venue lying in Santa Clara County, California. 24 157 yongsun * 25 157 yongsun * Contributor(s): 26 157 yongsun * 27 157 yongsun * If you wish your version of this file to be governed by only the CDDL or only 28 157 yongsun * the LGPL Version 2.1, indicate your decision by adding "[Contributor]" elects to 29 157 yongsun * include this software in this distribution under the [CDDL or LGPL Version 2.1] 30 157 yongsun * license." If you don't indicate a single choice of license, a recipient has the 31 157 yongsun * option to distribute your version of this file under either the CDDL or the LGPL 32 157 yongsun * Version 2.1, or to extend the choice of license to its licensees as provided 33 157 yongsun * above. However, if you add LGPL Version 2.1 code and therefore, elected the LGPL 34 157 yongsun * Version 2 license, then the option applies only if the new code is made subject 35 157 yongsun * to such option by the copyright holder. 36 157 yongsun */ 37 157 yongsun 38 157 yongsun #import <Cocoa/Cocoa.h> 39 274 yongsun #import <Growl/Growl.h> 40 157 yongsun 41 174 yongsun #import "CandidateWindow.h" 42 157 yongsun #import "imi_data.h" 43 157 yongsun #import "imi_options.h" 44 157 yongsun #import "ic_history.h" 45 157 yongsun 46 274 yongsun typedef enum { 47 274 yongsun SWITCH_BY_NONE = 0, 48 274 yongsun SWITCH_BY_CAPS = 1, 49 274 yongsun SWITCH_BY_SHIFT = 2, 50 274 yongsun } SwitchingPolicies; 51 274 yongsun 52 157 yongsun //Note: the SunPinyinApplicationDelegate is instantiated automatically as an outlet of NSApp's instance 53 274 yongsun @interface SunPinyinApplicationDelegate : NSObject <GrowlApplicationBridgeDelegate> 54 274 yongsun { 55 174 yongsun IBOutlet NSMenu* _menu; 56 174 yongsun IBOutlet CandidateWindow* _candiWin; 57 176 yongsun IBOutlet NSPanel* _prefPanel; 58 176 yongsun IBOutlet NSTextField* _ftTxtField; 59 176 yongsun 60 190 yongsun bool _inputChinesePuncts; 61 190 yongsun bool _inputFullSymbols; 62 274 yongsun SwitchingPolicies _switchingPolicy; 63 271 yongsun bool _usingUSKbLayout; 64 174 yongsun CIMIData* _data; 65 174 yongsun CBigramHistory* _history; 66 174 yongsun CSunpinyinOptions* _pref; 67 157 yongsun } 68 157 yongsun 69 157 yongsun -(NSMenu*)menu; 70 157 yongsun -(CIMIData*)sysData; 71 157 yongsun -(CBigramHistory*)history; 72 163 yongsun -(void)saveHistory; 73 157 yongsun -(CSunpinyinOptions*)preferences; 74 174 yongsun -(CandidateWindow*)candiWin; 75 157 yongsun 76 176 yongsun -(IBAction)showPrefPanel:(id)sender; 77 176 yongsun -(IBAction)showFontPanel:(id)sender; 78 302 gzjjgod -(IBAction)checkForUpdate:(id)sender; 79 176 yongsun 80 190 yongsun -(IBAction)toggleChinesePuncts:(id)sender; 81 190 yongsun -(bool)inputChinesePuncts; 82 190 yongsun -(IBAction)toggleFullSymbols:(id)sender; 83 190 yongsun -(bool)inputFullSymbols; 84 190 yongsun 85 274 yongsun -(SwitchingPolicies)switchingPolicy; 86 271 yongsun -(bool)usingUSKbLayout; 87 190 yongsun 88 274 yongsun -(NSDictionary *)registrationDictionaryForGrowl; 89 274 yongsun -(void)messageNotify:(NSString*)msg; 90 157 yongsun @end 91