From 3349a7ac9d9f194399f723ea7fd51ba49006969c Mon Sep 17 00:00:00 2001 From: shatty Date: Sun, 10 Aug 2003 14:25:09 +0000 Subject: [PATCH] removed BTextView subview, it will not work for background text, complex cursor control, and will probably have problems with wide character alignment. also fixed long-standing scrollbar bug (stupid missing argument bug). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4270 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/apps/terminal/Jamfile | 1 - src/apps/terminal/TerminalApp.cpp | 2 +- src/apps/terminal/TerminalTextView.cpp | 47 -------------------------- src/apps/terminal/TerminalTextView.h | 21 ------------ src/apps/terminal/TerminalWindow.cpp | 28 +++++---------- src/apps/terminal/TerminalWindow.h | 2 +- 6 files changed, 11 insertions(+), 90 deletions(-) delete mode 100644 src/apps/terminal/TerminalTextView.cpp delete mode 100644 src/apps/terminal/TerminalTextView.h diff --git a/src/apps/terminal/Jamfile b/src/apps/terminal/Jamfile index 19cf68470a..f5a1d73021 100644 --- a/src/apps/terminal/Jamfile +++ b/src/apps/terminal/Jamfile @@ -8,7 +8,6 @@ AddResources Terminal : App Terminal : Terminal.cpp - TerminalTextView.cpp TerminalWindow.cpp TerminalApp.cpp ; diff --git a/src/apps/terminal/TerminalApp.cpp b/src/apps/terminal/TerminalApp.cpp index ed51a12a10..ced0e95379 100644 --- a/src/apps/terminal/TerminalApp.cpp +++ b/src/apps/terminal/TerminalApp.cpp @@ -233,7 +233,7 @@ TerminalApp::ArgvReceived(int32 argc, char * const argv[], const char * cwd) } break; case '?': - printf("wth is that?\n"); + // getopt prints error message return; break; default: diff --git a/src/apps/terminal/TerminalTextView.cpp b/src/apps/terminal/TerminalTextView.cpp deleted file mode 100644 index f8b03183b4..0000000000 --- a/src/apps/terminal/TerminalTextView.cpp +++ /dev/null @@ -1,47 +0,0 @@ -#include -#include -#include - -#include -#include - -TerminalTextView::TerminalTextView(BRect viewFrame, BRect textBounds, - const BFont * initialFont, - const rgb_color * initialColor, - BHandler *handler) - : BTextView(viewFrame, "textview", textBounds, - initialFont, initialColor, - B_FOLLOW_ALL, B_FRAME_EVENTS|B_WILL_DRAW) -{ - fHandler = handler; - fMessenger = new BMessenger(handler); - SetWordWrap(false); -} - -TerminalTextView::~TerminalTextView() -{ - delete fMessenger; -} - -void -TerminalTextView::Select(int32 start, int32 finish) -{ - if (start == finish) { - fMessenger->SendMessage(DISABLE_ITEMS); - } else { - fMessenger->SendMessage(ENABLE_ITEMS); - } - BTextView::Select(start, finish); -} - -void -TerminalTextView::FrameResized(float width, float height) -{ - BTextView::FrameResized(width, height); - - BRect textRect; - textRect = Bounds(); - textRect.OffsetTo(B_ORIGIN); - textRect.InsetBy(TEXT_INSET,TEXT_INSET); - SetTextRect(textRect); -} diff --git a/src/apps/terminal/TerminalTextView.h b/src/apps/terminal/TerminalTextView.h deleted file mode 100644 index 5f0a98d7a2..0000000000 --- a/src/apps/terminal/TerminalTextView.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef TERMINAL_TEXT_VIEW_H -#define TERMINAL_TEXT_VIEW_H - -#include - -class TerminalTextView : public BTextView { -public: - TerminalTextView(BRect viewframe, BRect textframe, - const BFont * initialFont, const rgb_color * initialColor, - BHandler *handler); - ~TerminalTextView(); - - virtual void Select(int32 start, int32 finish); - virtual void FrameResized(float width, float height); - -private: - BHandler *fHandler; - BMessenger *fMessenger; -}; - -#endif // TERMINAL_TEXT_VIEW_H diff --git a/src/apps/terminal/TerminalWindow.cpp b/src/apps/terminal/TerminalWindow.cpp index 404dc3e96e..39f3518512 100644 --- a/src/apps/terminal/TerminalWindow.cpp +++ b/src/apps/terminal/TerminalWindow.cpp @@ -19,7 +19,6 @@ #include #include -#include #include #include @@ -79,19 +78,13 @@ TerminalWindow::InitWindow(int32 id, entry_ref * settingsRef) viewFrame.right -= B_V_SCROLL_BAR_WIDTH; viewFrame.left = 0; - textBounds = viewFrame; - textBounds.OffsetTo(B_ORIGIN); - textBounds.InsetBy(TEXT_INSET, TEXT_INSET); - - BFont textFont(be_plain_font); - textFont.SetSpacing(B_FIXED_SPACING); - rgb_color black = {0,0,0,0}; - fTextView = new TerminalTextView(viewFrame, textBounds, &textFont, &black, this); - fTextView->SetStylable(true); + fShellView = new BView(viewFrame,"shellview",B_FOLLOW_ALL, B_FRAME_EVENTS|B_WILL_DRAW); + fShellView->SetLowColor(170,45,45); - fScrollView = new BScrollView("scrollview", fTextView, B_FOLLOW_ALL, true, false, B_PLAIN_BORDER); + fScrollView = new BScrollView("scrollview", fShellView, B_FOLLOW_ALL, + B_FRAME_EVENTS|B_WILL_DRAW, false, true, B_PLAIN_BORDER); AddChild(fScrollView); - fTextView->MakeFocus(true); + fShellView->MakeFocus(true); // Terminal menu fTerminal = new BMenu("Terminal"); @@ -113,18 +106,15 @@ TerminalWindow::InitWindow(int32 id, entry_ref * settingsRef) fCopy = new BMenuItem("Copy", new BMessage(B_COPY), 'C'); fEdit->AddItem(fCopy); - fCopy->SetTarget(fTextView); fCopy->SetEnabled(false); fPaste = new BMenuItem("Paste", new BMessage(B_PASTE), 'V'); fEdit->AddItem(fPaste); - fPaste->SetTarget(fTextView); fEdit->AddSeparatorItem(); fSelectAll = new BMenuItem("Select All", new BMessage(B_SELECT_ALL), 'A'); fEdit->AddItem(fSelectAll); - fSelectAll->SetTarget(fTextView); fWriteSelection = new BMenuItem("Write Selection...", new BMessage(EDIT_WRITE_SELECTION)); fEdit->AddItem(fWriteSelection); @@ -382,18 +372,18 @@ TerminalWindow::DisableEditItems(BMessage * message) void TerminalWindow::EditCopy(BMessage * message) { - fTextView->Copy(be_clipboard); +// fTextView->Copy(be_clipboard); } void TerminalWindow::EditPaste(BMessage * message) { - fTextView->Paste(be_clipboard); +// fTextView->Paste(be_clipboard); } void TerminalWindow::EditClearAll(BMessage * message) { - fTextView->SelectAll(); - fTextView->Clear(); +// fTextView->SelectAll(); +// fTextView->Clear(); } diff --git a/src/apps/terminal/TerminalWindow.h b/src/apps/terminal/TerminalWindow.h index 6e046a45fd..7b1c08b7b4 100644 --- a/src/apps/terminal/TerminalWindow.h +++ b/src/apps/terminal/TerminalWindow.h @@ -73,7 +73,7 @@ private: BMenuItem *fSaveAsSettingsFile; // Main views - TerminalTextView*fTextView; + BView *fShellView; BScrollView *fScrollView; // File panels