Remove relative include paths

This commit is contained in:
Tim Warren 2016-01-13 09:35:51 -05:00
parent ab0c586b25
commit 3e78b8cd4c
2 changed files with 132 additions and 132 deletions

View File

@ -1,4 +1,4 @@
/** /**
* File: SFTP.h * File: SFTP.h
* Author: twarren * Author: twarren
* *
@ -7,7 +7,7 @@
#pragma once #pragma once
#include "../common.h" #include "src/common.h"
// Socket includes // Socket includes
#include <cstring> #include <cstring>

View File

@ -15,7 +15,7 @@ static FilePane *filePane = nullptr;
// Frame icon // Frame icon
#include "../../resources/xpm/tyro.xpm" #include "resources/xpm/tyro.xpm"
/** /**
* Constructor * Constructor
@ -25,42 +25,42 @@ MainFrame::MainFrame(wxFrame *frame, const wxString &title, const wxSize &size)
{ {
// Create the tab container // Create the tab container
notebook = new TabContainer(this); notebook = new TabContainer(this);
filePane = new FilePane(this); filePane = new FilePane(this);
// Set the frame icon // Set the frame icon
wxIcon app_icon(tyro_icon); wxIcon app_icon(tyro_icon);
this->SetIcon(app_icon); this->SetIcon(app_icon);
// Apply the menu bar to the current frame // Apply the menu bar to the current frame
this->SetMenuBar(Glob_menu_bar); this->SetMenuBar(Glob_menu_bar);
// Setup StatusBar // Setup StatusBar
Glob_status_bar = new wxStatusBar(this, wxID_ANY); Glob_status_bar = new wxStatusBar(this, wxID_ANY);
Glob_status_bar->SetFieldsCount(3); Glob_status_bar->SetFieldsCount(3);
this->DoLayout(); this->DoLayout();
this->BindEvents(); this->BindEvents();
} }
/** /**
* Time to clean up! * Time to clean up!
*/ */
MainFrame::~MainFrame() MainFrame::~MainFrame()
{ {
wxLogDebug("Main Frame Destructor Called."); wxLogDebug("Main Frame Destructor Called.");
//delete notebook; //delete notebook;
//delete toolBar; //delete toolBar;
//delete filePane; //delete filePane;
wxDELETE(this->findDlg); wxDELETE(this->findDlg);
wxDELETE(this->findData); wxDELETE(this->findData);
wxDELETE(this->replaceDlg); wxDELETE(this->replaceDlg);
wxDELETE(this->findReplaceData); wxDELETE(this->findReplaceData);
Glob_status_bar->Destroy(); Glob_status_bar->Destroy();
manager->UnInit(); manager->UnInit();
} }
@ -68,12 +68,12 @@ MainFrame::~MainFrame()
* Layout the widgets on the main frame * Layout the widgets on the main frame
* *
* @return void * @return void
*/ */
void MainFrame::DoLayout() void MainFrame::DoLayout()
{ {
this->manager = new wxAuiManager(this); this->manager = new wxAuiManager(this);
this->SetupToolbar(); this->SetupToolbar();
// Setup properties for each AUI pane // Setup properties for each AUI pane
wxAuiPaneInfo toolBarPaneInfo; wxAuiPaneInfo toolBarPaneInfo;
toolBarPaneInfo toolBarPaneInfo
@ -83,7 +83,7 @@ void MainFrame::DoLayout()
.DockFixed(true) .DockFixed(true)
.Resizable(true); .Resizable(true);
this->manager->AddPane(toolBar, toolBarPaneInfo); this->manager->AddPane(toolBar, toolBarPaneInfo);
wxAuiPaneInfo filePaneInfo; wxAuiPaneInfo filePaneInfo;
filePaneInfo.Left() filePaneInfo.Left()
.MinSize(225, 550) .MinSize(225, 550)
@ -91,11 +91,11 @@ void MainFrame::DoLayout()
.LeftDockable(true) .LeftDockable(true)
.Resizable(true); .Resizable(true);
this->manager->AddPane(filePane, filePaneInfo); this->manager->AddPane(filePane, filePaneInfo);
wxAuiPaneInfo notebookPaneInfo; wxAuiPaneInfo notebookPaneInfo;
notebookPaneInfo.CenterPane(); notebookPaneInfo.CenterPane();
this->manager->AddPane(notebook, notebookPaneInfo); this->manager->AddPane(notebook, notebookPaneInfo);
wxAuiPaneInfo statusPaneInfo; wxAuiPaneInfo statusPaneInfo;
statusPaneInfo.Bottom() statusPaneInfo.Bottom()
.ToolbarPane() .ToolbarPane()
@ -103,7 +103,7 @@ void MainFrame::DoLayout()
.DockFixed(true) .DockFixed(true)
.Resizable(true); .Resizable(true);
this->manager->AddPane(Glob_status_bar, statusPaneInfo); this->manager->AddPane(Glob_status_bar, statusPaneInfo);
// Update everything // Update everything
this->EnableEditControls(false); this->EnableEditControls(false);
} }
@ -112,7 +112,7 @@ void MainFrame::DoLayout()
* Create the status bar * Create the status bar
* *
* @return void * @return void
*/ */
void MainFrame::SetupStatusBar() void MainFrame::SetupStatusBar()
{ {
CreateStatusBar(3); CreateStatusBar(3);
@ -120,19 +120,19 @@ void MainFrame::SetupStatusBar()
/** /**
* Create the main toolbar * Create the main toolbar
* *
* @return void * @return void
*/ */
void MainFrame::SetupToolbar() void MainFrame::SetupToolbar()
{ {
// Icon files // Icon files
#ifndef __WXGTK__ #ifndef __WXGTK__
#include "../../resources/xpm/32/new.xpm" #include "resources/xpm/32/new.xpm"
#include "../../resources/xpm/32/open.xpm" #include "resources/xpm/32/open.xpm"
#include "../../resources/xpm/32/save.xpm" #include "resources/xpm/32/save.xpm"
#include "../../resources/xpm/32/cut.xpm" #include "resources/xpm/32/cut.xpm"
#include "../../resources/xpm/32/copy.xpm" #include "resources/xpm/32/copy.xpm"
#include "../../resources/xpm/32/paste.xpm" #include "resources/xpm/32/paste.xpm"
wxBitmap new_file_icon(new_file); wxBitmap new_file_icon(new_file);
wxBitmap open_file_icon(open); wxBitmap open_file_icon(open);
@ -147,8 +147,8 @@ void MainFrame::SetupToolbar()
wxBitmap copy_icon = wxArtProvider::GetBitmap(wxART_COPY, wxART_TOOLBAR); wxBitmap copy_icon = wxArtProvider::GetBitmap(wxART_COPY, wxART_TOOLBAR);
wxBitmap cut_icon = wxArtProvider::GetBitmap(wxART_CUT, wxART_TOOLBAR); wxBitmap cut_icon = wxArtProvider::GetBitmap(wxART_CUT, wxART_TOOLBAR);
wxBitmap paste_icon = wxArtProvider::GetBitmap(wxART_PASTE, wxART_TOOLBAR); wxBitmap paste_icon = wxArtProvider::GetBitmap(wxART_PASTE, wxART_TOOLBAR);
#endif #endif
toolBar = new wxAuiToolBar(this); toolBar = new wxAuiToolBar(this);
toolBar->AddTool(wxID_NEW, "New", new_file_icon, "New file"); toolBar->AddTool(wxID_NEW, "New", new_file_icon, "New file");
@ -156,18 +156,18 @@ void MainFrame::SetupToolbar()
toolBar->AddTool(wxID_SAVE, "Save", save_file_icon, "Save file"); toolBar->AddTool(wxID_SAVE, "Save", save_file_icon, "Save file");
toolBar->AddSeparator(); toolBar->AddSeparator();
toolBar->AddTool(wxID_COPY, "Copy", copy_icon, "Copy"); toolBar->AddTool(wxID_COPY, "Copy", copy_icon, "Copy");
toolBar->AddTool(wxID_CUT, "Cut", cut_icon, "Cut"); toolBar->AddTool(wxID_CUT, "Cut", cut_icon, "Cut");
toolBar->AddTool(wxID_PASTE, "Paste", paste_icon, "Paste"); toolBar->AddTool(wxID_PASTE, "Paste", paste_icon, "Paste");
toolBar->AddStretchSpacer(); toolBar->AddStretchSpacer();
toolBar->Realize(); toolBar->Realize();
} }
/** /**
* Bind event handlers * Bind event handlers
* *
* @return void * @return void
*/ */
void MainFrame::BindEvents() void MainFrame::BindEvents()
@ -181,33 +181,33 @@ void MainFrame::BindEvents()
this->Bind(wxEVT_MENU, &TabContainer::OnCloseAllButThis, notebook, myID_CLOSE_ALL_BUT_THIS); this->Bind(wxEVT_MENU, &TabContainer::OnCloseAllButThis, notebook, myID_CLOSE_ALL_BUT_THIS);
this->Bind(wxEVT_MENU, &TabContainer::OnCloseAll, notebook, myID_CLOSE_ALL); this->Bind(wxEVT_MENU, &TabContainer::OnCloseAll, notebook, myID_CLOSE_ALL);
this->Bind(wxEVT_MENU, &MainFrame::OnQuit, this, wxID_EXIT); this->Bind(wxEVT_MENU, &MainFrame::OnQuit, this, wxID_EXIT);
// Edit Menu Events // Edit Menu Events
this->Bind(wxEVT_MENU, [=](wxCommandEvent& event) { this->Bind(wxEVT_MENU, [=](wxCommandEvent& event) {
EditPane *editor = notebook->GetCurrentEditor(); EditPane *editor = notebook->GetCurrentEditor();
switch(event.GetId()) switch(event.GetId())
{ {
case wxID_CUT: case wxID_CUT:
editor->Cut(); editor->Cut();
break; break;
case wxID_COPY: case wxID_COPY:
editor->Copy(); editor->Copy();
break; break;
case wxID_PASTE: case wxID_PASTE:
if (editor->CanPaste()) editor->Paste(); if (editor->CanPaste()) editor->Paste();
break; break;
case wxID_SELECTALL: case wxID_SELECTALL:
editor->SelectAll(); editor->SelectAll();
break; break;
case wxID_UNDO: case wxID_UNDO:
if (editor->CanUndo()) editor->Undo(); if (editor->CanUndo()) editor->Undo();
break; break;
case wxID_REDO: case wxID_REDO:
if (editor->CanRedo()) editor->Redo(); if (editor->CanRedo()) editor->Redo();
break; break;
@ -216,21 +216,21 @@ void MainFrame::BindEvents()
Glob_pref_pane->Show(this); Glob_pref_pane->Show(this);
break; break;
#endif #endif
case wxID_FIND: case wxID_FIND:
this->OnEditFind(event); this->OnEditFind(event);
break; break;
case wxID_REPLACE: case wxID_REPLACE:
this->OnEditReplace(event); this->OnEditReplace(event);
break; break;
default: default:
event.Skip(true); event.Skip(true);
break; break;
} }
}); });
// View Menu Events // View Menu Events
this->Bind(wxEVT_MENU, &MainFrame::OnToggleWhitespace, this, myID_VIEW_WHITESPACE); this->Bind(wxEVT_MENU, &MainFrame::OnToggleWhitespace, this, myID_VIEW_WHITESPACE);
this->Bind(wxEVT_MENU, &MainFrame::OnToggleLineWrap, this, myID_LINE_WRAP); this->Bind(wxEVT_MENU, &MainFrame::OnToggleLineWrap, this, myID_LINE_WRAP);
@ -245,24 +245,24 @@ void MainFrame::BindEvents()
wxLogDebug("wxEVT_FIND_CLOSE"); wxLogDebug("wxEVT_FIND_CLOSE");
event.GetDialog()->Hide(); event.GetDialog()->Hide();
}); });
// Language Selection // Language Selection
this->Bind(wxEVT_MENU, &MainFrame::OnLangSelect, this, wxID_ANY); this->Bind(wxEVT_MENU, &MainFrame::OnLangSelect, this, wxID_ANY);
// Help Menu Events // Help Menu Events
this->Bind(wxEVT_MENU, &MainFrame::OnAbout, this, wxID_ABOUT); this->Bind(wxEVT_MENU, &MainFrame::OnAbout, this, wxID_ABOUT);
} }
/** /**
* Create a new document * Create a new document
* *
* @return void * @return void
*/ */
void MainFrame::OnNew(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnNew(wxCommandEvent &WXUNUSED(event))
{ {
this->EnableEditControls(); this->EnableEditControls();
notebook->AddTab(); notebook->AddTab();
// Make sure the layout is updated immediately // Make sure the layout is updated immediately
this->manager->Update(); this->manager->Update();
} }
@ -271,33 +271,33 @@ void MainFrame::OnNew(wxCommandEvent &WXUNUSED(event))
* Display a file open dialog, and open the selected files * Display a file open dialog, and open the selected files
* *
* @return void * @return void
*/ */
void MainFrame::OnOpen(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnOpen(wxCommandEvent &WXUNUSED(event))
{ {
wxArrayString filelist; wxArrayString filelist;
wxFileDialog dlg(this, "Open file(s)", wxEmptyString, wxEmptyString, wxFileDialog dlg(this, "Open file(s)", wxEmptyString, wxEmptyString,
TYRO_FILE_OPEN_WILDCARDS, wxFD_OPEN | wxFD_FILE_MUST_EXIST | wxFD_CHANGE_DIR | wxFD_MULTIPLE); TYRO_FILE_OPEN_WILDCARDS, wxFD_OPEN | wxFD_FILE_MUST_EXIST | wxFD_CHANGE_DIR | wxFD_MULTIPLE);
if (dlg.ShowModal() != wxID_OK) return; if (dlg.ShowModal() != wxID_OK) return;
dlg.GetPaths(filelist); dlg.GetPaths(filelist);
this->OpenFiles(filelist); this->OpenFiles(filelist);
} }
/** /**
* Open tabs containing the files passed * Open tabs containing the files passed
* *
* @param wxArrayString& filelist * @param wxArrayString& filelist
* @return void * @return void
*/ */
void MainFrame::OpenFiles(wxArrayString filelist) void MainFrame::OpenFiles(wxArrayString filelist)
{ {
int listcount = filelist.GetCount(); int listcount = filelist.GetCount();
if (listcount < 1) return; if (listcount < 1) return;
// Open a new tab for each file // Open a new tab for each file
notebook->Freeze(); notebook->Freeze();
for (int i = 0; i < listcount; i++) for (int i = 0; i < listcount; i++)
@ -305,27 +305,27 @@ void MainFrame::OpenFiles(wxArrayString filelist)
notebook->AddTab(filelist[i]); notebook->AddTab(filelist[i]);
} }
notebook->Thaw(); notebook->Thaw();
this->EnableEditControls(true); this->EnableEditControls(true);
} }
/** /**
* Close the current tab via the toolbar or menu * Close the current tab via the toolbar or menu
* *
* @return void * @return void
*/ */
void MainFrame::OnCloseTab(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnCloseTab(wxCommandEvent &WXUNUSED(event))
{ {
int current_tab = notebook->GetSelection(); int current_tab = notebook->GetSelection();
notebook->Freeze(); notebook->Freeze();
notebook->DeletePage(current_tab); notebook->DeletePage(current_tab);
if (notebook->GetPageCount() == 0) if (notebook->GetPageCount() == 0)
{ {
this->EnableEditControls(false); this->EnableEditControls(false);
} }
notebook->Thaw(); notebook->Thaw();
this->manager->Update(); this->manager->Update();
} }
@ -352,14 +352,14 @@ void MainFrame::OnCloseAll(wxCommandEvent &WXUNUSED(event))
void MainFrame::OnSave(wxCommandEvent &event) void MainFrame::OnSave(wxCommandEvent &event)
{ {
EditPane *editor = notebook->GetCurrentEditor(); EditPane *editor = notebook->GetCurrentEditor();
// Check if the filename is set for the current file // Check if the filename is set for the current file
if ( ! editor->fileName.IsOk()) if ( ! editor->fileName.IsOk())
{ {
this->OnSaveAs(event); this->OnSaveAs(event);
return; return;
} }
editor->SaveFile(); editor->SaveFile();
} }
@ -376,9 +376,9 @@ void MainFrame::OnSaveAs(wxCommandEvent &WXUNUSED(event))
if ( ! editor->IsModified()) return; if ( ! editor->IsModified()) return;
wxFileDialog dlg( wxFileDialog dlg(
this, this,
"Save as...", "Save as...",
wxEmptyString, wxEmptyString,
wxEmptyString, wxEmptyString,
TYRO_FILE_SAVE_WILDCARDS, TYRO_FILE_SAVE_WILDCARDS,
wxFD_SAVE | wxFD_OVERWRITE_PROMPT wxFD_SAVE | wxFD_OVERWRITE_PROMPT
@ -395,7 +395,7 @@ void MainFrame::OnSaveAs(wxCommandEvent &WXUNUSED(event))
wxFileName fileName(filePath); wxFileName fileName(filePath);
const wxString fullPath = filePath; const wxString fullPath = filePath;
const wxString caption= fileName.GetFullName(); const wxString caption= fileName.GetFullName();
// Update the name of the tab // Update the name of the tab
notebook->SetPageToolTip(notebook->GetSelection(), fullPath); notebook->SetPageToolTip(notebook->GetSelection(), fullPath);
notebook->SetPageText(notebook->GetSelection(), caption); notebook->SetPageText(notebook->GetSelection(), caption);
@ -403,16 +403,16 @@ void MainFrame::OnSaveAs(wxCommandEvent &WXUNUSED(event))
// Update the editor highlighting // Update the editor highlighting
editor->Highlight(filePath); editor->Highlight(filePath);
} }
// Update the main view // Update the main view
this->manager->Update(); this->manager->Update();
} }
/** /**
* Close Tyro * Close Tyro
* *
* @return void * @return void
*/ */
void MainFrame::OnQuit(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnQuit(wxCommandEvent &WXUNUSED(event))
{ {
this->Destroy(); this->Destroy();
@ -422,40 +422,40 @@ void MainFrame::OnQuit(wxCommandEvent &WXUNUSED(event))
* Create and show about dialog * Create and show about dialog
* *
* @return void * @return void
*/ */
void MainFrame::OnAbout(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnAbout(wxCommandEvent &WXUNUSED(event))
{ {
wxAboutDialogInfo info; wxAboutDialogInfo info;
wxPlatformInfo plat_info; wxPlatformInfo plat_info;
info.SetName(APP_NAME); info.SetName(APP_NAME);
info.SetVersion(APP_VERSION, APP_VERSION_MORE); info.SetVersion(APP_VERSION, APP_VERSION_MORE);
info.AddDeveloper("Tim Warren"); info.AddDeveloper("Tim Warren");
info.AddArtist("Brian Smith: Main icon"); info.AddArtist("Brian Smith: Main icon");
#ifndef __WXGTK__ #ifndef __WXGTK__
info.AddArtist("http://dryicons.com: Other icons"); info.AddArtist("http://dryicons.com: Other icons");
#endif #endif
wxString desc = "Tyro, a text editor for all development\n\n" wxString desc = "Tyro, a text editor for all development\n\n"
"System info: \n"; "System info: \n";
desc += wxString::Format("Architecture: %s\n", desc += wxString::Format("Architecture: %s\n",
wxPlatformInfo::GetArchName(plat_info.GetArchitecture())); wxPlatformInfo::GetArchName(plat_info.GetArchitecture()));
desc += wxString::Format("Operating System:\n\t%s %i.%i\n", desc += wxString::Format("Operating System:\n\t%s %i.%i\n",
wxPlatformInfo::GetOperatingSystemIdName(plat_info.GetOperatingSystemId()), wxPlatformInfo::GetOperatingSystemIdName(plat_info.GetOperatingSystemId()),
plat_info.GetOSMajorVersion(), plat_info.GetOSMajorVersion(),
plat_info.GetOSMinorVersion()); plat_info.GetOSMinorVersion());
desc += wxString::Format("wxWidgets version: %s %i.%i.%i\n", desc += wxString::Format("wxWidgets version: %s %i.%i.%i\n",
plat_info.GetPortIdName(), plat_info.GetPortIdName(),
wxMAJOR_VERSION, wxMAJOR_VERSION,
wxMINOR_VERSION, wxMINOR_VERSION,
wxRELEASE_NUMBER wxRELEASE_NUMBER
); );
#ifdef __WXGTK__ #ifdef __WXGTK__
wxLinuxDistributionInfo dist_info = wxGetLinuxDistributionInfo(); wxLinuxDistributionInfo dist_info = wxGetLinuxDistributionInfo();
wxString desk = plat_info.GetDesktopEnvironment(); wxString desk = plat_info.GetDesktopEnvironment();
@ -463,122 +463,122 @@ void MainFrame::OnAbout(wxCommandEvent &WXUNUSED(event))
{ {
desc += wxString::Format("Desktop Environment:%s\n", desk); desc += wxString::Format("Desktop Environment:%s\n", desk);
} }
desc += "Distro: "; desc += "Distro: ";
desc += dist_info.Description; desc += dist_info.Description;
if (dist_info.CodeName != "") if (dist_info.CodeName != "")
{ {
desc += " (" + dist_info.CodeName + ")\n"; desc += " (" + dist_info.CodeName + ")\n";
} }
#endif #endif
info.SetDescription(desc); info.SetDescription(desc);
info.SetCopyright(" (C) 2015"); info.SetCopyright(" (C) 2015");
wxAboutBox(info); wxAboutBox(info);
} }
/** /**
* Toggle display of invisibles * Toggle display of invisibles
* *
* @param wxCommandEvent& event * @param wxCommandEvent& event
* @return void * @return void
*/ */
void MainFrame::OnToggleWhitespace(wxCommandEvent& event) void MainFrame::OnToggleWhitespace(wxCommandEvent& event)
{ {
EditPane *editor = notebook->GetCurrentEditor(); EditPane *editor = notebook->GetCurrentEditor();
int flag = (event.IsChecked()) int flag = (event.IsChecked())
? wxSTC_WS_VISIBLEALWAYS ? wxSTC_WS_VISIBLEALWAYS
: wxSTC_WS_INVISIBLE; : wxSTC_WS_INVISIBLE;
editor->SetViewWhiteSpace(flag); editor->SetViewWhiteSpace(flag);
} }
/** /**
* Show the find dialog * Show the find dialog
* *
* @return void * @return void
*/ */
void MainFrame::OnEditFind(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnEditFind(wxCommandEvent &WXUNUSED(event))
{ {
if (this->findDlg == nullptr) if (this->findDlg == nullptr)
{ {
this->findData = new wxFindReplaceData(wxFR_DOWN); this->findData = new wxFindReplaceData(wxFR_DOWN);
this->findDlg = new wxFindReplaceDialog(this, this->findData, "Find"); this->findDlg = new wxFindReplaceDialog(this, this->findData, "Find");
} }
this->findDlg->Show(true); this->findDlg->Show(true);
} }
/** /**
* Show the find/replace dialog * Show the find/replace dialog
* *
* @return void * @return void
*/ */
void MainFrame::OnEditReplace(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnEditReplace(wxCommandEvent &WXUNUSED(event))
{ {
if (this->replaceDlg == nullptr) if (this->replaceDlg == nullptr)
{ {
this->findReplaceData = new wxFindReplaceData(wxFR_DOWN); this->findReplaceData = new wxFindReplaceData(wxFR_DOWN);
this->replaceDlg = new wxFindReplaceDialog(this, this->findReplaceData, this->replaceDlg = new wxFindReplaceDialog(this, this->findReplaceData,
"Find and Replace", wxFR_REPLACEDIALOG); "Find and Replace", wxFR_REPLACEDIALOG);
} }
this->replaceDlg->Show(true); this->replaceDlg->Show(true);
} }
/** /**
* Handles events coming from find dialog * Handles events coming from find dialog
* *
* @param wxFindDialogEvent& event * @param wxFindDialogEvent& event
* @return void * @return void
*/ */
void MainFrame::OnFindDialog(wxFindDialogEvent &event) void MainFrame::OnFindDialog(wxFindDialogEvent &event)
{ {
wxEventType type = event.GetEventType(); wxEventType type = event.GetEventType();
EditPane *editor = notebook->GetCurrentEditor(); EditPane *editor = notebook->GetCurrentEditor();
// Parse flags // Parse flags
int stc_flags = 0; int stc_flags = 0;
int fr_flags = event.GetFlags(); int fr_flags = event.GetFlags();
if (fr_flags & wxFR_WHOLEWORD) stc_flags |= wxSTC_FIND_WHOLEWORD; if (fr_flags & wxFR_WHOLEWORD) stc_flags |= wxSTC_FIND_WHOLEWORD;
if (fr_flags & wxFR_MATCHCASE) stc_flags |= wxSTC_FIND_MATCHCASE; if (fr_flags & wxFR_MATCHCASE) stc_flags |= wxSTC_FIND_MATCHCASE;
// Position after search // Position after search
int new_pos = 0; int new_pos = 0;
// Send find flags to editor control // Send find flags to editor control
editor->SetSearchFlags(stc_flags); editor->SetSearchFlags(stc_flags);
if (type == wxEVT_FIND) if (type == wxEVT_FIND)
{ {
wxLogDebug("wxEVT_FIND"); wxLogDebug("wxEVT_FIND");
if (editor->GetCurrentPos() < 0 || editor->GetCurrentPos() > editor->GetLastPosition()) if (editor->GetCurrentPos() < 0 || editor->GetCurrentPos() > editor->GetLastPosition())
{ {
editor->GotoPos(1); editor->GotoPos(1);
} }
editor->SearchAnchor(); editor->SearchAnchor();
} }
if (type == wxEVT_FIND_NEXT || type == wxEVT_FIND) if (type == wxEVT_FIND_NEXT || type == wxEVT_FIND)
{ {
if (type == wxEVT_FIND_NEXT) if (type == wxEVT_FIND_NEXT)
{ {
wxLogDebug("wxEVT_FIND_NEXT"); wxLogDebug("wxEVT_FIND_NEXT");
} }
new_pos = ((fr_flags & wxFR_DOWN) != 0) new_pos = ((fr_flags & wxFR_DOWN) != 0)
? editor->SearchNext(stc_flags, event.GetFindString()) ? editor->SearchNext(stc_flags, event.GetFindString())
: editor->SearchPrev(stc_flags, event.GetFindString()); : editor->SearchPrev(stc_flags, event.GetFindString());
int sel_start = editor->GetSelectionStart(); int sel_start = editor->GetSelectionStart();
int sel_end = editor->GetSelectionEnd(); int sel_end = editor->GetSelectionEnd();
if (new_pos > 0) if (new_pos > 0)
{ {
if ((fr_flags & wxFR_DOWN) != 0) if ((fr_flags & wxFR_DOWN) != 0)
@ -587,16 +587,16 @@ void MainFrame::OnFindDialog(wxFindDialogEvent &event)
} }
else else
{ {
((sel_start - 1) > 0) ((sel_start - 1) > 0)
? editor->GotoPos(sel_start - 1) ? editor->GotoPos(sel_start - 1)
: editor->GotoPos(sel_start); : editor->GotoPos(sel_start);
} }
editor->SearchAnchor(); editor->SearchAnchor();
editor->SetSelectionStart(sel_start); editor->SetSelectionStart(sel_start);
editor->SetSelectionEnd(sel_end); editor->SetSelectionEnd(sel_end);
} }
return; return;
} }
else if (type == wxEVT_FIND_REPLACE) else if (type == wxEVT_FIND_REPLACE)
@ -607,47 +607,47 @@ void MainFrame::OnFindDialog(wxFindDialogEvent &event)
else if (type == wxEVT_FIND_REPLACE_ALL) else if (type == wxEVT_FIND_REPLACE_ALL)
{ {
wxLogDebug("wxEVT_FIND_REPLACE_ALL"); wxLogDebug("wxEVT_FIND_REPLACE_ALL");
// Freeze editor drawing until replacement is finished // Freeze editor drawing until replacement is finished
editor->Freeze(); editor->Freeze();
editor->GotoPos(0); // Go to the start of the document editor->GotoPos(0); // Go to the start of the document
editor->SearchAnchor(); editor->SearchAnchor();
editor->BeginUndoAction(); editor->BeginUndoAction();
while (editor->SearchNext(stc_flags, event.GetFindString()) != -1) while (editor->SearchNext(stc_flags, event.GetFindString()) != -1)
{ {
editor->ReplaceSelection(event.GetReplaceString()); editor->ReplaceSelection(event.GetReplaceString());
} }
editor->EndUndoAction(); editor->EndUndoAction();
editor->ScrollToEnd(); editor->ScrollToEnd();
editor->Thaw(); editor->Thaw();
} }
} }
/** /**
* Toggle line wrap * Toggle line wrap
* *
* @param wxCommandEvent& event * @param wxCommandEvent& event
* @return void * @return void
*/ */
void MainFrame::OnToggleLineWrap(wxCommandEvent &event) void MainFrame::OnToggleLineWrap(wxCommandEvent &event)
{ {
EditPane *editor = notebook->GetCurrentEditor(); EditPane *editor = notebook->GetCurrentEditor();
int flag = (event.IsChecked()) int flag = (event.IsChecked())
? wxSTC_WRAP_WORD ? wxSTC_WRAP_WORD
: wxSTC_WRAP_NONE; : wxSTC_WRAP_NONE;
editor->SetWrapMode(flag); editor->SetWrapMode(flag);
} }
/** /**
* Toggle display of line ending characters * Toggle display of line ending characters
* *
* @param wxCommandEvent& event * @param wxCommandEvent& event
* @return void * @return void
*/ */
@ -658,7 +658,7 @@ void MainFrame::OnToggleLineEndings(wxCommandEvent &event)
/** /**
* Toggle enable/disable of document-specific controls * Toggle enable/disable of document-specific controls
* *
* @param bool enable * @param bool enable
* @return void * @return void
*/ */
@ -666,21 +666,21 @@ void MainFrame::EnableEditControls(bool enable)
{ {
// Update menu items // Update menu items
Glob_menu_bar->EnableEditControls(enable); Glob_menu_bar->EnableEditControls(enable);
// Toggle toolbar items // Toggle toolbar items
this->toolBar->EnableTool(wxID_SAVE, enable); this->toolBar->EnableTool(wxID_SAVE, enable);
this->toolBar->EnableTool(wxID_CLOSE, enable); this->toolBar->EnableTool(wxID_CLOSE, enable);
this->toolBar->EnableTool(wxID_COPY, enable); this->toolBar->EnableTool(wxID_COPY, enable);
this->toolBar->EnableTool(wxID_CUT, enable); this->toolBar->EnableTool(wxID_CUT, enable);
this->toolBar->EnableTool(wxID_PASTE, enable); this->toolBar->EnableTool(wxID_PASTE, enable);
// Make sure the toolbar is refreshed instantly // Make sure the toolbar is refreshed instantly
this->manager->Update(); this->manager->Update();
} }
/** /**
* Handle selection of highlighting language * Handle selection of highlighting language
* *
* @param wxCommandEvent& event * @param wxCommandEvent& event
* @return void * @return void
*/ */
@ -710,9 +710,9 @@ void MainFrame::OnLangSelect(wxCommandEvent &event)
* @return void * @return void
*/ */
void MainFrame::OnPrefsChanged(wxCommandEvent &WXUNUSED(event)) void MainFrame::OnPrefsChanged(wxCommandEvent &WXUNUSED(event))
{ {
EditPane *editor; EditPane *editor;
notebook->Freeze(); notebook->Freeze();
for(size_t i = 0; i < notebook->GetPageCount(); i++) for(size_t i = 0; i < notebook->GetPageCount(); i++)
{ {