• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

ap_UnixDialog_Goto.h

Go to the documentation of this file.
00001 /* AbiWord
00002  * Copyright (C) 1998 AbiSource, Inc.
00003  * Copyright (C) Robert Staudinger <robsta@stereolyzer.net>
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_UNIXDIALOG_GOTO_H
00022 #define AP_UNIXDIALOG_GOTO_H
00023 
00024 #include "ap_Dialog_Goto.h"
00025 #include "fv_View.h"
00026 
00027 class XAP_UnixFrame;
00028 
00029 
00030 
00031 class AP_UnixDialog_Goto: public AP_Dialog_Goto
00032 {
00033 public:
00034     AP_UnixDialog_Goto (XAP_DialogFactory * pDlgFactory, XAP_Dialog_Id id);
00035     virtual ~AP_UnixDialog_Goto (void);
00036 
00037     static XAP_Dialog *static_constructor (XAP_DialogFactory *,
00038                                            XAP_Dialog_Id id);
00039 
00040     virtual void runModeless       (XAP_Frame *pFrame);
00041     virtual void notifyActiveFrame (XAP_Frame *pFrame);
00042     virtual void activate          (void);
00043     virtual void destroy           (void);
00044 
00045     void onPageChanged        (void);
00046     void onLineChanged        (void);
00047     void onBookmarkDblClicked (void);
00048     void onXMLIDDblClicked (void);
00049     void onAnnoDblClicked (void);
00050     void onJumpClicked        (void);
00051     void onPrevClicked        (void);
00052     void onNextClicked        (void);
00053 
00054     void updateCache          (AP_JumpTarget target);
00055     void updateDocCount       (void);
00056     void updatePosition       (void);
00057 
00058     const GtkWidget *getWindow (void) { return m_wDialog; }
00059 
00060 protected:
00061 
00062     void _constructWindow     (XAP_Frame *pFrame);
00063     void _updateWindow        (void);
00064 
00065 private:
00066 
00067     enum {
00068         COLUMN_NAME = 0,  /* currently only one column
00069         COLUMN_PAGE,
00070         COLUMN_NUMBER,  */
00071         NUM_COLUMNS
00072     };
00073     enum {
00074         COLUMN_ANNO_ID = 0,
00075         COLUMN_ANNO_TITLE,
00076         COLUMN_ANNO_AUTHOR,
00077         NUM_ANNO_COLUMNS
00078     };
00079 
00080 
00081     void  _selectPrevBookmark        (void);
00082     void  _selectNextBookmark        (void);
00083     std::string _getSelectedBookmarkLabel();
00084     std::string _getSelectedXMLIDLabel();
00085     std::string _getSelectedAnnotationLabel();
00086 
00087     GtkWidget *m_wDialog;
00088     GtkWidget *m_nbNotebook;
00089     GtkWidget *m_lbPage;
00090     GtkWidget *m_lbLine;
00091     GtkWidget *m_lbBookmarks;
00092     GtkWidget *m_lbXMLids;
00093     GtkWidget *m_lbAnnotations;
00094     GtkWidget *m_sbPage;
00095     GtkWidget *m_sbLine;
00096     GtkWidget *m_lvBookmarks;
00097     GtkWidget *m_btJump;
00098     GtkWidget *m_btPrev;
00099     GtkWidget *m_btNext;
00100     GtkWidget *m_lvXMLIDs;
00101     GtkWidget *m_lvAnno;
00102     GtkWidget *m_btClose;
00103 
00104     guint m_iPageConnect;
00105     guint m_iLineConnect;
00106     AP_JumpTarget m_JumpTarget;
00107     FV_DocCount   m_DocCount;
00108 
00109     void setupXMLIDList( GtkWidget* w );
00110     void updateXMLIDList( GtkWidget* w );
00111     void setupAnnotationList( GtkWidget* w );
00112     void updateAnnotationList( GtkWidget* w );
00113 };
00114 
00115 #endif /* AP_UNIXDIALOG_GOTO_H */
00116 
00117 
00118 

Generated on Sun Feb 14 2021 for AbiWord by  doxygen 1.7.1