SCCSMARTCODE / GTK-GUI-Learning

A comprehensive repository documenting my journey in learning GUI development using GTK and Glade in C. This project covers beginner to advanced topics, including dynamic interfaces, layouts, events, and extending functionality with Glade.

Repository from Github https://github.comSCCSMARTCODE/GTK-GUI-LearningRepository from Github https://github.comSCCSMARTCODE/GTK-GUI-Learning

GTK-GUI-Learning

A personal learning journey into building modern graphical user interfaces (GUIs) with C, GTK 3, and Glade. This repository contains hands-on projects and examples designed to deepen understanding of GTK concepts, ranging from basic widgets to advanced GUI patterns.


Repository Overview

Projects

  1. To-Do List App

    • A simple task management application with features to add, display, and clear tasks.
    • Explores basic widgets like buttons, labels, boxes, and entry fields.
  2. Personal Expense Tracker

    • A functional app to track expenses categorized by type with real-time summaries and visual charts.
    • Introduces tree views, dynamic updates, and visualization using GTK.
  3. Calculator App

    • A GUI-based calculator with basic arithmetic functions.
    • Focus on using grid layouts and keyboard input handling.

Topics Covered

  • Widgets: Buttons, Labels, Entry, ComboBox, TreeView, ProgressBar, etc.
  • Layouts: Box, Grid, Stack, and Scrollable Containers.
  • Event Handling: Button clicks, input field updates, and signal management.
  • Data Display: Dynamic updates with TreeView and ListStore.
  • Advanced Features: Using CSS for GUI styling, building GUIs with Glade.

Installation and Setup

  1. Clone the Repository:

    git clone https://github.com/SCCSMARTCODE/GTK-GUI-Learning
  2. Install Dependencies: Ensure GTK 3 is installed on your system:

    sudo apt update
    sudo apt install libgtk-3-dev

Goals

  • Develop a strong understanding of GTK for building desktop applications.
  • Explore the use of Glade for rapid GUI design.
  • Learn dynamic GUI updates and best practices in GUI development.

Contributions

This repository is primarily for personal learning, but contributions are welcome! Feel free to suggest enhancements or report issues via the repository's issue tracker.


License

This project is licensed under the MIT License. See the LICENSE file for more details.


Author

  • SCCSMARTCODE

About

A comprehensive repository documenting my journey in learning GUI development using GTK and Glade in C. This project covers beginner to advanced topics, including dynamic interfaces, layouts, events, and extending functionality with Glade.

License:MIT License


Languages

Language:C 97.0%Language:Makefile 2.0%Language:CSS 0.9%