From: <sv...@va...> - 2010-03-01 21:00:05
|
Author: cerion Date: 2010-03-01 20:59:43 +0000 (Mon, 01 Mar 2010) New Revision: 478 Log: - on startup, if no binary specified, open options page - if try to 'run' with no binary => info_box & open options page - reorder valkyrie option page Modified: branches/valkyrie_qt4port/main.cpp branches/valkyrie_qt4port/mainwindow.cpp branches/valkyrie_qt4port/mainwindow.h branches/valkyrie_qt4port/objects/valkyrie_object.cpp branches/valkyrie_qt4port/options/valkyrie_options_page.cpp branches/valkyrie_qt4port/options/vk_options_page.cpp Modified: branches/valkyrie_qt4port/main.cpp =================================================================== --- branches/valkyrie_qt4port/main.cpp 2010-02-28 13:33:46 UTC (rev 477) +++ branches/valkyrie_qt4port/main.cpp 2010-03-01 20:59:43 UTC (rev 478) @@ -90,9 +90,13 @@ // ------------------------------------------------------------ // Start up the gui vkWin = new MainWindow( &valkyrie ); + if ( vkConfig->value( valkyrie.getOption( VALKYRIE::BINARY )->configKey() ).toString().isEmpty() ) { + vkWin->openOptions(); + } + vkWin->showToolView( VGTOOL::ID_MEMCHECK ); vkWin->show(); - vkWin->showToolView( VGTOOL::ID_MEMCHECK ); + qApp->processEvents(); // ------------------------------------------------------------ Modified: branches/valkyrie_qt4port/mainwindow.cpp =================================================================== --- branches/valkyrie_qt4port/mainwindow.cpp 2010-02-28 13:33:46 UTC (rev 477) +++ branches/valkyrie_qt4port/mainwindow.cpp 2010-03-01 20:59:43 UTC (rev 478) @@ -498,6 +498,9 @@ // add view to the stack toolViewStack->addView( nextView ); + + // widgets (menubar, toolbar) have been added: update event filters + updateEventFilters( this ); } // make sure the toolview is made visible: @@ -802,9 +805,6 @@ // cerr << "MainWindow::toolGroupTriggered() for toolview " << toolId << endl; - // widgets may have been added: update event filters - updateEventFilters( this ); - showToolView( toolId ); } @@ -885,20 +885,19 @@ cerr << "MainWindow::runValgrind()" << endl; // don't come in here if there's no current view - if ( !toolViewStack->isVisible() ) + if ( !toolViewStack->isVisible() ) { return; + } - /* valkyrie may have been started with no executable - specified. if so, show prefsWindow + msgbox */ + // Valkyrie may have been started with no executable + // specified. If so, show msgbox, then options dialog if ( vkConfig->value( "valkyrie/binary").toString().isEmpty() ) { -//TODO - cerr << "Error: no binary specified!" << endl; -#if 0 - showOptionsWindow( Valkyrie::ID_VALKYRIE ); - vkInfo( optionsWin, "Run Valgrind", - "Please enter the path to the executable " - "you wish to run, together with any arguments"); -#endif + + vkInfo( this, "Run Valgrind: No program specified", + "Please specify (via Edit::Options::Binary) the path to the program<br>" + "you wish to run, along with any arguments required"); + openOptions(); + return; } Modified: branches/valkyrie_qt4port/mainwindow.h =================================================================== --- branches/valkyrie_qt4port/mainwindow.h 2010-02-28 13:33:46 UTC (rev 477) +++ branches/valkyrie_qt4port/mainwindow.h 2010-03-01 20:59:43 UTC (rev 478) @@ -54,6 +54,7 @@ public slots: void setStatus( QString msg ); void showToolView( VGTOOL::ToolID toolId ); + void openOptions(); private: void setupLayout(); @@ -70,7 +71,6 @@ void createNewProject(); void openProject(); void closeToolView(); - void openOptions(); void runTool( int procId ); void runValgrind(); void stopTool(); Modified: branches/valkyrie_qt4port/objects/valkyrie_object.cpp =================================================================== --- branches/valkyrie_qt4port/objects/valkyrie_object.cpp 2010-02-28 13:33:46 UTC (rev 477) +++ branches/valkyrie_qt4port/objects/valkyrie_object.cpp 2010-03-01 20:59:43 UTC (rev 478) @@ -226,7 +226,7 @@ "", "1|10", "2", - "Extra lines shown above/below the target line:", + "Src Editor: Extra lines shown above/below target line:", "", urlValkyrie::srcLines, VkOPT::NOT_POPT, @@ -256,7 +256,7 @@ "", "", VkConfig::vkTmpDir(), - "Log Dir:", + "Tmp Log Dir:", "", urlValkyrie::logDir, VkOPT::NOT_POPT, Modified: branches/valkyrie_qt4port/options/valkyrie_options_page.cpp =================================================================== --- branches/valkyrie_qt4port/options/valkyrie_options_page.cpp 2010-02-28 13:33:46 UTC (rev 477) +++ branches/valkyrie_qt4port/options/valkyrie_options_page.cpp 2010-03-01 20:59:43 UTC (rev 478) @@ -77,11 +77,43 @@ grid->setColumnStretch(2, 1); grid->setColumnStretch(3, 1); + int i=0; + grid->setRowMinimumHeight( i++, lineHeight/2 ); // blank row + // ------------------------------------------------------------ + // target setup - options + insertOptionWidget( VALKYRIE::BINARY, group1, false ); // ledit + button + LeWidget* binLedit = ((LeWidget*)m_itemList[VALKYRIE::BINARY]); + binLedit->addButton( group1, this, SLOT(getBinary()) ); + connect(binLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); + + insertOptionWidget( VALKYRIE::BIN_FLAGS, group1, true ); // ledit + LeWidget* binFlgsLedit = ((LeWidget*)m_itemList[VALKYRIE::BIN_FLAGS]); + connect(binFlgsLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); + + insertOptionWidget( VALKYRIE::WORKING_DIR, group1, false ); // line edit + button + LeWidget* dirWorking = ((LeWidget*)m_itemList[VALKYRIE::WORKING_DIR]); + dirWorking->addButton( group1, this, SLOT(getWorkingDir()) ); + connect(dirWorking, SIGNAL(returnPressed()), this, SIGNAL(apply())); + + // target setup - layout + grid->addWidget( binLedit->button(), i, 0 ); + grid->addWidget( binLedit->widget(), i++,1, 1,3 ); + grid->addWidget( binFlgsLedit->label(), i, 0 ); + grid->addWidget( binFlgsLedit->widget(), i++,1, 1,3 ); + grid->addWidget( dirWorking->button(), i, 0 ); + grid->addWidget( dirWorking->widget(), i++,1, 1,3 ); + + grid->addWidget( sep(group1), i++,0, 1,4 ); + + + // ------------------------------------------------------------ // general prefs - options - insertOptionWidget( VALKYRIE::TOOLTIP, group1, false ); // checkbox - insertOptionWidget( VALKYRIE::ICONTXT, group1, false ); // checkbox - insertOptionWidget( VALKYRIE::PALETTE, group1, false ); // checkbox + insertOptionWidget( VALKYRIE::SRC_EDITOR, group1, false ); // ledit + button + LeWidget* editLedit = ((LeWidget*)m_itemList[VALKYRIE::SRC_EDITOR]); + editLedit->addButton( group1, this, SLOT(getEditor()) ); + connect(editLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); + insertOptionWidget( VALKYRIE::SRC_LINES, group1, true ); // intspin insertOptionWidget( VALKYRIE::BROWSER, group1, false ); // line edit LeWidget* brwsrLedit = ((LeWidget*)m_itemList[VALKYRIE::BROWSER]); @@ -93,29 +125,32 @@ dirLogSave->addButton( group1, this, SLOT(getDfltLogDir()) ); connect(dirLogSave, SIGNAL(returnPressed()), this, SIGNAL(apply())); - insertOptionWidget( VALKYRIE::WORKING_DIR, group1, false ); // line edit + button - LeWidget* dirWorking = ((LeWidget*)m_itemList[VALKYRIE::WORKING_DIR]); - dirWorking->addButton( group1, this, SLOT(getWorkingDir()) ); - connect(dirWorking, SIGNAL(returnPressed()), this, SIGNAL(apply())); + insertOptionWidget( VALKYRIE::VG_EXEC, group1, false ); // ledit + button + LeWidget* vgbinLedit = ((LeWidget*)m_itemList[VALKYRIE::VG_EXEC]); + vgbinLedit->addButton( group1, this, SLOT(getVgExec()) ); + connect(vgbinLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); // general prefs - layout - int i=0; - grid->setRowMinimumHeight( i++, lineHeight/2 ); // blank row - grid->addWidget( m_itemList[VALKYRIE::TOOLTIP]->widget(), i++,0, 1,2 ); - grid->addWidget( m_itemList[VALKYRIE::ICONTXT]->widget(), i++,0, 1,2 ); - grid->addWidget( m_itemList[VALKYRIE::PALETTE]->widget(), i++,0, 1,2 ); + grid->addWidget( editLedit->button(), i, 0 ); + grid->addWidget( editLedit->widget(), i++,1, 1,3 ); + grid->addLayout( m_itemList[VALKYRIE::SRC_LINES]->hlayout(), i++,0, 1,4 ); + grid->addWidget( brwsrLedit->button(), i, 0 ); grid->addWidget( brwsrLedit->widget(), i++, 1, 1,3 ); grid->addWidget( dirLogSave->button(), i, 0 ); grid->addWidget( dirLogSave->widget(), i++,1, 1,3 ); - grid->addWidget( dirWorking->button(), i, 0 ); - grid->addWidget( dirWorking->widget(), i++,1, 1,3 ); + grid->addWidget( vgbinLedit->button(), i, 0 ); + grid->addWidget( vgbinLedit->widget(), i++,1, 1,3 ); grid->addWidget( sep(group1), i++,0, 1,4 ); // ------------------------------------------------------------ - // fonts - options + // look 'n feel - options + insertOptionWidget( VALKYRIE::TOOLTIP, group1, false ); // checkbox + insertOptionWidget( VALKYRIE::ICONTXT, group1, false ); // checkbox + insertOptionWidget( VALKYRIE::PALETTE, group1, false ); // checkbox + insertOptionWidget( VALKYRIE::FNT_GEN_SYS, group1, false ); // checkbox LeWidget* fontGenSysLedit = ((LeWidget*)m_itemList[VALKYRIE::FNT_GEN_SYS]); insertOptionWidget( VALKYRIE::FNT_GEN_USR, group1, false ); // line edit @@ -134,55 +169,16 @@ fontToolLedit->addButton( group1, this, SLOT(chooseToolFont()) ); fontToolLedit->setReadOnly( true ); // don't allow direct editing - // fonts - layout + // look 'n feel - layout + grid->addWidget( m_itemList[VALKYRIE::TOOLTIP]->widget(), i++,0, 1,2 ); + grid->addWidget( m_itemList[VALKYRIE::ICONTXT]->widget(), i++,0, 1,2 ); + grid->addWidget( m_itemList[VALKYRIE::PALETTE]->widget(), i++,0, 1,2 ); grid->addWidget( fontGenSysLedit->widget(), i++,0, 1,4 ); - grid->addWidget( fontGenLedit->button(), i, 0 ); - grid->addWidget( fontGenLedit->widget(), i++,1, 1,3 ); - grid->addWidget( fontToolLedit->button(), i, 0 ); - grid->addWidget( fontToolLedit->widget(), i++,1, 1,3 ); + grid->addWidget( fontGenLedit->button(), i, 0 ); + grid->addWidget( fontGenLedit->widget(), i++,1, 1,3 ); + grid->addWidget( fontToolLedit->button(), i, 0 ); + grid->addWidget( fontToolLedit->widget(), i++,1, 1,3 ); - grid->addWidget( sep(group1), i++,0, 1,4 ); - - - // ------------------------------------------------------------ - // core - options - insertOptionWidget( VALKYRIE::SRC_LINES, group1, true ); // intspin - insertOptionWidget( VALKYRIE::SRC_EDITOR, group1, false ); // ledit + button - LeWidget* editLedit = ((LeWidget*)m_itemList[VALKYRIE::SRC_EDITOR]); - editLedit->addButton( group1, this, SLOT(getEditor()) ); - connect(editLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); - - insertOptionWidget( VALKYRIE::BINARY, group1, false ); // ledit + button - LeWidget* binLedit = ((LeWidget*)m_itemList[VALKYRIE::BINARY]); - binLedit->addButton( group1, this, SLOT(getBinary()) ); - connect(binLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); - - insertOptionWidget( VALKYRIE::BIN_FLAGS, group1, true ); // ledit - LeWidget* binFlgsLedit = ((LeWidget*)m_itemList[VALKYRIE::BIN_FLAGS]); - connect(binFlgsLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); - - insertOptionWidget( VALKYRIE::VG_EXEC, group1, false ); // ledit + button - LeWidget* vgbinLedit = ((LeWidget*)m_itemList[VALKYRIE::VG_EXEC]); - vgbinLedit->addButton( group1, this, SLOT(getVgExec()) ); - connect(vgbinLedit, SIGNAL(returnPressed()), this, SIGNAL(apply())); - - // core - layout - grid->addLayout( m_itemList[VALKYRIE::SRC_LINES]->hlayout(), i++,0, 1,4 ); - grid->addWidget( editLedit->button(), i, 0 ); - grid->addWidget( editLedit->widget(), i++,1, 1,3 ); - - grid->setRowMinimumHeight( i++, lineHeight ); // blank row - - grid->addWidget( binLedit->button(), i, 0 ); - grid->addWidget( binLedit->widget(), i++,1, 1,3 ); - grid->addWidget( binFlgsLedit->label(), i, 0 ); - grid->addWidget( binFlgsLedit->widget(), i++,1, 1,3 ); - - grid->setRowMinimumHeight( i++, lineHeight ); // blank row - - grid->addWidget( vgbinLedit->button(), i, 0 ); - grid->addWidget( vgbinLedit->widget(), i++,1, 1,3 ); - vk_assert( m_itemList.count() <= VALKYRIE::NUM_OPTS ); } Modified: branches/valkyrie_qt4port/options/vk_options_page.cpp =================================================================== --- branches/valkyrie_qt4port/options/vk_options_page.cpp 2010-02-28 13:33:46 UTC (rev 477) +++ branches/valkyrie_qt4port/options/vk_options_page.cpp 2010-03-01 20:59:43 UTC (rev 478) @@ -88,7 +88,7 @@ { QFrame* line = new QFrame( parent ); line->setFrameStyle( QFrame::HLine | QFrame::Sunken ); - line->setMinimumHeight( 4 ); + line->setMinimumHeight( 16 ); return line; } |