2010-06-10 5 views
6

मेरे पास पाइथन में लिखा गया एक जीनोम एप्लेट है। कॉन्फ़िगरेशन डेटा/सेटिंग्स को सहेजने के लिए, यह एक फ़ाइल ~/.appname बनाता है।एक जीनोम एप्लेट को इसके कॉन्फ़िगरेशन डेटा को कैसे स्टोर करना चाहिए?

हालांकि, यह एप्लेट के पैनल में जोड़े जाने से कई उदाहरणों को रोकता है क्योंकि प्रत्येक की अपनी सेटिंग्स नहीं हो सकती हैं।

मैं सेटिंग्स को इस तरह से कैसे स्टोर कर सकता हूं जिससे प्रत्येक इंस्टेंस में अपनी अनूठी सेटिंग्स हो सकें?

अद्यतन: मैं विशेष रूप से चाहते हैं पता है कि कैसे सेटिंग्स उदाहरण प्रति स्टोर करने के लिए।

उत्तर

7

एक एप्लेट के लिए अनुशंसित तरीका GConf to store preferences का उपयोग करना होगा और प्रति उदाहरण एक कुंजी का उपयोग करना होगा ताकि आप अलग-अलग सेटिंग्स स्टोर कर सकें। Panel Applet GConf Utilities से:

एप्लेट आम तौर पर एक स्कीमा फ़ाइल का उपयोग वरीयताओं को और panel_applet_add_preferences() का एक सेट को परिभाषित। ऐसी वरीयताएं केवल व्यक्तिगत एप्लेट उदाहरण पर लागू होती हैं। उदाहरण के लिए, आप पैनल में दो घड़ी एप्लेट जोड़ सकते हैं और उन्हें अलग-अलग कॉन्फ़िगर कर सकते हैं।

वरीयताओं के लिए आदेश में केवल के लिए, प्रत्येक एप्लेट एक भी एप्लेट के लिए लागू इन प्राथमिकताओं में से प्रत्येक के लिए एक अलग GConf कुंजी होना आवश्यक है। नीचे वर्णित सामान्य GConfClient फ़ंक्शंस के आस-पास विश्वसनीय रैपर प्रदान करते हैं और इन प्रति-एप्लेट कुंजी पर काम करते हैं। एप्लेट के साथ

+0

** बिल्कुल सही ** बस क्या मैं के लिए देख रहा था। –

1

अजगर उदाहरण:

import gconf 
client = gconf.client_get_default() 
gconf_root_key = applet.get_preferences_key() 

client.set_string(gconf_root_key + "/myvar", "foobar") 
myvar = client.get_string(gconf_root_key + "/myvar") 
संबंधित मुद्दे