From patchwork Fri Aug 12 12:46:40 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Utkarsh Tiwari X-Patchwork-Id: 17096 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id CBD2DBE173 for ; Fri, 12 Aug 2022 12:47:06 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 4197D6332B; Fri, 12 Aug 2022 14:47:06 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1660308426; bh=Koi2r+Eq5Sy9BB8QP5zO4anWucVG5nlrWnfjrmQQ4Fo=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=zTzvRwZ8oARyuLBGXH2MPY/v46bPzQOi6WV1j33WJW5y+DuMl7GWjQDP0dBZqiAG6 pC3aM+3Ud/Ga182SXu9t5c8yn6G3E2sbbXsUgMpI6DpQKcaaATt1lDvkBTvDdHqhw/ Lr8TJg5bkjjeXPMzA9rVB3coAd16YxSwmK7rC1ZfQfBOumY8LjRnxvwT/FqlS6h35F LES1+Z0FUE6jp4UZYbtsTB0N9qCDrENHeMp2VS20Ssdehuj8MgzD+QDODUGBs3KjCr ZgtxIsphoGm9E0XvS76IfXW1LfiNLD7UWqZit/Wj2psPgje+eiROE4k/iLnkx43Sds gOU+67+dD5ZDg== Received: from mail-pg1-x533.google.com (mail-pg1-x533.google.com [IPv6:2607:f8b0:4864:20::533]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 5633A603EA for ; Fri, 12 Aug 2022 14:47:04 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="FbUzZfWj"; dkim-atps=neutral Received: by mail-pg1-x533.google.com with SMTP id r22so710905pgm.5 for ; Fri, 12 Aug 2022 05:47:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc; bh=Sl+54xEOlE6xwR+Yjf/fz25mTkBawxTNhVMVyoLpB+E=; b=FbUzZfWjc+OzQ9aROc7NDRKn9sZGWcUtwLJtpbfpoiUckCoyb/s2ggR8JK3vcLPraX ZPIHsXajWKqVe6vOHJJwwg8D/uaBMIPraByhlKd1aRaUnJGD3fwscW4HzhPBnqKKnoEn nfexiQQzgydgvL6DHE1FfoOoTm2oXVHh50n3QjrKzRf9EFex9NslrlW2HkXmSWKVK31E KC8edVsjS1ZHKXIT0n7iwk9M10yS8DI5H+A+itEeVXH7Xt8j6U8HfcNkrv10hp6YB58d suOYyZPeRN9dlY+wp4Sx7HVtHcX480L2c+kzxP1dFO74YDPP5QVqn2LPBomUG8uImaB6 UMdw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc; bh=Sl+54xEOlE6xwR+Yjf/fz25mTkBawxTNhVMVyoLpB+E=; b=sffbk0PeWVWhIPW2xemJ0r9jtFBpm5FN+k+xL2osFP7xReoT497/bCXVJq5dJ+w85f dL2QW4uH+dRNT0YANn/m1SjM21C3k981y8g588eSgFB/EfLDrJewZF+M+IKngLQ+Aa5+ ZQBgUhIfSsO4p0tUPf4DR6s1MI5ccBjPc5AFVWDK5D24BcndY59o5yWxt0OuLQj7VFtx YYcfQvMKc9+5peXBcYs/AAxNCRTClU8zCPC42hjdKLuwyXeEtItyVwHPRrWBUOc/JuxI mXviER501qs8eNtIz3X64IIAT2snu1ZdVb65urSSjFtHChRegWicj6RGpm9A+BjzqA41 IsRQ== X-Gm-Message-State: ACgBeo2XAIBlYF85iAm13mj3DpYu/wfeOaR6Gho//h0Lk9tNZh2L4MNp qBbU8kgn++mC/paWfBidSJ7rcf6o9Es= X-Google-Smtp-Source: AA6agR5ja6xTB9BWNKQYa2coRN0ecGSKPrn7ZfxIkmFpGK2FQ8Eh6/vi4xLWQ7xj45TPX5pm/8z54A== X-Received: by 2002:a05:6a00:15c7:b0:52e:5a5d:27fa with SMTP id o7-20020a056a0015c700b0052e5a5d27famr3538050pfu.52.1660308422465; Fri, 12 Aug 2022 05:47:02 -0700 (PDT) Received: from localhost.localdomain ([2404:bd00:3:dc0d:d8e:96a2:2dbe:5a83]) by smtp.gmail.com with ESMTPSA id e6-20020a17090a728600b001f069352d73sm1431785pjg.25.2022.08.12.05.47.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 12 Aug 2022 05:47:01 -0700 (PDT) To: libcamera-devel@lists.libcamera.org Date: Fri, 12 Aug 2022 18:16:40 +0530 Message-Id: <20220812124651.27496-1-utkarsh02t@gmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 00/11] Introduce control interaction to qcam X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Utkarsh Tiwari via libcamera-devel From: Utkarsh Tiwari Reply-To: Utkarsh Tiwari Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Difference from v1: 1. This series now dependent on https://lists.libcamera.org/pipermail/libcamera-devel/2022-August/033351.html 2. Most of the patches remain same, now except of using toggleScriptAction() we use infromScriptRest() 3. Added a youtube video link in cover letter Hi, This patch series brings control manipulation from qcam. It provides the GUI needed to change control values for ControlTypeBool, ControlTypeFloat, ControlTypeIntger32. Also this displays the controls and their default values. It also displays the current values for the controls which have been set by qcam itself either through capture script or through the GUI. The patch series starts with building the basic GUI and just showing the name of the controls. then proceeds to add deault value and then implement just for ControlTypeBool and then for the other types mentioned above. This patch series implements the basic groundwork to facilitate the manipulation of controls. The design for various control components can be ofcourse improved, I have tried to isolate the design part much to be disconnected. Demo : https://youtu.be/DNa-RugEiOs Utkarsh Tiwari (11): qcam: Add settings Dialog with Control tab qcam: ControlFrame: Display defualt value of controls qcam: Add GUI way to change control values qcam: ControlsTab: Implement QScrollArea qcam: ControlFrame: Add Current Value label qcam: Add Float Slider qcam: Slider: Add SliderLayout to display value qcam: ControlsTab: Allow widget to resizeable qcam: ControlFrame: Add GUI interaction to float controls qcam: ControlFrame: Add GUI way to interact with ControlTypeIntger32 qcam: ControlFrame: Implement Current Values for integer types src/qcam/assets/feathericons/feathericons.qrc | 1 + src/qcam/main_window.cpp | 67 +++++- src/qcam/main_window.h | 12 + src/qcam/meson.build | 6 + src/qcam/settings/control_frame.cpp | 217 ++++++++++++++++++ src/qcam/settings/control_frame.h | 54 +++++ src/qcam/settings/controls_tab.cpp | 68 ++++++ src/qcam/settings/controls_tab.h | 40 ++++ src/qcam/settings/settings_dialog.h | 47 ++++ src/qcam/settings/slider.h | 138 +++++++++++ 10 files changed, 647 insertions(+), 3 deletions(-) create mode 100644 src/qcam/settings/control_frame.cpp create mode 100644 src/qcam/settings/control_frame.h create mode 100644 src/qcam/settings/controls_tab.cpp create mode 100644 src/qcam/settings/controls_tab.h create mode 100644 src/qcam/settings/settings_dialog.h create mode 100644 src/qcam/settings/slider.h