00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef SMBVIEW_H
00021 #define SMBVIEW_H
00022
00023 #include <tdelistview.h>
00024
00025 class TDEProcess;
00026 class KTempFile;
00027
00028 class SmbView : public TDEListView
00029 {
00030 Q_OBJECT
00031 public:
00032 SmbView(TQWidget *parent = 0, const char *name = 0);
00033 ~SmbView();
00034
00035 void setLoginInfos(const TQString& login, const TQString& password);
00036 void setOpen(TQListViewItem*, bool);
00037 void init();
00038 void abort();
00039
00040 signals:
00041 void printerSelected(const TQString& work, const TQString& server, const TQString& printer);
00042 void running(bool);
00043
00044 protected:
00045 void startProcess(int);
00046 void endProcess();
00047 void processGroups();
00048 void processServers();
00049 void processShares();
00050
00051 protected slots:
00052 void slotReceivedStdout(TDEProcess*, char*, int);
00053 void slotProcessExited(TDEProcess*);
00054 void slotSelectionChanged(TQListViewItem*);
00055
00056 private:
00057 enum State { GroupListing, ServerListing, ShareListing, Idle };
00058 int m_state;
00059 TQListViewItem *m_current;
00060 TDEProcess *m_proc;
00061 TQString m_buffer;
00062 TQString m_login, m_password;
00063 KTempFile *m_passwdFile;
00064 TQString m_wins_server;
00065 };
00066
00067 #endif