blob: 024c9e0defc565f09b3968bd2c26fc30028e3dd7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
/*
* Copyright 2011 Alex Merry <alex.merry@kdemail.net>
*
* Stuff stolen from glade-window.c in Glade:
* Copyright (C) 2001 Ximian, Inc.
* Copyright (C) 2007 Vincent Geddes.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#import "TZFoundation.h"
#import <gtk/gtk.h>
@class MainWindow;
@class PickSupport;
/**
* Manages the menu and toolbar for the main window.
*/
@interface Menu: NSObject {
MainWindow *mainWindow;
GtkUIManager *ui;
GtkActionGroup *staticActions;
GtkActionGroup *documentActions;
// GtkActionGroup *documents_list_menu_actions;
GtkAction *undoAction;
GtkAction *redoAction;
GtkAction *pasteAction;
GtkAction **nodeSelBasedActions;
guint nodeSelBasedActionCount;
GtkAction **selBasedActions;
guint selBasedActionCount;
}
/**
* Constructs the menu and toolbar for @p window
*
* @param window the mainwindow that will be acted upon by the various
* menu items and toolbar buttons.
*/
- (id) initForMainWindow:(MainWindow*)window;
/**
* The menubar widget, to be inserted into the main window
*/
- (GtkWidget*) menubar;
/**
* The toolbar widget, to be inserted into the main window
*/
- (GtkWidget*) toolbar;
/**
* The main window object passed to initForMainWindow
*/
- (MainWindow*) mainWindow;
/**
* Enables or disables the undo action
*/
- (void) setUndoActionEnabled:(BOOL)enabled;
/**
* Sets the text that describes what action will be undone
*
* @param detail a text description of the action, or nil
*/
- (void) setUndoActionDetail:(NSString*)detail;
/**
* Enables or disables the redo action
*/
- (void) setRedoActionEnabled:(BOOL)enabled;
/**
* Sets the text that describes what action will be redone
*
* @param detail a text description of the action, or nil
*/
- (void) setRedoActionDetail:(NSString*)detail;
/**
* Gets the paste action
*/
- (GtkAction*) pasteAction;
/**
* Enables or disables the actions that act on a selection
*/
- (void) notifySelectionChanged:(PickSupport*)pickSupport;
@end
// vim:ft=objc:ts=8:et:sts=4:sw=4
|