00001 /* AbiWord 00002 * Copyright (C) 1998 AbiSource, Inc. 00003 * Copyright (C) 2001, 2003, 2009 Hubert Figuiere 00004 * 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * as published by the Free Software Foundation; either version 2 00008 * of the License, or (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00018 * 02110-1301 USA. 00019 */ 00020 00021 #ifndef AP_COCOADIALOG_GOTO_H 00022 #define AP_COCOADIALOG_GOTO_H 00023 00024 #import <Cocoa/Cocoa.h> 00025 00026 #include "ap_Dialog_Goto.h" 00027 class XAP_CocoaFrame; 00028 @class AP_CocoaDialog_GotoController; 00029 @protocol XAP_CocoaDialogProtocol; 00030 00031 /*****************************************************************/ 00032 00033 class AP_CocoaDialog_Goto: public AP_Dialog_Goto 00034 { 00035 public: 00036 AP_CocoaDialog_Goto(XAP_DialogFactory * pDlgFactory, XAP_Dialog_Id flgid); 00037 virtual ~AP_CocoaDialog_Goto(void); 00038 00039 static XAP_Dialog * static_constructor(XAP_DialogFactory *, XAP_Dialog_Id dlgid); 00040 00041 virtual void runModeless(XAP_Frame * pFrame); 00042 virtual void destroy(void); 00043 virtual void activate(void); 00044 virtual void notifyActiveFrame(XAP_Frame *pFrame); 00045 void setSelectedRow(int row); 00046 int getSelectedRow(void); 00047 00048 const char * getWindowName(void) const { return m_WindowName; }; 00049 private: 00050 AP_CocoaDialog_GotoController* m_dlg; 00051 }; 00052 00053 00054 @interface AP_CocoaDialog_GotoController : NSWindowController <XAP_CocoaDialogProtocol> 00055 { 00056 IBOutlet NSButton *backBtn; 00057 IBOutlet NSButton *forwardBtn; 00058 IBOutlet NSButton *jumpToBtn; 00059 IBOutlet NSMatrix *_typeMatrix; 00060 IBOutlet NSButtonCell *_pageRadio; 00061 IBOutlet NSButtonCell *_lineRadio; 00062 IBOutlet NSButtonCell *_bookmarkRadio; 00063 IBOutlet NSTextField *_pageNum; 00064 IBOutlet NSTextField *_lineNum; 00065 IBOutlet NSComboBox *_bookmarkName; 00066 IBOutlet NSBox *whatLabel; 00067 AP_CocoaDialog_Goto* _xap; 00068 AP_JumpTarget m_jumpTarget; 00069 FV_DocCount m_docCount; 00070 } 00071 - (void)windowToFront; 00072 - (void)updateContent; 00073 00074 - (IBAction)backAction:(id)sender; 00075 - (IBAction)forwardAction:(id)sender; 00076 - (IBAction)jumpToAction:(id)sender; 00077 - (IBAction)selectedType:(id)sender; 00078 @end 00079 00080 #endif /* AP_COCOADIALOG_GOTO_H */ 00081 00082 00083