wxWidgets/wxPython/src/cmndlgs.i
Robin Dunn b37c7e1dcd Added typemap for wxArrayString
Added wxMimeTypesManager and wxFileType

Other updates...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-10-30 06:43:54 +00:00

352 lines
9.6 KiB
OpenEdge ABL

/////////////////////////////////////////////////////////////////////////////
// Name: cmndlgs.i
// Purpose: SWIG definitions for the Common Dialog Classes
//
// Author: Robin Dunn
//
// Created: 7/25/98
// RCS-ID: $Id$
// Copyright: (c) 1998 by Total Control Software
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
%module cmndlgs
%{
#include "helpers.h"
#include <wx/colordlg.h>
#include <wx/dirdlg.h>
#include <wx/fontdlg.h>
#include <wx/progdlg.h>
#include <wx/fdrepdlg.h>
%}
//----------------------------------------------------------------------
%include typemaps.i
%include my_typemaps.i
// Import some definitions of other classes, etc.
%import _defs.i
%import misc.i
%import gdi.i
%import windows.i
%import events.i
%import frames.i
%pragma(python) code = "import wx"
//----------------------------------------------------------------------
class wxColourData : public wxObject {
public:
wxColourData();
~wxColourData();
bool GetChooseFull();
wxColour GetColour();
wxColour GetCustomColour(int i);
void SetChooseFull(int flag);
void SetColour(const wxColour& colour);
void SetCustomColour(int i, const wxColour& colour);
};
class wxColourDialog : public wxDialog {
public:
wxColourDialog(wxWindow* parent, wxColourData* data = NULL);
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
wxColourData& GetColourData();
int ShowModal();
};
//----------------------------------------------------------------------
class wxDirDialog : public wxDialog {
public:
wxDirDialog(wxWindow* parent,
char* message = "Choose a directory",
char* defaultPath = "",
long style = 0,
const wxPoint& pos = wxDefaultPosition);
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
wxString GetPath();
wxString GetMessage();
long GetStyle();
void SetMessage(const wxString& message);
void SetPath(const wxString& path);
int ShowModal();
};
//----------------------------------------------------------------------
class wxFileDialog : public wxDialog {
public:
wxFileDialog(wxWindow* parent,
char* message = "Choose a file",
char* defaultDir = "",
char* defaultFile = "",
char* wildcard = "*.*",
long style = 0,
const wxPoint& pos = wxDefaultPosition);
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
wxString GetDirectory();
wxString GetFilename();
int GetFilterIndex();
wxString GetMessage();
wxString GetPath();
long GetStyle();
wxString GetWildcard();
void SetDirectory(const wxString& directory);
void SetFilename(const wxString& setfilename);
void SetFilterIndex(int filterIndex);
void SetMessage(const wxString& message);
void SetPath(const wxString& path);
void SetStyle(long style);
void SetWildcard(const wxString& wildCard);
int ShowModal();
%addmethods {
PyObject* GetFilenames() {
wxArrayString arr;
self->GetFilenames(arr);
return wxArrayString2PyList_helper(arr);
}
PyObject* GetPaths() {
wxArrayString arr;
self->GetPaths(arr);
return wxArrayString2PyList_helper(arr);
}
}
};
//----------------------------------------------------------------------
//TODO: wxMultipleChoiceDialog
//----------------------------------------------------------------------
class wxSingleChoiceDialog : public wxDialog {
public:
%addmethods {
// TODO: ignoring clientData for now...
// SWIG is messing up the &/*'s for some reason.
wxSingleChoiceDialog(wxWindow* parent,
wxString* message,
wxString* caption,
int LCOUNT, wxString* choices,
//char** clientData = NULL,
long style = wxOK | wxCANCEL | wxCENTRE,
wxPoint* pos = &wxDefaultPosition) {
return new wxSingleChoiceDialog(parent, *message, *caption,
LCOUNT, choices, NULL, style, *pos);
}
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
}
int GetSelection();
wxString GetStringSelection();
void SetSelection(int sel);
int ShowModal();
};
//----------------------------------------------------------------------
class wxTextEntryDialog : public wxDialog {
public:
wxTextEntryDialog(wxWindow* parent,
char* message,
char* caption = "Input Text",
char* defaultValue = "",
long style = wxOK | wxCANCEL | wxCENTRE,
const wxPoint& pos = wxDefaultPosition);
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
wxString GetValue();
void SetValue(const wxString& value);
int ShowModal();
};
//----------------------------------------------------------------------
class wxFontData : public wxObject {
public:
wxFontData();
~wxFontData();
void EnableEffects(bool enable);
bool GetAllowSymbols();
wxColour GetColour();
wxFont GetChosenFont();
bool GetEnableEffects();
wxFont GetInitialFont();
bool GetShowHelp();
void SetAllowSymbols(bool allowSymbols);
void SetChosenFont(const wxFont& font);
void SetColour(const wxColour& colour);
void SetInitialFont(const wxFont& font);
void SetRange(int min, int max);
void SetShowHelp(bool showHelp);
};
class wxFontDialog : public wxDialog {
public:
wxFontDialog(wxWindow* parent, wxFontData* data);
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
wxFontData& GetFontData();
int ShowModal();
};
//----------------------------------------------------------------------
class wxMessageDialog : public wxDialog {
public:
wxMessageDialog(wxWindow* parent,
char* message,
char* caption = "Message box",
long style = wxOK | wxCANCEL | wxCENTRE,
const wxPoint& pos = wxDefaultPosition);
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
int ShowModal();
};
//----------------------------------------------------------------------
class wxProgressDialog : public wxFrame {
public:
wxProgressDialog(const wxString& title,
const wxString& message,
int maximum = 100,
wxWindow* parent = NULL,
int style = wxPD_AUTO_HIDE | wxPD_APP_MODAL );
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
bool Update(int value = -1, const char* newmsg = NULL);
void Resume();
}
//----------------------------------------------------------------------
enum wxFindReplaceFlags
{
// downward search/replace selected (otherwise - upwards)
wxFR_DOWN = 1,
// whole word search/replace selected
wxFR_WHOLEWORD = 2,
// case sensitive search/replace selected (otherwise - case insensitive)
wxFR_MATCHCASE = 4
};
enum wxFindReplaceDialogStyles
{
// replace dialog (otherwise find dialog)
wxFR_REPLACEDIALOG = 1,
// don't allow changing the search direction
wxFR_NOUPDOWN = 2,
// don't allow case sensitive searching
wxFR_NOMATCHCASE = 4,
// don't allow whole word searching
wxFR_NOWHOLEWORD = 8
};
enum {
wxEVT_COMMAND_FIND,
wxEVT_COMMAND_FIND_NEXT,
wxEVT_COMMAND_FIND_REPLACE,
wxEVT_COMMAND_FIND_REPLACE_ALL,
wxEVT_COMMAND_FIND_CLOSE,
};
%pragma(python) code = "
def EVT_COMMAND_FIND(win, id, func):
win.Connect(id, -1, wxEVT_COMMAND_FIND, func)
def EVT_COMMAND_FIND_NEXT(win, id, func):
win.Connect(id, -1, wxEVT_COMMAND_FIND_NEXT, func)
def EVT_COMMAND_FIND_REPLACE(win, id, func):
win.Connect(id, -1, wxEVT_COMMAND_FIND_REPLACE, func)
def EVT_COMMAND_FIND_REPLACE_ALL(win, id, func):
win.Connect(id, -1, wxEVT_COMMAND_FIND_REPLACE_ALL, func)
def EVT_COMMAND_FIND_CLOSE(win, id, func):
win.Connect(id, -1, wxEVT_COMMAND_FIND_CLOSE, func)
"
class wxFindDialogEvent : public wxCommandEvent
{
public:
wxFindDialogEvent(wxEventType commandType = wxEVT_NULL, int id = 0);
int GetFlags();
wxString GetFindString();
const wxString& GetReplaceString();
wxFindReplaceDialog *GetDialog();
void SetFlags(int flags);
void SetFindString(const wxString& str);
void SetReplaceString(const wxString& str);
};
class wxFindReplaceData : public wxObject
{
public:
wxFindReplaceData(int flags=0);
~wxFindReplaceData();
const wxString& GetFindString();
const wxString& GetReplaceString();
int GetFlags();
void SetFlags(int flags);
void SetFindString(const wxString& str);
void SetReplaceString(const wxString& str);
};
class wxFindReplaceDialog : public wxDialog {
public:
wxFindReplaceDialog(wxWindow *parent,
wxFindReplaceData *data,
const wxString &title,
int style = 0);
%name(wxPreFindReplaceDialog)wxFindReplaceDialog();
bool Create(wxWindow *parent,
wxFindReplaceData *data,
const wxString &title,
int style = 0);
%pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
%pragma(python) addtomethod = "wxPreFindReplaceDialog:val._setOORInfo(val)"
const wxFindReplaceData *GetData();
void SetData(wxFindReplaceData *data);
};
//----------------------------------------------------------------------