00001 /*---------------------------------------------------------------------\ 00002 | | 00003 | __ __ ____ _____ ____ | 00004 | \ \ / /_ _/ ___|_ _|___ \ | 00005 | \ V / _` \___ \ | | __) | | 00006 | | | (_| |___) || | / __/ | 00007 | |_|\__,_|____/ |_| |_____| | 00008 | | 00009 | core system | 00010 | (C) SuSE GmbH | 00011 \----------------------------------------------------------------------/ 00012 00013 File: NCPopupFile.h 00014 00015 Author: Gabriele Strattner <gs@suse.de> 00016 Maintainer: Michael Andres <ma@suse.de> 00017 00018 /-*/ 00019 #ifndef NCPopupFile_h 00020 #define NCPopupFile_h 00021 00022 #include <iosfwd> 00023 00024 #include <vector> 00025 #include <string> 00026 00027 #include "NCPopup.h" 00028 #include "NCLabel.h" 00029 #include "NCRichText.h" 00030 #include "NCTextEntry.h" 00031 #include "NCPushButton.h" 00032 #include "NCComboBox.h" 00033 #include "PackageSelector.h" 00034 00035 #include "PkgNames.h" 00036 00037 class YCPValue; 00038 00040 // 00041 // CLASS NAME : NCPopupFile 00042 // 00043 // DESCRIPTION : 00044 // 00045 class NCPopupFile : public NCPopup { 00046 00047 NCPopupFile & operator=( const NCPopupFile & ); 00048 NCPopupFile ( const NCPopupFile & ); 00049 00050 private: 00051 00052 NCLabel * headline; 00053 NCRichText * textLabel; 00054 NCPushButton * okButton; 00055 NCPushButton * cancelButton; 00056 NCTextEntry * fileName; 00057 NCComboBox * comboBox; 00058 00059 PackageSelector * packager; 00060 00061 string pathName; 00062 bool mountFloppy; 00063 string floppyDevice; 00064 00065 int hDim; 00066 int vDim; 00067 00068 void setDefaultPath(); 00069 00070 protected: 00071 00072 virtual bool postAgain(); 00073 00074 virtual NCursesEvent wHandleInput( wint_t ch ); 00075 00076 public: 00077 00078 NCPopupFile( const wpos at, string device, PackageSelector * pkger ); 00079 00080 virtual ~NCPopupFile(); 00081 00082 virtual long nicesize(YUIDimension dim); 00083 00084 void createLayout( ); 00085 00086 NCursesEvent & showFilePopup( ); 00087 00088 bool mountDevice( string device, string errText ); 00089 void unmount(); 00090 00091 void saveToFile(); 00092 void loadFromFile(); 00093 00094 }; 00095 00097 00098 00099 #endif // NCPopupFile_h