|
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;
}
|