Commit Graph

122 Commits

Author SHA1 Message Date
Aaron J. Seigo
d73831e8f0 * hash() -> contentsHash()
* add the metadata file to the hash as well
* update test

svn path=/trunk/KDE/kdelibs/; revision=1026497
2009-09-21 21:48:19 +00:00
Aaron J. Seigo
19f55f804b packages can now generate a hash of their contents; inc unit test
svn path=/trunk/KDE/kdelibs/; revision=1026489
2009-09-21 21:37:44 +00:00
Rob Scheepmaker
9cb9cfe65e Push in remote widgets
svn path=/trunk/KDE/kdelibs/; revision=1018655
2009-09-02 02:27:16 +00:00
Aaron J. Seigo
0cdd7388b4 * make it possibl to install packages without registering them as a service
* support tar and compressed tar as well as zip
* support archives that contain the actual package in a top level subdir

themes and wallpapers now install nicely.

svn path=/trunk/KDE/kdelibs/; revision=1002165
2009-07-25 09:34:19 +00:00
Alex Merry
f5c6a90996 An error here with no warning tripped me up, so notify the user if it failed.
svn path=/trunk/KDE/kdelibs/; revision=969044
2009-05-17 12:16:52 +00:00
Aaron J. Seigo
1a892f1c41 allow setting the path
svn path=/trunk/KDE/kdelibs/; revision=967227
2009-05-12 23:05:40 +00:00
Aaron J. Seigo
55feec87c0 move the entryList and path setting logic into PackageStructure so that packages can have a bit more control over their life
svn path=/trunk/KDE/kdelibs/; revision=950408
2009-04-07 05:42:30 +00:00
Aaron J. Seigo
be9dc1758a hm, just found out that \w includes _
svn path=/trunk/KDE/kdelibs/; revision=940553
2009-03-17 16:43:21 +00:00
Aaron J. Seigo
e74e51a285 underscore is ok
svn path=/trunk/KDE/kdelibs/; revision=940245
2009-03-16 23:46:54 +00:00
Aaron J. Seigo
023ae75d69 allow package structures to say that external paths are ok. defaults to false, though some packagestructures that do not have executable code capabilities (e.g. wallpaper image sets) may wish to take advantage of this
CCBUG:180716

svn path=/trunk/KDE/kdelibs/; revision=911736
2009-01-16 01:02:35 +00:00
Aaron J. Seigo
0655ae2e03 slightly more useful debug output
svn path=/trunk/KDE/kdelibs/; revision=910609
2009-01-13 19:49:36 +00:00
Aaron J. Seigo
8dd6e79e56 * make it possible to get a list of installed packages by path rather than package name
* allow the basePath to be a symlink

svn path=/trunk/KDE/kdelibs/; revision=906191
2009-01-05 18:49:54 +00:00
Aaron J. Seigo
1cbfb3e399 one more step towards building!
svn path=/trunk/KDE/kdelibs/; revision=879797
2008-11-04 02:20:46 +00:00
Aaron J. Seigo
4b08c03726 change KDE includes to use the .h style now that we're in libs
svn path=/trunk/KDE/kdelibs/; revision=879795
2008-11-04 02:04:34 +00:00
Aaron J. Seigo
1b523b9054 ok, this time JUST the plasma dir ;)
svn path=/trunk/KDE/kdelibs/; revision=879759
2008-11-03 23:08:39 +00:00
Aaron J. Seigo
fa5a2d87d9 bum-de-dum! plasma to kdelibs.
svn path=/trunk/KDE/kdelibs/; revision=879757
2008-11-03 23:03:26 +00:00
Petri Damstén
78b0fc5ce5 Only add slash if basePath is a directory.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=879394
2008-11-03 08:06:49 +00:00
Petri Damstén
870e710307 Support for metadata in PackageStructure.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=879173
2008-11-02 15:28:59 +00:00
Aaron J. Seigo
1aa252d612 package metadat by reference, not pointer, for API clarity and health
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=878840
2008-11-01 22:01:31 +00:00
Allen Winter
214ac5f91f clean up some kDebugs and kWarnings.
shorten some extra long lines.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=870290
2008-10-12 10:20:02 +00:00
Allen Winter
a7aebfa60a a bunch more coding style fixes. still some lines longer than 100 chars.
this is definitely helping me find false positives in the Krazy style checker.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=870161
2008-10-11 22:48:38 +00:00
Petri Damstén
fdfdb97adb Add support for defaultPackageRoot and servicePrefix to package handling.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=865083
2008-09-26 15:43:32 +00:00
Petri Damstén
7fefa21903 return valid path also for package root.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=861218
2008-09-15 13:35:17 +00:00
Petri Damstén
b4818c5cac Fix icon path in services (not in plasmoid dir)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=860298
2008-09-12 15:15:38 +00:00
Aaron J. Seigo
35f8bbcc64 be careful with relative paths and symlinks in packages and themes; we don't want widgets referencing random files/resources, just stuff in the given package
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=848476
2008-08-17 20:52:37 +00:00
Richard J. Moore
014c81a040 - Validate the plugin name of the package at install time to prevent the
injection of bad characters into the path when the package is removed.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=846853
2008-08-14 09:03:24 +00:00
Richard J. Moore
c8f517206a Add support for removing packages
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=846532
2008-08-13 16:40:31 +00:00
Sebastian Sauer
4b0afa6fa7 fix crash cause of a rather interesting design-decision in KConfig;
configgroup = KDesktopFile().desktopGroup()
means that configgroup has now a dangling pointer to it's master :-/

CC_MAIL:panel-devel@kde.org


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=831832
2008-07-13 12:06:53 +00:00
Aaron J. Seigo
6a912784f2 separate concept of Category from Type and get it right in the file written out!
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828243
2008-07-05 05:21:07 +00:00
Aaron J. Seigo
0d9ab9ab38 it's *always* Type=Service
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=828239
2008-07-05 05:13:00 +00:00
Marijn Kruisselbrink
21b148b963 change all ClassName::Private classes to ClassNamePrivate, and adjust friends accordingly; this makes plasma compilable with gcc < 4.2
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=826893
2008-07-01 18:56:43 +00:00
Richard Dale
64016f5660 * Oops, got move and copy error messages round the wrong way.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=824862
2008-06-26 18:39:52 +00:00
Aaron J. Seigo
6c96501e15 make package installation work; test passes now.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=824846
2008-06-26 18:09:45 +00:00
Richard Dale
41d8ae9752 * If an archived package is being installed use KIO::file_copy() to move it to the destination. If
it is a directory, use KIO::copy() to copy the directory heirarchy over instead.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=824785
2008-06-26 16:30:40 +00:00
Aaron J. Seigo
2fd0d567cc don't need the #s
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=821610
2008-06-17 23:32:36 +00:00
Sebastian Sauer
0f934c13c5 * also use the defined type()/setType() at Package::registerPackage()
* dox++


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809306
2008-05-18 17:44:36 +00:00
Sebastian Sauer
8c21c9f2ca did the todo. At Package::registerPackage() used the PackageMetadata's serviceType if defined else use 'Plasma/Applet,Plasma/Containment' like before.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809278
2008-05-18 17:16:10 +00:00
Anne-Marie Mahfouf
26a01ffb64 API review Plasma::Package::knownPackages() -> Plasma::Package::listInstalled()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801796
2008-04-27 19:22:29 +00:00
Anne-Marie Mahfouf
b21b9380de API review: remove icon as parameter in write()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801424
2008-04-26 15:48:47 +00:00
Anne-Marie Mahfouf
dc044b79c2 API review: isComplete() -> isValid()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=801421
2008-04-26 15:37:42 +00:00
Aaron J. Seigo
a17a25a3b3 allow installing an uncompressed package as well
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=792006
2008-03-30 22:27:32 +00:00
Sebastian Sauer
1420d4ba60 Enables ScriptEngine's like Apple's Dashboard Widgets or SuperKaramba's to implement containments too. Right, that means you are now able to write your own Panel or even Desktop using a scripting language :)
FEATURE

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=782729
2008-03-05 21:12:33 +00:00
Chusslove Illich
9534c253e8 Complete name/pluginName change.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=781223
2008-03-02 10:44:12 +00:00
Aaron J. Seigo
a3ed531670 * use PackageMetadata when installing a package
* provide a Package::registerPackage convenience method
* make the contentsPrefix optional / changeable; required for packages we don't control the structure of
* PackageMetadata -> file fixes
* provide a way to set the implementation languae in PackageMetadata (e.g. "dashboard" or "webkit")

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780464
2008-02-29 08:14:32 +00:00
Aaron J. Seigo
1a84d94eeb package structure appropriateness for dynamic packages
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=780124
2008-02-28 03:53:26 +00:00
Aaron J. Seigo
577ea0bbe6 * let PackageStructures define their own install routine
* split install in Package into both installing the Package and registering it, allowing PackageStructures to implement their own installation routine without having to reimplement registration

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=779805
2008-02-27 00:51:04 +00:00
Aaron J. Seigo
9c94c63dfe make PackageStructure a loadable plugin, so that there are now three methods to get a PackageStructure:
0. builtin
1. c++ plugin
2. config file

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=779415
2008-02-26 04:07:07 +00:00
Aaron J. Seigo
940ccf63e9 show the path that we failed to find as well as the abstract key
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=762850
2008-01-18 00:10:27 +00:00
Shane King
1a9b4524a1 Minor MSVC compile fix.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=744254
2007-12-03 03:43:30 +00:00
Paolo Capriotti
7dbc6b9ef1 Package refactoring as discussed on panel-devel.
* Icon, preview, screenshot and release notes are gone.
* Everything in a package (except metadata) is in the contents/ directory.
* Package::createPackage and Package::installPackage cleanup.
* Added Package::metadata method to retrieve a metadata object.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=743935
2007-12-02 12:04:57 +00:00
Paolo Capriotti
b88aea051e Cleanup of Package classes as discussed on panel-devel.
* Add convenience constructor to the Package class.
* Make some methods const in PackageStructures.
* Use QByteArray to store keys in PackageStructures, so that they are compared
  by value, and not by address.
* Add a test checking that the path to the metadata file is retrieved correctly.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=741935
2007-11-26 19:16:40 +00:00
Bertjan Broeksema
a7d2c9d782 - The metadata.desktop file is obligatory now for each package.
- Adjusted tests to reflect the fact that the metadata.desktop file is
  obligatory now.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734451
2007-11-08 22:13:13 +00:00
Aaron J. Seigo
4c55dd3d74 SVN_SILENT: a bit of a note here to add to the todo
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732882
2007-11-04 23:38:07 +00:00
Bertjan Broeksema
3b744c6a23 - Added a test for both Package::filePath() methods.
- Changed Package::filePath(type, filename)
  It always prepends the basePath now and only appends the filename if 
  filename != QString(). What i did understand from the api docs this is
  the intended behaviour.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732292
2007-11-03 12:22:21 +00:00
Bertjan Broeksema
c9ff90ec0e - Started woprking on package tests for a PlasmoidPackage.
- Fixed behavior of Package::isValid()

Reviewed by aseigo.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732191
2007-11-03 01:50:57 +00:00
Andrea Diamantini
1c0a23d7d7 Setting right release notes..
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=730503
2007-10-28 23:52:29 +00:00
Laurent Montel
36877e4e94 Fix mem leak
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729963
2007-10-27 14:27:25 +00:00
Aaron J. Seigo
9fa9cb07eb now that we return keys, we need to get the paths explicitly.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=727893
2007-10-22 01:36:08 +00:00
Andrea Diamantini
002e90a572 fix a little problem with addLocalDirectory() call in
createPackage() function.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=726808
2007-10-19 01:03:21 +00:00
Andreas Pakulat
70f0a9f9be Merge the KConfig branch. This are the 3 main modules (+kdeadmin), which are
needed now because friday is the last BC day. The rest of the modules will
follow as fast as my laptop allows.

svn path=/trunk/KDE/kdelibs/; revision=721704
2007-10-05 22:21:25 +00:00
Aaron J. Seigo
db4a7ebe61 copyright cleanups:
* Copyright (C) -> Copyright
* add "or later" clause to files that i have the sole copyright on
* add current year (2007) to my copyrights where it was missing

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696946
2007-08-06 11:20:02 +00:00
Laurent Montel
e6988faf49 Adapt to new KWarning/kFatal/kDebug api
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695877
2007-08-03 06:59:24 +00:00
Riccardo Iaconelli
5aaccf0489 The applets now can associate with (one or more) certain mimetypes, and be called when that mime is dragged onto the desktop. Very rudimental for the moment, we should pass the name of the file to the applet. Added some copyrights I missed in the past.
Aaron: your turn now to discover the 'Mimetypes' key problem.
CCMAIL: aseigo@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=694676
2007-07-31 10:52:05 +00:00
Aaron J. Seigo
6b9842aa5e const correctness
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=691240
2007-07-23 07:26:28 +00:00
Aaron J. Seigo
dd7b8b306b ebn fixes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=691079
2007-07-22 22:01:10 +00:00
Aaron J. Seigo
af043ca588 too tired to do much of anything else, i figured i could fix some ebn issues
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690173
2007-07-20 08:06:27 +00:00
Aaron J. Seigo
98e4e20fe2 * add createPackage to Package
* remove Packager since it has no point in life anymore

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690116
2007-07-20 04:23:27 +00:00
Aaron J. Seigo
43a98e8fc1 automatically register packages with sycoca
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690112
2007-07-20 04:07:00 +00:00
Aaron J. Seigo
11cba27eee * dissallow copying of PackageStructure as it has a dptr but no copy ctor
* Package::isValid() checks if the Package is valid, e.g. all required files and dirs are present
* add methods to PackageStructure which return just the required bits

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=690102
2007-07-20 03:21:40 +00:00
Aaron J. Seigo
f253225fba SVN_SILENT: yes that monday has come and gone
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=689388
2007-07-18 06:23:29 +00:00
Riccardo Iaconelli
cf7be10b37 Speed improvements, as reported by EBN
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=683241
2007-07-04 12:55:07 +00:00
Aaron J. Seigo
eb5522104a add the non-gui packaging files to libplasma
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=676505
2007-06-17 00:25:16 +00:00