void CBAboutDialog::BuildWindow ( const JCharacter* prevVersStr ) { // begin JXLayout JXWindow* window = new JXWindow(this, 430,180, ""); assert( window != NULL ); JXImageWidget* jccIcon = new JXImageWidget(window, JXWidget::kFixedLeft, JXWidget::kFixedTop, 25,20, 40,40); assert( jccIcon != NULL ); JXStaticText* textWidget = new JXStaticText(JGetString("textWidget::CBAboutDialog::JXLayout"), window, JXWidget::kHElastic, JXWidget::kVElastic, 90,20, 330,110); assert( textWidget != NULL ); JXTextButton* okButton = new JXTextButton(JGetString("okButton::CBAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 320,150, 60,20); assert( okButton != NULL ); okButton->SetShortcuts(JGetString("okButton::CBAboutDialog::shortcuts::JXLayout")); itsHelpButton = new JXTextButton(JGetString("itsHelpButton::CBAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 185,150, 60,20); assert( itsHelpButton != NULL ); itsHelpButton->SetShortcuts(JGetString("itsHelpButton::CBAboutDialog::shortcuts::JXLayout")); itsCreditsButton = new JXTextButton(JGetString("itsCreditsButton::CBAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 50,150, 60,20); assert( itsCreditsButton != NULL ); JXImageWidget* npsIcon = new JXImageWidget(window, JXWidget::kFixedLeft, JXWidget::kFixedTop, 10,75, 65,65); assert( npsIcon != NULL ); // end JXLayout window->SetTitle("About"); SetButtons(okButton, NULL); ListenTo(itsHelpButton); ListenTo(itsCreditsButton); // text JString text = CBGetVersionStr(); if (!JStringEmpty(prevVersStr)) { const JCharacter* map[] = { "vers", prevVersStr }; text += JGetString("UpgradeNotice::CBAboutDialog"); (JGetStringManager())->Replace(&text, map, sizeof(map)); itsHelpButton->SetLabel(JGetString("ChangeButtonLabel::CBAboutDialog")); itsIsUpgradeFlag = kJTrue; } textWidget->SetText(text); // Code Crusader icon itsAnimTask = new CBAboutDialogIconTask(jccIcon); assert( itsAnimTask != NULL ); itsAnimTask->Start(); // NPS icon JXImage* image = new JXImage(GetDisplay(), new_planet_software); assert( image != NULL ); npsIcon->SetImage(image, kJTrue); // adjust window to fit text const JSize bdh = textWidget->GetBoundsHeight(); const JSize aph = textWidget->GetApertureHeight(); if (bdh > aph) { window->AdjustSize(0, bdh - aph); // safe to calculate once bdh > aph } }
void GLAboutDialog::BuildWindow ( const JCharacter* prevVersStr ) { // begin JXLayout JXWindow* window = jnew JXWindow(this, 430,180, ""); assert( window != NULL ); JXImageWidget* gloveIcon = jnew JXImageWidget(window, JXWidget::kFixedLeft, JXWidget::kFixedTop, 20,15, 50,50); assert( gloveIcon != NULL ); JXStaticText* textWidget = jnew JXStaticText(JGetString("textWidget::GLAboutDialog::JXLayout"), window, JXWidget::kHElastic, JXWidget::kVElastic, 90,20, 330,110); assert( textWidget != NULL ); JXImageWidget* npsIcon = jnew JXImageWidget(window, JXWidget::kFixedLeft, JXWidget::kFixedTop, 10,75, 65,65); assert( npsIcon != NULL ); JXTextButton* okButton = jnew JXTextButton(JGetString("okButton::GLAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 320,150, 60,20); assert( okButton != NULL ); okButton->SetShortcuts(JGetString("okButton::GLAboutDialog::shortcuts::JXLayout")); itsHelpButton = jnew JXTextButton(JGetString("itsHelpButton::GLAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 185,150, 60,20); assert( itsHelpButton != NULL ); itsCreditsButton = jnew JXTextButton(JGetString("itsCreditsButton::GLAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 50,150, 60,20); assert( itsCreditsButton != NULL ); // end JXLayout window->SetTitle("About"); SetButtons(okButton, NULL); ListenTo(itsHelpButton); ListenTo(itsCreditsButton); const JCharacter* map1[] = { "version", JGetString("VERSION"), "copyright", JGetString("COPYRIGHT") }; JString text = JGetString(kDescriptionID, map1, sizeof(map1)); if (!JStringEmpty(prevVersStr)) { const JCharacter* map[] = { "vers", prevVersStr }; text += JGetString(kUpgradeNoticeID); (JGetStringManager())->Replace(&text, map, sizeof(map)); itsHelpButton->SetLabel(JGetString(kChangeButtonLabelID)); itsIsUpgradeFlag = kJTrue; } textWidget->SetText(text); JXImage* image = jnew JXImage(GetDisplay(), JXPM(glove_icon)); assert(image != NULL); gloveIcon->SetImage(image, kJTrue); // NPS icon image = jnew JXImage(GetDisplay(), nps); assert( image != NULL ); npsIcon->SetImage(image, kJTrue); const JSize bdh = textWidget->GetBoundsHeight(); const JSize aph = textWidget->GetApertureHeight(); if (bdh > aph) { window->AdjustSize(0, bdh - aph); // safe to calculate once bdh > aph } }
void MDAboutDialog::BuildWindow ( const JCharacter* prevVersStr ) { // begin JXLayout JXWindow* window = new JXWindow(this, 370,120, ""); assert( window != NULL ); JXStaticText* textWidget = new JXStaticText(JGetString("textWidget::MDAboutDialog::JXLayout"), window, JXWidget::kHElastic, JXWidget::kVElastic, 70,20, 280,50); assert( textWidget != NULL ); JXTextButton* okButton = new JXTextButton(JGetString("okButton::MDAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 260,90, 60,20); assert( okButton != NULL ); okButton->SetShortcuts(JGetString("okButton::MDAboutDialog::shortcuts::JXLayout")); itsHelpButton = new JXTextButton(JGetString("itsHelpButton::MDAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 155,90, 60,20); assert( itsHelpButton != NULL ); itsHelpButton->SetShortcuts(JGetString("itsHelpButton::MDAboutDialog::shortcuts::JXLayout")); JXImageWidget* imageWidget = new JXImageWidget(window, JXWidget::kFixedLeft, JXWidget::kFixedTop, 20,20, 40,40); assert( imageWidget != NULL ); itsCreditsButton = new JXTextButton(JGetString("itsCreditsButton::MDAboutDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 50,90, 60,20); assert( itsCreditsButton != NULL ); // end JXLayout window->SetTitle(JGetString("WindowTitle::MDAboutDialog")); SetButtons(okButton, NULL); ListenTo(itsHelpButton); ListenTo(itsCreditsButton); JXImage* image = new JXImage(GetDisplay(), md_about_icon); assert( image != NULL ); imageWidget->SetImage(image, kJTrue); JString text = MDGetVersionStr(); if (!JStringEmpty(prevVersStr)) { const JCharacter* map[] = { "vers", prevVersStr }; text += JGetString(kUpgradeNoticeID); (JGetStringManager())->Replace(&text, map, sizeof(map)); itsHelpButton->SetLabel(JGetString(kChangeButtonLabelID)); itsIsUpgradeFlag = kJTrue; } textWidget->SetText(text); const JSize bdh = textWidget->GetBoundsHeight(); const JSize aph = textWidget->GetApertureHeight(); if (bdh > aph) { window->AdjustSize(0, bdh - aph); // safe to calculate once bdh > aph } }
void CBEditSearchPathsDialog::BuildWindow ( const CBDirList& dirList, CBRelPathCSF* csf ) { // begin JXLayout JXWindow* window = jnew JXWindow(this, 370,370, ""); assert( window != NULL ); JXScrollbarSet* scrollbarSet = jnew JXScrollbarSet(window, JXWidget::kHElastic, JXWidget::kFixedBottom, 20,100, 240,220); assert( scrollbarSet != NULL ); JXTextButton* cancelButton = jnew JXTextButton(JGetString("cancelButton::CBEditSearchPathsDialog::JXLayout"), window, JXWidget::kFixedLeft, JXWidget::kFixedBottom, 70,340, 70,20); assert( cancelButton != NULL ); JXTextButton* okButton = jnew JXTextButton(JGetString("okButton::CBEditSearchPathsDialog::JXLayout"), window, JXWidget::kFixedRight, JXWidget::kFixedBottom, 230,340, 70,20); assert( okButton != NULL ); JXStaticText* instrText = jnew JXStaticText(JGetString("instrText::CBEditSearchPathsDialog::JXLayout"), window, JXWidget::kHElastic, JXWidget::kVElastic, 20,20, 330,70); assert( instrText != NULL ); JXTextButton* addPathButton = jnew JXTextButton(JGetString("addPathButton::CBEditSearchPathsDialog::JXLayout"), window, JXWidget::kFixedRight, JXWidget::kFixedBottom, 280,110, 70,20); assert( addPathButton != NULL ); addPathButton->SetShortcuts(JGetString("addPathButton::CBEditSearchPathsDialog::shortcuts::JXLayout")); JXTextButton* removePathButton = jnew JXTextButton(JGetString("removePathButton::CBEditSearchPathsDialog::JXLayout"), window, JXWidget::kFixedRight, JXWidget::kFixedBottom, 280,140, 70,20); assert( removePathButton != NULL ); removePathButton->SetShortcuts(JGetString("removePathButton::CBEditSearchPathsDialog::shortcuts::JXLayout")); JXTextButton* choosePathButton = jnew JXTextButton(JGetString("choosePathButton::CBEditSearchPathsDialog::JXLayout"), window, JXWidget::kFixedRight, JXWidget::kFixedBottom, 280,190, 70,20); assert( choosePathButton != NULL ); choosePathButton->SetShortcuts(JGetString("choosePathButton::CBEditSearchPathsDialog::shortcuts::JXLayout")); // end JXLayout instrText->SetText(JGetString(kInstructionsID)); window->AdjustSize(0, instrText->GetBoundsHeight() - instrText->GetFrameHeight()); instrText->SetSizing(JXWidget::kHElastic, JXWidget::kFixedTop); scrollbarSet->SetSizing(JXWidget::kHElastic, JXWidget::kVElastic); addPathButton->SetSizing(JXWidget::kFixedRight, JXWidget::kFixedTop); removePathButton->SetSizing(JXWidget::kFixedRight, JXWidget::kFixedTop); choosePathButton->SetSizing(JXWidget::kFixedRight, JXWidget::kFixedTop); window->SetTitle("Search Paths for Symbol Database"); window->PlaceAsDialogWindow(); window->LockCurrentMinSize(); UseModalPlacement(kJFalse); SetButtons(okButton, cancelButton); itsTable = jnew CBPathTable(dirList, addPathButton, removePathButton, choosePathButton, csf, scrollbarSet, scrollbarSet->GetScrollEnclosure(), JXWidget::kHElastic, JXWidget::kVElastic, 0,0, 10,10); assert( itsTable != NULL ); }