Projects/Plasma/Tokamak1: Difference between revisions

From KDE TechBase
mNo edit summary
 
(188 intermediate revisions by 10 users not shown)
Line 1: Line 1:
== API Reviews ==
== API Reviews ==


=== Plasma::Theme ===
=== <s>Plasma::Theme</s> ===


* self() -> default()
* <s>self() -> default() :'''NOTE: default is a C++ keyword, defaultTheme() perhaps?'''</s>
* set application dies, use KGlobal instead
* <s>set application dies, use KGlobal instead</s>
* implementation note: Theme::Private::config() shouldn't open config everytime
* <s>implementation note: Theme::Private::config() shouldn't open config everytime</s>
* image() -> imagePath()
* <s>image() -> imagePath()</s>
* colors() -> KColorScheme colorScheme()
* <s>colors() -> KColorScheme colorScheme()</s>
* color methods -> color(ColorRole) (enum)
* <s>color methods -> color(ColorRole) (enum)</s>
* font methods -> font(RontRole) (enum)
* <s>font methods -> font(RontRole) (enum)</s>
* compositingActive -> windowTranslucencyEnabled (out of place?)
* <s>compositingActive -> windowTranslucencyEnabled (out of place?)</s>
* changed() -> themeChanged()
* <s>changed() -> themeChanged()</s>
* slots -> Q_PRIVATE_SLOT
* <s>slots -> Q_PRIVATE_SLOT</s>


=== Plasma::Corona ===
=== <s>Plasma::Corona</s> ===


* Remove constructor with size parameters
* <s>Remove constructor with size parameters</s>
* Remove isKioskImmutable() -> protected
* <s>Remove isKioskImmutable() -> protected</s> isImmutable() setIsImmutable() and isKioskImmutable() became immutability() and setImmutability()
* remove maxSizeHint
* <s>remove maxSizeHint</s>
* loadDefaultSetup protected and loadDefaultLayout
* <s>loadDefaultSetup protected and loadDefaultLayout</s>
* clearApplets -> clearContainments
* <s>clearApplets -> clearContainments</s>
* config -> private Note : config protected in containments and applets
* <s>config -> private Note : config protected in containments and applets</s>
* load/save applets -> load/save Layouts
    Note: remaining public for now applet needs it for Applet::globalConfig()
* scheduleConfigSync -> private
* <s>load/save applets -> load/save Layouts</s>
* addContainment not a slot ->split
* <s>scheduleConfigSync -> private</s>
** addContainment(id, delayedFlag) [private]
* <s>addContainment not a slot ->split</s>
** addContainment() [public]
** <s>addContainment(id, delayedFlag) [private]</s>
* containmentFor screen -> Not slot move to plasmaapp
** <s>addContainment() [public]</s>
* containments() not a slot
* <s>containmentFor screen -> Not slot</s>
* launch activated -> to plasmaapp
* <s>containments() not a slot</s>
* screenOwnerChanged -> to plasmaapp
* <s>launchActivated -> to plasmaapp</s>
* protected slots -> private  
* <s>screenOwnerChanged -> to plasmaapp</s>
    Note: it's not really desktop specific, so will stay here
* <s>protected slots -> private </s>


Terminology : layouts = Applets + containments organization
Terminology : layouts = Applets + containments organization


=== Plasma::Widget ===
=== Plasma::Widget ===
* deletion '''DONE'''
* <s>deletion</s>
* Create a tooltip manager
* Create a tooltip manager


=== Plasma::Svg ===
=== <s>Plasma::Svg</s> ===
* ContentType -> kill change methods using it to take bool and change their names to containsMultiplesImages
* <strike>ContentType -> kill change methods using it to take bool and change their names to containsMultiplesImages (hmm actually not understood what this means :D)</strike>
* elementRect -> return a QRectF
* <strike>elementRect -> return a QRectF</strike>
* elementExists -> hasElement
* <strike>elementExists -> hasElement</strike>
* matrixForElement -> private
* <strike>matrixForElement -> private</strike>
* size -> group with resize
* <strike>size -> group with resize</strike>
* move private slots to a pimple
* <strike>move private slots to a pimpl</strike>


=== Plasma::PanelSvg ===
=== <strike>Plasma::PanelSvg</strike> ===
* should inherits of Plasma::Svg
* <strike>should inherits of Plasma::Svg</strike>
* drawXborder -> Xborder
* <strike>drawXborder -> Xborder</strike>
* contentAtOrigin -> separate bool property
* <strike>contentAtOrigin -> separate bool property</strike>
* SvgPanel(path,parent) -> SvgPanel(parent)
* <strike>SvgPanel(path,parent) -> SvgPanel(parent)</strike>
* setFile + file() -> setImagePath + imagePath() NOTE : same modification in svg and theme classes
* <strike>setFile + file() -> setImagePath + imagePath() NOTE : same modification in svg and theme classes</strike>
* setBorderFlags + borderFlags() -> setEnabledBorders + enabledBorders
* <strike>setBorderFlags + borderFlags() -> setEnabledBorders + enabledBorders</strike>
* add resize(x,y)
* <strike>add resize(x,y)</strike>
* setPrefix ->setElementsPrefix
* <strike>setPrefix ->setElementsPrefix</strike>
* updateSizes() -> Q_PRIVATE_SLOT
* <strike>updateSizes() -> Q_PRIVATE_SLOT</strike>
* pos + setPos died -> pos added to paint
* <strike>pos + setPos died -> pos added to paint</strike>
* setLocation() -> setElementPrefix(enum)
* <strike>setLocation() -> setElementPrefix(enum)</strike>
* location() -> died
* <strike>location() -> died</strike>


=== Plasma::Applet ===
=== Plasma::Applet ===
 
* <s>remainSquare()+setAspectRatioMode()->merge using our own aspect ratio mode enun</s>
* inherits QGraphicsWidget
* category()+name()+pluginName() dies->replaced by pluginInfo()
* init()->protecgted+Corona::loadLayout() is friend
  <!> pluginInfo() should return a hand-made KPluginInfo if id->appletDescription isValid()
* config() methods->protected
* <s>resetConfigurationObject()->pimpl</s>
* globalConfig()->protected
* <s>watchForMouseMove()-> ??? (the suggested registerDragHandles is a very bad name)</s>
* configXml()->KConfigSkeletonconfigScheme()
* <s>protected setBackgroundHints() + public backgroundHings() const</s>; <s>as a result (set)DrawStandardBackground() dies</s>
* constraintUpdated()->constraintEvent()+protected
  <s>Note: being protected AppletScript can't change it anymore: AppletScript friend of Applet?</s>
* <s>(set)configNeeded()->(is|set)ConfigurationRequired()+set  protected</s>
* <s>shape() dies</s>
* <s>*Opacity() dies</s>
* <s>launchActivated()-> releaseVisualFocus()</s>
* <s>configXml() -> configScheme()</s>
* <s>contextActions()->const+contextualActions()</s>
* <s>inherits QGraphicsWidget</s>
* <s>init()->protecgted+Corona::loadLayout() is friend</s>
* <s>config() methods->protected.</s>
* <s>globalConfig()->protected</s>
    Note: It has been decided the above two functions will remain public because if an applet uses an external QWidget it will have to access the configuration of the applet
* <s>constraintUpdated()->constraintEvent()+protected</s>
     Note: check again corona for events like methods
     Note: check again corona for events like methods
* formFactors()->non virtual + get the containment impl there
* <s>formFactors()->non virtual + get the containment impl there
   ==>Plasma::Containment::Private inherits Plasma::Applet::Private
   ==>Plasma::Containment::Private inherits Plasma::Applet::Private</s>
* location-> Plasma::Containment::Private
* <s>location-> Plasma::Containment::Private</s>
* remainSquare()+setAspectRaioMode()->merge using our own aspect ratio mode enun
* <s>knownApplets()->listAppletInfo()</s>
* knownApplets()->listAppletInfo()
* <s>knownAppletsForMimetype()->listAppletInfoForMimeType()</s>
-------------forMimetype()->listAppletInfoForMimetype()
* <s>knownCategories()->listCategories()</s>
* knownCategories()->listCategories()
<s>Note:  known*()->list*()</s>
Note:  known*()->list*()


* because of load(), ctors->protected
* <s>because of load(), ctors->protected</s>
* category()+name()+pluginName() dies->replaced by pluginInfo()
  Note: containment wants to construct an Applet directly when
   <!> plugInfo() should return a hand-made kPlungInfo if id->appletDescription isValid()
  creates the one with the failed to launch error message,
* color() die! die! die!
   but even if it's friend of applet it does that in the dptr,
* isKioskmmutable()->pimpl
  and this somewhere compiles somewhere not, generally not good.
* (set)DrawStandardBackground()->(is|set)StandardBackgroundEnabled()
* <s>color() die! die! die!</s>
* failedtoLaunch()->hasfailedToLaunch()
* <s>isKioskmmutable()->pimpl</s> isImmutable() setIsImmutable() and isKioskImmutable() became immutability() and setImmutability()
* setFailedToLaunch()->protected
* <s>failedtoLaunch()->hasfailedToLaunch()</s>
* (set)configNeeded()->(is|set)ConfigurationRequired()+set  protected
* <s>setFailedToLaunch()->protected</s>
* hasCofigurationIntergace()-comst
* <s>hasCofigurationInterface()-> const</s>
* setHasConfigurationInterface()->protected
* <s>setHasConfigurationInterface()->protected</s>
* contextActions()->comst+comtextualActions()
* <s>kill *StandardBackground()+*ShadowShown()</s>
* kill *StandardBackground()+*ShadowShown()
   ->enum BackgroundHint {NoBackground=0, StandardBackground, ShadowedBackground}
   ->enum BackgroundHint {NoBackground=0, StandardBackground, ShadowedBackground}
   +QFlag
   +QFlag
protected setBackgroundHints() + public backgroundHings() const
* <s>set(is)containment()->set(ActsAs)Containment()+setter is protected</s>
* set(is)containment()->set(ActsAs)Containment()+setter is protected
* <s>raise()->slot+addlower()</s>
* raise()->slot+addlower()
* <s>requestFocus() dies</s>
* shape() dies
* <s>showConfigurationInterface()->nonvirtual</s>
* resetConfigurationObject()->pimpl
* <s>createconfigurationInterface()->virtual protected, not slot</s>
* *Opacity() dies
* <s>Flush UpdatedConstraints()->Flush PendingCostraintEvents()</s>
* requestFocus() dies
* <s>ThemeChanged()->Q_PRIVATE_SLOT</s>
* showConfigurationInterface()->nonvirtual
* <s>globalName(), instanceName()->pimpl</s>
* createconfigurationInterface()->virtual protected, not slot
* <s>watchForFocus()->dies</s>
* Flush UpdatedConstraints()->Flush PendingCostraintEvents()
* <s>needFocus()->dies</s>
 
* <s>topLeft()->dies</s>
* launchActivated()->protected, releaseVisualFocus()
* <s>checkImmutability()->Q_PRIVATE_SLOT</s>
* ThemeChanged()->Q_PRIVATE_SLOT
* globalName(), instanceName()->pimpl
* watchForFocus()->dies
* watchForMouseMove()->registerDragHandles()
* needFocus()->dies
* topLeft()->dies
* checkImmutability()->Q_PRIVATE_SLOT


=== Plasma::Containments ===
=== Plasma::Containments(aseigo)  ===
* StyleOption::desktop dies
* List, Dict dies
* CutomContainment = 127 (Custom?)
* setContainmentType() -> protected
* setIsContainment() -> dies (meat in applet)
* formfactor() & location() in Applet
* setFormFactor() & setLocation() in Containment
* known...() -> list...()
* addApplet() -> split
** addApplet(name, args, point, size) [public]
** addApplet(name, args, point, size, id, delayedinit) [private]
* indexAt() dies, add QPointF to appletAdded()
* setScreen() & screen() & effectiveScreenPos() -> die
* (save|load)Constraints() -> pimpl
* emitLaunchActivated() -> see Applet, maybe not public
* addToolBoxTool() -> addToolBoxAction(action)
* addToolBoxTool() -> addToolBoxAction(action)
* add removeToolBoxAction(action)
* add removeToolBoxAction(action)
* containmentConstraingUpdated() -> pimpl
* <s>formfactor() & location() in Applet</s>
* add setToolBoxExpanded(bool) slot
* <s>setFormFactor() & setLocation() in Containment</s>
* (show|hide)ToolBox() -> (expand|unexpand)ToolBox()
* <s>StyleOption::desktop dies</s>
* launchActivated() -> see Applet
* <s>List, Dict dies</s>
* zoomIn() & zoomOut() signals -> zoomRequested(containment, direction enum)
* <s>CustomContainment = 127</s>
* showAddWidgets() -> showAddWidgetsInterface(QPointF)
* <s>setContainmentType() -> protected</s>
* screenChanged() -> dies (move to plasma app ScreenManager)
* <s>setIsContainment() -> dies (meat in applet)</s>
* toggleDesktopImmutability() -> Q_PRIVATE_SLOT
* <s>known...() -> list...()</s>
* zoomIn() -> Q_PRIVATE_SLOT
* <s>addApplet() -> split</s>
* createLayout() -> dies
** <s>addApplet(name, args, point, size) [public]</s>
* proected slots (except dropEvent()) & private slots & methods ->pimpl & Q_PRIVATE_SLOT
** <s>addApplet(name, args, point, size, id, delayedinit) [private]</s>
* <s>indexAt() dies, add QPointF to appletAdded()</s>
* <s>setScreen() & screen() & effectiveScreenPos() -> die</s> will remain due to PUI relevance - aseigo
* <s>(save|load)Constraints() -> pimpl</s>
* <s>emitLaunchActivated() -> see Applet, maybe not public</s>
* <s>containmentConstraingUpdated() -> pimpl</s>
* <s>add setToolBoxExpanded(bool) slot</s>
* <s>(show|hide)ToolBox() -> (expand|unexpand)ToolBox()</s>
* <s>launchActivated() -> see Applet</s>
* <s>zoomIn() & zoomOut() signals -> zoomRequested(containment, direction enum)</s>
* <s>showAddWidgets() -> showAddWidgetsInterface(QPointF)</s>
* <s>screenChanged() -> dies (move to plasma app ScreenManager)</s>
* <s>toggleDesktopImmutability() -> Q_PRIVATE_SLOT</s>
* <s>zoomIn() -> Q_PRIVATE_SLOT</s>
* <s>createLayout() -> dies</s>
* <s>protected slots (except dropEvent()) & private slots & methods ->pimpl & Q_PRIVATE_SLOT</s>


=== Plasma::DataEngine ===
=== <s>Plasma::DataEngine</s> ===
* sourceDict() -> containerDict()
* <s>sourceDict() -> containerDict()</s>
* engineName() -> name() + add protected setName()
* <s>engineName() -> name() + add protected setName()</s>
* connectSource() -> updateInterval -> pollingInterval
* <s>connectSource() -> updateInterval -> pollingInterval</s>
* connectAllSources() -> updateInterval -> pollingInterval
* <s>connectAllSources() -> updateInterval -> pollingInterval</s>
* ref() & deref() & isUsed() -> private
* <s>ref() & deref() & isUsed() -> private</s>
* setIcon() -> protected
* <s>setIcon() -> protected</s>
* newSource -> sourceAdded()
* <s>newSource -> sourceAdded()</s>
* sourceRequested -> sourceRequestEvent()
* <s>sourceRequested -> sourceRequestEvent()</s>
* updateSource() -> updateSourceEvent()
* <s>updateSource() -> updateSourceEvent()</s>
* setData() -> SHALL NOT remove source (fix APIDOX)
* <s>setData() -> SHALL NOT remove source (fix APIDOX)</s>
* clearData() -> removeAllData()
* <s>clearData() -> removeAllData()</s>
* setSourceLimit() -> DIE! DIE! DIE!
* <s>setSourceLimit() -> DIE! DIE! DIE!</s>
* clearSources() -> removeAllSources()
* <s>clearSources() -> removeAllSources()</s>
* checkForUpdats() -> scheduleSourcesUpdated()
* <s>checkForUpdates() -> scheduleSourcesUpdated()</s>
* internalUpdateSource() -> Q_PRIVATE_SLOT
* <s>internalUpdateSource() -> Q_PRIVATE_SLOT</s>


=== Plasma::DataEngineManager ===
=== <s>Plasma::DataEngineManager</s> ===
* ctor+dtor private
* <s>ctor+dtor private</s>
* knownEngines()->listAllEngines()
* <s>knownEngines()->listAllEngines()</s>
* get()->engine()
* <s>get()->engine()</s>
* (un)load()->(un)loadEngine()
* <s>(un)load()->(un)loadEngine()</s>


=== Plasma::DataContainer ===
=== <s>Plasma::DataContainer</s> ===
* clearData()->removeAllData()
* <s>clearData()->removeAllData()</s>
* checkForUpdate()->protected
* <s>checkForUpdate()->protected</s>
* int timeSinceLastUpdate()->protected+return uint
* <s>int timeSinceLastUpdate()->protected+return uint</s>
* hasUpdates()->pimpl
* <s>hasUpdates()->pimpl</s>
* setNeedsUpdate()->pimpl
* <s>setNeedsUpdate()->pimpl</s>
* checkUsage()->pimpl
* <s>checkUsage()->pimpl</s>
* connectVisualization()->not slot
* <s>connectVisualization()->not slot</s>
* unused()->becameUnused()
* <s>unused()->becameUnused()</s>
* requestUpdate()->updateRequested()
* <s>requestUpdate()->updateRequested()</s>


=== Plasma::View ===
=== <s>Plasma::View</s> ===
* (set)DrawWallpaper() -> (set|is)WallpaperEnabled()
 
* (set)Screen() -> plasma app
* <s>(set)DrawWallpaper() -> (set|is)WallpaperEnabled()</s>
* (set)Desktop() -> plasma app
* <s>(set)Screen() -> plasma app</s> going to leave this here, as the screen management is not manditory, but useful for any PUI - aseigo
* effectiveDesktop -> plasma app
* <s>(set)Desktop() -> plasma app</s> going to leave this here, as the screen management is not manditory, but useful for any PUI - aseigo
* config() -> protected
* <s>effectiveDesktop -> plasma app</s> going to leave this here, as the screen management is not manditory, but useful for any PUI - aseigo
* updateSceneRect() -> Q_PRIVATE_SLOT
* <s>config() -> protected</s>
* initGraphicsView() -> pimpl
* <s>updateSceneRect() -> Q_PRIVATE_SLOT</s>
* <s>initGraphicsView() -> pimpl</s>


=== Plasma::AbstractRunner ===
=== Plasma::AbstractRunner ===
* SlowSpeed before NormalSpeed
* <s>SlowSpeed before NormalSpeed</s>
* load() -> loadAll() + load()  no = QString() for whitelist
* <s>load() -> loadAll()</s> + load()  no = QString() for whitelist
* ctors -> protected
* <s>ctors -> protected</s>
* confg() -> protected
* <s>confg() -> protected</s>
* match() -> protected
* match() -> protected
* (set)hasMatchOptions() -> (set)hasRunOptions()
* <s>(set)hasMatchOptions() -> (set)hasRunOptions()</s> -> (set)hasExecOptions()? (proposed by bettio)
* createMatchOptions() -> createRunOptions()
* <s>createMatchOptions() -> createRunOptions()</s> -> createExecOptions()? (proposed by bettio)
* runnerName() -> name()
* <s>runnerName() -> name()</s>
* init() -> Q_PRIVATE_SLOT
* init() -> Q_PRIVATE_SLOT


Line 202: Line 207:
* switch to value based for matches too
* switch to value based for matches too
* matchesChanged() emitted from performMatch()
* matchesChanged() emitted from performMatch()
* resetSearchTerm(QString) -> reset()
* <s>resetSearchTerm(QString) -> reset()</s>
* mimetype() -> mimeType()
* <s>mimetype() -> mimeType()</s>
* addMatchesTo() -> copyMatchesTo()
* <s>addMatchesTo() -> copyMatchesTo() (copy -> move)</s>
* determineType() -> pimpl
* determineType() -> pimpl
* clearMatches() -> removeAllMatches()
* <s>clearMatches() -> removeAllMatches()</s>


=== Plasma::Phase -> Plasma::AnimationController ===
=== Plasma runner terminology ===
* Animation merges with ElementAnimation -> AppearAnimation,DisappearAnimation,ActivateAnimation
* <s>Plasma::SearchContext => Plasma::RunnerContext</s>
* SlideInMovement,SlideOutMovement,FastSlideInMovement, FastSlideOutMovement
* <s>Plasma::SearchMatch => Plasma::QueryMatch</s>
* AnimId dies -> use int
* <s>In the RunnerContext, RunnerResult and AbstractRunner APIs:</s>
* constructor + destructor private
  * search term => query
* animateItem, moveItem return int
* add stopItemAnimation(int)
* animationCompleted() -> animationFinished()
* same for others signal
* protected slots -> Q_PRIVATE_SLOT
* init -> pimpl
* setAnimationPixmap -> setInitialPixmap
* animationResult() -> currentPixmap


=== Plasma::Animator ===
=== <s>Plasma::Phase -> Plasma::Animator</s> ===
* FramesPerSeconds -> animationFramesPerSeconds, elementAnimationFramesPerSeconds,movementAnimationFramesPerSeconds
* <s>Animation merges with ElementAnimation -> AppearAnimation,DisappearAnimation,ActivateAnimation</s>
* same for duration and curve
* <s>SlideInMovement,SlideOutMovement,FastSlideInMovement, FastSlideOutMovement</s>
* appear -> itemAppear
* <s>AnimId dies -> use int</s>
* disappear -> itemDisappear
* <s>constructor + destructor private</s>
* activate -> itemActivated
* <s>animateItem, moveItem return int</s>
* slide -> itemSlide
* <s>add stopItemAnimation(int)</s>
* elementX -> should use progress, not frame
* <s>animationCompleted() -> animationFinished()</s>
* <s>same for others signal</s>
* <s>protected slots -> Q_PRIVATE_SLOT</s>
* <s>init -> pimpl</s>
* <s>setAnimationPixmap -> setInitialPixmap</s>
* <s>animationResult() -> currentPixmap</s>


=== Plasma::GlApplet ===
=== <s>Plasma::AnimationDriver</s> ===
* makeCurrent -> pimpl
* <s>FramesPerSeconds -> animationFramesPerSeconds, elementAnimationFramesPerSeconds,movementAnimationFramesPerSeconds</s>
* <s>same for duration and curve</s>
* <s>appear -> itemAppear</s>
* <s>disappear -> itemDisappear</s>
* <s>activate -> itemActivated</s>
* <s>slide -> itemSlide</s>
* <s>elementX -> should use progress, not frame</s>


=== Plasma::Dialog ===
=== <s>Plasma::GlApplet</s> ===
* themeUpdated -> Q_PRIVATE_SLOT
* <s>makeCurrent -> pimpl</s>: actually, this is required to be public - aseigo


=== Plasma::Delegate ===
=== Plasma::Delegate ===
* *columType* -> go to device Notifier
(Marco Martin)
* constructor should have a parent parameter
* <nowiki>*</nowiki>columnType* -> device notifier
* constants + protected non virtual -> pimpl
  Needed for the delegate to know he must draw an icon smaller than the main one
* setRole -> setRoleMapping(QMap)
* <s>ctor should have parent param</s>
* roleMapping getter
* <s>constants ->pimpl</s>
* <s>protected non virtual</s> -> pimpl
  The protected methods are needed only by subclasses to know where to paint so they are still needed
* <s>setRole()->setRoleMapping(QMap) + add roleMapping() getter</s>
* fixme: copy rhs of whiteboard (missing)
 
=== <s>Plasma::Dialog</s> ===
(Ménard Alexis)
* <s>themeUpdated -> Q_PRIVATE_SLOT</s>


=== Plasma::AppletBrowserWidget ===
=== <s>Plasma::AppletBrowserWidget</s> ===
* remove containment from constructor
* <s>remove containment from constructor</s>
* protected slots -> Q_PRIVATE_SLOTS
* <s>protected slots -> Q_PRIVATE_SLOTS</s>
* private methods -> pimpl
* <s>private methods -> pimpl</s>


=== Plasma::AppletBrowser ===
=== <s>Plasma::AppletBrowser</s> ===
* remove containment from constructor
* <s>remove containment from constructor</s>


NOTE : AppletBrowser and AppletBrowserWidget should be in different .h
NOTE : AppletBrowser and AppletBrowserWidget should be in different .h


=== Plasma::PackageMetadata ===
=== <s>Plasma::PackageMetadata</s> ===
* isComplete -> isValid
* <s>isComplete -> isValid</s>
* write() -> remove icon parameter
* <s>write() -> remove icon parameter</s>


=== Plasma::PackageStructure ===
=== Plasma::PackageStructure(josebur) ===
* must not inherits of QObject
* must not inherits of QObject
* QList<char *> -> QStringList
* QList<char *> -> QStringList
* const char * -> QString
* const char * -> QString
* required -> isRequired()
* <s>required -> isRequired()</s>
* (set)(Default)Mimetypes -> (set)(Default)Mimetypes ??
* (set)(Default)Mimetypes -> (set)(Default)Mimetypes ??
* uninstallPackage -> packageName instead of param package
* <s>uninstallPackage -> packageName instead of param package</s>
* pathChanged -> died
* <s>pathChanged -> died</s>
* Xtypes() -> XFormat()
* Xtypes() -> XFormat()


=== Plasma::Package ===
=== Plasma::Package(josebur) ===
* const char * -> QString
* const char * -> QString
* knownPackages -> listInstalled
* <s>knownPackages -> listInstalled</s>
* installPackage -> install
* <s>installPackage -> install</s> leave it
* registerPackage -> register
* <s>registerPackage -> register</s> '''Keyword!''' leave it
* createPackage -> create
* <s>createPackage -> create</s> leave it
* Missing uninstall
* Missing uninstall


=== Plasma::ScriptEngine ===
=== Plasma::ScriptEngine ===
* contructor -> protected
* <s>contructor -> protected</s>
* protected slots -> not slots
* <s>protected slots -> not slots</s>
* knowLanguages -> getScriptApis() ??
* knowLanguages -> getScriptApis() ??
* loadScriptEngine() -> language param become a scriptAPI
* loadScriptEngine() -> language param become a scriptAPI
Line 284: Line 300:


=== Plasma::AppletScript ===
=== Plasma::AppletScript ===
* contentSizeHint -> died
* <s>contentSizeHint -> died</s>
* constraintsUpdated -> constraintsEvent
* <s>constraintsUpdated -> constraintsEvent</s>
* contextActions -> contextualActions
* <s>contextActions -> contextualActions</s>
* change the K_EXPORT stuff to support several plugins by lib
* change the K_EXPORT stuff to support several plugins by lib


=== Plasma::RunnerScript ===
=== Plasma::RunnerScript ===
* change to new runner API
* change to new runner API
* protected slots -> not slots
* <s>protected slots -> not slots</s>


=== Plasma::DataEngineScript ===
=== <s>Plasma::DataEngineScript</s> ===
* Change to new API
* <s>Change to new API</s>


== Introduction Hotpoint List ==
== Personal Hotpoints Shared During Introductory Session ==


* Get QScript script bindings loading
* Get QScript script bindings loading

Latest revision as of 18:56, 2 May 2008

API Reviews

Plasma::Theme

  • self() -> default()  :NOTE: default is a C++ keyword, defaultTheme() perhaps?
  • set application dies, use KGlobal instead
  • implementation note: Theme::Private::config() shouldn't open config everytime
  • image() -> imagePath()
  • colors() -> KColorScheme colorScheme()
  • color methods -> color(ColorRole) (enum)
  • font methods -> font(RontRole) (enum)
  • compositingActive -> windowTranslucencyEnabled (out of place?)
  • changed() -> themeChanged()
  • slots -> Q_PRIVATE_SLOT

Plasma::Corona

  • Remove constructor with size parameters
  • Remove isKioskImmutable() -> protected isImmutable() setIsImmutable() and isKioskImmutable() became immutability() and setImmutability()
  • remove maxSizeHint
  • loadDefaultSetup protected and loadDefaultLayout
  • clearApplets -> clearContainments
  • config -> private Note : config protected in containments and applets
   Note: remaining public for now applet needs it for Applet::globalConfig()
  • load/save applets -> load/save Layouts
  • scheduleConfigSync -> private
  • addContainment not a slot ->split
    • addContainment(id, delayedFlag) [private]
    • addContainment() [public]
  • containmentFor screen -> Not slot
  • containments() not a slot
  • launchActivated -> to plasmaapp
  • screenOwnerChanged -> to plasmaapp
   Note: it's not really desktop specific, so will stay here
  • protected slots -> private

Terminology : layouts = Applets + containments organization

Plasma::Widget

  • deletion
  • Create a tooltip manager

Plasma::Svg

  • ContentType -> kill change methods using it to take bool and change their names to containsMultiplesImages (hmm actually not understood what this means :D)
  • elementRect -> return a QRectF
  • elementExists -> hasElement
  • matrixForElement -> private
  • size -> group with resize
  • move private slots to a pimpl

Plasma::PanelSvg

  • should inherits of Plasma::Svg
  • drawXborder -> Xborder
  • contentAtOrigin -> separate bool property
  • SvgPanel(path,parent) -> SvgPanel(parent)
  • setFile + file() -> setImagePath + imagePath() NOTE : same modification in svg and theme classes
  • setBorderFlags + borderFlags() -> setEnabledBorders + enabledBorders
  • add resize(x,y)
  • setPrefix ->setElementsPrefix
  • updateSizes() -> Q_PRIVATE_SLOT
  • pos + setPos died -> pos added to paint
  • setLocation() -> setElementPrefix(enum)
  • location() -> died

Plasma::Applet

  • remainSquare()+setAspectRatioMode()->merge using our own aspect ratio mode enun
  • category()+name()+pluginName() dies->replaced by pluginInfo()
  <!> pluginInfo() should return a hand-made KPluginInfo if id->appletDescription isValid()
  • resetConfigurationObject()->pimpl
  • watchForMouseMove()-> ??? (the suggested registerDragHandles is a very bad name)
  • protected setBackgroundHints() + public backgroundHings() const; as a result (set)DrawStandardBackground() dies
  Note: being protected AppletScript can't change it anymore: AppletScript friend of Applet?
  • (set)configNeeded()->(is|set)ConfigurationRequired()+set protected
  • shape() dies
  • *Opacity() dies
  • launchActivated()-> releaseVisualFocus()
  • configXml() -> configScheme()
  • contextActions()->const+contextualActions()
  • inherits QGraphicsWidget
  • init()->protecgted+Corona::loadLayout() is friend
  • config() methods->protected.
  • globalConfig()->protected
    Note: It has been decided the above two functions will remain public because if an applet uses an external QWidget it will have to access the configuration of the applet
  • constraintUpdated()->constraintEvent()+protected
   Note: check again corona for events like methods
  • formFactors()->non virtual + get the containment impl there
  ==>Plasma::Containment::Private inherits Plasma::Applet::Private
  • location-> Plasma::Containment::Private
  • knownApplets()->listAppletInfo()
  • knownAppletsForMimetype()->listAppletInfoForMimeType()
  • knownCategories()->listCategories()

Note: known*()->list*()

  • because of load(), ctors->protected
  Note: containment wants to construct an Applet directly when
  creates the one with the failed to launch error message,
  but even if it's friend of applet it does that in the dptr,
  and this somewhere compiles somewhere not, generally not good.
  • color() die! die! die!
  • isKioskmmutable()->pimpl isImmutable() setIsImmutable() and isKioskImmutable() became immutability() and setImmutability()
  • failedtoLaunch()->hasfailedToLaunch()
  • setFailedToLaunch()->protected
  • hasCofigurationInterface()-> const
  • setHasConfigurationInterface()->protected
  • kill *StandardBackground()+*ShadowShown()
 ->enum BackgroundHint {NoBackground=0, StandardBackground, ShadowedBackground}
  +QFlag
  • set(is)containment()->set(ActsAs)Containment()+setter is protected
  • raise()->slot+addlower()
  • requestFocus() dies
  • showConfigurationInterface()->nonvirtual
  • createconfigurationInterface()->virtual protected, not slot
  • Flush UpdatedConstraints()->Flush PendingCostraintEvents()
  • ThemeChanged()->Q_PRIVATE_SLOT
  • globalName(), instanceName()->pimpl
  • watchForFocus()->dies
  • needFocus()->dies
  • topLeft()->dies
  • checkImmutability()->Q_PRIVATE_SLOT

Plasma::Containments(aseigo)

  • addToolBoxTool() -> addToolBoxAction(action)
  • add removeToolBoxAction(action)
  • formfactor() & location() in Applet
  • setFormFactor() & setLocation() in Containment
  • StyleOption::desktop dies
  • List, Dict dies
  • CustomContainment = 127
  • setContainmentType() -> protected
  • setIsContainment() -> dies (meat in applet)
  • known...() -> list...()
  • addApplet() -> split
    • addApplet(name, args, point, size) [public]
    • addApplet(name, args, point, size, id, delayedinit) [private]
  • indexAt() dies, add QPointF to appletAdded()
  • setScreen() & screen() & effectiveScreenPos() -> die will remain due to PUI relevance - aseigo
  • (save|load)Constraints() -> pimpl
  • emitLaunchActivated() -> see Applet, maybe not public
  • containmentConstraingUpdated() -> pimpl
  • add setToolBoxExpanded(bool) slot
  • (show|hide)ToolBox() -> (expand|unexpand)ToolBox()
  • launchActivated() -> see Applet
  • zoomIn() & zoomOut() signals -> zoomRequested(containment, direction enum)
  • showAddWidgets() -> showAddWidgetsInterface(QPointF)
  • screenChanged() -> dies (move to plasma app ScreenManager)
  • toggleDesktopImmutability() -> Q_PRIVATE_SLOT
  • zoomIn() -> Q_PRIVATE_SLOT
  • createLayout() -> dies
  • protected slots (except dropEvent()) & private slots & methods ->pimpl & Q_PRIVATE_SLOT

Plasma::DataEngine

  • sourceDict() -> containerDict()
  • engineName() -> name() + add protected setName()
  • connectSource() -> updateInterval -> pollingInterval
  • connectAllSources() -> updateInterval -> pollingInterval
  • ref() & deref() & isUsed() -> private
  • setIcon() -> protected
  • newSource -> sourceAdded()
  • sourceRequested -> sourceRequestEvent()
  • updateSource() -> updateSourceEvent()
  • setData() -> SHALL NOT remove source (fix APIDOX)
  • clearData() -> removeAllData()
  • setSourceLimit() -> DIE! DIE! DIE!
  • clearSources() -> removeAllSources()
  • checkForUpdates() -> scheduleSourcesUpdated()
  • internalUpdateSource() -> Q_PRIVATE_SLOT

Plasma::DataEngineManager

  • ctor+dtor private
  • knownEngines()->listAllEngines()
  • get()->engine()
  • (un)load()->(un)loadEngine()

Plasma::DataContainer

  • clearData()->removeAllData()
  • checkForUpdate()->protected
  • int timeSinceLastUpdate()->protected+return uint
  • hasUpdates()->pimpl
  • setNeedsUpdate()->pimpl
  • checkUsage()->pimpl
  • connectVisualization()->not slot
  • unused()->becameUnused()
  • requestUpdate()->updateRequested()

Plasma::View

  • (set)DrawWallpaper() -> (set|is)WallpaperEnabled()
  • (set)Screen() -> plasma app going to leave this here, as the screen management is not manditory, but useful for any PUI - aseigo
  • (set)Desktop() -> plasma app going to leave this here, as the screen management is not manditory, but useful for any PUI - aseigo
  • effectiveDesktop -> plasma app going to leave this here, as the screen management is not manditory, but useful for any PUI - aseigo
  • config() -> protected
  • updateSceneRect() -> Q_PRIVATE_SLOT
  • initGraphicsView() -> pimpl

Plasma::AbstractRunner

  • SlowSpeed before NormalSpeed
  • load() -> loadAll() + load() no = QString() for whitelist
  • ctors -> protected
  • confg() -> protected
  • match() -> protected
  • (set)hasMatchOptions() -> (set)hasRunOptions() -> (set)hasExecOptions()? (proposed by bettio)
  • createMatchOptions() -> createRunOptions() -> createExecOptions()? (proposed by bettio)
  • runnerName() -> name()
  • init() -> Q_PRIVATE_SLOT

Plasma::SearchContext

  • switch to value based for matches too
  • matchesChanged() emitted from performMatch()
  • resetSearchTerm(QString) -> reset()
  • mimetype() -> mimeType()
  • addMatchesTo() -> copyMatchesTo() (copy -> move)
  • determineType() -> pimpl
  • clearMatches() -> removeAllMatches()

Plasma runner terminology

  • Plasma::SearchContext => Plasma::RunnerContext
  • Plasma::SearchMatch => Plasma::QueryMatch
  • In the RunnerContext, RunnerResult and AbstractRunner APIs:
 * search term => query

Plasma::Phase -> Plasma::Animator

  • Animation merges with ElementAnimation -> AppearAnimation,DisappearAnimation,ActivateAnimation
  • SlideInMovement,SlideOutMovement,FastSlideInMovement, FastSlideOutMovement
  • AnimId dies -> use int
  • constructor + destructor private
  • animateItem, moveItem return int
  • add stopItemAnimation(int)
  • animationCompleted() -> animationFinished()
  • same for others signal
  • protected slots -> Q_PRIVATE_SLOT
  • init -> pimpl
  • setAnimationPixmap -> setInitialPixmap
  • animationResult() -> currentPixmap

Plasma::AnimationDriver

  • FramesPerSeconds -> animationFramesPerSeconds, elementAnimationFramesPerSeconds,movementAnimationFramesPerSeconds
  • same for duration and curve
  • appear -> itemAppear
  • disappear -> itemDisappear
  • activate -> itemActivated
  • slide -> itemSlide
  • elementX -> should use progress, not frame

Plasma::GlApplet

  • makeCurrent -> pimpl: actually, this is required to be public - aseigo

Plasma::Delegate

(Marco Martin)

  • *columnType* -> device notifier
  Needed for the delegate to know he must draw an icon smaller than the main one
  • ctor should have parent param
  • constants ->pimpl
  • protected non virtual -> pimpl
  The protected methods are needed only by subclasses to know where to paint so they are still needed
  • setRole()->setRoleMapping(QMap) + add roleMapping() getter
  • fixme: copy rhs of whiteboard (missing)

Plasma::Dialog

(Ménard Alexis)

  • themeUpdated -> Q_PRIVATE_SLOT

Plasma::AppletBrowserWidget

  • remove containment from constructor
  • protected slots -> Q_PRIVATE_SLOTS
  • private methods -> pimpl

Plasma::AppletBrowser

  • remove containment from constructor

NOTE : AppletBrowser and AppletBrowserWidget should be in different .h

Plasma::PackageMetadata

  • isComplete -> isValid
  • write() -> remove icon parameter

Plasma::PackageStructure(josebur)

  • must not inherits of QObject
  • QList<char *> -> QStringList
  • const char * -> QString
  • required -> isRequired()
  • (set)(Default)Mimetypes -> (set)(Default)Mimetypes ??
  • uninstallPackage -> packageName instead of param package
  • pathChanged -> died
  • Xtypes() -> XFormat()

Plasma::Package(josebur)

  • const char * -> QString
  • knownPackages -> listInstalled
  • installPackage -> install leave it
  • registerPackage -> register Keyword! leave it
  • createPackage -> create leave it
  • Missing uninstall

Plasma::ScriptEngine

  • contructor -> protected
  • protected slots -> not slots
  • knowLanguages -> getScriptApis() ??
  • loadScriptEngine() -> language param become a scriptAPI
  • add version number to loading

Plasma::AppletScript

  • contentSizeHint -> died
  • constraintsUpdated -> constraintsEvent
  • contextActions -> contextualActions
  • change the K_EXPORT stuff to support several plugins by lib

Plasma::RunnerScript

  • change to new runner API
  • protected slots -> not slots

Plasma::DataEngineScript

  • Change to new API

Personal Hotpoints Shared During Introductory Session

  • Get QScript script bindings loading
  • QScript Runners
  • Cool scripting demo
  • Webkit
  • Default set of components for 4.1
  • Clock applet library (and how to do that for other categories of applets)
  • Improve existing applets
  • Write new applets and engines
  • Panel and panel config saner/pretification
  • Kickoff UI
  • Applet handles
  • WoC
  • Video in plasma
  • Extenders
  • System tray applet
  • Keyboard shortcuts
  • Plasma::Service
  • Usability review
  • Documentation
    • Runtime
    • Dev
    • User
  • Top level window physics
  • Plasmoid grouping
  • Plasma configuration UI
  • Devices
  • API review
  • Generic webservice support
  • Theming
  • KIcon issues
  • tooltip love (flickering, hiding..)
  • krunner looks
  • lock desktop work properly
  • use createConfigurationInterface
  • panel toolbox
  • panel hiding
  • twitter improvements
  • Phase::Animator
  • theme installation from files