PMA_DisplayResults class will contain the functions specific to the displaying 
query results and handling special tables like `PROCESSLIST` which provides informations on current threads running in PMA. At the current code base, these functions are 
appeared as global functions inside display_tbl.lib.php file. After 
introducing PMA_DisplayResults class instead of this set of functions, the file 
will be renamed as DisplayResults.class.php .
Class diagram (not the completed one) for the PMA_DisplayResults class
Following code snippet represent some rough implementation of the PMA_DisplayResults class,
class PMA_DisplayResults {
    
    const DIRECTION_LEFT = 'left';
    const DIRECTION_VERTICAL = 'vertical';
    
    private $_db;
    private $_table;
    
    public function __construct($db, $table) {
        $this->_db = $db;
        $this->_table = $table;
    }
    
    public function getTable() {
        
        // Related code for getTable function
        $str .= $this->_getTableHeaders();
        // end of the related code
        
    }
    
    private function _getTableHeaders() {
        //code...
        $msg = PMA_getMessage($this->_db, $this->_table);
        //code...
    }
    
}
As the only outsider accessed Display class, the sql.php file will be use,
// inside sql.php file $displayResultsObj = new PMA_DisplayResults($GLOBALS['db'], $GLOBALS['table']); echo $displayResultsObj->getTable();

Please note that Display class should handle also things not bound to database/table like SHOW PROCESSLIST.
ReplyDeleteThanks for pointing that Michal.
DeleteI updated the blog including that.