41 #define YUILogComponent "ncurses-pkg"
44 #include "NCPkgMenuView.h"
45 #include "NCPackageSelector.h"
53 NCPkgMenuView::NCPkgMenuView (YWidget *parent, std::string label,
NCPackageSelector *pkger)
54 : NCMenuButton( parent, label)
60 NCPkgMenuView::~NCPkgMenuView()
65 void NCPkgMenuView::createLayout()
67 if ( !pkg->isYouMode() )
71 technical =
new YMenuItem( _(
"&Technical Data" ) );
72 description =
new YMenuItem( _(
"&Package Description" ) );
73 versions =
new YMenuItem( _(
"Package &Versions" ) );
74 files =
new YMenuItem( _(
"&File List" ) );
76 deps =
new YMenuItem( _(
"&Dependencies" ) );
78 items.push_back( technical );
79 items.push_back( description );
80 items.push_back( versions );
81 items.push_back( files );
82 items.push_back( deps );
91 patchDescription =
new YMenuItem( _(
"&Long Description" ) );
92 patchPackages =
new YMenuItem( _(
"&Package List" ) );
94 patchPkgVersions =
new YMenuItem( _(
"&Versions" ) );
96 items.push_back( patchDescription );
97 items.push_back( patchPackages );
98 items.push_back( patchPkgVersions );
104 bool NCPkgMenuView::handleEvent (
const NCursesEvent & event)
106 if ( !event.selection)
110 int idx = pkgList->getCurrentItem();
115 if ( !pkgPtr || !slbPtr)
117 yuiWarning() <<
"package list empty - no package pointer" << endl;
127 if ( event.selection == versions )
130 pkgList->setVisibleInfo (NCPkgTable::I_Versions);
132 else if ( event.selection == patchPackages )
135 pkgList->setVisibleInfo (NCPkgTable::I_PatchPkgs);
137 else if ( event.selection == patchPkgVersions )
140 pkgList->setVisibleInfo (NCPkgTable::I_PatchPkgs);
146 if ( !pkg->InfoText() )
149 if (event.selection == description)
151 pkg->InfoText()->longDescription( pkgPtr );
152 pkgList->setVisibleInfo (NCPkgTable::I_Descr);
154 else if (event.selection == technical )
156 pkg->InfoText()->technicalData( pkgPtr, slbPtr );
157 pkgList->setVisibleInfo (NCPkgTable::I_Technical);
159 else if (event.selection == files )
161 pkg->InfoText()->fileList( slbPtr );
162 pkgList->setVisibleInfo (NCPkgTable::I_Files);
164 else if (event.selection == deps )
166 pkg->InfoText()->dependencyList( pkgPtr, slbPtr );
167 pkgList->setVisibleInfo (NCPkgTable::I_Deps);
169 else if ( event.selection == patchDescription )
171 pkg->InfoText()->patchDescription( pkgPtr, slbPtr );
172 pkgList->setVisibleInfo (NCPkgTable::I_PatchDescr);
ZyppObj getDataPointer(int index)
ZyppSel getSelPointer(int index)
void showPatchPkgVersions()