AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [XML] Unbekanntes Prob mit einem gDesklet
Thema durchsuchen
Ansicht
Themen-Optionen

[XML] Unbekanntes Prob mit einem gDesklet

Ein Thema von xZise · begonnen am 27. Jun 2006 · letzter Beitrag vom 29. Jun 2006
Antwort Antwort
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#1

[XML] Unbekanntes Prob mit einem gDesklet

  Alt 27. Jun 2006, 20:30
Da mein Swap flöten gegangen ist (mich hat die graphische Partion verwirrt bei der Dapper installation ^^), habe ich ein Desklet (FTB-mem-plot) nach meinenn Bedürfnissen angepasst.
D.h. ich habe dsa Label und Plotter weggenommen, die mit dem Swap zu tun haben.

Dann dachte ich mir, da ja Linux den RAM als Cache benutzt, einen 2. Plotter einzubauen, der mit den Cachestand anzeigt.
Dazu habe ich dann nochmal die Labels umstruktiriert, so dass der Code jetzt so aussieht:

(Die veränderten/hinzugefügten Zeilen habe ich mit einem #### markiert!)
XML-Code:
<?xml version="1.0" encoding="UTF-8"?>

<display window-flags="sticky, below">

  <meta author="xZise (addapted from Kevin Kane)"
        version="0.30"
        name="FTB-mem-plot"
      category="System/Memory"
        description="A memory monitor."
        preview=""/>

  <control id="sys" interface="ISystem:4i4p0jtvdz87qx44x2dm97ltj"/>

  <frame id="all" border-width="8,8,15,20" border-uris="gfx/black/w.png,gfx/black/n.png,gfx/black/e.png,gfx/black/s.png,
                                           gfx/black/nw.png,gfx/black/ne.png,gfx/black/se.png, gfx/black/sw.png">

    <group id="main" width="100" height="100">
      <image id="icon" uri="gfx/memory.png" scale="1.0" anchor="center" x="50%" y="50%" on-click="launch(launcher)"/>
      <image id="face" uri="gfx/black/base.png"
           image-width="100%" image-height="100%" height="100%" width="100%"/>
      <plotter id="mem" x="50%" y="95%" anchor="s" color="red" height="90%" width="99%"/>
#### <plotter id="cached" x="50%" y="95%" anchor="s" color="blue" height="90%" width="99%"/>
      <label id="title" value="TEST" x="2%" y="0%" anchor="nw" color="#FFFFFF" font="Sans bold 9"/>
      <label id="load" value="TEST" x="1%" relative-to="title,x" y="3%"
             anchor="nw" color="#FFFFFF" font="Sans 8"/>
      <label id="user_mem" value="TEST" x="0%" relative-to="title,y" y="0%"
             anchor="nw" color="#FFFFFF" font="Sans 7" wrap-at="95%"/>
#### <label id="cached_mem" value="TEST" x="0%" relative-to="title,y" y="15%"
             anchor="nw" color="#FFFFFF" font="Sans 7" wrap-at="95%"/>
#### <label id="total_mem" value="TEST" x="0%" relative-to="title,y" y="30%"
             anchor="nw" color="#FFFFFF" font="Sans 7" wrap-at="95%"/>
    </group>
    
  </frame>
  
  

  <prefs callback="prefs_cb">
    <page label="Appearance">
      <title label="Theme:"/>
      <enum label="Color:" bind="color" help="The color to use.">
        <item label="Black" value="black/"/>
        <item label="White" value="white/"/>
      </enum>
      <title label="Borders:"/>
      <boolean label="Top:" bind="top"/>
      <boolean label="Bottom:" bind="bottom"/>
      <boolean label="Left:" bind="left"/>
      <boolean label="Right:" bind="right"/>
    </page>
    <page label="Icon / Launcher">
      <uri label="Icon Image:" bind="icon_uri"/>
      <float label="Icon Scale:" min="0.0" max="2.0" digits="2" bind="Dsp.icon.scale"/>
      <integer label="Horizontal Offset:" min="0" max="100" bind="xoff"/>
      <integer label="Vertical Offset:" min="0" max="100" bind="yoff"/>
      <boolean label="Visible:" bind="Dsp.icon.visible"/>
      <string label="Command:" bind="launcher" />
    </page>
    <page label="Colors">
      <font label="Title:" bind="Dsp.title.font"/>
      <color label="Title:" bind="Dsp.title.color"/>
      <font label="Load:" bind="Dsp.load.font"/>
      <color label="Load:" bind="Dsp.load.color"/>
      <font label="CPU Info:" bind="Dsp.user_mem.font"/>
      <color label="CPU Info:" bind="Dsp.user_mem.color"/>
    </page>
    <page label="Dimensions">
      <integer label="Desklet Width:" min="10" max="600" bind="width"/>
      <integer label="Desklet Height:" min="10" max="600" bind="height"/>
    </page>
    <page label="Plotter">
      <integer label="Refreshrate (ms):" min="250" max="1000" bind="update"/>
      <color label="Usermemory Color:" bind="ucol"/>
#### <color label="Cachedmemory Color:" bind="ccol"/>
    </page>
  </prefs>


  <script>
    width = 150
    height = 55
  </script>

  <script uri="FTB.script"/>

  <script>
    #<![CDATA[
    
    #(left, top, right, bottom)

    icon_uri = "gfx/memory.png"
    update = 500 # update interval in ms
    title = "MEM: "  # title displayed on desklet
    launcher = "xterm"
    
    
    def prefs_cb(key, value):
        if (key == "width"): set_width(value)
        if (key == "height"): set_height(value)
        if (key == "color"): set_face()
        if (key == "top"): set_top(value)
        if (key == "bottom"): set_bottom(value)
        if (key == "left"): set_left(value)
        if (key == "right"): set_right(value)
        if (key == "icon_uri"): set_icon(value)
        if (key == "xoff"): set_icon_x(value)
        if (key == "yoff"): set_icon_y(value)
   if (key == "ucol"):    set_u_color(value)
####   if (key == "ccol"):    set_c_color(value)

    def set_u_color(clr)
   Dsp.mem.color = clr
   Dsp.user_mem.color = clr[:7]

    def set_c_color(clr)
   Dsp.cached.color = clr
   Dsp.cached_mem.color = clr[:7]
        
    def get_data():
        # Plotter
   m = float(sys.memory.user) / float(sys.memory.total) * 100
        Dsp.mem.value = int(m)
####   Dsp.cached.value = int(float(sys.memory.cached) / float(sys.memory.total) * 100)
          Dsp.load.value = "%d%s" % (m, "%")
   # Data
   Dsp.user_mem.value = "User: " + mem_format(sys.memory.user)
####   Dsp.cached_mem.value = "Cached: " + mem_format(sys.memory.cached)
####   Dsp.total_mem.value = "Total: " + mem_format(sys.memory.total)
   # Timer
        add_timer(int(update), get_data)
        return 0


    # stolen from SysMon
    def mem_format(value):
        if value >= (1024**4):
            return "%.1f TB" % (value/(1024.0**4))
        if value >= (1024**3):
            return "%.1f GB" % (value/(1024.0**3))
        if value >= (1024**2):
            return "%.1f MB" % (value/(1024.0**2))
        if value >= 1000:
            return "%d kB" % (value/1024.0)
        else : return "%i" % value


    Dsp.title.value = title
    set_face()
    set_icon(icon_uri)
    get_data()
    
    ]]>
  </script>

</display>
Der Fehler tritt in Zeile 91 auf:
Zitat von gDesklet:
invalid syntax (FTBmemory (Kopie).display_-973283799'>, line 6)
/usr/share/gdesklets/Displays/FTB/FTBmemory (Kopie).display
1
2 #
3
4 #(left, top, right, bottom)
5
> 6 icon_uri = "gfx/memory.png"
7 update = 500 # update interval in ms
8 title = "MEM: " # title displayed on desklet
9 launcher = "xterm"
10
11
12 def prefs_cb(key, value):
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#2

Re: [XML] Unbekanntes Prob mit einem gDesklet

  Alt 29. Jun 2006, 19:20
Hat keiner eine Idee?
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz