42 #include "NCPackageSelectorPluginImpl.h"
43 #include "NCPackageSelectorStart.h"
45 #include <YTableHeader.h>
47 #define YUILogComponent "ncurses-pkg"
64 YPackageSelector * NCPackageSelectorPluginImpl::createPackageSelector( YWidget * parent,
73 catch (
const std::exception & e)
75 yuiError() <<
"Caught a std::exception: " << e.what () << endl;
79 yuiError() <<
"Caught an unspecified exception" << endl;
82 yuiMilestone() <<
"Package selector created: " << w << endl;
84 return (YPackageSelector *)(w);
96 YWidget * NCPackageSelectorPluginImpl::createPkgSpecial( YWidget *parent,
const std::string &subwidget )
99 YTableHeader * tableHeader =
new YTableHeader();
101 if ( subwidget ==
"pkgTable" )
103 yuiDebug() <<
"Creating a NCPkgTable" << endl;
109 catch (
const std::exception & e)
111 yuiError() <<
"Caught a std::exception: " << e.what () << endl;
115 yuiError() <<
"Caught an unspecified exception" << endl;
120 yuiError() <<
"PkgSpecial( " << subwidget <<
" ) not found - take default `Label" << endl;
121 w =
new NCLabel( parent, subwidget,
false,
false );
136 YEvent * NCPackageSelectorPluginImpl::runPkgSelection( YDialog * dialog,
141 yuiMilestone() <<
"Calling runPkgSelection()" << endl;
145 yuiError() <<
"ERROR package selection: No dialog existing." << endl;
150 yuiError() <<
"ERROR package selection: No package selector existing." << endl;
159 NCursesEvent
event = NCursesEvent::cancel;
160 NCDialog * ncd =
static_cast<NCDialog *
>( dialog );
162 if ( ncSelector && ncd )
167 ncd->setStatusLine();
168 yuiMilestone() <<
"NCDialog: " << ncd << endl;
171 event = ncd->userInput();
174 ncd->setStatusLine();
175 yuiMilestone() <<
"Result of handleEvent: " << (result?
"true":
"false") << endl;
177 while ( event != NCursesEvent::cancel && result ==
true );
179 catch (
const std::exception & e)
181 yuiError() <<
"Caught a std::exception: " << e.what () << endl;
185 yuiError() <<
"Caught an unspecified exception" << endl;
190 yuiError() <<
"No NCPackageSelectorStart existing" << endl;
193 if ( event.result !=
"" )
198 while( YDialog::topmostDialog() != dialog ) {
199 YDialog::deleteTopmostDialog();
201 yuiMilestone() <<
"Return value: " <<
event.result << endl;
202 return new YMenuEvent( event.result );
205 return new YCancelEvent();