Laxkit  0.0.7.1
viewportwithstack.h
1 //
2 //
3 // The Laxkit, a windowing toolkit
4 // Please consult http://laxkit.sourceforge.net about where to send any
5 // correspondence about this software.
6 //
7 // This library is free software; you can redistribute it and/or
8 // modify it under the terms of the GNU Library General Public
9 // License as published by the Free Software Foundation; either
10 // version 2 of the License, or (at your option) any later version.
11 //
12 // This library is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 // Library General Public License for more details.
16 //
17 // You should have received a copy of the GNU Library General Public
18 // License along with this library; if not, write to the Free Software
19 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 //
21 // Copyright (C) 2004-2011 by Tom Lechner
22 //
23 #ifndef _LAX_VIEWPORTWITHSTACK_H
24 #define _LAX_VIEWPORTWITHSTACK_H
25 
26 #include <lax/interfaces/viewportwindow.h>
27 
28 namespace LaxInterfaces {
29 
30 
31 
32 //---------------------------- ViewportWithStack ----------------------
34 {
35  protected:
36  int vpwsfirsttime;
37  ObjectContext *foundobj,*foundtypeobj,*firstobj; //obj just before firstobj should be the last one searched.
38  ObjectContext *curobj;
39  virtual void ClearSearch();
40  public:
42  ViewportWithStack(anXWindow *parnt,const char *nname,const char *ntitle,unsigned long nstyle,
43  int xx,int yy,int ww,int hh,int brder,Laxkit::Displayer *ndp=NULL);
44  virtual ~ViewportWithStack();
45  virtual void Refresh();
46  virtual int Event(const Laxkit::EventData *e,const char *mes);
47 
48  virtual int NewData(SomeData *d,ObjectContext **oc_ret);
49  virtual int DropObject(SomeData *d, double x,double y);
50  virtual int DeleteObject();
51 
52  virtual int FindObject(int x,int y, const char *dtype,
53  SomeData *exclude, int start,
54  ObjectContext **oc);
55  virtual int ChangeObject(ObjectContext *oc, int switchtool);
56  virtual int ChangeContext(int x,int y,ObjectContext **oc);
57  virtual int SelectObject(int i);
58  virtual double *transformToContext(double *m,ObjectContext *oc,int invert,int full);
59 };
60 
61 } // namespace laxkit
62 
63 #endif
64 

Mon Feb 17 2014 11:52:57, Laxkit