// stc
EVT_STC_MARGINCLICK (wxID_ANY, Edit::OnMarginClick)
EVT_STC_CHARADDED (wxID_ANY, Edit::OnCharAdded)
+ EVT_STC_KEY( wxID_ANY , Edit::OnKey )
END_EVENT_TABLE()
Edit::Edit (wxWindow *parent, wxWindowID id,
// initialize language
m_language = NULL;
+ // Use all the bits in the style byte as styles, not indicators.
+ SetStyleBits(8);
+
// default font for all styles
SetViewEOL (g_CommonPrefs.displayEOLEnable);
SetIndentationGuides (g_CommonPrefs.indentGuideEnable);
StyleSetFont (wxSTC_STYLE_DEFAULT, font);
StyleSetForeground (wxSTC_STYLE_DEFAULT, *wxBLACK);
StyleSetBackground (wxSTC_STYLE_DEFAULT, *wxWHITE);
- StyleSetForeground (wxSTC_STYLE_LINENUMBER, wxColour (_T("DARK GREY")));
+ StyleSetForeground (wxSTC_STYLE_LINENUMBER, wxColour (wxT("DARK GREY")));
StyleSetBackground (wxSTC_STYLE_LINENUMBER, *wxWHITE);
- StyleSetForeground(wxSTC_STYLE_INDENTGUIDE, wxColour (_T("DARK GREY")));
+ StyleSetForeground(wxSTC_STYLE_INDENTGUIDE, wxColour (wxT("DARK GREY")));
InitializePrefs (DEFAULT_LANGUAGE);
// set visibility
SetYCaretPolicy (wxSTC_CARET_EVEN|wxSTC_VISIBLE_STRICT|wxSTC_CARET_SLOP, 1);
// markers
- MarkerDefine (wxSTC_MARKNUM_FOLDER, wxSTC_MARK_DOTDOTDOT, _T("BLACK"), _T("BLACK"));
- MarkerDefine (wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_ARROWDOWN, _T("BLACK"), _T("BLACK"));
- MarkerDefine (wxSTC_MARKNUM_FOLDERSUB, wxSTC_MARK_EMPTY, _T("BLACK"), _T("BLACK"));
- MarkerDefine (wxSTC_MARKNUM_FOLDEREND, wxSTC_MARK_DOTDOTDOT, _T("BLACK"), _T("WHITE"));
- MarkerDefine (wxSTC_MARKNUM_FOLDEROPENMID, wxSTC_MARK_ARROWDOWN, _T("BLACK"), _T("WHITE"));
- MarkerDefine (wxSTC_MARKNUM_FOLDERMIDTAIL, wxSTC_MARK_EMPTY, _T("BLACK"), _T("BLACK"));
- MarkerDefine (wxSTC_MARKNUM_FOLDERTAIL, wxSTC_MARK_EMPTY, _T("BLACK"), _T("BLACK"));
+ MarkerDefine (wxSTC_MARKNUM_FOLDER, wxSTC_MARK_DOTDOTDOT, wxT("BLACK"), wxT("BLACK"));
+ MarkerDefine (wxSTC_MARKNUM_FOLDEROPEN, wxSTC_MARK_ARROWDOWN, wxT("BLACK"), wxT("BLACK"));
+ MarkerDefine (wxSTC_MARKNUM_FOLDERSUB, wxSTC_MARK_EMPTY, wxT("BLACK"), wxT("BLACK"));
+ MarkerDefine (wxSTC_MARKNUM_FOLDEREND, wxSTC_MARK_DOTDOTDOT, wxT("BLACK"), wxT("WHITE"));
+ MarkerDefine (wxSTC_MARKNUM_FOLDEROPENMID, wxSTC_MARK_ARROWDOWN, wxT("BLACK"), wxT("WHITE"));
+ MarkerDefine (wxSTC_MARKNUM_FOLDERMIDTAIL, wxSTC_MARK_EMPTY, wxT("BLACK"), wxT("BLACK"));
+ MarkerDefine (wxSTC_MARKNUM_FOLDERTAIL, wxSTC_MARK_EMPTY, wxT("BLACK"), wxT("BLACK"));
// miscelaneous
- m_LineNrMargin = TextWidth (wxSTC_STYLE_LINENUMBER, _T("_999999"));
+ m_LineNrMargin = TextWidth (wxSTC_STYLE_LINENUMBER, wxT("_999999"));
m_FoldingMargin = 16;
CmdKeyClear (wxSTC_KEY_TAB, 0); // this is done by the menu accelerator key
SetLayoutCache (wxSTC_CACHE_PAGE);
Clear ();
}
+void Edit::OnKey (wxStyledTextEvent &WXUNUSED(event))
+{
+ wxMessageBox("OnKey");
+}
+
void Edit::OnEditCut (wxCommandEvent &WXUNUSED(event)) {
if (GetReadOnly() || (GetSelectionEnd()-GetSelectionStart() <= 0)) return;
Cut ();
while (!filepattern.empty()) {
wxString cur = filepattern.BeforeFirst (';');
if ((cur == filename) ||
- (cur == (filename.BeforeLast ('.') + _T(".*"))) ||
- (cur == (_T("*.") + filename.AfterLast ('.')))) {
+ (cur == (filename.BeforeLast ('.') + wxT(".*"))) ||
+ (cur == (wxT("*.") + filename.AfterLast ('.')))) {
return curInfo->name;
}
filepattern = filepattern.AfterFirst (';');
// set margin for line numbers
SetMarginType (m_LineNrID, wxSTC_MARGIN_NUMBER);
- StyleSetForeground (wxSTC_STYLE_LINENUMBER, wxColour (_T("DARK GREY")));
+ StyleSetForeground (wxSTC_STYLE_LINENUMBER, wxColour (wxT("DARK GREY")));
StyleSetBackground (wxSTC_STYLE_LINENUMBER, *wxWHITE);
SetMarginWidth (m_LineNrID, 0); // start out not visible
}
// set common styles
- StyleSetForeground (wxSTC_STYLE_DEFAULT, wxColour (_T("DARK GREY")));
- StyleSetForeground (wxSTC_STYLE_INDENTGUIDE, wxColour (_T("DARK GREY")));
+ StyleSetForeground (wxSTC_STYLE_DEFAULT, wxColour (wxT("DARK GREY")));
+ StyleSetForeground (wxSTC_STYLE_INDENTGUIDE, wxColour (wxT("DARK GREY")));
// initialize settings
if (g_CommonPrefs.syntaxEnable) {
StyleSetUnderline (Nr, (curType.fontstyle & mySTC_STYLE_UNDERL) > 0);
StyleSetVisible (Nr, (curType.fontstyle & mySTC_STYLE_HIDDEN) == 0);
StyleSetCase (Nr, curType.lettercase);
- const wxChar *pwords = curInfo->styles[Nr].words;
+ const char *pwords = curInfo->styles[Nr].words;
if (pwords) {
SetKeyWords (keywordnr, pwords);
keywordnr += 1;
if (g_CommonPrefs.foldEnable) {
SetMarginWidth (m_FoldingID, curInfo->folds != 0? m_FoldingMargin: 0);
SetMarginSensitive (m_FoldingID, curInfo->folds != 0);
- SetProperty (_T("fold"), curInfo->folds != 0? _T("1"): _T("0"));
- SetProperty (_T("fold.comment"),
- (curInfo->folds & mySTC_FOLD_COMMENT) > 0? _T("1"): _T("0"));
- SetProperty (_T("fold.compact"),
- (curInfo->folds & mySTC_FOLD_COMPACT) > 0? _T("1"): _T("0"));
- SetProperty (_T("fold.preprocessor"),
- (curInfo->folds & mySTC_FOLD_PREPROC) > 0? _T("1"): _T("0"));
- SetProperty (_T("fold.html"),
- (curInfo->folds & mySTC_FOLD_HTML) > 0? _T("1"): _T("0"));
- SetProperty (_T("fold.html.preprocessor"),
- (curInfo->folds & mySTC_FOLD_HTMLPREP) > 0? _T("1"): _T("0"));
- SetProperty (_T("fold.comment.python"),
- (curInfo->folds & mySTC_FOLD_COMMENTPY) > 0? _T("1"): _T("0"));
- SetProperty (_T("fold.quotes.python"),
- (curInfo->folds & mySTC_FOLD_QUOTESPY) > 0? _T("1"): _T("0"));
+ SetProperty (wxT("fold"), curInfo->folds != 0? wxT("1"): wxT("0"));
+ SetProperty (wxT("fold.comment"),
+ (curInfo->folds & mySTC_FOLD_COMMENT) > 0? wxT("1"): wxT("0"));
+ SetProperty (wxT("fold.compact"),
+ (curInfo->folds & mySTC_FOLD_COMPACT) > 0? wxT("1"): wxT("0"));
+ SetProperty (wxT("fold.preprocessor"),
+ (curInfo->folds & mySTC_FOLD_PREPROC) > 0? wxT("1"): wxT("0"));
+ SetProperty (wxT("fold.html"),
+ (curInfo->folds & mySTC_FOLD_HTML) > 0? wxT("1"): wxT("0"));
+ SetProperty (wxT("fold.html.preprocessor"),
+ (curInfo->folds & mySTC_FOLD_HTMLPREP) > 0? wxT("1"): wxT("0"));
+ SetProperty (wxT("fold.comment.python"),
+ (curInfo->folds & mySTC_FOLD_COMMENTPY) > 0? wxT("1"): wxT("0"));
+ SetProperty (wxT("fold.quotes.python"),
+ (curInfo->folds & mySTC_FOLD_QUOTESPY) > 0? wxT("1"): wxT("0"));
}
SetFoldFlags (wxSTC_FOLDFLAG_LINEBEFORE_CONTRACTED |
wxSTC_FOLDFLAG_LINEAFTER_CONTRACTED);
#if wxUSE_FILEDLG
// get filname
if (!m_filename) {
- wxFileDialog dlg (this, _T("Open file"), wxEmptyString, wxEmptyString,
- _T("Any file (*)|*"), wxFD_OPEN | wxFD_FILE_MUST_EXIST | wxFD_CHANGE_DIR);
+ wxFileDialog dlg (this, wxT("Open file"), wxEmptyString, wxEmptyString,
+ wxT("Any file (*)|*"), wxFD_OPEN | wxFD_FILE_MUST_EXIST | wxFD_CHANGE_DIR);
if (dlg.ShowModal() != wxID_OK) return false;
m_filename = dlg.GetPath();
}
// load file in edit and clear undo
if (!filename.empty()) m_filename = filename;
-// wxFile file (m_filename);
-// if (!file.IsOpened()) return false;
- ClearAll ();
-// long lng = file.Length ();
-// if (lng > 0) {
-// wxString buf;
-// wxChar *buff = buf.GetWriteBuf (lng);
-// file.Read (buff, lng);
-// buf.UngetWriteBuf ();
-// InsertText (0, buf);
-// }
-// file.Close();
wxStyledTextCtrl::LoadFile(m_filename);
// get filname
if (!m_filename) {
- wxFileDialog dlg (this, _T("Save file"), wxEmptyString, wxEmptyString, _T("Any file (*)|*"),
+ wxFileDialog dlg (this, wxT("Save file"), wxEmptyString, wxEmptyString, wxT("Any file (*)|*"),
wxFD_SAVE | wxFD_OVERWRITE_PROMPT);
if (dlg.ShowModal() != wxID_OK) return false;
m_filename = dlg.GetPath();
textinfo->Add (new wxStaticText (this, wxID_ANY, _("Lexer-ID: "),
wxDefaultPosition, wxSize(80, wxDefaultCoord)),
0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxLEFT, 4);
- text = wxString::Format (_T("%d"), edit->GetLexer());
+ text = wxString::Format (wxT("%d"), edit->GetLexer());
textinfo->Add (new wxStaticText (this, wxID_ANY, text),
0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 4);
wxString EOLtype = wxEmptyString;
switch (edit->GetEOLMode()) {
- case wxSTC_EOL_CR: {EOLtype = _T("CR (Unix)"); break; }
- case wxSTC_EOL_CRLF: {EOLtype = _T("CRLF (Windows)"); break; }
- case wxSTC_EOL_LF: {EOLtype = _T("CR (Macintosh)"); break; }
+ case wxSTC_EOL_CR: {EOLtype = wxT("CR (Unix)"); break; }
+ case wxSTC_EOL_CRLF: {EOLtype = wxT("CRLF (Windows)"); break; }
+ case wxSTC_EOL_LF: {EOLtype = wxT("CR (Macintosh)"); break; }
}
textinfo->Add (new wxStaticText (this, wxID_ANY, _("Line endings"),
wxDefaultPosition, wxSize(80, wxDefaultCoord)),
statistic->Add (new wxStaticText (this, wxID_ANY, _("Total lines"),
wxDefaultPosition, wxSize(80, wxDefaultCoord)),
0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxLEFT, 4);
- text = wxString::Format (_T("%d"), edit->GetLineCount());
+ text = wxString::Format (wxT("%d"), edit->GetLineCount());
statistic->Add (new wxStaticText (this, wxID_ANY, text),
0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 4);
statistic->Add (new wxStaticText (this, wxID_ANY, _("Total chars"),
wxDefaultPosition, wxSize(80, wxDefaultCoord)),
0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxLEFT, 4);
- text = wxString::Format (_T("%d"), edit->GetTextLength());
+ text = wxString::Format (wxT("%d"), edit->GetTextLength());
statistic->Add (new wxStaticText (this, wxID_ANY, text),
0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 4);
statistic->Add (new wxStaticText (this, wxID_ANY, _("Current line"),
wxDefaultPosition, wxSize(80, wxDefaultCoord)),
0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxLEFT, 4);
- text = wxString::Format (_T("%d"), edit->GetCurrentLine());
+ text = wxString::Format (wxT("%d"), edit->GetCurrentLine());
statistic->Add (new wxStaticText (this, wxID_ANY, text),
0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 4);
statistic->Add (new wxStaticText (this, wxID_ANY, _("Current pos"),
wxDefaultPosition, wxSize(80, wxDefaultCoord)),
0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxLEFT, 4);
- text = wxString::Format (_T("%d"), edit->GetCurrentPos());
+ text = wxString::Format (wxT("%d"), edit->GetCurrentPos());
statistic->Add (new wxStaticText (this, wxID_ANY, text),
0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 4);
// EditPrint
//----------------------------------------------------------------------------
-EditPrint::EditPrint (Edit *edit, wxChar *title)
+EditPrint::EditPrint (Edit *edit, const wxChar *title)
: wxPrintout(title) {
m_edit = edit;
m_printed = 0;