merged 2.2 branch

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Bryan Petty
2000-07-15 19:51:35 +00:00
parent 8a693e6e04
commit f6bcfd974e
1835 changed files with 237729 additions and 67990 deletions

View File

@@ -0,0 +1,2 @@
golf.pdf
showTips

1749
wxPython/demo/data/grid.i Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,20 @@
<html>
<head>
<title>ImageMap Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#FFFFFF">
This is test.
<img src="imagemap.png" width="269" height="249" border="0" usemap="#mymap">
<map name="mymap">
<area shape="poly" coords="187,85,160,121,163,153,180,129,166,225,241,223,230,155,201,121,187,86" href="test.htm">
<area shape="circle" coords="96,89,36" href="fft.html">
<area shape="rect" coords="43,168,124,213" href="tables.htm">
</map>
<img src="imagemap.png" usemap="#mymap">
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
wxPython/demo/data/pic.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

BIN
wxPython/demo/data/pic2.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

627
wxPython/demo/data/stc.h Normal file
View File

@@ -0,0 +1,627 @@
////////////////////////////////////////////////////////////////////////////
// Name: stc.h
// Purpose: A wxWindows implementation of Scintilla. This class is the
// one meant to be used directly by wx applications. It does not
// derive directly from the Scintilla classes, and in fact there
// is no mention of Scintilla classes at all in this header.
// This class delegates all method calls and events to the
// Scintilla objects and so forth. This allows the use of
// Scintilla without polluting the namespace with all the
// classes and itentifiers from Scintilla.
//
// Author: Robin Dunn
//
// Created: 13-Jan-2000
// RCS-ID: $Id$
// Copyright: (c) 2000 by Total Control Software
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef __stc_h__
#define __stc_h__
#include <wx/wx.h>
//----------------------------------------------------------------------
// constants and stuff
enum wxSTC_UndoType {
wxSTC_UndoCollectNone,
wxSTC_UndoCollectAutoStart
};
enum wxSTC_EOL {
wxSTC_EOL_CRLF,
wxSTC_EOL_CR,
wxSTC_EOL_LF
};
enum wxSTC_EDGE {
wxSTC_EDGE_NONE,
wxSTC_EDGE_LINE,
wxSTC_EDGE_BACKGROUND
};
const int wxSTC_LEX_STYLE_MAX = 31;
const int wxSTC_STYLE_DEFAULT = 32;
const int wxSTC_STYLE_LINENUMBER = 33;
const int wxSTC_STYLE_BRACELIGHT = 34;
const int wxSTC_STYLE_BRACEBAD = 35;
const int wxSTC_STYLE_CONTROLCHAR = 36;
const int wxSTC_STYLE_MAX = 127;
const int wxSTC_STYLE_MASK = 31;
const int wxSTC_MARKER_MAX = 31;
const int wxSTC_MARK_CIRCLE = 0;
const int wxSTC_MARK_ROUNDRECT = 1;
const int wxSTC_MARK_ARROW = 2;
const int wxSTC_MARK_SMALLRECT = 3;
const int wxSTC_MARK_SHORTARROW = 4;
const int wxSTC_MARK_EMPTY = 5;
const int wxSTC_MARK_ARROWDOWN = 6;
const int wxSTC_MARK_MINUS = 7;
const int wxSTC_MARK_PLUS = 8;
const int wxSTC_MARKNUM_FOLDER = 30;
const int wxSTC_MARKNUM_FOLDEROPEN= 31;
const int wxSTC_MASK_FOLDERS = ((1 << wxSTC_MARKNUM_FOLDER) | (1 << wxSTC_MARKNUM_FOLDEROPEN));
const int wxSTC_INDIC_MAX = 7;
const int wxSTC_INDIC_PLAIN = 0;
const int wxSTC_INDIC_SQUIGGLE = 1;
const int wxSTC_INDIC_TT = 2;
const int wxSTC_INDIC0_MASK = 32;
const int wxSTC_INDIC1_MASK = 64;
const int wxSTC_INDIC2_MASK = 128;
const int wxSTC_INDICS_MASK = (wxSTC_INDIC0_MASK | wxSTC_INDIC1_MASK | wxSTC_INDIC2_MASK);
const int wxSTC_FOLDLEVELBASE = 0x0400;
const int wxSTC_FOLDLEVELWHITEFLAG = 0x1000;
const int wxSTC_FOLDLEVELHEADERFLAG = 0x2000;
const int wxSTC_FOLDLEVELNUMBERMASK = 0x0FFF;
// key commands
enum {
wxSTC_CMD_LINEDOWN = 2300,
wxSTC_CMD_LINEDOWNEXTEND,
wxSTC_CMD_LINEUP,
wxSTC_CMD_LINEUPEXTEND,
wxSTC_CMD_CHARLEFT,
wxSTC_CMD_CHARLEFTEXTEND,
wxSTC_CMD_CHARRIGHT,
wxSTC_CMD_CHARRIGHTEXTEND,
wxSTC_CMD_WORDLEFT,
wxSTC_CMD_WORDLEFTEXTEND,
wxSTC_CMD_WORDRIGHT,
wxSTC_CMD_WORDRIGHTEXTEND,
wxSTC_CMD_HOME,
wxSTC_CMD_HOMEEXTEND,
wxSTC_CMD_LINEEND,
wxSTC_CMD_LINEENDEXTEND,
wxSTC_CMD_DOCUMENTSTART,
wxSTC_CMD_DOCUMENTSTARTEXTEND,
wxSTC_CMD_DOCUMENTEND,
wxSTC_CMD_DOCUMENTENDEXTEND,
wxSTC_CMD_PAGEUP,
wxSTC_CMD_PAGEUPEXTEND,
wxSTC_CMD_PAGEDOWN,
wxSTC_CMD_PAGEDOWNEXTEND,
wxSTC_CMD_EDITTOGGLEOVERTYPE,
wxSTC_CMD_CANCEL,
wxSTC_CMD_DELETEBACK,
wxSTC_CMD_TAB,
wxSTC_CMD_BACKTAB,
wxSTC_CMD_NEWLINE,
wxSTC_CMD_FORMFEED,
wxSTC_CMD_VCHOME,
wxSTC_CMD_VCHOMEEXTEND,
wxSTC_CMD_ZOOMIN,
wxSTC_CMD_ZOOMOUT,
wxSTC_CMD_DELWORDLEFT,
wxSTC_CMD_DELWORDRIGHT,
wxSTC_CMD_LINECUT,
wxSTC_CMD_LINEDELETE,
wxSTC_CMD_LINETRANSPOSE,
wxSTC_CMD_LOWERCASE,
wxSTC_CMD_UPPERCASE,
wxSTC_CMD_LINESCROLLDOWN,
wxSTC_CMD_LINESCROLLUP
};
enum wxSTC_LEX {
wxSTC_LEX_CONTAINER=0,
wxSTC_LEX_NULL,
wxSTC_LEX_PYTHON,
wxSTC_LEX_CPP,
wxSTC_LEX_HTML,
wxSTC_LEX_XML,
wxSTC_LEX_PERL,
wxSTC_LEX_SQL,
wxSTC_LEX_VB,
wxSTC_LEX_PROPERTIES,
wxSTC_LEX_ERRORLIST,
wxSTC_LEX_MAKEFILE,
wxSTC_LEX_BATCH,
};
const int wxSTC_CARET_SLOP = 0x01;
const int WXSTC_CARET_CENTER = 0x02;
const int wxSTC_CARET_STRICT = 0x04;
const int wxSTC_MARGIN_SYMBOL = 0;
const int wxSTC_MARGIN_NUMBER = 1;
class ScintillaWX; // forward declare
class WordList;
struct SCNotification;
extern const wxChar* wxSTCNameStr;
//----------------------------------------------------------------------
class wxStyledTextCtrl : public wxControl {
public:
#ifdef SWIG
wxStyledTextCtrl(wxWindow *parent, wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = 0,
const char* name = wxSTCNameStr);
#else
wxStyledTextCtrl(wxWindow *parent, wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = 0,
const wxString& name = wxSTCNameStr);
#endif
#ifndef SWIG
~wxStyledTextCtrl();
#endif
// Text retrieval and modification
wxString GetText();
bool SetText(const wxString& text);
wxString GetLine(int line);
void ReplaceSelection(const wxString& text);
void SetReadOnly(bool readOnly);
bool GetReadOnly();
wxString GetTextRange(int startPos, int endPos);
wxString GetStyledTextRange(int startPos, int endPos);
#ifndef SWIG
void GetTextRange(int startPos, int endPos, char* buff);
void GetStyledTextRange(int startPos, int endPos, char* buff);
#endif
void AddText(const wxString& text);
void AddStyledText(const wxString& text);
void InsertText(int pos, const wxString& text);
void ClearAll();
char GetCharAt(int pos);
char GetStyleAt(int pos);
void SetStyleBits(int bits);
int GetStyleBits();
// Clipboard
void Cut();
void Copy();
void Paste();
bool CanPaste();
void ClearClipbrd(); // avoiding name conflict with virtual in wxWindow
// Undo and Redo
void Undo();
bool CanUndo();
void EmptyUndoBuffer();
void Redo();
bool CanRedo();
void SetUndoCollection(wxSTC_UndoType type);
wxSTC_UndoType GetUndoCollection();
void BeginUndoAction();
void EndUndoAction();
// Selection and information
#ifdef SWIG
void GetSelection(int* OUTPUT, int* OUTPUT);
#else
void GetSelection(int* startPos, int* endPos);
#endif
void SetSelection(int startPos, int endPos);
wxString GetSelectedText();
void HideSelection(bool hide);
bool GetHideSelection();
int GetTextLength();
int GetFirstVisibleLine();
bool GetModified();
int GetLineCount();
wxRect GetRect();
int GetLineFromPos(int pos);
int GetLineStartPos(int line);
int GetLineLengthAtPos(int pos);
int GetLineLength(int line);
#ifdef SWIG
wxString GetCurrentLineText(int* OUTPUT);
#else
wxString GetCurrentLineText(int* linePos);
#endif
int GetCurrentLine();
int PositionFromPoint(wxPoint pt);
int LineFromPoint(wxPoint pt);
wxPoint PointFromPosition(int pos);
int GetCurrentPos();
int GetAnchor();
void SelectAll();
void SetCurrentPosition(int pos);
void SetAnchor(int pos);
void GotoPos(int pos);
void GotoLine(int line);
void ChangePosition(int delta, bool extendSelection);
void PageMove(int cmdKey, bool extendSelection);
void ScrollBy(int columnDelta, int lineDelta);
void ScrollToLine(int line);
void ScrollToColumn(int column);
void EnsureCaretVisible();
void SetCaretPolicy(int policy, int slop=0);
int GetSelectionType();
int GetLinesOnScreen();
bool IsSelectionRectangle();
void SetUseHorizontalScrollBar(bool use);
bool GetUseHorizontalScrollBar();
// Searching
int FindText(int minPos, int maxPos, const wxString& text,
bool caseSensitive, bool wholeWord);
void SearchAnchor();
int SearchNext(const wxString& text, bool caseSensitive, bool wholeWord);
int SearchPrev(const wxString& text, bool caseSensitive, bool wholeWord);
// Visible whitespace
bool GetViewWhitespace();
void SetViewWhitespace(bool visible);
// Line endings
wxSTC_EOL GetEOLMode();
void SetEOLMode(wxSTC_EOL mode);
bool GetViewEOL();
void SetViewEOL(bool visible);
void ConvertEOL(wxSTC_EOL mode);
// Styling
int GetEndStyled();
void StartStyling(int pos, int mask);
void SetStyleFor(int length, int style);
void SetStyleBytes(int length, char* styleBytes);
void SetLineState(int line, int value);
int GetLineState(int line);
// Style Definition
void StyleClearAll();
void StyleResetDefault();
void StyleSetSpec(int styleNum, const wxString& spec);
void StyleSetForeground(int styleNum, const wxColour& colour);
void StyleSetBackground(int styleNum, const wxColour& colour);
void StyleSetFont(int styleNum, wxFont& font);
void StyleSetFontAttr(int styleNum, int size, const wxString& faceName, bool bold, bool italic);
void StyleSetBold(int styleNum, bool bold);
void StyleSetItalic(int styleNum, bool italic);
void StyleSetFaceName(int styleNum, const wxString& faceName);
void StyleSetSize(int styleNum, int pointSize);
void StyleSetEOLFilled(int styleNum, bool fillEOL);
// Margins in the edit area
int GetLeftMargin();
int GetRightMargin();
void SetMargins(int left, int right);
// Margins for selection, markers, etc.
void SetMarginType(int margin, int type);
int GetMarginType(int margin);
void SetMarginWidth(int margin, int pixelWidth);
int GetMarginWidth(int margin);
void SetMarginMask(int margin, int mask);
int GetMarginMask(int margin);
void SetMarginSensitive(int margin, bool sensitive);
bool GetMarginSensitive(int margin);
// Selection and Caret styles
void SetSelectionForeground(const wxColour& colour);
void SetSelectionBackground(const wxColour& colour);
void SetCaretForeground(const wxColour& colour);
int GetCaretPeriod();
void SetCaretPeriod(int milliseconds);
// Other settings
void SetBufferedDraw(bool isBuffered);
void SetTabWidth(int numChars);
void SetIndent(int numChars);
void SetUseTabs(bool usetabs);
void SetLineIndentation(int line, int indentation);
int GetLineIndentation(int line);
int GetLineIndentationPos(int line);
void SetWordChars(const wxString& wordChars);
void SetUsePop(bool usepopup);
// Brace highlighting
void BraceHighlight(int pos1, int pos2);
void BraceBadlight(int pos);
int BraceMatch(int pos, int maxReStyle=0);
// Markers
void MarkerDefine(int markerNumber, int markerSymbol,
const wxColour& foreground,
const wxColour& background);
void MarkerSetType(int markerNumber, int markerSymbol);
void MarkerSetForeground(int markerNumber, const wxColour& colour);
void MarkerSetBackground(int markerNumber, const wxColour& colour);
int MarkerAdd(int line, int markerNumber);
void MarkerDelete(int line, int markerNumber);
void MarkerDeleteAll(int markerNumber);
int MarkerGet(int line);
int MarkerGetNextLine(int lineStart, int markerMask);
int MarkerGetPrevLine(int lineStart, int markerMask);
int MarkerLineFromHandle(int handle);
void MarkerDeleteHandle(int handle);
// Indicators
void IndicatorSetStyle(int indicNum, int indicStyle);
int IndicatorGetStyle(int indicNum);
void IndicatorSetColour(int indicNum, const wxColour& colour);
// Auto completion
void AutoCompShow(const wxString& listOfWords);
void AutoCompCancel();
bool AutoCompActive();
int AutoCompPosAtStart();
void AutoCompComplete();
void AutoCompStopChars(const wxString& stopChars);
void AutoCompSetSeparator(char separator);
char AutoCompGetSeparator();
void AutoCompSelect(const wxString& stringtoselect);
// Call tips
void CallTipShow(int pos, const wxString& text);
void CallTipCancel();
bool CallTipActive();
int CallTipPosAtStart();
void CallTipSetHighlight(int start, int end);
void CallTipSetBackground(const wxColour& colour);
// Key bindings
void CmdKeyAssign(int key, int modifiers, int cmd);
void CmdKeyClear(int key, int modifiers);
void CmdKeyClearAll();
void CmdKeyExecute(int cmd);
// Print formatting
int FormatRange(bool doDraw,
int startPos,
int endPos,
wxDC* draw,
wxDC* target, // Why does it use two? Can they be the same?
wxRect renderRect,
wxRect pageRect);
// Document Sharing (multiple views)
void* GetDocument();
void SetDocument(void* document);
// TODO: create a wx wrapper for Scintilla's document class
// Folding
int VisibleFromDocLine(int docLine);
int DocLineFromVisible(int displayLine);
int SetFoldLevel(int line, int level);
int GetFoldLevel(int line);
int GetLastChild(int line, int level);
int GetFoldParent(int line);
void ShowLines(int lineStart, int lineEnd);
void HideLines(int lineStart, int lineEnd);
bool GetLineVisible(int line);
void SetFoldExpanded(int line, bool expanded);
bool GetFoldExpanded(int line);
void ToggleFold(int line);
void EnsureVisible(int line);
void SetFoldFlags(int flags);
// Long Lines
int GetEdgeColumn();
void SetEdgeColumn(int column);
wxSTC_EDGE GetEdgeMode();
void SetEdgeMode(wxSTC_EDGE mode);
wxColour GetEdgeColour();
void SetEdgeColour(const wxColour& colour);
// Lexer
void SetLexer(wxSTC_LEX lexer);
wxSTC_LEX GetLexer();
void Colourise(int start, int end);
void SetProperty(const wxString& key, const wxString& value);
void SetKeywords(int keywordSet, const wxString& keywordList);
#ifndef SWIG
private:
// Event handlers
void OnPaint(wxPaintEvent& evt);
void OnScrollWin(wxScrollWinEvent& evt);
void OnSize(wxSizeEvent& evt);
void OnMouseLeftDown(wxMouseEvent& evt);
void OnMouseMove(wxMouseEvent& evt);
void OnMouseLeftUp(wxMouseEvent& evt);
void OnMouseRightUp(wxMouseEvent& evt);
void OnChar(wxKeyEvent& evt);
void OnKeyDown(wxKeyEvent& evt);
void OnLoseFocus(wxFocusEvent& evt);
void OnGainFocus(wxFocusEvent& evt);
void OnSysColourChanged(wxSysColourChangedEvent& evt);
void OnEraseBackground(wxEraseEvent& evt);
void OnMenu(wxCommandEvent& evt);
void OnListBox(wxCommandEvent& evt);
// Turn notifications from Scintilla into events
void NotifyChange();
void NotifyParent(SCNotification* scn);
long SendMsg(int msg, long wp=0, long lp=0);
private:
DECLARE_EVENT_TABLE()
DECLARE_CLASS(wxStyledTextCtrl)
ScintillaWX* m_swx;
wxStopWatch m_stopWatch;
bool m_readOnly;
wxSTC_UndoType m_undoType;
friend class ScintillaWX;
friend class Platform;
#endif
};
//----------------------------------------------------------------------
class wxStyledTextEvent : public wxCommandEvent {
public:
wxStyledTextEvent(wxEventType commandType=0, int id=0);
~wxStyledTextEvent() {}
void SetPosition(int pos) { m_position = pos; }
void SetKey(int k) { m_key = k; }
void SetModifiers(int m) { m_modifiers = m; }
void SetModificationType(int t) { m_modificationType = t; }
void SetText(const char* t) { m_text = t; }
void SetLength(int len) { m_length = len; }
void SetLinesAdded(int num) { m_linesAdded = num; }
void SetLine(int val) { m_line = val; }
void SetFoldLevelNow(int val) { m_foldLevelNow = val; }
void SetFoldLevelPrev(int val) { m_foldLevelPrev = val; }
void SetMargin(int val) { m_margin = val; }
void SetMessage(int val) { m_message = val; }
void SetWParam(int val) { m_wParam = val; }
void SetLParam(int val) { m_lParam = val; }
int GetPosition() const { return m_position; }
int GetKey() const { return m_key; }
int GetModifiers() const { return m_modifiers; }
int GetModificationType() const { return m_modificationType; }
wxString GetText() const { return m_text; }
int GetLength() const { return m_length; }
int GetLinesAdded() const { return m_linesAdded; }
int GetLine() const { return m_line; }
int GetFoldLevelNow() const { return m_foldLevelNow; }
int GetFoldLevelPrev() const { return m_foldLevelPrev; }
int GetMargin() const { return m_margin; }
int GetMessage() const { return m_message; }
int GetWParam() const { return m_wParam; }
int GetLParam() const { return m_lParam; }
bool GetShift() const;
bool GetControl() const;
bool GetAlt() const;
void CopyObject(wxObject& obj) const;
#ifndef SWIG
private:
DECLARE_DYNAMIC_CLASS(wxStyledTextEvent)
int m_position;
int m_key;
int m_modifiers;
int m_modificationType; // wxEVT_STC_MODIFIED
wxString m_text;
int m_length;
int m_linesAdded;
int m_line;
int m_foldLevelNow;
int m_foldLevelPrev;
int m_margin; // wxEVT_STC_MARGINCLICK
int m_message; // wxEVT_STC_MACRORECORD
int m_wParam;
int m_lParam;
#endif
};
enum {
wxEVT_STC_CHANGE = 1650,
wxEVT_STC_STYLENEEDED,
wxEVT_STC_CHARADDED,
wxEVT_STC_UPDATEUI,
wxEVT_STC_SAVEPOINTREACHED,
wxEVT_STC_SAVEPOINTLEFT,
wxEVT_STC_ROMODIFYATTEMPT,
wxEVT_STC_DOUBLECLICK,
wxEVT_STC_MODIFIED,
wxEVT_STC_KEY,
wxEVT_STC_MACRORECORD,
wxEVT_STC_MARGINCLICK,
wxEVT_STC_NEEDSHOWN
};
#ifndef SWIG
typedef void (wxEvtHandler::*wxStyledTextEventFunction)(wxStyledTextEvent&);
#define EVT_STC_CHANGE(id, fn) { wxEVT_STC_CHANGE, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_STYLENEEDED(id, fn) { wxEVT_STC_STYLENEEDED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_CHARADDED(id, fn) { wxEVT_STC_CHARADDED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_UPDATEUI(id, fn) { wxEVT_STC_UPDATEUI, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_SAVEPOINTREACHED(id, fn) { wxEVT_STC_SAVEPOINTREACHED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_SAVEPOINTLEFT(id, fn) { wxEVT_STC_SAVEPOINTLEFT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_ROMODIFYATTEMPT(id, fn) { wxEVT_STC_ROMODIFYATTEMPT, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_DOUBLECLICK(id, fn) { wxEVT_STC_DOUBLECLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_MODIFIED(id, fn) { wxEVT_STC_MODIFIED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_KEY(id, fn) { wxEVT_STC_KEY, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_MACRORECORD(id, fn) { wxEVT_STC_MACRORECORD, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_MARGINCLICK(id, fn) { wxEVT_STC_MARGINCLICK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#define EVT_STC_NEEDSHOWN(id, fn) { wxEVT_STC_NEEDSHOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxStyledTextEventFunction) & fn, (wxObject *) NULL },
#endif
//----------------------------------------------------------------------
//----------------------------------------------------------------------
#endif

View File

@@ -0,0 +1,119 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="GENERATOR" CONTENT="Mozilla/4.06 [en] (X11; I; Linux 2.0.35 i686) [Netscape]">
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000EF" VLINK="#51188E" ALINK="#FF0000">
<H3>
This is TABLES
tests page...</H3>
(yes, really, see bellow:)
<BR>Click <a href="test.htm">here</a> to go to original testing page...
<BR>Click
<a href="http://www.lpthe.jussieu.fr/~zeitlin/wxWindows/docs/">here</a>
to go to manuals...
<BR>&nbsp;
<CENTER><TABLE CELLSPACING=5 BORDER COLS=2 WIDTH="40%" NOSAVE >
<TR ALIGN=CENTER NOSAVE>
<TD WIDTH="40%" NOSAVE>Top left
<BR>(two lines expression)
<P>paragraph done</TD>
<TD NOSAVE>Top right</TD>
</TR>
<TR>
<TD>Bottom left</TD>
<TD>Bottom right</TD>
</TR>
</TABLE></CENTER>
<P>Subsampling is shown there:
<BR>&nbsp;
<TABLE BORDER COLS=2 WIDTH="100%" NOSAVE >
<TR NOSAVE>
<TD VALIGN=BOTTOM NOSAVE>
<TABLE BORDER COLS=2 WIDTH="50%" NOSAVE >
<TR ALIGN=CENTER BGCOLOR="#3366FF" NOSAVE>
<TD>a</TD>
<TD WIDTH="10%" NOSAVE>b</TD>
</TR>
<TR NOSAVE>
<TD>c</TD>
<TD NOSAVE>d</TD>
</TR>
</TABLE>
</TD>
<TD VALIGN=BOTTOM NOSAVE>2</TD>
</TR>
<TR NOSAVE>
<TD>3 dflkj lkjfl dkjldkfjl flk jflkf lkjflkj ljlf ajlfj alff h khg hgj
gjg jg gjhfg fg gjh gjf jgf jgj f gjfgj kfajg&nbsp;</TD>
<TD ALIGN=CENTER VALIGN=BOTTOM BGCOLOR="#FFFF99" NOSAVE>4
<BR>gh
<BR>gfh
<BR>gh
<BR>hg
<BR>5</TD>
</TR>
</TABLE>
<P>This is "default" table - with no sizes givev:
<BR>&nbsp;
<TABLE BORDER COLS=4 WIDTH="100%" NOSAVE >
<TR NOSAVE>
<TD>Hello</TD>
<TD NOSAVE>lkfdsjlk fj dlfj lkfj lkjflk jlfk lk fjlk elwkf lkejflek f jlekjflkj
ljlk lk jlkf lefjl j flkj ljl lf lfj lfjl lj lwe lekf;eh kfejh lkh kjh
kjhkj hkj hkj lkh kjh kjlh kj</TD>
<TD>shortebn formo lr lk</TD>
<TD>djsf lkjlf poer oi pjr po kpk&nbsp;</TD>
</TR>
<TR>
<TD>a</TD>
<TD>b</TD>
<TD>c</TD>
<TD>d</TD>
</TR>
<TR NOSAVE>
<TD>1</TD>
<TD>2</TD>
<TD COLSPAN="2" ROWSPAN="2" NOSAVE>3</TD>
</TR>
<TR>
<TD>A</TD>
<TD>B</Td>
</TR>
</TABLE>

248
wxPython/demo/data/test.htm Normal file
View File

@@ -0,0 +1,248 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="GENERATOR" CONTENT="Mozilla/4.06 [en] (X11; I; Linux
2.0.35 i686) [Netscape]">
<TITLE>wxPython does wxHTML!</TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#007f00" LINK="#0000FF" VLINK="#FF0000" ALINK="#000088">
<b><a href="tables.htm">click here to go to tables test page!</a></b>
<p>
<b><a href="imagemap.htm">click here to go to IMAGEMAPs test page!</a></b>
<p>
This is - - default text, now switching to
<CENTER>
<P>center, now still ctr, now exiting</CENTER>
exited!.<A HREF="#downtown">[link to down]</A>
<P>Hello, this *is* default charset (helvetica, probably) and it is displayed
with one&nbsp; <FONT COLOR="#FF0000">COLOR CHANGE</FONT>. Of course we
can have as many color changes as we can, what about this <FONT COLOR="#FF0000">M</FONT><FONT COLOR="#FFFF00">A</FONT><FONT COLOR="#33FF33">D</FONT><B><FONT COLOR="#FFFFFF"><FONT SIZE=+1>N</FONT></FONT></B>E<FONT COLOR="#999999">S</FONT><FONT COLOR="#CC33CC">S?</FONT>
<P><FONT COLOR="#000000">There was a space above.</FONT>
<BR>
<HR WIDTH="100%">This was a line. <TT>(BTW we are in <B>fixed</B> font
/ <I><U>typewriter</U> font</I> right now :-)</TT>
<BR>This is in <B>BOLD</B> face. This is <I>ITALIC.</I> This is <B><I><U>E
V E R Y T H I N G</U></I></B>.
<BR>&nbsp;
<P><BR>
<CENTER>
<P>Right now, <FONT COLOR="#0000FF"><FONT SIZE=+4>centered REALLY Big Text</FONT></FONT>,
how do you like (space) it?</CENTER>
<DIV ALIGN=right>RIGHT: <FONT SIZE=-2>text-2, </FONT><FONT SIZE=-1>text-1,
</FONT>text+0,
<FONT SIZE=+1>text+1,
</FONT><FONT COLOR="#FF0000"><FONT SIZE=+2>text+2,
</FONT></FONT><FONT SIZE=+3>text+3,
</FONT><FONT SIZE=+4>text+4</FONT>
<BR><U><FONT SIZE=+1>we are right now</FONT></U></DIV>
<CENTER><U><FONT SIZE=+1>we are center now</FONT></U></CENTER>
<U><FONT SIZE=+1>we are left now.</FONT></U>
<P><I><FONT COLOR="#3366FF">Blue italic text is displayed there....</FONT></I>
<H1>
<HR ALIGN=LEFT SIZE=10 WIDTH="50%">This is heading one.</H1>
this is normal
<CENTER>
<H1>
This is <FONT COLOR="#33FF33">CENTERED</FONT> heading one</H1></CENTER>
<FONT COLOR="#FFFF00">Yes, hmmmmmmmmm........, right now, <TT>we should
display some tiny nice image</TT>, he?</FONT>
<BR><IMG SRC="pic.png" ALT="Testing image image" ><IMG SRC="pic2.bmp">and this is text......
<P><IMG SRC="pic.png" ALT="Testing image image" HEIGHT=200 WIDTH=327 ALIGN=CENTER>and
this is text......
<BR><A HREF="pic.png"><IMG SRC="pic.png" ALT="Testing image image" HEIGHT=160 WIDTH=100 ALIGN=TEXTTOP></A> (try clicking on the image :-) and
this is text......
<BR>&nbsp;
<BR>&nbsp;
<UL>
<LI>
item 1</LI>
<LI>
item 2</LI>
<UL>
<LI>
nested item</LI>
<LI>
nested item 2</LI>
</UL>
<LI>
item 3</LI>
</UL>
<OL>
<LI>
item one</LI>
<LI>
item two</LI>
<OL>
<LI>
nsted item</LI>
</OL>
<LI>
last numbered item</LI>
</OL>
<H1>
Heading 1</H1>
<I>Italic text now...</I>
<H2>
<I>Heading 2</I></H2>
<I>and now?</I>
<H3>
Heading 3</H3>
<H4>
Heading 4</H4>
<H5>
Heading 5</H5>
<H6>
Heading 6</H6>
And this is normal text, once again :-)
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<BR>&nbsp;
<P>And yes, we're in <FONT SIZE=+4>HTML DOCUMENT</FONT>
<P>hello?
<BR>&nbsp;
<P><BR>
<CENTER>
<P>This is <A NAME="downtown"></a>centered paragraph</CENTER>
<P>This is new par?
<P><B>We switched to BOLD</B>
<P><B>This is new paragraph</B> Bold is off now.
<P>new par
<P>&nbsp; -----------
<P><FONT SIZE=-2>Hello</FONT>
<OL><FONT SIZE=-2>this is standalone :-)</FONT>
<LI>
<FONT SIZE=-2>This is item number one. iti lkdjfdl kjd lk jlkjdl kjlk jlf
jflkj d lfkjlkf jl jflkj flkwe lkhelf ;fk;fl kw;lfke ;ffj lkjflk wj lfjl
fkw ;k;ekf;lkfe ;kf;lk; ;j ;lrj;wfj;f ;eljfw; lfj;ewlfj dagdja gdj chga
kjegiquw iuqdb qiud iquwd hurray googoo.</FONT></LI>
<LI>
<FONT SIZE=-2>two two two two two two twotwo TWO two two two two two two
twotwo TWO two two two two two two twotwo TWO two two two two two two twotwo
TWO two two two two two two twotwo TWO two two two two two two twotwo TWO
two two two two two two twotwo TWO</FONT></LI>
<BLOCKQUOTE><FONT SIZE=+0><B>(blockquote)</B>two two two two two two twotwo
TWO two two two two two two twotwo TWO two two two two two two twotwo TWO</FONT>
<BLOCKQUOTE><FONT SIZE=+0>two two two two two two twotwo TWO two two two</FONT></BLOCKQUOTE>
<FONT SIZE=+0>two two two twotwo TWO two two two two two two twotwo TWO
two two two two two two twotwo TWO</FONT></BLOCKQUOTE>
<FONT SIZE=-2>two two two two two two twotwo TWO two two two two two two
twotwo TWO</FONT>
<LI>
<FONT SIZE=-2>This is item nyumber 3.</FONT></LI>
<LI>
<FONT SIZE=-2>This is item number one. iti lkdjfdl kjd lk jlkjdl kjlk jlf
jflkj d lfkjlkf jl jflkj flkwe lkhelf ;fk;fl kw;lfke ;ffj lkjflk wj lfjl
fkw ;k;ekf;lkfe ;kf;lk; ;j ;lrj;wfj;f ;eljfw; lfj;ewlfj dagdja gdj chga
kjegiquw iuqdb qiud iquwd hurray googoo.</FONT></LI>
<LI>
<FONT SIZE=-2>two two two two two two twotwo TWO two two two two two two
twotwo TWO two two two two two two twotwo TWO two two two two two two twotwo
TWO two two two two two two twotwo TWO two two two two two two twotwo TWO
two two two two two two twotwo TWO two two two two two two twotwo TWO two
two two two two two twotwo TWO two two two two two two twotwo TWO two two
two two two two twotwo TWO two two two two two two twotwo TWO two two two
two two two twotwo TWO two two two two two two twotwo TWO two two two two
two two twotwo TWO two two two two two two twotwo TWO</FONT></LI>
<LI>
<FONT SIZE=-2>This is item nyumber 3.</FONT></LI>
<LI>
<FONT SIZE=-2>This is item number one. iti lkdjfdl kjd lk jlkjdl kjlk jlf
jflkj d lfkjlkf jl jflkj flkwe lkhelf ;fk;fl kw;lfke ;ffj lkjflk wj lfjl
fkw ;k;ekf;lkfe ;kf;lk; ;j ;lrj;wfj;f ;eljfw; lfj;ewlfj dagdja gdj chga
kjegiquw iuqdb qiud iquwd hurray googoo.</FONT></LI>
<LI>
<FONT SIZE=-2>two two two two two two twotwo TWO two two two two two two
twotwo TWO two two two two two two twotwo TWO two two two two two two twotwo
TWO two two two two two two twotwo TWO two two two two two two twotwo TWO
two two two two two two twotwo TWO two two two two two two twotwo TWO two
two two two two two twotwo TWO two two two two two two twotwo TWO two two
two two two two twotwo TWO two two two two two two twotwo TWO two two two
two two two twotwo TWO two two two two two two twotwo TWO two two two two
two two twotwo TWO two two two two two two twotwo TWO</FONT></LI>
<LI>
<FONT SIZE=-2>This is item nyumber 3.</FONT></LI>
<LI>
<FONT SIZE=-2>This is item number one. iti lkdjfdl kjd lk jlkjdl kjlk jlf
jflkj d lfkjlkf jl jflkj flkwe lkhelf ;fk;fl kw;lfke ;ffj lkjflk wj lfjl
fkw ;k;ekf;lkfe ;kf;lk; ;j ;lrj;wfj;f ;eljfw; lfj;ewlfj dagdja gdj chga
kjegiquw iuqdb qiud iquwd hurray googoo.</FONT></LI>
<LI>
<FONT SIZE=-2>two two two two two two twotwo TWO two two two two two two
twotwo TWO two two two two two two twotwo TWO two two two two two two twotwo
TWO two two two two two two twotwo TWO two two two two two two twotwo TWO
two two two two two two twotwo TWO two two two two two two twotwo TWO two
two two two two two twotwo TWO two two two two two two twotwo TWO two two
two two two two twotwo TWO two two two two two two twotwo TWO two two two
two two two twotwo TWO two two two two two two twotwo TWO two two two two
two two twotwo TWO two two two two two two twotwo TWO</FONT></LI>
<LI>
<FONT SIZE=-2>This is item nyumber 3.</FONT></LI>
<LI>
<FONT SIZE=-2>This is item number one. iti lkdjfdl kjd lk jlkjdl kjlk jlf
jflkj d lfkjlkf jl jflkj flkwe lkhelf ;fk;fl kw;lfke ;ffj lkjflk wj lfjl
fkw ;k;ekf;lkfe ;kf;lk; ;j ;lrj;wfj;f ;eljfw; lfj;ewlfj dagdja gdj chga
kjegiquw iuqdb qiud iquwd hurray googoo.</FONT></LI>
<LI>
<FONT SIZE=-2>two two two two two two twotwo TWO two two two two two two
twotwo TWO two two two two two two twotwo TWO two two two two two two twotwo
TWO two two two two two two twotwo TWO two two two two two two twotwo TWO
two two two two two two twotwo TWO two two two two two two twotwo TWO</FONT></LI>
<P><BR><FONT SIZE=-2>two two two two two two twotwo TWO two two two two
two two twotwo TWO two two two two two two twotwo TWO two two two two two
two twotwo TWO</FONT>
<P><FONT SIZE=-2>two two two two two two twotwo TWO two two two two two
two twotwo TWO two two two two two two twotwo TWO two two two two two two
twotwo TWO</FONT>
<LI>
<FONT SIZE=-2>This is item nyumber 3.</FONT></LI>
</OL>
Now, you will see some PRE text:<p>
<PRE>// This is sample C++ code:
void main(int argc, char *argv[])
{
&nbsp;&nbsp;&nbsp; printf("Go away, man!\n");
&nbsp;&nbsp;&nbsp; i = 666;
&nbsp;&nbsp;&nbsp; printf("\n\n\nCRASH\n&nbsp; DOWN NOW. . .&nbsp; \n");
}</PRE>
</BODY>
</HTML>

View File

@@ -0,0 +1,7 @@
Each of the leaf items in the tree is a separate demo. Click and learn!
Use the source Luke!
Many of the demos have some helpful overview text associated with them. Simply click on the first tab in the notebook control after selecting the demo. You can switch back and forth to the demo page as often as you like.
You can also view the source code for each demo by clicking on the second notebook tab.
wxPython now has a company providing commercial support, consulting and training. Go to http://wxpros.com for details.
You shouldn't pee on an electric fence!
Be sure to subscribe to the mail list. Go to http://wxwindows.org/mailman/listinfo/wxpython-users today!

View File

@@ -0,0 +1,58 @@
<html>
<head>
<title>wxHTML does wxPython!</title>
</head>
<body bgcolor="#00CCFF">
<h2>Mixing wxPython and wxHTML</h2>
The widgets on this page were created dynamically on the fly by a custom
wxTagHandler found in wxPython.lib.wxpTag. You can look at the sources
and doc-string <a href="../../lib/wxpTag.py">here</a>.
<p>
The button below is added to the page like this:
<pre>
&lt;center>&lt;wxp class="wxButton" width="50%">
&lt;param name="label" value="It works!">
&lt;param name="id" value="wxID_OK">
&lt;/wxp>&lt;/center>
</pre>
<hr>
<center>
<wxp class="wxButton" width="50%">
<param name="label" value="It works!">
<param name="id" value="wxID_OK">
</wxp>
</center>
<p>
Notice that the <b>button click</b> event is actually caught by the panel
that contains this window, which then logs it in the window below.
<p>
<hr>
<p>
This is the same widget reused three times, each with a different
parameter value. Source code is <a href="../widgetTest.py">here</a>.
<p>
<wxp module="widgetTest" class="TestPanel" width=180 height=100>
</wxp>
<wxp module="widgetTest" class="TestPanel" width=180 height=100>
<param name="bgcolor" value="#00CCFF">
</wxp>
<wxp module="widgetTest" class="TestPanel" width=180 height=100>
<param name="bgcolor" value="#0000FF">
</wxp>
<p><hr><p>
Recognize this one?<br>
<wxp module="wxScrolledWindow" class="MyCanvas" height=300 width=100%>
</wxp>
<p><hr><p>
You can also embed other wxHtmlWindows!<br>
<center>
<wxp module="widgetTest" class="TestHtmlPanel">
</wxp>
</center>
</body></html>