aboutsummaryrefslogtreecommitdiffstats
path: root/apps/windoze
diff options
context:
space:
mode:
Diffstat (limited to 'apps/windoze')
-rw-r--r--apps/windoze/CBuilder5/BibleCS/AboutBoxfrm.dfm2
-rw-r--r--apps/windoze/CBuilder5/BibleCS/RxRichEditX.cpp77
-rw-r--r--apps/windoze/CBuilder5/BibleCS/editentryfrm.cpp2
-rw-r--r--apps/windoze/CBuilder5/BibleCS/mainfrm.cpp51
-rw-r--r--apps/windoze/CBuilder5/BibleCS/rtfhintfrm.cpp4
-rw-r--r--apps/windoze/CBuilder5/BibleCS/searchfrm.cpp16
-rw-r--r--apps/windoze/CBuilder5/BibleCS/searchfrm.dfm50
-rw-r--r--apps/windoze/CBuilder5/BibleCS/searchfrm.h5
-rw-r--r--apps/windoze/CBuilder5/BibleCS/sword.bpr6
-rw-r--r--apps/windoze/CBuilder5/BibleCS/sword.resbin1976 -> 1976 bytes
-rw-r--r--apps/windoze/swdisprtf.cpp8
11 files changed, 139 insertions, 82 deletions
diff --git a/apps/windoze/CBuilder5/BibleCS/AboutBoxfrm.dfm b/apps/windoze/CBuilder5/BibleCS/AboutBoxfrm.dfm
index 186f784..d79b09f 100644
--- a/apps/windoze/CBuilder5/BibleCS/AboutBoxfrm.dfm
+++ b/apps/windoze/CBuilder5/BibleCS/AboutBoxfrm.dfm
@@ -102,7 +102,7 @@ object AboutBox: TAboutBox
Width = 213
Height = 21
AutoSize = False
- Caption = 'v1.5.4rc4'
+ Caption = 'v1.5.4rc5'
IsControl = True
end
object Copyright: TLabel
diff --git a/apps/windoze/CBuilder5/BibleCS/RxRichEditX.cpp b/apps/windoze/CBuilder5/BibleCS/RxRichEditX.cpp
index 1fa4976..f42ffb1 100644
--- a/apps/windoze/CBuilder5/BibleCS/RxRichEditX.cpp
+++ b/apps/windoze/CBuilder5/BibleCS/RxRichEditX.cpp
@@ -445,26 +445,26 @@ void TRxRichEditX::fillWithVerses(SWModule *module, ListKey *verses, bool headin
verses->Persist(1);
(*verses) = TOP;
- SWKey *saveKey = (*module);
+ SWKey *saveKey = (SWKey *)(*module);
+ SWKey origKeyValue = *saveKey;
if (!saveKey->Persist())
saveKey = 0;
module->setKey(verses);
SWKey *lastKey = 0;
bool first = true;
+ SWKey *testKey = module->CreateKey();
while (verses->Count() && !module->Error() && newtext.Length() < 40000 ) {
- SWKey *testKey = verses->GetElement();
- VerseKey *element = SWDYNAMIC_CAST(VerseKey, testKey);
if (heading) {
- if (element) {
- if (lastKey != element) {
+ if (SWDYNAMIC_CAST(VerseKey, testKey)) {
+ if (lastKey != verses->GetElement()) {
if (!first)
- newtext += "\\par\\par ";
+ newtext += "{\\par\\par}";
newtext += RTFHeadingPre;
- newtext += element->getRangeText();
+ newtext += verses->GetElement()->getRangeText();
newtext += ":";
newtext += RTFHeadingPost;
- newtext += "\\par ";
+ newtext += "{\\par}";
}
}
else {
@@ -477,12 +477,16 @@ void TRxRichEditX::fillWithVerses(SWModule *module, ListKey *verses, bool headin
int i;
char *start1 = buf;
char *start2 = buf2;
- for (i = 0; i < strlen(buf); i++) {
- if (*start1 == '0')
+ int len = strlen(buf);
+ for (i = 0; i < len; i++) {
+ if (*start1 == '0') {
start1++;
- if (*start2 == '0')
+ }
+ if (*start2 == '0') {
start2++;
- if ((*start1 != '0') && (*start2 != '0')) if ((buf[i] == buf2[i]) || (buf[i] != '0'))
+ }
+ if ((start1[0] != '0') && (start2[0] != '0'))
+// if ((buf[i] == buf2[i]) || (buf[i] != '0'))
break;
}
for (i = 0; i < strlen(start1) && (i < strlen(start2)); i++) {
@@ -497,24 +501,24 @@ void TRxRichEditX::fillWithVerses(SWModule *module, ListKey *verses, bool headin
}
delete [] buf2;
if (!first)
- newtext += "\\par\\par ";
+ newtext += "{\\par\\par}";
newtext += RTFHeadingPre;
- SWKey *key = *module;
+ strcpy(buf, module->KeyText());
// VerseKey locales are not yet UTF8, so don't try to convert them.
- if (!SWDYNAMIC_CAST(VerseKey, key))
+ if (!SWDYNAMIC_CAST(VerseKey, testKey))
filter.ProcessText(buf, 253, *module, module);
newtext = newtext + RTFHeadingPre + buf + RTFHeadingPost + ":\\par ";
newtext += RTFHeadingPost;
- newtext += "\\par ";
+ newtext += "{\\par}";
}
// newtext += RTFHeadingPost;
}
else { // hack to make searchlist entries fit in box better
newtext += "";
}
- lastKey = element;
+ lastKey = verses->GetElement();
first = false;
newtext = newtext + "{";
@@ -529,7 +533,7 @@ void TRxRichEditX::fillWithVerses(SWModule *module, ListKey *verses, bool headin
}
if (*loop == '\n') {
if (!stripNewlines)
- tmptext += "\\par ";
+ tmptext += "{\\par}";
}
else tmptext += *loop;
@@ -540,7 +544,7 @@ void TRxRichEditX::fillWithVerses(SWModule *module, ListKey *verses, bool headin
newtext = newtext + RTFVersePre + tmptext + RTFVersePost;
if (verseNum)
newtext = newtext + RTFVerseMarkPre + IntToStr(VerseKey(module->KeyText()).Verse()) + RTFVerseMarkPost;
- newtext = newtext + "\\par ";
+ newtext = newtext + "{\\par}";
}
else {
if (verseNum)
@@ -551,10 +555,10 @@ void TRxRichEditX::fillWithVerses(SWModule *module, ListKey *verses, bool headin
newtext = newtext + "}";
(*module)++;
}
-
+ delete testKey;
if (saveKey)
module->setKey(saveKey);
- else module->setKey(SWKey("")); //remove our persist key
+ else module->setKey(origKeyValue); //remove our persist key
newtext += RTFTrailer;
@@ -562,6 +566,37 @@ void TRxRichEditX::fillWithVerses(SWModule *module, ListKey *verses, bool headin
RTFStream->WriteBuffer(newtext.c_str(), newtext.Length());
RTFStream->Position = 0;
Lines->LoadFromStream(RTFStream);
+
+ // make links
+ while (true) {
+ int start, len, foundAt, endAt;
+
+ start = (SelLength) ? SelStart + SelLength : 0;
+ len = Text.Length() - start;
+ foundAt = this->SearchText("<a href=\"\">", start, len, TRichSearchTypes());
+ if (foundAt == -1)
+ break;
+
+ SelStart = foundAt;
+ SelLength = 11;
+ this->SelText = "";
+ endAt = this->SearchText("</a>", foundAt, len, TRichSearchTypes());
+ if (foundAt == -1)
+ break;
+ SelStart = endAt;
+ SelLength = 4;
+ this->SelText = "";
+ SelStart = foundAt;
+ SelLength = endAt - foundAt;
+ this->SelAttributes->Link = true;
+ }
+ if (Visible) {
+ this->SetFocus();
+ SelStart = 0;
+ SelLength = 0;
+ SendMessage(Handle, EM_SCROLLCARET, 0, 0);
+ }
+
Repaint();
delete RTFStream;
diff --git a/apps/windoze/CBuilder5/BibleCS/editentryfrm.cpp b/apps/windoze/CBuilder5/BibleCS/editentryfrm.cpp
index 01935e0..4ae5908 100644
--- a/apps/windoze/CBuilder5/BibleCS/editentryfrm.cpp
+++ b/apps/windoze/CBuilder5/BibleCS/editentryfrm.cpp
@@ -271,7 +271,7 @@ void __fastcall TEditEntryForm::FormActivate(TObject *Sender)
(const char *)*Module; // force key to snap to entry before pulling out the text of the key
tmptext = Module->getRawEntry();
- newtext = newtext + RTFDisplay->RTFVersePre + " " + tmptext + RTFDisplay->RTFVersePost;
+ newtext = newtext + RTFDisplay->RTFVersePre + tmptext + RTFDisplay->RTFVersePost;
newtext = newtext + RTFDisplay->RTFTrailer;
RTFStream->Clear();
RTFStream->WriteBuffer(newtext.c_str(), newtext.Length());
diff --git a/apps/windoze/CBuilder5/BibleCS/mainfrm.cpp b/apps/windoze/CBuilder5/BibleCS/mainfrm.cpp
index 5df1c50..3d7aec6 100644
--- a/apps/windoze/CBuilder5/BibleCS/mainfrm.cpp
+++ b/apps/windoze/CBuilder5/BibleCS/mainfrm.cpp
@@ -358,14 +358,12 @@ char TForm1::CreateBookPane(SWModule *mod) {
((SWDispRTF *)newrtf)->ScrollBars = ssVertical;
((SWDispRTF *)newrtf)->ReadOnly = true;
- if ((*mainmgr->config->Sections[mod->Name()].find("ModDrv")).second == "RawFiles") {
- ((SWDispRTF *)newrtf)->PopupMenu = PopupMenu3;
- ((SWDispRTF *)newrtf)->ExpandNewLine = false;
- }
- else ((SWDispRTF *)newrtf)->PopupMenu = PopupMenu2;
+ ((SWDispRTF *)newrtf)->PopupMenu = PopupMenu2;
((SWDispRTF *)newrtf)->OnMouseDown = RTFMouseDown;
+ newrtf->Name = String("BookRTF")+mod->Name();
newrtf->Parent = newtab;
newrtf->Align = alClient;
+ ((SWDispRTF *)newrtf)->OnURLClick = RTFURLClick;
((SWDispRTF *)newrtf)->module = mod;
((SWDispRTF *)newrtf)->recalcAppearance();
@@ -1068,10 +1066,16 @@ void __fastcall TForm1::FormShow(TObject *Sender)
}
if ((eit = (*sit).second.find("SearchLeft")) != (*sit).second.end())
searchForm->Left = atoi((*eit).second.c_str());
- if ((eit = (*sit).second.find("SearchHeight")) != (*sit).second.end())
- searchForm->Height = atoi((*eit).second.c_str());
- if ((eit = (*sit).second.find("SearchWidth")) != (*sit).second.end())
- searchForm->Width = atoi((*eit).second.c_str());
+ if ((eit = (*sit).second.find("SearchHeight")) != (*sit).second.end()) {
+ int val = atoi((*eit).second.c_str());
+ val = max(val, searchForm->Constraints->MinHeight);
+ searchForm->Height = val;
+ }
+ if ((eit = (*sit).second.find("SearchWidth")) != (*sit).second.end()) {
+ int val = atoi((*eit).second.c_str());
+ val = max(val, searchForm->Constraints->MinWidth);
+ searchForm->Width = val;
+ }
searchForm->WindowState = (sit->second["SearchMaximized"] == "true") ? wsMaximized : wsNormal;
}
@@ -1217,7 +1221,8 @@ void __fastcall TForm1::LookupPokeData(TObject *Sender)
token = strtok(buf, " ");
if ((it = mainmgr->Modules.find(token)) != mainmgr->Modules.end()) {
token = strtok(NULL, "");
- (*it).second->setKey(token);
+ SWKey *key = (SWKey *)*(it->second);
+ (*key) = token;
Lookup->Text = (const char *)(*(*it).second);
}
else Lookup->Text = "";
@@ -1278,13 +1283,10 @@ void TForm1::RestoreState(ModState *state)
it = mainmgr->Modules.find(state->pc->ActivePage->Caption.c_str());
if (it != mainmgr->Modules.end()) {
SWModule *module = it->second;
- if (!strcmp(module->Type(0), "Generic Books")) {
- module->setKey(state->key);
- }
- else {
- *DefaultVSKey = state->key;
- TextKeyChanged();
- }
+ SWKey *key = (SWKey *)*module;
+ (*key) = state->key;
+ *DefaultVSKey = state->key;
+ TextKeyChanged();
}
}
}
@@ -1595,7 +1597,12 @@ void __fastcall TForm1::PopupMenuPopup(TObject *Sender) {
rtf->SelLength = 0;
if (!verseList.Length()) {
- for (versestart = selstart; ((versestart)&&(entrytext[versestart] != '#')); versestart--);
+ versestart = selstart;
+ for (int i = 0; ((i < versestart) && (i < entrylen)); i++) {
+ if (entrytext[i] == '\r')
+ versestart++;
+ }
+ for (; ((versestart)&&(entrytext[versestart] != '#')); versestart--);
if (versestart) {
for (verseend = versestart; ((verseend < entrylen) && (entrytext[verseend] != '|')); verseend++);
if ((verseend < entrylen) && (verseend > selstart)) {
@@ -2089,6 +2096,7 @@ void __fastcall TForm1::ApplicationEvents1ShowHint(AnsiString &HintStr,
if ((strncmp(HintInfo.HintControl->Name.c_str(), "TextRTF", 7)) &&
(strncmp(HintInfo.HintControl->Name.c_str(), "CommentRTF", 10)) &&
+ (strncmp(HintInfo.HintControl->Name.c_str(), "BookRTF", 7)) &&
(strncmp(HintInfo.HintControl->Name.c_str(), "LexDictRTF", 10))) {
return;
}
@@ -2130,7 +2138,12 @@ void __fastcall TForm1::ApplicationEvents1ShowHint(AnsiString &HintStr,
int selstart = rtf->SelStart;
int versestart, verseend;
strcpy(entrytext, rtf->Text.c_str());
- for (versestart = selstart; ((versestart)&&(entrytext[versestart] != '#')); versestart--);
+ versestart = selstart;
+ for (int i = 0; ((i < versestart) && (i < entrylen)); i++) {
+ if (entrytext[i] == '\r')
+ versestart++;
+ }
+ for (; ((versestart)&&(entrytext[versestart] != '#')); versestart--);
if (versestart) {
for (verseend = versestart; ((verseend < entrylen) && (entrytext[verseend] != '|')); verseend++);
if ((verseend < entrylen) && (verseend > selstart)) {
diff --git a/apps/windoze/CBuilder5/BibleCS/rtfhintfrm.cpp b/apps/windoze/CBuilder5/BibleCS/rtfhintfrm.cpp
index 0fbe311..7aa97c1 100644
--- a/apps/windoze/CBuilder5/BibleCS/rtfhintfrm.cpp
+++ b/apps/windoze/CBuilder5/BibleCS/rtfhintfrm.cpp
@@ -27,7 +27,7 @@ __fastcall TRTFHintForm::TRTFHintForm(TComponent* Owner)
rtfDrawer->Text = "yoyo";
rtfDrawer->Name = "rtfDrawer";
rtfDrawer->Enabled = true;
- rtfDrawer->Visible = true;
+ rtfDrawer->Visible = false;
rtfDrawer->DoubleBuffered = false;
searchListDrawer = new TRxRichEditX(Panel1);
searchListDrawer->Parent = Panel1;
@@ -37,7 +37,7 @@ __fastcall TRTFHintForm::TRTFHintForm(TComponent* Owner)
searchListDrawer->Text = "yoyo";
searchListDrawer->Name = "searchListDrawer";
searchListDrawer->Enabled = true;
- searchListDrawer->Visible = true;
+ searchListDrawer->Visible = false;
searchListDrawer->DoubleBuffered = false;
}
//---------------------------------------------------------------------------
diff --git a/apps/windoze/CBuilder5/BibleCS/searchfrm.cpp b/apps/windoze/CBuilder5/BibleCS/searchfrm.cpp
index c9f70a2..43c0694 100644
--- a/apps/windoze/CBuilder5/BibleCS/searchfrm.cpp
+++ b/apps/windoze/CBuilder5/BibleCS/searchfrm.cpp
@@ -19,8 +19,8 @@ TsearchForm *searchForm;
//---------------------------------------------------------------------------
__fastcall TsearchForm::TsearchForm(TComponent* Owner)
: TForm(Owner) {
+ initializing = true;
pvrtf = new TRxRichEditX(this);
-
pvrtf->Parent = plPreview;
pvrtf->Align = alClient;
pvrtf->ScrollBars = ssVertical;
@@ -114,11 +114,12 @@ void __fastcall TsearchForm::ListBox1DblClick(TObject *Sender)
TListItem *focused = resultsLV->ItemFocused;
if (focused) {
int row = focused->Index;
+ SWKey *key = (SWKey *)*target;
+ (*key) = resultsLV->Items->Item[row]->Caption.c_str();
if (targetpc == Form1->LexDictPageControl) {
Form1->DictKeyEdit->Text = resultsLV->Items->Item[row]->Caption.c_str();
}
else {
- *(Form1->DefaultVSKey) = resultsLV->Items->Item[row]->Caption.c_str();
Form1->TextKeyChanged();
}
}
@@ -180,8 +181,11 @@ void __fastcall TsearchForm::TSearchThread::FillListBox(void)
TListItem *pItem;
SWKey *savekey = (SWKey *)*(parent->target);
- if (!savekey->Persist())
+ SWKey origKeyVal = *savekey;
+ if (!savekey->Persist()) {
savekey = 0;
+ }
+
for (results = TOP; !results.Error(); results++) {
parent->target->setKey(results);
pItem = parent->resultsLV->Items->Add();
@@ -192,6 +196,8 @@ void __fastcall TsearchForm::TSearchThread::FillListBox(void)
}
if (savekey)
parent->target->setKey(*savekey);
+ else parent->target->setKey(origKeyVal); //remove our persist key
+
// ListBox1->Items->Pack(); // so Count is set correctly (per helpfile)
parent->Caption = ((AnsiString)parent->resultsLV->Items->Count + (AnsiString)" " + (AnsiString)((parent->resultsLV->Items->Count == 1) ? _tr("match") : _tr("matches"))) + (AnsiString)" from [ " + (AnsiString)parent->target->Description() + (AnsiString)" (" + (AnsiString)parent->target->Name() + (AnsiString)") ]";
parent->searchBtn->Caption = _tr("Search");
@@ -242,8 +248,7 @@ void __fastcall TsearchForm::FormShow(TObject *Sender)
{
populateRanges();
fillList();
- Button1Click(0);
- Button1Click(0);
+ Button1Click(0); //initially hide the modSelect sidebar
}
//---------------------------------------------------------------------------
@@ -337,6 +342,7 @@ void __fastcall TsearchForm::FormActivate(TObject *Sender)
SearchText->SetFocus();
}
}
+ initializing = false;
}
void TsearchForm::setTarget(SWModule *itarget) {
diff --git a/apps/windoze/CBuilder5/BibleCS/searchfrm.dfm b/apps/windoze/CBuilder5/BibleCS/searchfrm.dfm
index e308ea9..4c8dfbc 100644
--- a/apps/windoze/CBuilder5/BibleCS/searchfrm.dfm
+++ b/apps/windoze/CBuilder5/BibleCS/searchfrm.dfm
@@ -1,12 +1,12 @@
object searchForm: TsearchForm
- Left = 650
- Top = 119
- Width = 495
+ Left = 466
+ Top = 338
+ Width = 490
Height = 475
Caption = 'Search...'
Color = clBtnFace
Constraints.MinHeight = 360
- Constraints.MinWidth = 360
+ Constraints.MinWidth = 490
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
@@ -50,7 +50,6 @@ object searchForm: TsearchForm
Width = 5
Height = 432
Cursor = crHSplit
- Visible = False
end
object pnlChooseMod: TPanel
Left = 0
@@ -59,7 +58,6 @@ object searchForm: TsearchForm
Height = 432
Align = alLeft
TabOrder = 0
- Visible = False
object Panel9: TPanel
Left = 1
Top = 1
@@ -90,7 +88,7 @@ object searchForm: TsearchForm
object Panel7: TPanel
Left = 106
Top = 0
- Width = 381
+ Width = 376
Height = 432
Align = alClient
BevelOuter = bvNone
@@ -99,14 +97,14 @@ object searchForm: TsearchForm
object pnlResult: TPanel
Left = 0
Top = 205
- Width = 381
+ Width = 376
Height = 227
Align = alClient
TabOrder = 0
object Splitter1: TSplitter
Left = 1
Top = 135
- Width = 379
+ Width = 374
Height = 5
Cursor = crVSplit
Align = alBottom
@@ -115,7 +113,7 @@ object searchForm: TsearchForm
object plPreview: TPanel
Left = 1
Top = 140
- Width = 379
+ Width = 374
Height = 86
Align = alBottom
TabOrder = 0
@@ -123,7 +121,7 @@ object searchForm: TsearchForm
object resultsLV: TListView
Left = 1
Top = 29
- Width = 379
+ Width = 374
Height = 106
Hint = 'false'
Align = alClient
@@ -160,7 +158,7 @@ object searchForm: TsearchForm
object Panel13: TPanel
Left = 1
Top = 1
- Width = 379
+ Width = 374
Height = 28
Align = alTop
BevelOuter = bvNone
@@ -179,7 +177,7 @@ object searchForm: TsearchForm
object Panel1: TPanel
Left = 0
Top = 0
- Width = 381
+ Width = 376
Height = 133
Align = alTop
BevelOuter = bvNone
@@ -187,7 +185,7 @@ object searchForm: TsearchForm
object Panel3: TPanel
Left = 0
Top = 0
- Width = 381
+ Width = 376
Height = 33
Align = alTop
BevelOuter = bvNone
@@ -196,7 +194,7 @@ object searchForm: TsearchForm
object SearchTextOld: TComboBox
Left = 0
Top = 2
- Width = 379
+ Width = 374
Height = 21
Anchors = [akLeft, akTop, akRight]
ItemHeight = 13
@@ -206,7 +204,7 @@ object searchForm: TsearchForm
object Panel8: TPanel
Left = 0
Top = 33
- Width = 381
+ Width = 376
Height = 29
Align = alTop
BevelOuter = bvNone
@@ -214,7 +212,7 @@ object searchForm: TsearchForm
object moduleName: TLabel
Left = 28
Top = 0
- Width = 353
+ Width = 348
Height = 29
Align = alClient
AutoSize = False
@@ -243,7 +241,7 @@ object searchForm: TsearchForm
object Panel10: TPanel
Left = 0
Top = 62
- Width = 381
+ Width = 376
Height = 71
Align = alClient
BevelOuter = bvNone
@@ -281,7 +279,7 @@ object searchForm: TsearchForm
end
end
object Panel4: TPanel
- Left = 300
+ Left = 295
Top = 0
Width = 81
Height = 71
@@ -313,7 +311,7 @@ object searchForm: TsearchForm
object pnlScope: TPanel
Left = 0
Top = 133
- Width = 381
+ Width = 376
Height = 72
Align = alTop
BevelOuter = bvNone
@@ -321,14 +319,14 @@ object searchForm: TsearchForm
object Panel5: TPanel
Left = 0
Top = 43
- Width = 381
+ Width = 376
Height = 29
Align = alBottom
TabOrder = 0
object Panel11: TPanel
Left = 165
Top = 1
- Width = 215
+ Width = 210
Height = 27
Align = alClient
BevelOuter = bvNone
@@ -337,7 +335,7 @@ object searchForm: TsearchForm
object ComboBox1: TComboBox
Left = 4
Top = 4
- Width = 207
+ Width = 202
Height = 21
Anchors = [akLeft, akTop, akRight]
Enabled = False
@@ -368,7 +366,7 @@ object searchForm: TsearchForm
object Panel2: TPanel
Left = 0
Top = 0
- Width = 381
+ Width = 376
Height = 43
Align = alClient
BevelOuter = bvNone
@@ -376,7 +374,7 @@ object searchForm: TsearchForm
object scopeGroup: TRadioGroup
Left = 0
Top = 0
- Width = 381
+ Width = 376
Height = 43
Align = alClient
Caption = 'Scope'
@@ -395,7 +393,7 @@ object searchForm: TsearchForm
object progressBar: TProgressBar
Left = 0
Top = 432
- Width = 487
+ Width = 482
Height = 16
Align = alBottom
Min = 0
diff --git a/apps/windoze/CBuilder5/BibleCS/searchfrm.h b/apps/windoze/CBuilder5/BibleCS/searchfrm.h
index 51f71d0..ff811a4 100644
--- a/apps/windoze/CBuilder5/BibleCS/searchfrm.h
+++ b/apps/windoze/CBuilder5/BibleCS/searchfrm.h
@@ -64,9 +64,9 @@ __published: // IDE-managed Components
void __fastcall resultsLVChange(TObject *Sender, TListItem *Item,
TItemChange Change);
void __fastcall resultsLVCustomDrawItem(TCustomListView *Sender,
- TListItem *Item, TCustomDrawState State, bool &DefaultDraw);
+ TListItem *Item, TCustomDrawState State, bool &DefaultDraw);
void __fastcall resultsLVInfoTip(TObject *Sender, TListItem *Item,
- AnsiString &InfoTip);
+ AnsiString &InfoTip);
void __fastcall Button1Click(TObject *Sender);
void __fastcall FormActivate(TObject *Sender);
void __fastcall modTreeViewChange(TObject *Sender, TTreeNode *Node);
@@ -89,6 +89,7 @@ private: // User declarations
void __fastcall updateStatus(void);
void __fastcall updateProgressBar(void);
} *searchThread;
+ bool initializing;
TRxRichEditX *pvrtf;
ListKey results;
void populateRanges();
diff --git a/apps/windoze/CBuilder5/BibleCS/sword.bpr b/apps/windoze/CBuilder5/BibleCS/sword.bpr
index 1de665e..3fc3a45 100644
--- a/apps/windoze/CBuilder5/BibleCS/sword.bpr
+++ b/apps/windoze/CBuilder5/BibleCS/sword.bpr
@@ -73,7 +73,7 @@ AutoIncBuild=1
MajorVer=1
MinorVer=5
Release=3
-Build=118
+Build=119
Debug=0
PreRelease=0
Special=0
@@ -85,13 +85,13 @@ CodePage=1252
[Version Info Keys]
CompanyName=CrossWire Software &amp; Bible Society
FileDescription=Windows 32bit User Interface to The SWORD Project
-FileVersion=1.5.3.118
+FileVersion=1.5.3.119
InternalName=biblecs
LegalCopyright=(c) 2002 CrossWire Bible Society under the terms of the GNU General Public License
LegalTrademarks=
OriginalFilename=
ProductName=The SWORD Project
-ProductVersion=1.5.4rc4
+ProductVersion=1.5.4rc5
Comments=Seek Him and you will find Him
[HistoryLists\hlIncludePath]
diff --git a/apps/windoze/CBuilder5/BibleCS/sword.res b/apps/windoze/CBuilder5/BibleCS/sword.res
index 9366299..c2d0916 100644
--- a/apps/windoze/CBuilder5/BibleCS/sword.res
+++ b/apps/windoze/CBuilder5/BibleCS/sword.res
Binary files differ
diff --git a/apps/windoze/swdisprtf.cpp b/apps/windoze/swdisprtf.cpp
index 3a725af..f999301 100644
--- a/apps/windoze/swdisprtf.cpp
+++ b/apps/windoze/swdisprtf.cpp
@@ -68,12 +68,12 @@ char SWDispRTF::Display(SWModule &Module) {
if (!SWDYNAMIC_CAST(VerseKey, key))
filter.ProcessText(buf, 253, Module, &Module);
- newtext = newtext + RTFHeadingPre + buf + RTFHeadingPost + ":\\par ";
+ newtext = newtext + RTFHeadingPre + buf + RTFHeadingPost + ":{\\par}";
tmptext = "";
tmptext = (const char *)Module;
- newtext = newtext + RTFVersePre + " " + tmptext + RTFVersePost;
+ newtext = newtext + RTFVersePre + tmptext + RTFVersePost;
newtext = newtext + RTFTrailer;
RTFStream->Clear();
RTFStream->WriteBuffer(newtext.c_str(), newtext.Length());
@@ -103,7 +103,11 @@ char SWDispRTF::Display(SWModule &Module) {
SelLength = endAt - foundAt;
this->SelAttributes->Link = true;
}
+ //{ Position control text at current verse }
+ this->SetFocus();
+ SelStart = 0;
SelLength = 0;
+ SendMessage(Handle, EM_SCROLLCARET, 0, 0);
return 0;
}