2010-01-20 15 views
8

मैं अपने wxwidgets जीयूआई में एक तत्व जोड़ना चाहता हूं जो टर्मिनल एमुलेटर की तरह व्यवहार करता है। एक शेल के मामले में नहीं जो कमांड निष्पादित करता है, लेकिन टर्मिनल में चल रहे किसी एप्लिकेशन का इनपुट-आउटपुट सेटअप।WxWidgets के लिए टर्मिनल जैसी विंडो?

असल में, आवश्यकताएँ हैं:

इनपुट/आउटपुट स्ट्रीमिंग: जब आप एक चरित्र में प्रवेश, यह एक इनपुट धारा में जोड़ा जाता है, और जब कुछ टर्मिनल के लिए पहुंचाया जाता है, इसे तुरंत बाहर प्रिंट करता है।

कोई संपादन नहीं: एक बार जब आप किसी चरित्र में टाइप करते हैं, तो यह स्थायी रूप से वहां होता है, क्योंकि संभवतः टर्मिनल में चल रहे एप्लिकेशन द्वारा इसका उपभोग किया जाता है।

कुछ प्रकार की स्क्रॉलिंग (भले ही यह केवल कुछ रेखाएं या कुछ दिखाती हो)।

यह अच्छा होगा अगर ऐसा कुछ ऐसा हो जो पहले से ही करता है, लेकिन wxTextCtrl जैसे पहले से मौजूद मौजूदा नियंत्रणों के साथ इसे कार्यान्वित करने के सुझावों का भी स्वागत होगा।

+0

जेरेमी, अगर यह आपका उत्तर था https://github.com/jeremysalwen/TerminalWx - क्या इसका उत्तर देने योग्य नहीं होगा? मुझे आपके घटक की वर्तमान स्थिति में रूचि है। अंतिम परिवर्तन दिसम्बर 2013 में थे, 2012 में अंतिम (और केवल) रिलीज ... – Wolf

उत्तर

3

मुझे पता है कि यह कुछ सप्ताह देर हो चुकी है, लेकिन उम्मीद है कि यह अभी भी उपयोगी है। मुझे चेमेलेन नामक एक प्रोजेक्ट मिला है जो एक WxWidgets- आधारित VT100 टर्मिनल विजेट का उपयोग करता है, जो टाटाटेल नामक एक प्रोजेक्ट से अलग था। गिरगिट स्रोत मेरी वेबसाइट से उपलब्ध है (download page here)। सुनिश्चित नहीं है कि यह वही है जो आप खोज रहे हैं, लेकिन यह आपको कुछ विचार दे सकता है। अगर आपको इसके बारे में कोई सवाल है तो मुझे बताने में संकोच न करें।

+0

धन्यवाद, यह * बिल्कुल * है जो मैं ढूंढ रहा हूं! मैं इसमें देख लूंगा, और आपके पास कोई प्रश्न पूछेगा। –

+0

नोट: स्रोत कोड एक फ्लैट निर्देशिका संरचना में है, लेकिन परियोजना को यह फ़ोल्डर्स में होने की उम्मीद है। –

+0

हम्म। जब मैं इसे ज़िप कर रहा था तो मैंने गलती की हो सकती है। सूचना के लिए धन्यवाद। – markerikson

2

wxwidgets wxStreamToTextRedirector के माध्यम से wxTextCtrl पर STDOUT को पुनर्निर्देशित करने का समर्थन करता है। इनपुट के लिए, आप इसे संभालने के लिए ऑनरहर ईवेंट को wxTextCtrl-derived क्लास में ओवरराइड कर सकते हैं।

संबंधित मुद्दे