def __init__(self):
     
     # Init theme datas.
     self.__init_data()
     argv = ""
     for theme in theme_manager.get_user_themes() + theme_manager.get_system_themes():
         argv += theme.get_name() + ";"
     self.module_frame = ModuleFrame(self.config_file, argv)
     
     # Init slider.
     self.slider = HSlider()
 
     self.all_page = MainBox()
 
     # Add widgets in slider.
     self.all_page.set_size_request(PAGE_WIDTH, PAGE_HEIGHT)
     
     # Connect events.
     event_manager.add_callback("add-local-wallpapers", self.add_local_wallpappers)
     
     # Connect widgets.
     self.module_frame.add(self.slider)
     self.module_frame.connect("realize", lambda w: self.slider.set_to_page(self.all_page))
     self.module_frame.module_message_handler = self.message_handler
     self.module_frame.run()        
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

import sys
import os
from deepin_utils.file import get_parent_dir
sys.path.append(os.path.join(get_parent_dir(__file__, 4), "dss"))

from display_view import DisplayView
from module_frame import ModuleFrame

if __name__ == "__main__":
    module_frame = ModuleFrame(
        os.path.join(get_parent_dir(__file__, 2), "config.ini"))

    display_view = DisplayView()

    module_frame.add(display_view)

    def message_handler(*message):
        (message_type, message_content) = message
        if message_type == "show_again":
            display_view.show_again()
            module_frame.send_module_info()
        elif message_type == "reset":
            display_view.reset()
        elif message_type == "exit":
            module_frame.exit()
        elif message_type == "size_changed":