• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • tdenewstuff
 

tdenewstuff

provider.h

00001 /*
00002     This file is part of KOrganizer.
00003     Copyright (c) 2002 Cornelius Schumacher <schumacher@kde.org>
00004     Copyright (c) 2014 Timothy Pearson <kb9vqf@pearsoncomputing.net>
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019     Boston, MA 02110-1301, USA.
00020 */
00021 #ifndef KNEWSTUFF_PROVIDER_H
00022 #define KNEWSTUFF_PROVIDER_H
00023 
00024 #include <tqcstring.h>
00025 #include <tqdom.h>
00026 #include <tqobject.h>
00027 #include <tqptrlist.h>
00028 #include <tqstring.h>
00029 
00030 #include <kurl.h>
00031 
00032 namespace TDEIO { class Job; }
00033 
00034 namespace KNS {
00035 
00047 class KDE_EXPORT Provider : public TQObject
00048 {
00049     Q_OBJECT
00050   public:
00051     typedef TQPtrList<Provider> List;
00052 
00056     Provider( TQString type = TQString::null, TQWidget* parent = 0 );
00057 
00061     Provider( const TQDomElement &, TQString type = TQString::null, TQWidget* parent = 0 );
00062 
00066     virtual ~Provider();
00067 
00071     bool loaded();
00072 
00076     void setName( const TQString & );
00077 
00083     TQString name() const;
00084 
00088     void setDownloadUrl( const KURL & );
00089 
00095     KURL downloadUrl() const;
00096 
00103     KURL downloadUrlVariant( TQString variant ) const;
00104 
00108     void setUploadUrl( const KURL & );
00109 
00115     KURL uploadUrl() const;
00116 
00123     void setNoUploadUrl( const KURL & );
00124 
00131     KURL noUploadUrl() const;
00132 
00136     void setNoUpload( bool );
00137 
00143     bool noUpload() const;
00144 
00150     void setIcon( const KURL & );
00151 
00157     KURL icon() const;
00158 
00159   protected:
00160     void parseDomElement( const TQDomElement & );
00161 
00162     TQDomElement createDomElement( TQDomDocument &, TQDomElement &parent );
00163 
00164   protected slots:
00165     void slotJobData( TDEIO::Job *, const TQByteArray & );
00166     void slotJobResult( TDEIO::Job * );
00167 
00168   signals:
00169     void providerLoaded();
00170 
00171   private:
00172     TQString mName;
00173     KURL mDownloadUrl;
00174     KURL mUploadUrl;
00175     KURL mNoUploadUrl;
00176     KURL mIcon;
00177     bool mNoUpload;
00178     TQString mJobData;
00179     TQString mBaseURL;
00180     TQWidget* mParent;
00181     bool mLoaded;
00182     TQString mContentType;
00183 };
00184 
00191 class KDE_EXPORT ProviderLoader : public TQObject
00192 {
00193     Q_OBJECT
00194   public:
00200     ProviderLoader( TQWidget *parentWidget );
00201 
00211     void load( const TQString &type, const TQString &providerList = TQString::null );
00212 
00213   signals:
00217     void providersLoaded( Provider::List * );
00218     void percent(TDEIO::Job *job, unsigned long percent);
00219     void error();
00220 
00221   protected slots:
00222     void slotJobData( TDEIO::Job *, const TQByteArray & );
00223     void slotJobResult( TDEIO::Job * );
00224     void providerLoaded();
00225 
00226   private:
00227     TQWidget *mParentWidget;
00228 
00229     TQString mJobData;
00230     TQString mContentType;
00231 
00232     Provider::List mProviders;
00233 };
00234 
00235 }
00236 
00237 #endif

tdenewstuff

Skip menu "tdenewstuff"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Class Members
  • Related Pages

tdenewstuff

Skip menu "tdenewstuff"
  • arts
  • dcop
  • dnssd
  • interfaces
  •   kspeech
  •     interface
  •     library
  •   tdetexteditor
  • kate
  • kded
  • kdoctools
  • kimgio
  • kjs
  • libtdemid
  • libtdescreensaver
  • tdeabc
  • tdecmshell
  • tdecore
  • tdefx
  • tdehtml
  • tdeinit
  • tdeio
  •   bookmarks
  •   httpfilter
  •   kpasswdserver
  •   kssl
  •   tdefile
  •   tdeio
  •   tdeioexec
  • tdeioslave
  •   http
  • tdemdi
  •   tdemdi
  • tdenewstuff
  • tdeparts
  • tdeprint
  • tderandr
  • tderesources
  • tdespell2
  • tdesu
  • tdeui
  • tdeunittest
  • tdeutils
  • tdewallet
Generated for tdenewstuff by doxygen 1.7.1
This website is maintained by Timothy Pearson.