summaryrefslogtreecommitdiffstats
path: root/kdejava/koala/org/kde/koala/KPanelExtension.java
blob: 4db2c58a546074de905808e9e2f91d66627cefa8 (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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
//Auto-generated by kalyptus. DO NOT EDIT.
package org.kde.koala;

import org.kde.qt.Qt;
import org.kde.qt.TQMetaObject;
import org.kde.qt.QtSupport;
import org.kde.qt.TQPopupMenu;
import org.kde.qt.TQSize;
import org.kde.qt.TQWidget;
import org.kde.qt.TQFrame;

/**

 Panel extensions

	<li>
	Are small applications living in the Window Manager dock managed by the panel.
	</li>
	
	<li>
	Are implemented as DSOs (Dynamic Shared Objects).
	</li>
	 Note: For security and stability reasons the panel won't load
 untrusted third party extensions directly into its namespace but via an
 external wrapper process.
 The panel locates available extensions by searching for extension desktop
 files in (ALL_TDEDIRS)/share/apps/kicker/extensions. Every panel extension should
 install a desktop file there to be recognized by the panel.
 Besides standard keys like "Name", "Comment" and "Icon" there are
 two panel extension specific keys:
 <li><b>X-TDE-Library </b></li>
 Used by the panel to locate the extension DSO (Dynamic Shared Object)
 Example: X-TDE-Library=libexampleextension
 <li><b>X-TDE-UniqueExtension </b></li>
 Similar to TDEApplication and KUniqueApplication there are
 two types of panel extensions. Use unique extensions when it makes no
 sence to run more than one instance of an extension in the panel. A
 good example for unique extensions is the taskbar extension.  Use normal
 extensions when you need instance specific configuration. An example
 is a subpanel extension where you might want to run more than one instances.
 X-TDE-UniqueExtension is a booleanean key which defaults
 to "false".  Example: X-TDE-UniqueExtension=true
 Back to panel extension DSOs, the following conventions are used for KDE:
 Name:    lib<extensionname>extension.la
 LDFLAGS: -module -no-undefined
 To implement a panel extension it is not enough to write a class
 inheriting from KPanelExtension but you also have to provide a
 factory function in your DSO.  A sample factory function could look
 like this:
 <pre>
 extern "C"
 {
     KPanelExtension init(TQWidget parent, String configFile)
     {
         KGlobal.locale().insertCatalogue("exampleextension");
         return new ExampleExtension(configFile, KPanelExtension.Normal,
                       KPanelExtension.About | KPanelExtension.Help | KPanelExtension.Preferences,
                       parent, "exampleextension");
     }
 }
 </pre>
 Note: Don't change the factory function signature or the panel will
 fail to load your extension.
 See {@link KPanelExtensionSignals} for signals emitted by KPanelExtension
		@author Matthias Elter <elter@kde.org>

		@short %TDE Panel Extension class.

*/
public class KPanelExtension extends TQFrame  {
	protected KPanelExtension(Class dummy){super((Class) null);}
	public static final int Normal = 0;
	public static final int Stretch = 1;

	public static final int About = 1;
	public static final int Help = 2;
	public static final int Preferences = 4;
	public static final int ReportBug = 8;

	public static final int Left = 0;
	public static final int Right = 1;
	public static final int Top = 2;
	public static final int Bottom = 3;
	public static final int Floating = 4;

	public static final int LeftTop = 0;
	public static final int Center = 1;
	public static final int RightBottom = 2;

	public static final int SizeTiny = 0;
	public static final int SizeSmall = 1;
	public static final int SizeNormal = 2;
	public static final int SizeLarge = 3;
	public static final int SizeCustom = 4;

	public native TQMetaObject metaObject();
	public native String className();
	/**	
		 Constructs a KPanelExtension just like any other widget.
			@param configFile The configFile handed over in the factory function.
			@param t The extension type().
			@param actions Standard RMB menu actions supported by the extension (see action() ).
			@param parent The pointer to the parent widget handed over in the factory function.
			@param name A Qt object name for your extension.
				@short    Constructs a KPanelExtension just like any other widget.
	*/
	public KPanelExtension(String configFile, int t, int actions, TQWidget parent, String name) {
		super((Class) null);
		newKPanelExtension(configFile,t,actions,parent,name);
	}
	private native void newKPanelExtension(String configFile, int t, int actions, TQWidget parent, String name);
	public KPanelExtension(String configFile, int t, int actions, TQWidget parent) {
		super((Class) null);
		newKPanelExtension(configFile,t,actions,parent);
	}
	private native void newKPanelExtension(String configFile, int t, int actions, TQWidget parent);
	public KPanelExtension(String configFile, int t, int actions) {
		super((Class) null);
		newKPanelExtension(configFile,t,actions);
	}
	private native void newKPanelExtension(String configFile, int t, int actions);
	public KPanelExtension(String configFile, int t) {
		super((Class) null);
		newKPanelExtension(configFile,t);
	}
	private native void newKPanelExtension(String configFile, int t);
	public KPanelExtension(String configFile) {
		super((Class) null);
		newKPanelExtension(configFile);
	}
	private native void newKPanelExtension(String configFile);
	/**	
		 Returns the preferred size for a given Position.
			 Every extension should reimplement this function.
			 Depending on the panel position the extensions can choose a preferred size for that
		 location in the Window Manager Dock. Please note that the size can not be larger than the
		 maxsize given by the handler.
				@short    Returns the preferred size for a given Position.
	*/
	public native TQSize sizeHint(int arg1, TQSize maxsize);
	/**	
		 Always use this KConfig object to save/load your extensions configuration.
			 For unique extensions this config object will write to a config file called
		 \<extensionname\>rc in the users local KDE directory.
			 For normal extensions this config object will write to a instance specific config file
		 called \<extensionname\>\<instanceid\>rc in the users local KDE directory.
				@short    Always use this KConfig object to save/load your extensions configuration.
	*/
	public native KConfig config();
	/**	
				@return Type indicating the extensions type.
 Type

		@short
	*/
	public native int type();
	/**	
				@return int indicating the supported RMB menu actions.
 Action

		@short
	*/
	public native int actions();
	/**	
		 Generic action dispatcher. Called  when the user selects an item
		 from the extensions RMB menu.
			 Reimplement this function to handle actions.
			 For About, Help, Preferences and ReportBug use the convenience handlers
		 ref about(), help(), preferences(), reportBug()
				@short    Generic action dispatcher.
	*/
	public native void action(int a);
	/**	
		 Reimplement this function to set a preferred dock position for your extension.
		 The extension manager will try to place new instances of this extension according
		 to this setting.
				@return Position

		@short    Reimplement this function to set a preferred dock position for your extension.
	*/
	public native int preferedPosition();
	/**	
				@short
	*/
	public native void setPosition(int p);
	/**	
				@short
	*/
	public native void setAlignment(int a);
	/**	
				@short
	*/
	public native void setSize(int size, int customSize);
	/**	
				@return the extension's size

		@short
	*/
	public native int sizeSetting();
	/**	
				@return the custom sizel setting in pixels

		@short
	*/
	public native int customSize();
	/**	
				@return the extension's custom menu, usually the same as the context menu, or 0 if none

		@short   
		@see #setCustomMenu(TQPopupMenu*)
	*/
	public native TQPopupMenu customMenu();
	/**	
				@return whether or not to set a desktop geometry claiming strut for this panel
 defaults to true

		@short   
		@see #setReservetrut(boolean)
	*/
	public native boolean reserveStrut();
	/**	
		 Is called when the user selects "About" from the extensions RMB menu.
		 Reimplement this function to launch a about dialog.
			 Note that this is called only when your extension supports the About action.
		 See Action.
				@short    Is called when the user selects "About" from the extensions RMB menu.
	*/
	protected native void about();
	/**	
		 Is called when the user selects "Help" from the extensions RMB menu.
		 Reimplement this function to launch a manual or help page.
			 Note that this is called only when your extension supports the Help action.
		 See Action.
				@short    Is called when the user selects "Help" from the extensions RMB menu.
	*/
	protected native void help();
	/**	
		 Is called when the user selects "Preferences" from the extensions RMB menu.
		 Reimplement this function to launch a preferences dialog or kcontrol module.
			 Note that this is called only when your extension supports the preferences action.
		 See Action.
				@short    Is called when the user selects "Preferences" from the extensions RMB menu.
	*/
	protected native void preferences();
	/**	
		 Is called when the user selects "Report bug" from the applet's RMB menu.
		 Reimplement this function to launch a bug reporting dialog.
			 Note that this is called only when your applet supports the ReportBug
		 action.
		 See Action.
				@short    Is called when the user selects "Report bug" from the applet's RMB menu.
	*/
	protected native void reportBug();
	/**	
				@return the extension's position. (left, right, top, bottom)

		@short
	*/
	protected native int position();
	/**	
				@return the extension's alignment. (left/top, center, or right/bottom)

		@short
	*/
	protected native int alignment();
	/**	
				@return the extensions orientation. (horizontal or vertical)

		@short
	*/
	protected native int orientation();
	/**	
				@return the appropriate size in pixels for the panel

		@short
	*/
	protected native int sizeInPixels();
	/**	
		 This extension has changed its position.
		 Reimplement this change handler in order to adjust the look of your
		 applet.
				@short    This extension has changed its position.
	*/
	protected native void positionChange(int arg1);
	/**	
		 This extension has changed its alignment.
		 Reimplement this change handler in order to adjust the look of your
		 applet.
				@short    This extension has changed its alignment.
	*/
	protected native void alignmentChange(int arg1);
	/**	
		 Use this method to set the custom menu for this extensions so that it can be shown
		 at the appropriate places/times that the extension many not itself
		 be aware of. The extension itself is still responsible for deleting and managing the
		 the menu.
			 If the menu is deleted during the life of the extension, be sure to call this method again
		 with the new menu (or 0) to avoid crashes
				@short    Use this method to set the custom menu for this extensions so that it can be shown  at the appropriate places/times that the extension many not itself  be aware of.
	*/
	protected native void setCustomMenu(TQPopupMenu arg1);
	/**	
		 Use this method to set the return value for reserveStrut
				@short    Use this method to set the return value for reserveStrut 
		@see #reserveStrut
	*/
	protected native void setReserveStrut(boolean shouldUseStrut);
	/** Deletes the wrapped C++ instance */
	protected native void finalize() throws InternalError;
	/** Delete the wrapped C++ instance ahead of finalize() */
	public native void dispose();
	/** Has the wrapped C++ instance been deleted? */
	public native boolean isDisposed();
}