source: Sophya/trunk/SophyaPI/PI/pibwdgx.h@ 60

Last change on this file since 60 was 60, checked in by ansari, 28 years ago

Correction Pb PIContainerX , XmForm (Voir aussi PIWdgX)
Ajouts definition de touches clavier ds pibwdgge.h et suppression des
fonctions ActivateMove() ... pour PIBaseWdgGen et Mac -
Petite modifs pour PIMenuX pour aviter conflit avec certains WindMgr

Reza 5/11/97

File size: 3.6 KB
RevLine 
[2]1#ifndef PIBWDGX_H_SEEN
2#define PIBWDGX_H_SEEN
3
4#include "pisysdep.h"
5#include "pibwdggen.h"
6
7
8class PIBaseWdgX : public PIBaseWdgGen
9{
10
11public:
12// Les methodes ...
13
14 PIBaseWdgX(PIContainerGen *par, char *nom,
15 int sx=10, int sy=10, int px=0, int py=0);
16 virtual ~PIBaseWdgX();
17
[52]18 virtual void FinishCreate(); // appele par la fenetre mere, apres XtRealize()
[2]19
20// Trace graphiques
[52]21 virtual void EraseWindow(int x0=0, int y0=0, int dx=0, int dy=0);
[2]22 virtual void DrawString(int x, int y, char* s, int pos = 0);
23 virtual void DrawLine(int x1, int y1, int x2, int y2);
24 virtual void DrawBox(int x0, int y0, int dx, int dy);
25 virtual void DrawFBox(int x0, int y0, int dx, int dy);
26 virtual void DrawCircle(int x0, int y0, int r);
27 virtual void DrawFCircle(int x0, int y0, int r);
[11]28 virtual void DrawPolygon(int *x, int *y, int n);
29 virtual void DrawFPolygon(int *x, int *y, int n);
30 virtual void DrawMarker(int x0, int y0);
31 virtual void DrawMarkers(int *x, int *y, int n);
[52]32 virtual void DrawPixmap(int x, int y, unsigned char *pix,
33 int sx, int sy, PIColorMap* cmap);
[2]34
[9]35 virtual int CalcStringWidth(char const* s);
36
[11]37// Modifications attributs graphiques
[2]38 virtual void SelForeground(PIColors col=PI_Black);
39 virtual void SelBackground(PIColors col=PI_White);
[11]40 virtual void SelGOMode(PIGOMode mod=PI_GOCopy);
[2]41 virtual void SelFont(PIFontSize sz=PI_NormalSizeFont,
42 PIFontAtt att=PI_RomanFont);
[8]43 virtual void SelFontSzPt(int npt=12, PIFontAtt att=PI_RomanFont);
[2]44 virtual void SelLine(PILineAtt att=PI_NormalLine);
[11]45 virtual void SelPointerShape(PIPointer ptr=PI_ArrowPointer);
46 virtual void SelMarker(int msz, PIMarker mrk=PI_DotMarker);
[2]47
[52]48// Selection de zone de trace (clip)
49 virtual void SetClipRectangle(int x0, int y0, int dx, int dy);
50 virtual void ClearClipRectangle();
[2]51
[11]52// Acces aux attributs graphiques
53 virtual PIColors GetForeground();
54 virtual PIColors GetBackground();
55 virtual PIGOMode GetGOMode();
56 virtual PIFontAtt GetFontAtt();
57 virtual int GetFontSize();
58 virtual PILineAtt GetLineAtt();
59 virtual PIPointer GetPointerShape();
60 virtual PIMarker GetMarker();
61 virtual int GetMarkerSize();
[52]62 virtual int GetFontHeight(int& asc, int& desc);
[11]63
[52]64// Sauvegarde des attributs graphiques
65 virtual void SaveGraphicAtt();
66
[11]67// Fonction qui doit etre appelee pour rafraichir (retracer) tout
[2]68 virtual void Refresh();
69
70// Traitement des evenements
71 virtual void Resize();
72 virtual void Draw();
73 virtual void Draw(int x0, int y0, int dx, int dy);
74
75 virtual void Enter();
76 virtual void Leave();
77 virtual void But1Press(int x, int y);
78 virtual void But1Release(int x, int y);
79 virtual void But2Press(int x, int y);
80 virtual void But2Release(int x, int y);
81 virtual void But3Press(int x, int y);
82 virtual void But3Release(int x, int y);
83 virtual void Ptr1Move(int x, int y);
84 virtual void Ptr2Move(int x, int y);
85 virtual void Ptr3Move(int x, int y);
86 virtual void Keyboard(int key, PIKeyModifier kmod);
87
88 inline GC DefGC() { return mDefGC; }
89
90protected:
[52]91
[2]92 void Init();
[8]93 void SelectFont(int isz, int jat);
[60]94// Activation des evenements
95 void ActivatePtrCross();
96 void ActivateButton(int bid);
97 void ActivateMove(int bid);
98 void ActivateKeyboard();
[2]99
100 GC mDefGC;
[11]101 PIColors mFCol, mBCol;
102 PIGOMode mGOm;
103 PIPointer mPtrS;
[8]104 PIFontAtt mFAtt;
[11]105 PILineAtt mLAtt;
[8]106 int mFSize;
[9]107 XFontStruct *mFSt;
[11]108 PIMarker mMrk;
109 int mMrkSz;
[2]110};
111
112typedef PIBaseWdgX PIBaseWdg;
113
114#endif /* PIBWDGX_H_SEEN */
Note: See TracBrowser for help on using the repository browser.