summaryrefslogtreecommitdiff
path: root/apps/windoze/CBuilder4/prototype/CommentPanel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'apps/windoze/CBuilder4/prototype/CommentPanel.cpp')
-rw-r--r--apps/windoze/CBuilder4/prototype/CommentPanel.cpp222
1 files changed, 0 insertions, 222 deletions
diff --git a/apps/windoze/CBuilder4/prototype/CommentPanel.cpp b/apps/windoze/CBuilder4/prototype/CommentPanel.cpp
deleted file mode 100644
index dbf8adf..0000000
--- a/apps/windoze/CBuilder4/prototype/CommentPanel.cpp
+++ /dev/null
@@ -1,222 +0,0 @@
-//---------------------------------------------------------------------------
-#include <vcl.h>
-#include <vcl/clipbrd.hpp>
-#pragma hdrstop
-
-#include "CommentPanel.h"
-#pragma package(smart_init)
-#include "swdisprtfchap.h"
-#include <swconfig.h>
-#include <swmodule.h>
-#include "Greek2Greek.h"
-#include <utilfuns.h>
-#include <swmgr.h>
-#include <shellapi.h>
-
-class RTFDisp : public SWDisplay {
- SWDispRTF *edit;
-public:
- RTFDisp(SWDispRTF *iedit) { edit = iedit; }
- RTFDisp() {}
- char Display(SWModule &imodule) {
- edit->Display(imodule);
- }
-};
-
-class DispExternal : public SWDisplay {
-public:
- DispExternal() {}
- char Display(SWModule &imodule) {
- SHELLEXECUTEINFO info;
- info.cbSize = sizeof(SHELLEXECUTEINFO);
- info.fMask = SEE_MASK_NOCLOSEPROCESS; //SEE_MASK_CLASSNAME;
- info.hwnd = GetFocus();
- info.lpVerb = "open";
- info.lpFile = (char *)imodule;
- info.lpParameters = NULL;
- info.lpDirectory = NULL;
- info.nShow = 0;
-// info.lpClass = ".html";
- ShellExecuteEx(&info);
-// ShellExecute(edit->Handle, "open", (char *)imodule, NULL, NULL, SW_SHOWNORMAL);
- }
-};
-
-//---------------------------------------------------------------------------
-// ValidCtrCheck is used to assure that the components created do not have
-// any pure virtual functions.
-//
-
-static inline void ValidCtrCheck(TCommentPanel *)
-{
- new TCommentPanel(NULL);
-}
-//---------------------------------------------------------------------------
-__fastcall TCommentPanel::TCommentPanel(TComponent* Owner, SWModule *mod, SWMgr *imgr)
- : TPanel(Owner)
-{
- module = mod;
- mgr = imgr;
- this->font = 0;
- stdstr(&(this->font), font);
- menu = new TPopupMenu(this);
- menu->OnPopup = PopupMenuPopup;
-
- TMenuItem * newitem;
- newitem = new TMenuItem(menu);
- newitem->Caption = "&Copy";
- newitem->Hint = "Copy text to clipboard";
- newitem->Default = false;
- newitem->OnClick = Copy1Click;
- menu->Items->Add(newitem);
- if (!strcmp(mod->Name(), "N27U4")) {
- newitem = new TMenuItem(menu);
- newitem->Caption = "Copy as &B-Greek Transliteration";
- newitem->Hint = "Copy text to clipboard as B-Greek Transliteration";
- newitem->Default = false;
- newitem->OnClick = CopyasBGreekTransliteration1Click;
- menu->Items->Add(newitem);
- }
- newitem = new TMenuItem(menu);
- newitem->Caption = "Dictionary Lookup";
- newitem->Hint = "Send text to dictionary key for lookup";
- newitem->Default = false;
- newitem->OnClick = DictionaryLookup1Click;
- menu->Items->Add(newitem);
-}
-
-
-void __fastcall TCommentPanel::CreateWnd() {
- TPanel::CreateWnd();
-
- TWinControl *newrtf;
-
- if (mgr->config->Sections[module->Name()]["ModDrv"] == "HREFCom") {
-// if (mainmgr->config->Sections[mod->Name()]["External"] == "1") {
- newrtf = new TPanel(this);
- ((TPanel *)newrtf)->Caption = "Syncronizing to External Viewer";
- display = new DispExternal();
- module->Disp(display);
-/*
- }
- else {
- // newrtf = new THTML(this->Handle);
- // newrtf = new SWDispRTF(this);
- newrtf = HTML1;
- newrtf->Visible = true;
- mod->Disp(*displays.insert(displays.begin(), new HREFDisp((THTML *)newrtf)));
- // mod->Disp(*displays.insert(displays.begin(), new RTFDisp((SWDispRTF *)newrtf)));
- }
-*/
- }
- else {
- newrtf = new SWDispRTF(this);
- display = new RTFDisp((SWDispRTF *)newrtf);
- module->Disp(display);
- ((SWDispRTF *)newrtf)->ScrollBars = ssVertical;
- ((SWDispRTF *)newrtf)->ReadOnly = true;
- if (mgr->config->Sections[module->Name()]["ModDrv"] == "RawFiles") {
-// ((SWDispRTF *)newrtf)->PopupMenu = PopupMenu3;
- ((SWDispRTF *)newrtf)->ExpandNewLine = false;
- }
-// else ((SWDispRTF *)newrtf)->PopupMenu = PopupMenu2;
- ((SWDispRTF *)newrtf)->OnMouseDown = RTFMouseDown;
- }
-
- newrtf->Parent = this;
- newrtf->Align = alClient;
-
-// mod->SetKey(DefaultVSKey);
-// return 0;
-
-
-}
-__fastcall TCommentPanel::~TCommentPanel() {
- delete display;
- if (font)
- delete font;
-}
-//---------------------------------------------------------------------------
-namespace Commentpanel
-{
- void __fastcall PACKAGE Register()
- {
- TComponentClass classes[1] = {__classid(TCommentPanel)};
- RegisterComponents("Samples", classes, 0);
- }
-}
-//---------------------------------------------------------------------------
-void __fastcall TCommentPanel::PopupMenuPopup(TObject *Sender)
-{
-}
-void TCommentPanel::BuildRTFHeader(char *buf, char *font, int max)
-{
- char buf1[1024], buf2[1024];
- SectionMap::iterator sit;
-
- sprintf(buf1, "{\\rtf1\\ansi");
- if (font)
- sprintf(buf2, "{\\fonttbl{\\f0\\fdecor\\fprq2 %s;}{\\f1\\froman\\fcharset0\\fprq2 Times New Roman;}{\\f2\\froman\\fcharset0\\fprq2 Times New Roman;}{\\f3\\froman\\fcharset0\\fprq2 Times New Roman;}{\\f4\\froman\\fcharset0\\fprq2 Times New Roman;}{\\f7\\froman\\fcharset2\\fprq2 Symbol;}{\\f8\\froman\\fcharset2\\fprq2 Symbol;}}", font);
- else sprintf(buf2, "{\\fonttbl{\\f0\\fdecor\\fprq2 Times New Roman;}{\\f1\\froman\\fcharset0\\fprq2 Times New Roman;}{\\f7\\froman\\fcharset2\\fprq2 Symbol;}{\\f8\\froman\\fcharset2\\fprq2 Symbol;}}");
- strcat(buf1, buf2);
-
-// if ((sit = optionsconf->Sections.find("Appearance")) != optionsconf->Sections.end()) {
-// sprintf(buf2, "{\\colortbl;\\red0\\green0\\blue255;\\red%d\\green%d\\blue%d;\\red0\\green0\\blue255;\\red0\\green200\\blue50;\\red0\\green0\\blue255;\\red255\\green0\\blue0;}",
-// atoi((*sit).second["CurrentVSColorRed"].c_str()),
-// atoi((*sit).second["CurrentVSColorGreen"].c_str()),
-// atoi((*sit).second["CurrentVSColorBlue"].c_str()));
-// }
-// else
- sprintf(buf2, "{\\colortbl;\\red0\\green0\\blue255;\\red0\\green200\\blue50;\\red0\\green0\\blue255;\\red0\\green200\\blue50;\\red0\\green0\\blue255;\\red255\\green0\\blue0;}");
- strcat(buf1, buf2);
- memset(buf, 0, max);
- strncpy(buf, buf1, max);
-}
-
-
-void __fastcall TCommentPanel::CopyasBGreekTransliteration1Click(TObject *Sender)
-{
- char *retbuf;
- int len;
- TClipboard *clip = new TClipboard();
-
- SWDispRTF *rtf = (SWDispRTF *)Screen->ActiveControl;
- len = rtf->SelText.Length() * 2;
- retbuf = new char [ len ];
- if (!Greek2bGreek(retbuf, rtf->SelText.c_str(), len)) {
- clip->SetTextBuf(retbuf);
- }
- delete clip;
-}
-
-void __fastcall TCommentPanel::Copy1Click(TObject *Sender)
-{
- int wordstart;
-
- SWDispRTF *rtf = (SWDispRTF *)Screen->ActiveControl;
- if (!rtf->SelLength) {
- for (wordstart = rtf->SelStart; (wordstart > -1)&&(isdigit(rtf->Text[wordstart])||isalpha(rtf->Text[wordstart])); wordstart--);
- rtf->SelStart = (wordstart > -1) ? wordstart: 0;
- for (wordstart = rtf->SelStart + 1; (wordstart < rtf->Text.Length())&&(isdigit(rtf->Text[wordstart])||isalpha(rtf->Text[wordstart])); wordstart++);
- rtf->SelLength = ((wordstart < rtf->Text.Length()) ? wordstart : rtf->Text.Length() - 1) - rtf->SelStart - 1;
- }
- rtf->CopyToClipboard();
-}
-void __fastcall TCommentPanel::DictionaryLookup1Click(TObject *Sender)
-{
- int wordstart;
-
- SWDispRTF *rtf = (SWDispRTF *)Screen->ActiveControl;
- if (!rtf->SelLength) {
- for (wordstart = rtf->SelStart; (wordstart > -1)&&(isdigit(rtf->Text[wordstart])||isalpha(rtf->Text[wordstart])); wordstart--);
- rtf->SelStart = (wordstart > -1) ? wordstart: 0;
- for (wordstart = rtf->SelStart + 1; (wordstart < rtf->Text.Length())&&(isdigit(rtf->Text[wordstart])||isalpha(rtf->Text[wordstart])); wordstart++);
- rtf->SelLength = ((wordstart < rtf->Text.Length()) ? wordstart : rtf->Text.Length() - 1) - rtf->SelStart - 1;
- }
-// DictKeyEdit->Text = Trim(rtf->SelText);
-}
-void __fastcall TCommentPanel::RTFMouseDown(TObject *Sender, TMouseButton Button,
- TShiftState Shift, int X, int Y)
-{
- ((TWinControl *)Sender)->SetFocus();
-}