00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
#ifndef __KATE_BOOKMARKS_H__
00021
#define __KATE_BOOKMARKS_H__
00022
00023
#include <qobject.h>
00024
#include <qptrlist.h>
00025
00026
class KateView;
00027
00028
namespace KTextEditor {
class Mark; }
00029
00030
class KAction;
00031
class KActionCollection;
00032
class QPopupMenu;
00033
00034
class KateBookmarks :
public QObject
00035 {
00036 Q_OBJECT
00037
00038
public:
00039
enum Sorting { Position, Creation };
00040 KateBookmarks( KateView* parent, Sorting sort=Position );
00041
virtual ~KateBookmarks();
00042
00043
void createActions(
KActionCollection* );
00044
00045 KateBookmarks::Sorting sorting() {
return m_sorting; };
00046
void setSorting( Sorting s ) { m_sorting = s; };
00047
00048
protected:
00049
bool eventFilter(
QObject *,
class QEvent* );
00050
00051
private slots:
00052
void toggleBookmark();
00053
void clearBookmarks();
00054
00055
void bookmarkMenuAboutToShow();
00056
void bookmarkMenuAboutToHide();
00057
00058
void goNext();
00059
void goPrevious();
00060
00061
void marksChanged ();
00062
void connectMenuAndDisConnectAgain();
00063
00064
private:
00065 KateView* m_view;
00066
KAction* m_bookmarkToggle;
00067
KAction* m_bookmarkClear;
00068
KAction* m_goNext;
00069
KAction* m_goPrevious;
00070 Sorting m_sorting;
00071
QPopupMenu* m_bookmarksMenu;
00072
00073
int _tries;
00074 };
00075
00076
#endif // _KateBookmarks_H_
00077
00078
00079