41 #define YUILogComponent "ncurses-pkg" 44 #include "NCPkgMenuAction.h" 45 #include "NCPackageSelector.h" 53 NCPkgMenuAction::NCPkgMenuAction (YWidget *parent, std::string label,
NCPackageSelector *pkger)
54 : NCMenuButton( parent, label)
60 NCPkgMenuAction::~NCPkgMenuAction()
65 void NCPkgMenuAction::createLayout()
67 if ( !pkg->isYouMode() )
72 toggleItem =
new YMenuItem( _(
"&Toggle [SPACE]" ) );
73 installItem =
new YMenuItem( _(
"&Install [+]" ) );
74 deleteItem =
new YMenuItem( _(
"&Delete [-]" ) );
75 updateItem =
new YMenuItem( _(
"&Update [>]" ) );
76 tabooItem =
new YMenuItem( _(
"Ta&boo [!]" ) );
77 lockItem =
new YMenuItem( _(
"&Lock [*]" ) );
79 allItem =
new YMenuItem( _(
"&All Listed Packages" ) );
81 items.push_back( toggleItem );
82 items.push_back( installItem );
83 items.push_back( deleteItem );
84 items.push_back( updateItem );
85 items.push_back( tabooItem );
86 items.push_back( lockItem );
87 items.push_back( allItem );
90 installAllItem =
new YMenuItem( allItem, _(
"&Install All" ) );
91 deleteAllItem =
new YMenuItem( allItem, _(
"&Delete All" ) );
92 keepAllItem =
new YMenuItem( allItem, _(
"&Keep All" ) );
93 updateAllItem =
new YMenuItem( allItem, _(
"U&pdate All Unconditionally" ) );
95 updateNewerItem =
new YMenuItem( allItem, _(
"&Update If Newer Version Available" ) );
103 toggleItem =
new YMenuItem( _(
"&Toggle [SPACE]" ) );
104 installItem =
new YMenuItem( _(
"&Install [+]" ) );
105 deleteItem =
new YMenuItem( _(
"&Do Not Install [-]" ) );
106 tabooItem =
new YMenuItem( _(
"&Lock or Taboo [!]" ) );
111 items.push_back( toggleItem );
112 items.push_back( installItem );
113 items.push_back( deleteItem );
114 items.push_back( tabooItem );
120 bool NCPkgMenuAction::handleEvent (
const NCursesEvent & event)
123 if ( !pkgList || !event.selection)
129 if (event.selection == toggleItem)
131 pkgList->toggleObjStatus();
133 else if (event.selection == installItem)
135 pkgList->changeObjStatus(
'+' );
137 else if (event.selection == deleteItem )
139 pkgList->changeObjStatus(
'-' );
141 else if (event.selection == updateItem )
143 pkgList->changeObjStatus(
'>' );
145 else if (event.selection == tabooItem )
147 pkgList->changeObjStatus(
'!' );
149 else if (event.selection == lockItem )
151 pkgList->changeObjStatus(
'*' );
153 else if (event.selection == installAllItem )
155 pkgList->changeListObjStatus( NCPkgTable::A_Install );
157 else if (event.selection == deleteAllItem )
159 pkgList->changeListObjStatus( NCPkgTable::A_Delete );
161 else if (event.selection == keepAllItem )
163 pkgList->changeListObjStatus( NCPkgTable::A_Keep );
165 else if ( event.selection == updateNewerItem )
167 pkgList->changeListObjStatus( NCPkgTable::A_UpdateNewer );
169 else if (event.selection == updateAllItem )
171 pkgList->changeListObjStatus( NCPkgTable::A_Update );
174 yuiError() <<
"zatim nic" << endl;
176 if ( pkg->VersionsList() )
177 pkg->VersionsList()->updateTable();
unsigned int getNumLines()
Returns the number of lines in the table (the table size)