rendered paste body<?php class GtkWhatpulse extends GtkWindow { private $Container; private $ToolBar; private $ToolBouton; private $ListView; private $Model; private $Iter; private $Select; private $MyEdit; private $UserID = ''; // 195719 function __construct() { parent::__construct(); $this->set_title('- WhatPulse Stats -'); $this->connect_simple('destroy', array('gtk', 'main_quit')); $this->set_resizable(false); $this->set_icon($this->render_icon(Gtk::STOCK_SELECT_COLOR, Gtk::ICON_SIZE_DIALOG)); $this->Container = new GtkFixed(); // ToolBar $this->ToolBar = new GtkToolBar(); $this->ToolBar->set_show_arrow(false); $this->ToolBouton = GtkToolButton::new_from_stock(Gtk::STOCK_REFRESH); $this->ToolBouton->connect_simple('clicked',array($this,'LoadData'),'refresh'); $this->ToolBar->insert($this->ToolBouton,-1); // Edit a coté de la ToolBar, pour actualiser ;D // ListView $this->ListView = new GtkTreeView(); $this->Model = new GtkListStore(Gtk::TYPE_STRING, Gtk::TYPE_STRING); $this->ListView->set_model($this->Model); $this->ListView->set_border_width(10); $this->ListView->set_size_request(400,200); // La séléction dans la liste - TEST - //$this->ListView->connect_simple('row-activated', array($this,'ClickList')); // Une tite ScrollBar ? :P $ScrollBar = new GtkScrolledWindow(); $ScrollBar->set_policy(Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC); // Renderers $RenderColumn1 = new GtkCellRendererText(); $RenderColumn1->set_property('width', 240); $RenderColumn1->set_property('font','bold'); $RenderColumn1->set_property('background','#d2eef8'); $RenderColumn2 = new GtkCellRendererText(); $RenderColumn2->set_property('width', 150); // Un edit pour l'userID $this->MyEdit = new GtkEntry(); $this->MyEdit->set_size_request(50,19); // Et un label avec $ALabel = new GtkLabel('UserID :'); // Colonnes de la treeview $ListColumn1 = new GtkTreeViewColumn('Info',$RenderColumn1, 'text', 0); $ListColumn2 = new GtkTreeViewColumn('Value',$RenderColumn2, 'text', 1); $this->ListView->append_column($ListColumn1); $this->ListView->append_column($ListColumn2); $ScrollBar->add($this->ListView); $this->Container->put($ScrollBar,0,60); $this->Container->put($this->MyEdit,60,30); $this->Container->put($this->ToolBar,0,8); $this->Container->put($ALabel,61,15); $this->add($this->Container); $this->show_all(); } /*public function ClickList() { $this->Select = $this->ListView->get_selection(); list($Model,$Iter) = $this->Select->get_selected(); echo $this->Model->get_string_from_iter($Iter); $this->Model->remove($Iter); }*/ public function LoadData() { $this->UserID = $this->MyEdit->get_text(); if (!empty($this->UserID)) { $this->Model->clear(); $Check = file_get_contents('http://whatpulse.org/api/user.php?UserID='.$this->UserID); if ($Check != 'Unknow UserID given!') { $xml = simplexml_load_file('http://whatpulse.org/api/user.php?UserID='.$this->UserID); $this->Model->append(array('Date de génération',$xml->GeneratedTime)); $this->Model->append(array('ID Utilisateur',$xml->UserID)); $this->Model->append(array('Nom de compte',$xml->AccountName)); $this->Model->append(array('Pays',$xml->Country)); $this->Model->append(array('Date d\'inscription',$xml->DateJoined)); $this->Model->append(array('Site internet',($xml->Homepage == '') ? 'N/A' : $xml->Homepage)); $this->Model->append(array('Derniere Pulsation',$xml->LastPulse)); $this->Model->append(array('Nombre de Pulsation',$xml->Pulses)); $this->Model->append(array('Nombre de keys total',$xml->TotalKeyCount)); $this->Model->append(array('Nombre de click total',$xml->TotalMouseClicks)); $this->Model->append(array('Nombre de miles',$xml->TotalMiles)); $this->Model->append(array('Nombre de keys moyen par pulse',$xml->AvKeysPerPulse)); $this->Model->append(array('Nombre de clicks moyen par pulse',$xml->AvClicksPerPulse)); $this->Model->append(array('Nombre moyen de keys par seconde',$xml->AvKPS)); $this->Model->append(array('Nombre moyen de clicks par seconde',$xml->AvCPS)); $this->Model->append(array('Rang Personnel',$xml->Rank)); $this->Model->append(array('ID de l\'équipe',($xml->TeamID == '') ? 'N/A' : $xml->TeamID)); $this->Model->append(array('Nom de l\'équipe',($xml->TeamName == '') ? 'N/A' : $xml->TeamName)); $this->Model->append(array('Nombre de membres',($xml->TeamMembers == '') ? 'N/A' : $xml->TeamMembers)); $this->Model->append(array('Keys de l\'équipe',($xml->TeamKeys == '') ? 'N/A' : $xml->TeamKeys)); $this->Model->append(array('Clicks de l\'équipe',($xml->TeamClicks == '') ? 'N/A' : $xml->TeamClicks)); $this->Model->append(array('Miles de l\'équipe',($xml->TeamMiles == '') ? 'N/A' : $xml->TeamMiles)); $this->Model->append(array('Description de l\'équipe',($xml->TeamDescription == '') ? 'N/A' : $xml->TeamDescription)); $this->Model->append(array('Date de création de l\'équipe',($xml->TeamDateFormed == '') ? 'N/A' : $xml->TeamDateFormed)); $this->Model->append(array('Rang de l\'équipe',($xml->TeamRank == '') ? 'N/A' : $xml->TeamRank)); $this->Model->append(array('Rang dans l\'équipe',($xml->RankInTeam == '') ? 'N/A' : $xml->RankInTeam)); } else { $this->Model->append(array('ERROR','UserID Inconnue !!')); } } else { $this->Model->append(array('ERROR','Veuillez saisir votre UserID')); } } } new GtkWhatpulse(); Gtk::main();?>