2 // PopupMenuWidget.java
5 // Created by Lutz Mueller on 7/4/07.
8 // Copyright (C) 2007 Lutz Mueller
10 // This program is free software: you can redistribute it and/or modify
11 // it under the terms of the GNU General Public License as published by
12 // the Free Software Foundation, either version 3 of the License, or
13 // (at your option) any later version.
15 // This program is distributed in the hope that it will be useful,
16 // but WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 // GNU General Public License for more details.
20 // You should have received a copy of the GNU General Public License
21 // along with this program. If not, see <http://www.gnu.org/licenses/>.
26 import java
.awt
.event
.*;
28 import javax
.swing
.event
.*;
31 public class PopupMenuWidget
extends gsObject
{
35 @SuppressWarnings("unchecked")
36 public PopupMenuWidget(StringTokenizer params
)
38 id
= params
.nextToken();
39 jpopup
= new JPopupMenu(Base64Coder
.decodeString(params
.nextToken()));
40 //jpopup.setLightWeightPopupEnabled(false); only if canvas extends Canvas
45 gsObject
.widgets
.put(id
, this);
48 public void addSeparator(StringTokenizer tokens
)
50 jpopup
.addSeparator();
53 public void showPopup(StringTokenizer tokens
)
55 gsObject gsobject
= (gsObject
)gsObject
.widgets
.get(tokens
.nextToken());
57 int x
= Integer
.parseInt(tokens
.nextToken());
58 int y
= Integer
.parseInt(tokens
.nextToken());
60 if(gsobject
.jcomponent
== null)
61 jpopup
.show(gsobject
.component
, x
, y
);
63 jpopup
.show(gsobject
.jcomponent
, x
, y
);