Projects/Plasma/Tokamak1

    From KDE TechBase
    Revision as of 20:18, 24 April 2008 by Bettio (talk | contribs) (*Completed() -> *Finished())

    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
    • load/save applets -> load/save Layouts
    • scheduleConfigSync -> private
    • addContainment not a slot ->split
      • addContainment(id, delayedFlag) [private]
      • addContainment() [public]
    • containmentFor screen -> Not slot move to plasmaapp
    • containments() not a slot
    • launchActivated -> to plasmaapp
    • screenOwnerChanged -> to plasmaapp
    • 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

    • inherits QGraphicsWidget
    • init()->protecgted+Corona::loadLayout() is friend
    • (NOTE: config will remain public) config() methods->protected.
    • (NOTE: globalConfig will remain public) 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
    
    • configXml()->KConfigSkeletonconfigScheme()
    • 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
    • remainSquare()+setAspectRatioMode()->merge using our own aspect ratio mode enun
    • knownApplets()->listAppletInfo()
    • knownAppletsForMimetype()->listAppletInfoForMimeType()
    • knownCategories()->listCategories()

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

    • because of load(), ctors->protected
    • category()+name()+pluginName() dies->replaced by pluginInfo()
      <!> pluginInfo() should return a hand-made KPluginInfo if id->appletDescription isValid()
    
    • color() die! die! die!
    • isKioskmmutable()->pimpl isImmutable() setIsImmutable() and isKioskImmutable() became immutability() and setImmutability()
    • (set)DrawStandardBackground()->(is|set)StandardBackgroundEnabled()
    • failedtoLaunch()->hasfailedToLaunch()
    • setFailedToLaunch()->protected
    • (set)configNeeded()->(is|set)ConfigurationRequired()+set protected
    • hasCofigurationInterface()-> const
    • setHasConfigurationInterface()->protected
    • contextActions()->const+contextualActions()
    • kill *StandardBackground()+*ShadowShown()
     ->enum BackgroundHint {NoBackground=0, StandardBackground, ShadowedBackground}
      +QFlag
    

    protected setBackgroundHints() + public backgroundHings() const

    • set(is)containment()->set(ActsAs)Containment()+setter is protected
    • raise()->slot+addlower()
    • shape() dies
    • resetConfigurationObject()->pimpl
    • *Opacity() dies
    • requestFocus() dies
    • showConfigurationInterface()->nonvirtual
    • createconfigurationInterface()->virtual protected, not slot
    • Flush UpdatedConstraints()->Flush PendingCostraintEvents()
    • launchActivated()->protected, releaseVisualFocus()
    • ThemeChanged()->Q_PRIVATE_SLOT
    • globalName(), instanceName()->pimpl
    • watchForFocus()->dies
    • watchForMouseMove()->registerDragHandles()
    • needFocus()->dies
    • topLeft()->dies
    • checkImmutability()->Q_PRIVATE_SLOT

    Plasma::Containments(aseigo)

    • StyleOption::desktop dies
    • List, Dict dies
    • CustomContainment = 127
    • 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)
    • add removeToolBoxAction(action)
    • 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
    • proected 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() DONE but move to pimpl?
    • requestUpdate()->updateRequested() DONE but move to pimpl?

    Plasma::View

    (Rob Scheepmaker (pinda))

    • (set)DrawWallpaper() -> (set|is)WallpaperEnabled()
    • (set)Screen() -> plasma app
    • (set)Desktop() -> plasma app
    • effectiveDesktop -> plasma app
    • 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()
    • createMatchOptions() -> createRunOptions()
    • 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::Phase -> Plasma::AnimationController

    • 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::Animator

    • 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
    • Dialog
      • themeUpdated()-> Q_PRIVATE_SLOT
    • Delegate
      • *columnType* -> device notifier
      • ctor should have parent param
      • constants + protected non virtual -> pimpl
      • setRole()->setRoleMapping(QMap) + add roleMapping() getter
      • fixme: copy rhs of whiteboard (missing)

    Plasma::Dialog

    (Ménard Alexis)

    • themeUpdated -> Q_PRIVATE_SLOT

    Plasma::Delegate

    • *columType* -> go to device Notifier
    • constructor should have a parent parameter
    • constants + protected non virtual -> pimpl
    • setRole -> setRoleMapping(QMap)
    • roleMapping getter

    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

    • 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

    • const char * -> QString
    • knownPackages -> listInstalled
    • installPackage -> install
    • registerPackage -> register
    • createPackage -> create
    • 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

    Introduction Hotpoint List

    • 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