Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

PackageSelector Class Reference

#include <PackageSelector.h>

List of all members.

Public Member Functions

 PackageSelector (YNCursesUI *ui, const YWidgetOpt &opt, string floppyDevice)
virtual ~PackageSelector ()
bool fillPackageList (const YCPString &label, YStringTreeItem *group)
bool fillPatchList (string filter, PMYouPatch::Kind kind=PMYouPatch::kind_all)
bool fillUpdateList ()
bool fillSummaryList (NCPkgTable::NCPkgTableListType type)
bool fillAvailableList (NCPkgTable *table, PMObjectPtr pkgPtr)
bool fillPatchPackages (NCPkgTable *pkgTable, PMObjectPtr youPatch)
bool fillSearchList (const YCPString &expr, bool ignoreCase, bool checkName, bool checkSummary, bool checkDescr, bool checkProvides, bool checkRequires)
YStringTreeItemgetDefaultRpmGroup ()
bool handleEvent (const NCursesEvent &event)
bool SearchHandler (const NCursesEvent &event)
bool DependencyHandler (const NCursesEvent &event)
bool SelectionHandler (const NCursesEvent &event)
bool InformationHandler (const NCursesEvent &event)
bool OkButtonHandler (const NCursesEvent &event)
bool CancelHandler (const NCursesEvent &event)
bool DiskinfoHandler (const NCursesEvent &event)
bool PackageListHandler (const NCursesEvent &event)
bool FilterHandler (const NCursesEvent &event)
bool StatusHandler (const NCursesEvent &event)
bool HelpHandler (const NCursesEvent &event)
bool YouHelpHandler (const NCursesEvent &event)
bool LinkHandler (string link)
bool showPackageInformation (PMObjectPtr pkgPtr)
bool showConcretelyPkgDependency (int index)
bool showConcretelySelDependency (int index)
bool showPackageDependencies (bool doit)
void showSelectionDependencies ()
bool showPatchInformation (PMObjectPtr pkgPtr)
void setVisibleInfo (const YCPValue &info)
bool showSelPackages (const YCPString &label, PMSelectionPtr selPtr)
void updatePackageList ()
bool checkPackage (PMPackagePtr pkg, YStringTreeItem *rpmGroup)
bool checkPatch (PMYouPatchPtr patch, string filter, PMYouPatch::Kind kind)
bool autoChecking ()
string createText (list< string > info, bool oneline)
string createDescrText (list< string > info)
bool match (string s1, string s2, bool ignoreCase)
void showDiskSpace ()
void showDownloadSize ()

Private Types

typedef bool(PackageSelector::* tHandlerFctPtr )(const NCursesEvent &event)
typedef std::map< std::string,
tHandlerFctPtr
tHandlerMap

Private Member Functions

PackageSelectoroperator= (const PackageSelector &)
 PackageSelector (const PackageSelector &)
string createRelLine (list< PkgRelation > info)
void cloneTree (YStringTreeItem *parentOrig, YTreeItem *parentClone)
NCPkgTablegetPackageList ()

Private Attributes

tHandlerMap eventHandlerMap
YNCursesUIy2ui
YCPValue visibleInfo
NCPopupTreefilterPopup
NCPopupPkgDepspkgDepsPopup
NCPopupSelDepsselDepsPopup
NCPopupSelectionselectionPopup
NCPopupDiskspacediskspacePopup
NCPopupSearchsearchPopup
NCPopupFilefilePopup
bool youMode
bool updateMode
bool autoCheck

Friends

std::ostream & operator<< (std::ostream &STREAM, const PackageSelector &OBJ)


Member Typedef Documentation

typedef bool(PackageSelector::* PackageSelector::tHandlerFctPtr)( const NCursesEvent& event ) [private]
 

typedef std::map<std::string, tHandlerFctPtr> PackageSelector::tHandlerMap [private]
 


Constructor & Destructor Documentation

PackageSelector::PackageSelector const PackageSelector  )  [private]
 

PackageSelector::PackageSelector YNCursesUI ui,
const YWidgetOpt opt,
string  floppyDevice
 

The package selector class handles the events and holds the data needed for the package selection.

Parameters:
ui The NCurses UI
opt The widget options
floppyDevice The floppy device

PackageSelector::~PackageSelector  )  [virtual]
 

Destructor


Member Function Documentation

bool PackageSelector::autoChecking  )  [inline]
 

Returns whether automatic dependency is on or off

Returns:
bool

bool PackageSelector::CancelHandler const NCursesEvent event  ) 
 

Handler function for "Cancel button pressed"

Parameters:
event The Ncurses event
Returns:
bool

bool PackageSelector::checkPackage PMPackagePtr  pkg,
YStringTreeItem rpmGroup
 

Check if 'pkg' matches 'selectedRpmGroup'. Returns true if there is a match, false otherwise or if 'pkg' is 0.

Returns:
bool

bool PackageSelector::checkPatch PMYouPatchPtr  patch,
string  filter,
PMYouPatch::Kind  kind
 

Check if 'patch' matches the selected filter. Returns true if there is a match, false otherwise or if 'patch' is 0.

Returns:
bool

void PackageSelector::cloneTree YStringTreeItem parentOrig,
YTreeItem parentClone
[private]
 

string PackageSelector::createDescrText list< string >  info  ) 
 

Creates a text from a list of strings which may contain HTML tags

Returns:
string The text

Loop over the remaining text. *

string PackageSelector::createRelLine list< PkgRelation info  )  [private]
 

string PackageSelector::createText list< string >  info,
bool  oneline
 

Creates a text from a list of strings

Parameters:
oneline true: create one line, items seperated by comma; false: every string is a line
Returns:
string The text

bool PackageSelector::DependencyHandler const NCursesEvent event  ) 
 

Handler function for menu selection "Etc./Check dependencies"

Parameters:
event The Ncurses event
Returns:
bool

bool PackageSelector::DiskinfoHandler const NCursesEvent event  ) 
 

Handler function for "Diskspace button pressed"

Parameters:
event The Ncurses event
Returns:
bool

bool PackageSelector::fillAvailableList NCPkgTable table,
PMObjectPtr  pkgPtr
 

Fills the list of available packages

Parameters:
table The table widget
pkgPtr Show all available versions of this package
Returns:
bool

bool PackageSelector::fillPackageList const YCPString label,
YStringTreeItem group
 

Fills the package table

Parameters:
label The selected RPM group (the label)
group The rpm group
Returns:
bool

bool PackageSelector::fillPatchList string  filter,
PMYouPatch::Kind  kind = PMYouPatch::kind_all
 

Fills the package table with YOU patches matching the filter

Parameters:
filter 
Returns:
bool

bool PackageSelector::fillPatchPackages NCPkgTable pkgTable,
PMObjectPtr  youPatch
 

Fills the list of packages belonging to the youPatch

Parameters:
pkgTable The table widget
youPatch Show all packages belonging to the patch
Returns:
bool

bool PackageSelector::fillSearchList const YCPString expr,
bool  ignoreCase,
bool  checkName,
bool  checkSummary,
bool  checkDescr,
bool  checkProvides,
bool  checkRequires
 

Fills the package table with packages matching the search expression

Parameters:
expr The search expression
ignoreCase Ignore case (true or false)
checkName Search in package name (true or false)
checkSummary Check the summary (true or false)
checkProvides Check in Provides (true or false)
checkRequires Check in Requires (true or false)
Returns:
bool

bool PackageSelector::fillSummaryList NCPkgTable::NCPkgTableListType  type  ) 
 

Fills the package table with a summary packages

Returns:
bool

bool PackageSelector::fillUpdateList  ) 
 

Fills the package table with packages with update problems

Returns:
bool

bool PackageSelector::FilterHandler const NCursesEvent event  ) 
 

Handler function for the "Filter" menu

Parameters:
event The Ncurses event
Returns:
bool

YStringTreeItem* PackageSelector::getDefaultRpmGroup  )  [inline]
 

Gets default RPM group (the first group)

Returns:
YStringTreeItem *

NCPkgTable * PackageSelector::getPackageList  )  [private]
 

bool PackageSelector::handleEvent const NCursesEvent event  ) 
 

Handle the given event. For the given event (the widget-id is contained in the event) the corresponding handler is executed.

Parameters:
event The NCurses event
Returns:
bool

bool PackageSelector::HelpHandler const NCursesEvent event  ) 
 

Handler function for the "Help" menu

Parameters:
event The Ncurses event
Returns:
bool

bool PackageSelector::InformationHandler const NCursesEvent event  ) 
 

Handler function for the "Information" menu

Parameters:
event The Ncurses event
Returns:
bool

bool PackageSelector::LinkHandler string  link  ) 
 

Handles hyperlinks in package description

Parameters:
link The link
Returns:
bool

bool PackageSelector::match string  s1,
string  s2,
bool  ignoreCase
 

Used for package search

Parameters:
s1 Search in s1
s2 Searching for s2
Returns:
bool

bool PackageSelector::OkButtonHandler const NCursesEvent event  ) 
 

Handler function for "OK button pressed"

Parameters:
event The Ncurses event
Returns:
bool

PackageSelector& PackageSelector::operator= const PackageSelector  )  [private]
 

bool PackageSelector::PackageListHandler const NCursesEvent event  ) 
 

Handler function for the package list which handles events not directly related to the list. Most events are handled in NCPkgTable itself.

Parameters:
event The Ncurses event
Returns:
bool

bool PackageSelector::SearchHandler const NCursesEvent event  ) 
 

Handler function for "Search button pressed"

Parameters:
event The Ncurses event
Returns:
bool

bool PackageSelector::SelectionHandler const NCursesEvent event  ) 
 

Handler function for menu selection "Etc./Selections"

Parameters:
event The Ncurses event
Returns:
bool

void PackageSelector::setVisibleInfo const YCPValue info  ) 
 

Sets the member variable to the currently visible information

Parameters:
info 

bool PackageSelector::showConcretelyPkgDependency int  index  ) 
 

Shows the dependency of this package

Parameters:
index The line
Returns:
bool

bool PackageSelector::showConcretelySelDependency int  index  ) 
 

Shows the dependency of this selection

Parameters:
index The line
Returns:
bool

void PackageSelector::showDiskSpace  ) 
 

Calls the package mananager (updateDu()) and shows the required disk space

void PackageSelector::showDownloadSize  ) 
 

Shows the total download size

bool PackageSelector::showPackageDependencies bool  doit  ) 
 

Checks and shows the dependencies

Parameters:
doit true: do the check, false: only check if auto check is on

bool PackageSelector::showPackageInformation PMObjectPtr  pkgPtr  ) 
 

Gets the required package info from package manager and shows it ( called from NCPkgTable )

Parameters:
pkgPtr the data pointer
Returns:
bool

bool PackageSelector::showPatchInformation PMObjectPtr  pkgPtr  ) 
 

Gets the required patch info from you patch manager and shows it

Parameters:
pkgPtr the data pointer
Returns:
bool

void PackageSelector::showSelectionDependencies  ) 
 

Checks and shows the selectiondependencies

bool PackageSelector::showSelPackages const YCPString label,
PMSelectionPtr  selPtr
 

Fills the package table

Parameters:
label The selected selection (the label)
selPtr The selection
Returns:
bool

bool PackageSelector::StatusHandler const NCursesEvent event  ) 
 

Handler function for the "Action" menu (changes the package status)

Parameters:
event The Ncurses event
Returns:
bool

void PackageSelector::updatePackageList  ) 
 

Updates the status in list of packages

bool PackageSelector::YouHelpHandler const NCursesEvent event  ) 
 

Handler function for the "Help" button in YOU

Parameters:
event The Ncurses event
Returns:
bool


Friends And Related Function Documentation

std::ostream& operator<< std::ostream &  STREAM,
const PackageSelector OBJ
[friend]
 


Member Data Documentation

bool PackageSelector::autoCheck [private]
 

NCPopupDiskspace* PackageSelector::diskspacePopup [private]
 

tHandlerMap PackageSelector::eventHandlerMap [private]
 

NCPopupFile* PackageSelector::filePopup [private]
 

NCPopupTree* PackageSelector::filterPopup [private]
 

NCPopupPkgDeps* PackageSelector::pkgDepsPopup [private]
 

NCPopupSearch* PackageSelector::searchPopup [private]
 

NCPopupSelDeps* PackageSelector::selDepsPopup [private]
 

NCPopupSelection* PackageSelector::selectionPopup [private]
 

bool PackageSelector::updateMode [private]
 

YCPValue PackageSelector::visibleInfo [private]
 

YNCursesUI* PackageSelector::y2ui [private]
 

bool PackageSelector::youMode [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Sep 5 17:18:57 2007 for yast2-ncurses by doxygen 1.3.6